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?

See Tools

… set up a new flow?

See Flows

… set up a new pdk?

See PDKs

… set up a new library?

… set up a new target?

See Targets

… 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', <loglevel>)

… check my setup before running?

chip.check_manifest()

… change the build directory?

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

… change the caching directory?

chip.set('option', 'cachedir', <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.add('tool', <tool>, 'task', <task>, 'prescript', <file>, step=<step>, index=<index>)
chip.add('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>)

… start a fresh run?

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

… start a fresh run and keep the old one?

chip.set('option', 'clean', True)
chip.set('option', 'jobincr', True)

… start a fresh run using the previous run information?

chip.set('option', 'clean', True)
chip.set('option', 'jobincr', True)
chip.set('option', 'from', 'floorplan')

… print the description of a parameter?

print(chip.help(keypath))