Cadence Innovus (Legacy UI) · stage 14 of 16

Extraction and signoff correlation

Sanity checks and commands for RC corner and extraction mode records, parasitic annotation, SPEF comparison, scale factors, and in-tool versus signoff timing.

6 min read · Free, no login

Get Innovus + ICC2 Cheat Sheets at ₹199

This stage covers extraction and signoff correlation: recording the RC corner and extraction mode, checking parasitic annotation coverage, comparing SPEF between in-tool and signoff extraction, aligning scale factors, and confirming that timing settings and results agree between the two tools.

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
X-01 Mode and RC corner record
Before extraction
report_unit_parasitics -all_layers -rc_corner <rc>
get_rc_corner <rc> -rcCornerAttribute
getExtractRCMode -engine -effortLevel
Engine, thresholds and corner data match the signoff setup. Thresholds are defaults, not compared with signoff. Coupling off in an SI flow, or a wrong technology file.
X-02 Extraction run and RCDB
After final route and fill
setExtractRCMode -engine postRoute -effortLevel <level>
extractRC
saveRC <name>.rcdb.d
The header lists every active RC corner, and Coupled matches the plan. RCDB saved before the last fill or ECO change. An active RC corner is missing, or preRoute ran after routing.
X-03 Annotation coverage
After extraction or SPEF
report_annotated_parasitics -view <view>
report_annotated_parasitics -view <view> -list_not_annotated -max_missing <n> <file>
Every real signal and clock net is annotated in every active view. Only supply or tied nets lack annotation, each explained. Any real signal or clock net has no annotation.
X-04 SPEF out and in
After extraction
rcOut -spef <name>.spef.gz -rc_corner <rc>
spefIn <signoff>.spef.gz -rc_corner <rc>
One SPEF per active corner, right unit, X-03 clean. SPEF exists for only some corners, so reading has not started. SPEF from another database, or written without resistance.
X-05 Net and arc comparison
After both SPEF sets
report_net_parasitics <net> -rc_corner <rc>
reportDelayCalculation -from <pin> -to <pin> -view <view> -si
Total C, R and coupling agree within the project budget. Total C agrees, but coupling or attackers differ. R or total C on a critical net is outside the budget.
X-06 Scale factors
After X-01 is aligned
generateRCFactor -preroute false -postroute low -reference signoff -outputFile <f>
update_rc_corner -name <rc> -postRoute_cap {<f>} -postRoute_res {<f>}
Factors fit the engine in use and a rerun closed the gap. Factors differ widely between corners, or XCap is far from one. Factors set for effort level signoff, or from other routing.
X-07 Equal timing settings
Before the timing comparison
getAnalysisMode -analysisType -cppr
getDelayCalMode -SIAware
report_timing_derate
Analysis type, OCV, CPPR and derates match on both sides. One setting differs, and its effect is measured and recorded. Derates or OCV set on one side only, or pessimistic mode with Tempus.
X-08 Timing and endpoints
After X-07
signoffTimeDesign -outDir <dir>
report_timing -view <view> -path_type end
timeDesign -postRoute -outDir <dir>
WNS, TNS and endpoint lists agree per view within budget. Total slack agrees, a few endpoints differ, each traced to a stage. In-tool optimistic beyond budget in any required view, or a signoff violation has no in-tool endpoint.

Command cheat sheet

Legacy UI commands. Angle brackets are placeholders, and values shown are examples, not project limits.

