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

libs.ref: Python tool to generate export.yml #175

Merged
merged 1 commit into from
Aug 12, 2024

Conversation

dnltz
Copy link
Contributor

@dnltz dnltz commented Aug 8, 2024

ORFS has an update script with a static list of files to update [1]. Everytime new files will be created, this script has to be updated.

Instead, let the PDK communicate to external tools which files exist, where they are located in the PDK and where they should be stored in the 3rd-party tool. This allows to automate updates in external tools automatically by just updating the PDK.

So, to push updated files to external tools, simply run generate.py and commit the new export.yml files. In case new files were created, update the list of source files in generate.py and trigger an update of export.yml.

1: https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts/blob/master/flow/platforms/ihp-sg13g2/sg13g2_update.py

@dnltz dnltz changed the base branch from main to dev August 8, 2024 20:44
@sergeiandreyev
Copy link
Contributor

Hi @dnltz, thank you for contribution!
A couple of comments:

  • how about storing these files in libs.tech/openroad? this way it could be easier to understand what are these for, and we'll not impact the standard structure
  • is it possible to merge all separate descriptions of PVT-specific Liberty files into one?
    {
        "file": "lib/sg13g2_stdcell_fast_1p32V_m40C.lib",
        "orfs": {"destination": "lib"}
    },
    {
        "file": "lib/sg13g2_stdcell_fast_1p65V_m40C.lib",
        "orfs": {"destination": "lib"}
    },
...

@dnltz
Copy link
Contributor Author

dnltz commented Aug 12, 2024

Hi @dnltz, thank you for contribution! A couple of comments:

* how about storing these files in `libs.tech/openroad`? this way it could be easier to understand what are these for, and we'll not impact the standard structure

* is it possible to merge all separate descriptions of PVT-specific Liberty files into one?
    {
        "file": "lib/sg13g2_stdcell_fast_1p32V_m40C.lib",
        "orfs": {"destination": "lib"}
    },
    {
        "file": "lib/sg13g2_stdcell_fast_1p65V_m40C.lib",
        "orfs": {"destination": "lib"}
    },
...

@sergeiandreyev moved to libs.tech/openroad and simplified the static structures in the Python script. Should be easier to add new files now.

The export.yml file communicates all exportable files, with
additional meta data, to OpenROAD. It can automatically
check if files changed or new exist and sync those.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
@dnltz
Copy link
Contributor Author

dnltz commented Aug 12, 2024

@sergeiandreyev also rebased to latest version of dev branch. I was using an older rev.

@sergeiandreyev sergeiandreyev merged commit 797eef8 into IHP-GmbH:dev Aug 12, 2024
1 check passed
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