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:
- Any tcl command.
prep -design <design> -tag <tag> -config <config> -init_design_config -overwritesimilar to the command line arguments, design is required and the rest is optionalrun_synthesisrun_floorplanrun_placementrun_ctsrun_routingwrite_powered_verilogfollowed byset_netlist $::env(lvs_result_file_tag).powered.vrun_magicrun_magic_spice_exportrun_magic_drcrun_lvsrun_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.