Skip to content

pdn: prevent pad connections from targeting macro grid shapes (#10490)#10722

Open
saurav-fermions wants to merge 1 commit into
The-OpenROAD-Project:masterfrom
Fermions-ASI:fix/10490
Open

pdn: prevent pad connections from targeting macro grid shapes (#10490)#10722
saurav-fermions wants to merge 1 commit into
The-OpenROAD-Project:masterfrom
Fermions-ASI:fix/10490

Conversation

@saurav-fermions

Copy link
Copy Markdown
Contributor

Summary

Pad direct connections were extending into the core by snapping to shapes belonging to a macro/instance PDN grid. This prevents pad connections from targeting macro-grid shapes so they only land on the core power grid.

Type of Change

  • Bug fix

Impact

Pad connections no longer attach to macro-grid shapes.

Verification

  • Local build succeeds.
  • Relevant tests pass (rebuilt from source): ctest -R '^pdn\.' 151/151.
  • Code follows the repository's formatting guidelines.
  • I have signed my commits (DCO).

Related Issues

Fixes #10490


Developed with SAIGE, Fermions' autonomous RTL/EDA debugging agent; root-caused, tested, and signed off by the submitter (@saurav-fermions).

…enROAD-Project#10490)

Pad direct connections (PadDirectConnectionStraps) snap to the closest
valid STRIPE/RING target on a connectable layer. isTargetShape() accepted
any such shape regardless of its owning grid. When a macro (instance) PDN
grid is built before the core grid, its in-core stripes become visible
target candidates; with no core target on the pad-connect layer near the
pad, the pad connection snapped to a macro stripe and extended deep into
the core.

Reject shapes owned by an instance grid (Grid::kInstance) as pad-connect
targets so pad connections only land on core/existing grid shapes.

Add regression test pads_black_parrot_macro_grid (CMake + Bazel) that
reproduces the symptom: baseline reports 99 pad connections extending into
the core (worst reach ~1.4mm); with the fix, 0.

Signed-off-by: Saurav Singh <saurav.singh@fermions.co>
@saurav-fermions saurav-fermions requested a review from a team as a code owner June 21, 2026 05:16
@saurav-fermions saurav-fermions requested a review from gadfort June 21, 2026 05:16

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request addresses issue #10490 by preventing pad direct connections from targeting shapes that belong to an instance (macro) grid. The PadDirectConnectionStraps::isTargetShape function has been updated to reject shapes associated with a Grid::kInstance type, ensuring that pad connections only snap to core or existing grid shapes. A new regression test, pads_black_parrot_macro_grid, has also been added to verify this fix. There are no review comments, so I have no feedback to provide.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

PDN: faulty pad connections

1 participant