Skip to content

Latest commit

 

History

History
83 lines (60 loc) · 3.03 KB

openlane.md

File metadata and controls

83 lines (60 loc) · 3.03 KB

Running an example design

This assumes that the smoke test runs and you've installed OpenLane properly.

There is also a very good overview for Newcomers.

You can run an example design called "SPM" by running:

openlane --run-tag foo --run-example spm

which will download the design, all technology files, and completely implement the design. Once done, all of the files are in the "spm" subdirectory. The run logs and outputs of the tools are in a directory with the current date and time like "spm/runs/RUN_2024-12-12_11-58-38".

Once you've run once, you can enter the directory and see the files:

  • config.yaml: The configuration of the design.
  • src: The directory with the Verilog source files.
  • run: The directory containing all runs, one per directory.
  • verify: The verification directory with Verilog test benches.

If you want to run again, you can specify the config file as an argument to OpenLane:

cd spm
openlane config.yaml

Run directories and tags

If you want to to specify a run name like "foo", you can add the "--run-tag foo" to a command. This will put everything in "spm/runs/foo", but if you run again, you will either need to remove that directory to start over, or specify "--overwrite" on the command line:

openlane --run-tag foo config.yaml
openlane --run-tag foo --overwrite config.yaml

Viewing the final design

The --last-run option is also a shortcut for the last run directory. To view the last design in the OpenROAD GUI, you can run:

openlane --flow OpenInOpenROAD --last-run config.yaml

and you should see the following: Default SPM project in OpenROAD GUI

To view timing in gui you will need to load the spef and constraint files. To load everything after an openroad -gui call run:

read_lib <path to .lib file>
read_db <path to .odb file> 
read_spef <path to .spef file>
read_sdc <path to .sdc file>

the odb, spef, and sdc file can be found in the final run directory. The .lib files are with your PDK. You should also go through the Newcomers Guide to OpenLane2.

Help

OpenROAD (not OpenLANE) has some options for help via the man command like most Unix systems. These manual pages provide detailed information about how to use a particular command or function, along with its syntax and options.

This can be used for a range of commands in different levels as follows:

  • Level 1: Top-level openroad command (e.g. man openroad)
  • Level 2: Individual module/TCL commands (e.g. man clock_tree_synthesis)
  • Level 3: Info, error, warning messages (e.g. man CTS-0001)

The OpenLane2 documentation is also available at ReadTheDocs.

The OpenROAD documentation is available at ReadTheDocs.

License

Copyright 2024 VLSI-DA (see LICENSE for use)