grt: fix missing via for co-located pins on different layers#10044
Conversation
Signed-off-by: Eder Monteiro <emrmonteiro@precisioninno.com>
Signed-off-by: Eder Monteiro <emrmonteiro@precisioninno.com>
…ROAD into grt_fill_via
Signed-off-by: Eder Monteiro <emrmonteiro@precisioninno.com>
Signed-off-by: Eder Monteiro <emrmonteiro@precisioninno.com>
Signed-off-by: Eder Monteiro <emrmonteiro@precisioninno.com>
Signed-off-by: Eder Monteiro <emrmonteiro@precisioninno.com>
|
@maliberty Secure-CI is running, but I don't expect major changes in our designs. @povik FYI, I tested with the provided test case and it finishes with no errors. |
There was a problem hiding this comment.
Code Review
This pull request enhances global routing to handle zero-length edges between co-located pins on different layers, preventing the silent dropping of vias. Key modifications include simplifying pin coverage checks in GlobalRouter.cpp, adding logic to process zero-length edges in FastRoute.cpp, and utilizing stackAlias for layer resolution in utility.cpp. Review feedback identifies a logic error in a skip condition in utility.cpp, recommends refactoring duplicated logic in FastRoute.cpp into a helper function, and suggests removing redundant variable assignments.
|
clang-tidy review says "All clean, LGTM! 👍" |
Signed-off-by: Eder Monteiro <emrmonteiro@precisioninno.com>
|
clang-tidy review says "All clean, LGTM! 👍" |
|
clang-tidy review says "All clean, LGTM! 👍" |
…ROAD into grt_fill_via
|
clang-tidy review says "All clean, LGTM! 👍" |
Summary
fillVIAskipping zero-length Steiner edges between co-located pins on different layers by resolving nodes throughstackAliasbefore checking layer info (root cause ofRSZ-0074)get3DRouteto emitGSegmentsfor zero-length edges that carry via grids (fallbackgetPlanarRoutespath)isCoveringPinto generate via guides for all pin types, not just ports and pad/macro pinscolocated_pinsregression test with pins onmetal3andmetal4in the same gcellType of Change
Impact
Create correct vias when colocated pins for different layers.
Verification
./etc/Build.sh).Related Issues
Fixes #9919