Skip to content

GRT: apply 100% res-aware routing in three phases - #11255

Open
jfgava wants to merge 14 commits into
The-OpenROAD-Project:masterfrom
The-OpenROAD-Project-staging:grt-fr-full-res-aware-init
Open

GRT: apply 100% res-aware routing in three phases#11255
jfgava wants to merge 14 commits into
The-OpenROAD-Project:masterfrom
The-OpenROAD-Project-staging:grt-fr-full-res-aware-init

Conversation

@jfgava

@jfgava jfgava commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Summary

Apply resistance-aware to critical nets in three phases:

  • Layer Assignment (15%)
  • Maze Route 3D 1st call (30%)
  • Maze Route 3D 2nd call (100%)

Applying res-aware slowly reduces the number of nets pushed to upper metal layers without hurting QoR.

Type of Change

  • New feature

Impact

Improved QoR by applying 100% resistance-aware routing

Verification

  • I have verified that the local build succeeds (./etc/Build.sh).
  • I have run the relevant tests and they pass.
  • My code follows the repository's formatting guidelines.
  • I have signed my commits (DCO).

jfgava added 12 commits August 6, 2026 16:18
Signed-off-by: Jonas Gava <jfgava@precisioninno.com>
Signed-off-by: Jonas Gava <jfgava@precisioninno.com>
Signed-off-by: Jonas Gava <jfgava@precisioninno.com>
Signed-off-by: Jonas Gava <jfgava@precisioninno.com>
Signed-off-by: Jonas Gava <jfgava@precisioninno.com>
Signed-off-by: Jonas Gava <jfgava@precisioninno.com>
Signed-off-by: Jonas Gava <jfgava@precisioninno.com>
@jfgava jfgava self-assigned this Aug 27, 2026

@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 introduces dynamic scaling of the resistance-aware nets percentage throughout the routing process, defining initial, mid, and final percentage constants and updating the routing logic accordingly. The feedback highlights a critical issue where skipping the rerouting of nets with positive slack entirely during the main routing phase could severely impact routability and congestion resolution; it is recommended to disable resistance-aware routing for these nets instead of skipping them. Additionally, the newly introduced percentage constants should be defined as floats to maintain type consistency with the target variable and prevent implicit conversions.

Comment thread src/grt/src/fastroute/src/maze3D.cpp
Comment thread src/grt/src/fastroute/include/FastRoute.h Outdated
Signed-off-by: Jonas Gava <jfgava@precisioninno.com>
@jfgava
jfgava marked this pull request as ready for review August 27, 2026 20:58
@jfgava
jfgava requested a review from a team as a code owner August 27, 2026 20:58
@jfgava
jfgava requested a review from eder-matheus August 27, 2026 20:58
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.

2 participants