Lesson 7 of 169 minIntermediate

Synopsys PrimeTime

Synopsys PrimeTime, the golden signoff STA tool: the flow (netlist, SPEF, SDC, propagated clock, report_timing), PBA, PrimeTime-SI crosstalk, ECO and distributed analysis.

Synopsys PrimeTime (PT) is the industry's golden signoff STA tool, the reference other tools are correlated against. It reads the routed netlist, the extracted parasitics (SPEF), the timing libraries and the SDC, and reports timing with signoff-grade accuracy. PrimeTime-SI adds crosstalk (signal-integrity) analysis, and PrimePower adds power. When a team says timing is "signed off," they usually mean it is clean in PrimeTime across all scenarios.

The PrimeTime flow

1
Read libraries and netlist

Load the .db timing libraries and the routed gate-level netlist, then link the design.

2
Read parasitics

read_parasitics loads the SPEF extracted from the real layout, so net delays are accurate, not estimates.

3
Apply constraints and propagate the clock

Source the SDC, then set_propagated_clock so real clock-tree latencies are used.

4
Update and report timing

update_timing, then report_timing / report_constraint to see the worst paths and any violations.

5
PBA and ECO

Recover margin with path-based analysis, then generate a timing ECO to fix the last violations.

tcl
read_db sky130.db
read_verilog top_routed.v ; link_design top
read_parasitics top.spef        ;# real RC from layout
read_sdc top.sdc
set_propagated_clock [all_clocks]
update_timing -full
report_timing -delay_type max -group clk   ;# setup
report_timing -delay_type min              ;# hold
report_constraint -all_violators

Sanity checks before you trust the numbers

A timing report is only as trustworthy as its setup, so experienced users run three quick checks before reading any slack. Skipping them is how a design gets signed off with paths that were never actually analysed.

  • Linking: after link_design, confirm there are no unresolved references or missing library cells. An unlinked cell has no timing model and silently drops the paths through it.
  • Constraints: run check_timing to catch unconstrained and unclocked endpoints, missing I/O delays, and other holes in the SDC. An unconstrained path is not checked at all, so it looks clean while being wide open (see Debugging Unconstrained Paths).
  • Parasitics: run report_annotated_parasitics to confirm the SPEF actually annotated the nets. Any net left on estimated RC instead of real layout RC gives an optimistic, untrustworthy delay.

Concepts worth knowing

  • Signoff accuracy, PT is the golden reference; implementation tools correlate their STA back to it.
  • PrimeTime-SI, models crosstalk delay and noise from coupling between nets (see Crosstalk & Signal Integrity).
  • GBA vs PBA, PT runs fast graph-based analysis by default and can recover pessimism with path-based analysis (see GBA vs PBA).
  • ECO flow, fix_eco_timing proposes fixes; write_changes hands them to place-and-route.
  • Distributed multi-scenario, PT-DMSA runs many MMMC scenarios in parallel across a compute farm.
CommandPurpose
read_verilog / link_designRead and link the routed netlist
read_parasiticsLoad SPEF parasitics from layout
read_sdc / set_propagated_clockConstraints + real clock latencies
update_timingCompute the timing graph
report_timing / report_constraintWorst paths and violations
report_timing -pba_mode exhaustivePath-based analysis (recover margin)

Reading the reports

Beyond report_timing on a single path, PrimeTime has a small toolkit for seeing the whole picture and deciding what to fix first.

CommandWhat it tells you
report_qorA one-page summary per path group: WNS, TNS, number of violating paths, plus cell count, area and DRC totals
report_constraint -all_violatorsEvery failing endpoint at once: setup, hold, and the DRC checks (transition, capacitance, fanout)
report_bottleneckCells that sit on many violating paths, ranked, so you fix the one shared offender instead of chasing paths
report_analysis_coverageWhich timing checks were tested, untested, or violated, the true coverage of your analysis
report_si_bottleneckThe nets whose crosstalk hurts timing the most, for SI cleanup
report_delay_calculationHow one arc delay was actually computed, with -crosstalk to see the SI contribution
Note

report_si_bottleneck ranks victim nets by a cost function you pick: delta_delay (worst absolute delay change), delta_delay_ratio (change as a fraction of the stage delay), total_victim_delay_bump (largest crosstalk bumps), or delay_bump_per_aggressor (which aggressors do the most damage). Fixing the top handful of nets usually clears most SI violations.

Turning on SI, AOCV, POCV and CRPR

The more accurate analyses are each switched on with a variable set before update_timing, so PrimeTime folds them into the timing graph automatically. This is how you move from a quick, pessimistic run to a signoff-grade one.

AnalysisEnable withEffect
Crosstalk (SI)set si_enable_analysis trueAdds coupling-driven delta delay and noise (see Crosstalk & SI)
AOCVset timing_aocvm_enable_analysis true, then read_ocvmDepth and distance based derates instead of one flat OCV margin (see OCV / AOCV)
POCVset timing_pocvm_enable_analysis true, then read_ocvmStatistical, sigma-based variation per cell; widen it with timing_pocvm_corner_sigma
CRPRset timing_remove_clock_reconvergence_pessimism trueCredits back the shared clock path so pessimism is not double counted (see CRPR)
Multi-scenario (DMSA)launch pt_shell -multi_scenarioRuns many MMMC scenarios in parallel across a compute farm
In short, PrimeTime is signoff STA

read the netlist, SPEF and SDC, run the sanity checks, propagate the clock, turn on SI and the variation model, then update and report timing across every scenario, recover margin with PBA, and emit an ECO. Clean in PT across all corners and modes is what "timing signed off" means.

Quick check

0 of 3 answered · all right completes the lesson

  1. 1.What does check_timing help you catch before reading any slack?

  2. 2.Why run report_annotated_parasitics?

  3. 3.What does PrimeTime-SI add to a timing run?

Get new lessons by email

New lessons, interview prep and real EDA tool workflows. No spam.

PrevNext