Extraction settings and records
getExtractRCModeName, current value, type and set-by-user flag of every setExtractRCMode parameter.
getExtractRCMode -engine -effortLevel -coupledThe engine, the effort level and whether coupling capacitance is kept separate.
getExtractRCMode -capFilterMode -coupling_c_th -relative_c_th -total_c_thThe coupling filter mode and its three thresholds.
all_rc_cornersA Tcl list of the RC corner objects in the design. Add -active for the active ones.
get_rc_corner <rc> -rcCornerAttributeOne attribute of an RC corner. The attribute name replaces -rcCornerAttribute, for example -postRoute_cap or -qx_tech_file.
report_unit_parasitics -all_layers -rc_corner <rc>Unit resistance in ohm per micron and capacitance in fF per micron for every layer.
Setting up and running extraction
setExtractRCMode -engine postRoute -effortLevel lowSelects native detailed extraction. Changes the session.
setExtractRCMode -engine postRoute -effortLevel medium -extraCmdFile <f>Selects TQuantus, with the Quantus extra command file. Changes the session.
setExtractRCMode -engine postRoute -effortLevel signoff -qrcCmdType auto -lefTechFileMap <f>Selects Standalone Quantus with settings derived from Innovus. The layer map is required in auto mode. Changes the session.
setExtractRCMode -capFilterMode relAndCoup -coupling_c_th <fF> -relative_c_th <v> -total_c_th <fF>Sets the coupling filter. Changes the session.
setExtractRCMode -coupled trueKeeps ground and coupling capacitance separate, which signal integrity analysis needs. Changes the session.
extractRCThe RC database for the current routing. Changes the database and takes runtime.
reset_parasiticsDeletes the parasitic database and keeps the extraction mode. Changes the database.
saveRC <name>.rcdb.dThe RC data saved in a directory. Writes files.
restoreRC <name>.rcdb.dThe RC data restored from a directory, on a system of the same data model. Changes the database.
Parasitic files and annotation
report_rcdb <name>.rcdb.dThe header of one flat RCDB: corners, Coupled, source and design name.
report_annotated_parasitics -view <view>A summary of annotated and not annotated nets for the view.
report_annotated_parasitics -view <view> -list_not_annotated -max_missing <n>The nets without annotation, up to the given count.
report_net_parasitics <net> -rc_corner <rc>Total C, R, coupling and the worst attackers of one net.
rcOut -spef <name>.spef.gz -rc_corner <rc>A SPEF file of one RC corner, compressed by the suffix. Writes a file.
spefIn <signoff>.spef.gz -rc_corner <rc>Signoff parasitics annotated to an RC corner. Changes the database.
read_parasitics -rc_corner <rc> <f>.spef.gzSPEF or RCDB parasitics read for an RC corner, also for hierarchical designs.
Scale factors and technology data
generateRCFactor -preroute false -postroute low -reference signoff -outputFile <f>Cap, res and xcap factors per RC corner, from a comparison with signoff extraction. Writes a file and takes runtime.
generateRCFactor -preroute false -postroute low -reference externalSpef -spefMapFile <map> -outputFile <f>The same, using signoff SPEF files named in a map file. Writes a file.
update_rc_corner -name <rc> -postRoute_cap {<f>} -postRoute_xcap {<f>} -postRoute_res {<f>}New post-route scale factors for an RC corner. Can reset timing and RC data in MMMC mode.
create_rc_corner -name <rc> -cap_table <f> -T <temp>A new RC corner with a capacitance table and a temperature. Changes the session.
Timing settings that must match
getAnalysisMode -analysisType -cppr -aocv -socvThe analysis type, the CPPR mode and whether AOCV and SOCV are on or off.
getDelayCalMode -SIAware -socv_accuracy_modeWhether crosstalk delay is included and the SOCV accuracy level.
getDesignMode -earlyPBAMode -pessimisticModeThe delay calculation modes that move in-tool timing toward or away from signoff.
report_timing_derateGlobal and per-object derating factors for early and late, clock and data paths.
get_global timing_cppr_threshold_psThe most pessimism in ps that CPPR may leave in a path.
report_analysis_views -type activeThe active views of the multi-mode multi-corner setup.
In-tool and signoff timing
timeDesign -postRoute -expandedViews -outDir <dir>Extraction at the engine set by setExtractRCMode (native detailed at the low effort level), timing analysis and per-view setup reports. Changes the database and takes runtime.
timeDesign -postRoute -hold -reportOnly -outDir <dir>Hold reports from the extraction already in memory.
signoffTimeDesign -outDir <dir>Quantus extraction and Tempus timing, with a summary per view and an ECO timing database. Writes files and takes runtime.
signoffTimeDesign -reportOnly -outDir <dir>Signoff timing on the parasitics already in memory, for example after spefIn.
report_timing -view <view> -path_type end -max_paths <n>One line per endpoint with cause, slack and arrival.
report_timing -view <view> -path_type full_clock -from <pin> -to <pin>The full path with launch and capture clock paths.
reportDelayCalculation -from <pin> -to <pin> -view <view> -siDelay calculation detail for one arc, with signal integrity information.
set_global timing_report_timing_header_detail_info extendedAdds analysis mode, views, CPPR and delay calculation engine to report headers. Changes the session.