Skip to content

grt: Implement timing-driven net sorting for incremental CUGR#9828

Closed
Divinesoumyadip wants to merge 3 commits intoThe-OpenROAD-Project:masterfrom
Divinesoumyadip:grt-cugr-timing-sort
Closed

grt: Implement timing-driven net sorting for incremental CUGR#9828
Divinesoumyadip wants to merge 3 commits intoThe-OpenROAD-Project:masterfrom
Divinesoumyadip:grt-cugr-timing-sort

Conversation

@Divinesoumyadip
Copy link
Copy Markdown
Contributor

This PR prioritizes timing-critical nets during the incremental rerouting process. By querying fresh slack data from OpenSTA before rerouting, the tool ensures that nets with the worst negative slack (WNS) get the first choice of routing resources.

In the previous incremental flow, nets were rerouted in an arbitrary order. This often led to non-critical nets occupying the most direct tracks, forcing critical timing paths into long detours. This PR ensures that "VIP" nets (those with negative slack) are handled first to protect chip performance during ECO passes.

I modified CUGR::rerouteNets to refresh timing data before routing.Integrated a loop to querysta_(OpenSTA) for each net's current slack.Utilizes sortNetIndices to re-order the reroute queue so that nets with the most negative slack are at the front.

Reduces timing degradation during ECO passes and improves the overall Timing Quality of Results (QoR) by prioritizing paths that define the chip's maximum clock frequency.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants