FAQ#

This is a list of Frequently Asked Questions about SiliconCompiler. Feel free to suggest new entries!

How do I…#

… set up a new tool?

… set up a new flow?

See Flows

… set up a new pdk?

… set up a new library?

… set up a new target?

… create a chip object?

import siliconcompiler
chip = siliconcompiler.Chip('<design>')

… run a compilation?

chip.run()

… display my layout?

chip.show()

… display a previous run from the command line?

sc-show -design <name>

… change the logger level?

chip = siliconcompiler.Chip('<design>', loglevel=<INFO|DEBUG|WARNING|ERROR>)
chip.set('option', 'loglevel', <level>)

… check my setup before running?

chip.check_manifest()

… relax the parse constraints on import?

chip.set('option', 'relax', True)

… change the build directory?

chip.set('option', 'builddir', <dirpath>)

… use the setup json file from a previous run?

chip.read_manifest(<filepath>)

… drive custom TCL code into the a target EDA flow?

chip.set('tool', <tool>, 'task', <task>, 'prescript', <file>, step=<step>, index=<index>)
chip.set('tool', <tool>, 'task', <task>, 'postscript', <file>, step=<step>, index=<index>)

… control the thread parallelism for a tool?

chip.set('tool', <tool>, 'task', <task>, 'threads', <n>, step=<step>, index=<index>)

… resume a previous run?

chip.set('option', 'resume', True)

… print the description of a parameter?

print(chip.help(keypath))