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 tcl command.
  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.