Synopsys IC Compiler II (ICC2) · stage 1 of 16

Tool, project and session

Sanity checks and commands for release versions, library and block scope, reference libraries, search paths, licences and session saves.

5 min read · Free, no login

Get Innovus + ICC2 Cheat Sheets at ₹199

This stage covers the start of an ICC2 session: confirming the tool release and licences, opening the right library and block, binding reference libraries, and checkpointing the session before later work begins.

Sanity check cheat sheet

One row per command card. Read left to right: the check, the command that answers it, then what a healthy result, a result to review and a hard stop look like.

CardCheck and whenCommandHealthyReviewHard stop
S-01 Release and build
Session start
report_versions Release and build match the methodology release exactly. Same major release, different build. Allowed only if the methodology says builds are interchangeable. Different major release from the qualified one, with no approval on record.
S-02 Library and block in scope
After open_lib and open_block
get_libs
current_lib
current_block
The current library and block are the ones named in the handoff record. Extra libraries open that nobody listed. Record why. Wrong block or wrong library current; any later result belongs to the wrong data.
S-03 Reference libraries
After open_lib
report_ref_libs
report_lib
Every reference library is listed, opened, and its path matches the release record. A library resolved from an unexpected search path. Confirm it is the released copy. A missing reference library, or a path that points at an unreleased copy.
S-04 Non-default settings
After the flow settings are applied
report_app_options Listed options match the methodology baseline exactly. Extra options with a plausible reason, such as a debug setting left from an earlier run. An option that changes analysis or optimisation behaviour and is not in the baseline.
S-05 Search path and link inputs
Before reading any design data
set_app_var search_path {<dir1> <dir2>} Search path lists only released directories, in the intended order. A directory kept for local experiments that could shadow a released file. A path order that lets an unreleased file win over the released one.
S-06 Compute resources and licences
After setup
set_host_options -max_cores <n>
check_license
list_licenses
Core count and checked-out licences are within the job request. Licences held that the flow will not use; free disk space close to the expected report size. No licence for a required feature, or no free space in the run directory.
S-07 Checkpoint provenance
When continuing from a saved block
open_lib <lib>
open_block <block>
save_block -as <block>/<label>
save_lib <lib>
One open, block and label match the handoff record, and the save is explicit. Open succeeds but the record does not say which stage the save came from. Edits left only in memory at session end, or a block label that differs from the record.

Command cheat sheet

ICC2 commands. Angle brackets are placeholders, and values shown are examples, not project limits. A dagger (†) marks a command the notes behind this book do not fully cover; it is shown without options, so confirm it with man or help in your release.

Release and licences
report_versionsThe tool release and build, and the versions of linked tools. Record it in the run manifest.
check_licenseWhether the licence needed for the session is available.
list_licensesThe licences the session has checked out. Record them in the run manifest.
get_license -quantity <n>Checks out the requested number of licences. Changes the session; record it.
Library and block
create_lib <lib> -ref_libs {<ref_a> <ref_b>}A new design library in memory, made current, with the given reference libraries. Changes the session; record it.
open_lib <lib>Opens the library, makes it current and loads its reference libraries.
current_libThe library that is currently active.
get_libsThe collection of libraries open in the session.
report_libA report of the library content, including process-voltage-temperature panes where present.
open_block <block>Opens a block of the current library and makes it current.
current_blockThe block that is currently active.
Reference libraries
report_ref_libsReference libraries of the open library. A star marks one currently open and a plus marks one with technology information.
set_ref_libs -add <blk.ndm>Adds a reference library to an open library. Changes the session; record it.
set_ref_libs -rebindRebinds reference library paths using the search path. Changes the session; record it.
link_block -rebindRebinds the bindings of blocks already in the library. Changes the session; record it.
Application options and search path
report_app_optionsThe application options and their values, for comparison with the baseline.
set_app_options -name <option> -value <v>Sets one application option. Changes the session; record it.
set_app_var search_path {<dir1> <dir2>}Sets the directories the tool searches for input files. Changes the session; record it.
Compute resources
set_host_options -max_cores <n>Sets the core count used for multithreaded commands. Changes the session; record the value.
report_host_options †The host options currently in force, for the run manifest.
Save and provenance
save_blockSaves the current block to disk. Without it the tool works from the data already on disk.
save_block -as <block>/<label>Saves the block under a label, to mark a stage.
save_lib <lib>Writes library changes to disk. Changes stay in memory until this is run.
close_lib <lib>Closes the library. Run it after the save.
print_message_info †A summary of message IDs issued so far. Compare warning IDs with the last good run.