HomeRTL→SiToolsInterview
Chapter 7 of 10
← Ch.6 Routing Ch.8 DFT →
⏱ Interactive Timing Path Analyzer inside

Static Timing Analysis

STA mathematically verifies that every data path in the chip meets timing — without running a single simulation. It is the gatekeeper between your routed design and the foundry, and the last step before sign-off.

📖 ~35 min read 🎯 Setup · Hold · OCV · MCMM · ECO 🏭 Next: Design for Test →
In this chapter
  1. Setup and Hold Analysis
  2. Clock Domain Crossings in STA
  3. On-Chip Variation (OCV / AOCV / POCV)
  4. MCMM — Multi-Corner Multi-Mode
  5. Timing ECO
  6. Sign-Off Corners
  7. Interactive: Timing Path Analyzer
  8. Key Takeaways

1. Setup and Hold Analysis

Every flip-flop has two fundamental timing requirements relative to its clock edge:

For a single-cycle path from FF_A (launch FF) to FF_B (capture FF):

CheckSlack formulaWhat must be positive
Setup (max delay)Slack = T_clk + skew_capture − skew_launch − T_data − T_suData must arrive before capture clock edge minus T_su
Hold (min delay)Slack = T_data + skew_launch − skew_capture − T_hData must stay valid until after capture clock edge plus T_h
Key insight: Setup and hold are checked at different clock edges. Setup is checked at the next capture edge (T_clk away). Hold is checked at the same capture edge as the launch edge — the data must hold through that edge even before it propagates further. Fixing setup requires slower paths or faster clocks; fixing hold requires faster paths (adding delay buffers).

2. Clock Domain Crossings in STA

When data travels from a flip-flop clocked by CLK_A to a flip-flop clocked by CLK_B (unrelated clocks), STA cannot compute meaningful setup/hold slack — the arrival and required times are in different time domains with no fixed phase relationship.

Standard approaches to handle CDC in STA:

CDC is not fully caught by STA: STA with set_false_path tells you timing is "don't care" — it does not verify that your synchronizer design is correct. Use dedicated CDC analysis tools (Mentor Questa CDC, Synopsys SpyGlass CDC) to verify synchronizer topology, reconvergence, and data coherency.

3. On-Chip Variation (OCV)

Real chips have spatial variation in transistor threshold voltage, oxide thickness, and metal resistance — caused by lithography imperfections and chemical non-uniformity across the wafer. STA models this with On-Chip Variation (OCV) derating: apply a pessimistic multiplier to cell/wire delays.

AOCV (Advanced OCV)

AOCV applies distance-based derating. The further two points are apart on the die, the less likely they are to share the same process variation. Short paths get higher (more pessimistic) derating; long paths get lower derating. This reduces over-pessimism compared to flat OCV.

POCV (Parametric OCV)

POCV uses statistical derating — each cell's delay is modeled as a random variable with a mean and standard deviation. Paths are analyzed by propagating distributions (Monte Carlo or analytical), and slack is reported at a statistical confidence level (e.g., 3σ). POCV is the most accurate OCV model and is required for sub-5 nm sign-off.

OCV modelDerating approachAccuracyWhen used
Flat OCVSingle multiplier (e.g., 1.1× late, 0.9× early)Most pessimistic28 nm and older, or quick checks
AOCVDistance + depth look-up tableModerate16–28 nm
POCVStatistical distributions per cellMost accurate7 nm and below

4. MCMM — Multi-Corner Multi-Mode

A real chip operates under many conditions. MCMM analysis checks timing across all combinations of operating conditions (corners) and design modes simultaneously.

Modes

Corners

Why does temperature affect timing the way it does? In CMOS, higher temperature increases carrier scattering, reducing MOSFET mobility and thus drive current. Lower drive current = slower switching. At advanced nodes (< 28 nm), this "temperature inversion" effect partially reverses — some cells are actually slower at lower temperatures due to threshold voltage increase. The STA tool must use the correct liberty files for each corner.

5. Timing ECO

After routing, if timing sign-off reveals violations, a timing ECO is performed to fix them without disturbing the rest of the design:

# Report timing: worst setup path, full clock details
report_timing \
  -path_type full_clock \
  -delay_type max \
  -max_paths 20 \
  -slack_lesser_than 0.1

# Set OCV derating for late/early paths
set_timing_derate -late  1.08 -cell_delay
set_timing_derate -early 0.92 -cell_delay

# Create MCMM scenario (setup check at SS corner)
create_scenario -name func_ss_setup \
  -mode functional \
  -corner ss_0p9v_125c \
  -is_active_for_setup true \
  -is_active_for_hold false

# Create hold scenario at FF corner
create_scenario -name func_ff_hold \
  -mode functional \
  -corner ff_1p1v_m40c \
  -is_active_for_setup false \
  -is_active_for_hold true

6. Sign-Off Corners

Sign-off STA runs the full set of required corners to guarantee the chip works across all valid operating conditions:

Corner nameConditionCheckRisk if violated
SS / 0.9V / 125°CSlow process, low voltage, hotSetup (max delay)Functional failure at target frequency
FF / 1.1V / −40°CFast process, high voltage, coldHold (min delay)Metastability, data corruption
TT / 1.0V / 25°CNominalSetup + hold + powerOff-spec performance
SS / 0.9V / −40°CSlow process, low voltage, coldSetup (some nodes)May be worst setup at sub-28 nm (temp inversion)
FF / 1.1V / 125°CFast process, high voltage, hotHold (some paths)Hold at very short paths with fast driver
⏱ Interactive: Timing Path Analyzer
Adjust clock and path parameters. The tool computes setup and hold slack in real time and draws a timing diagram. Negative slack = violation (shown in red).
Clock period (ns) 2.5
Clock uncertainty (ps) 50
Clock skew (ps) 30
Data path delay (ps) 1800
Setup time (ps) 60
Hold time (ps) 30
SETUP CHECK
HOLD CHECK

✅ Chapter 7 Key Takeaways

Next → Chapter 8
Design for Test (DFT)
Scan insertion, fault models, ATPG pattern generation, BIST, and JTAG boundary scan for post-silicon defect detection.