The-OpenROAD-Project / The-OpenROAD-Project/OpenROAD

GPL: call global routing during timing-driven flow to estimate parasitics

Open
#9,364 2 comments 0 reactions 2 assignees View on GitHub

@rafaelmoresco is already working on this.

Since Jan 27, 2026.

gpl
Dominant language
Verilog
Stars
3.1k
Forks
1k
Avg merge
2d 23h
Merged PRs (30d)
136

Description

Description

Timing-driven placement relies only on placement parasitics on all of its iterations. This can result in bad placement that will generate critical paths later in the flow that are hard to solve without too many buffers.

By introducing GRT calls during timing-driven placement, the parasitics used on it will be closer to the parasitics from later stages of the flow. This way, GPL can optmize and prevent critical paths that are only detected on the routing stage today.

PR https://github.com/The-OpenROAD-Project/OpenROAD/pull/9361 introduces some updates on the APIs used by timing-driven placement to make it aware of global routing parasitics.

Suggested Solution

No response

Additional Context

Issue https://github.com/The-OpenROAD-Project/OpenROAD/issues/9363 is a potential blocker for this new feature, as the fullyRebuffer function is used during the timing-driven placement flow.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.