The-OpenROAD-Project / OpenROAD

OpenROAD's unified application implementing an RTL-to-GDS Flow. Documentation at https://openroad.readthedocs.io/en/latest/
https://theopenroadproject.org/
BSD 3-Clause "New" or "Revised" License
1.61k stars 561 forks source link

odb: store routing layer range in db instead of grt #5594

Closed gudeh closed 1 month ago

gudeh commented 3 months ago

Description

This is required to avoid problems with RUDY heatmap when ORFS scripts initiate grt but not fastroute. Further details in PR https://github.com/The-OpenROAD-Project/OpenROAD/pull/5578/ and issue https://github.com/The-OpenROAD-Project/OpenROAD/issues/5574

The layer range data is stored inside GRT data structures. In cases where RUDY need to access this data before reading a script that defines the layer range, we need the range data inside odb.

Suggested Solution

Create a structure that stores the layer ranges used by GRT (for signal nets and for clock nets_) in odb. odb::dbBlock seems to be a good place for it. Update GRT code to access the layer range data from the odb instead of coming directly from the Tcl script.

Additional Context

No response

eder-matheus commented 1 month ago

@LucasYuki Please give an ETA for this task.

LucasYuki commented 1 month ago

@eder-matheus I'm working on it now, today I'll do a PR.