Interactive Mode#

You may run the flow interactively by using the -interactive option:

./flow.tcl -interactive

A tcl shell will be opened where the openlane package is automatically sourced:

% package require openlane

Then, you should be able to run the following main commands:

  1. Any valid Tcl code.

  2. prep -design <design> -tag <tag> -config <config> -init_design_config -overwrite similar to the command line arguments, design is required and the rest is optional

  3. run_synthesis

  4. run_floorplan

  5. run_placement

  6. run_cts

  7. run_routing

  8. write_powered_verilog followed by set_netlist $::env(routing_logs)/$::env(DESIGN_NAME).powered.v

  9. run_magic

  10. run_magic_spice_export

  11. run_magic_drc

  12. run_lvs

  13. run_antenna_check

The above commands can also be written in a file and passed to flow.tcl:

./flow.tcl -interactive -file <file>

A more detailed list of all the commands supported by openlane could be found here.

Note 1: Currently, configuration variables have higher priority over the above commands so if RUN_MAGIC is 0, command run_magic will have no effect.

Note 2: Currently, most of these commands must be run in the flow sequence and no steps should be skipped.

Note 3: You can pass the -design, -tag, etc.. flags to ./flow.tcl -interactive directly without the need of entering the interactive mode and then executing the prep command.