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?
See Libraries
… set up a new target?
See Targets
… create a design object?
from siliconcompiler import Design design = Design('<design>')
… create an asic project object?
from siliconcompiler import ASIC project = ASIC(design)
… active filesets?
project.add_fileset("rtl")
… run a compilation?
project.run()
… display my layout?
project.show()
… display a previous run from the command line?
sc-show -design <name>
… change the logger level?
project.logger.setLevel(<INFO|DEBUG|WARNING|ERROR>)
… check my setup before running?
project.check_manifest()
… change the build directory?
project.set('option', 'builddir', <dirpath>)
… change the caching directory?
project.set('option', 'cachedir', <dirpath>)
… use the setup json manifest file from a previous run?
project = Project.from_manifest(<filepath>)
… control the thread parallelism for a task?
project.set('tool', <tool>, 'task', <task>, 'threads', <n>, step=<step>, index=<index>)
… start a fresh run?
project.set('option', 'clean', True)
… start a fresh run and keep the old one?
project.set('option', 'clean', True) project.set('option', 'jobincr', True)
… start a fresh run using the previous run information?
project.set('option', 'clean', True) project.set('option', 'jobincr', True) project.set('option', 'from', 'floorplan')
… register a new source of files?
design.set_dataroot("<name>", "<path>", "<reference>")
… register a new source of files relative to my current file?
design.set_dataroot('<name>', __file__)
… preserve options, like scheduler information, across sessions?
project.option.write_defaults()