-
Notifications
You must be signed in to change notification settings - Fork 893
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
read_liberty extensions #4682
base: main
Are you sure you want to change the base?
read_liberty extensions #4682
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So far the PR seems sound and tested. Beware that the foundry files raw and filtered add up to over 2MB. Source exports of Yosys add up to 23M, so it's kind of a significant size change. I suggest gzipping the large files
frontends/liberty/liberty.cc
Outdated
@@ -462,6 +462,9 @@ struct LibertyFrontend : public Frontend { | |||
log(" -ignore_miss_data_latch\n"); | |||
log(" ignore latches with missing data and/or enable pins\n"); | |||
log("\n"); | |||
log(" -ignore_busses\n"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: wiktionary says "buses is the usual plural of bus in both British and American English, ignoring the typical doubling of consonants"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let me fix that then
The raw files are supposed to be dropped from the PR once we fix #4681 |
|
Postpone handling re-definitions to after we have established the cell is not supposed to be ignored on the grounds of one of the user-provided flags.
396eb5a
to
56a9202
Compare
Force pushed to remove the unfiltered data, and to check in gzipped versions of the filtered data |
What are the reasons/motivation for this change?
This addresses a few things:
read_liberty -wb
can only read some cells (not those with busses), but combining it with a separateread_liberty -lib
call as fallback doesn't always work well because of how the command handles re-definitions, see commit 2f2726d with a fix-ignore_busses
optionarea
andcapacitance
attributes for e.g. user inspection or to find the smallest gate implementing a particular functionAlso I checked in some real-world Liberty data to use in tests, and have written tests using those (incl. for the existing
-unit_delay
option)