Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SDC as single source of truth for clock info #572

Open
donn opened this issue Oct 7, 2024 · 0 comments
Open

SDC as single source of truth for clock info #572

donn opened this issue Oct 7, 2024 · 0 comments
Labels
⛓️‍💥 breaking change This issue may require a change to OpenLane's API ✨ enhancement New feature or request
Milestone

Comments

@donn
Copy link
Member

donn commented Oct 7, 2024

Description

Currently, OpenLane has its clock information strewn all over the place in variables. The problem is while OpenLane steps in general assume the source of this information is the variables; the reality for PnR tools is the industry standard for this is the SDC file.

Proposal

The following should be done:

  • Add a new preprocessed directive, file::, to enable specifying a full file within the YAML (or technically JSON if you're masochistic) config.
  • All variables that are used by the SDC file in OpenLane <= 2 should be removed.
  • A migration tool should be created to take old configurations and convert them into OpenLane 3 compatible configurations.
  • A limited SDC parser should be made available within OpenLane so steps using tools without dedicated SDC parsers can continue to access the data within the SDC that previously existed as variables.
    • Ideally, this parser should be configurable to support all Tcl subset languages (SDC/XDC, UPF, OpenROAD PDN)

Each one of these is a big task on its own (especially the last one.)

@donn donn added ✨ enhancement New feature or request ⛓️‍💥 breaking change This issue may require a change to OpenLane's API labels Oct 7, 2024
@donn donn added this to the 3.0.0 milestone Oct 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
⛓️‍💥 breaking change This issue may require a change to OpenLane's API ✨ enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant