ThVerg 5696584608 Fix nix develop invocation for verification scripts
run_script() launches the DRC/LVS scripts with

    nix develop --command <script>

from a working directory of OPTS.openram_temp. nix develop resolves its
flake from the working directory, and the temp directory has no
flake.nix, so the command fails before the script ever runs:

    path '/tmp/openram_<user>_<pid>_temp' does not contain a 'flake.nix', searching up
    error: could not find a flake.nix file

Nothing is written to the report file, so verification then dies on the
missing output rather than on the nix error itself, which makes this
confusing to diagnose:

    ERROR: file magic.py: Unable to load LVS results from
    /tmp/openram_<user>_<pid>_temp/<name>.lvs.report
    FileNotFoundError: [Errno 2] No such file or directory

Name the flake explicitly so it is resolved from the repository while
the script still runs in the temp directory, which the scripts depend on
for their relative copies.

Verified on a sky130 build with use_nix = True: before the change no
report is produced and the run asserts, after it both DRC and LVS run
through the devShell and write their reports.
2026-08-11 15:03:55 +02:00
2026-05-11 10:44:24 -07:00
2023-03-08 14:35:03 -08:00
2024-02-03 12:15:11 +01:00
2018-11-16 08:56:44 -08:00
2019-04-29 10:26:39 -07:00
2021-04-21 14:15:24 -07:00
2021-10-08 09:11:43 -07:00
2024-01-03 14:32:44 -08:00
2026-01-16 15:05:30 +01:00
2019-12-07 09:50:05 +10:30
2023-03-30 11:30:50 -07:00
2023-04-26 14:31:41 -07:00
2023-02-07 10:30:48 -08:00
2025-06-26 21:21:06 +02:00
2024-01-03 14:32:44 -08:00
2023-10-31 23:24:21 -07:00
2026-05-11 10:44:24 -07:00
2024-01-03 14:32:44 -08:00
2024-01-03 14:32:44 -08:00
2024-01-03 14:32:44 -08:00
2025-06-26 21:21:13 +02:00

OpenRAM

Python 3.5 License: BSD 3-clause PyPI - Downloads Open In Colab

An open-source static random access memory (SRAM) compiler.

What is OpenRAM?

OpenRAM is an award winning open-source Python framework to create the layout, netlists, timing and power models, placement and routing models, and other views necessary to use SRAMs in ASIC design. OpenRAM supports integration in both commercial and open-source flows with both predictive and fabricable technologies.

Documentation

Please see our documentation and let us know if anything needs updating.

Get Involved

Further Help

License

OpenRAM is licensed under the BSD 3-Clause License.

Publications

Contributors & Acknowledgment

  • Matthew Guthaus from VLSIDA created the OpenRAM project and is the lead architect.
  • James Stine from VLSIARCH co-founded the project.
  • Many students: Hunter Nichols, Michael Grimes, Jennifer Sowash, Yusu Wang, Joey Kunzler, Jesse Cirimelli-Low, Samira Ataei, Bin Wu, Brian Chen, Jeff Butera, Sage Walker

If I forgot to add you, please let me know!

S
Description
An open-source static random access memory (SRAM) compiler.
Readme BSD-3-Clause
79 MiB
Languages
Python 85%
Spice 7.3%
HCL 3.2%
HTML 3%
Makefile 0.5%
Other 0.7%