TO Be coming

Oct 15, 2026

Difference between AOCV , OCV and POCV - Timing / STA

Beyond the Derate: OCV vs AOCV vs POCV in STA

As process nodes shrink below 28nm, On-Chip Variation (OCV) becomes a primary driver of timing closure failures. This article explains the three variation methodologies — OCV, AOCV, and POCV — with a worked setup/hold example you can follow along.

1. Why Do We Need Variation Modeling?

Variation in CMOS processes stems from two sources:

  • Global Variation: Systematic differences across the wafer (oxidation thickness, lithography focus). Affects all transistors similarly.
  • Local Variation: Random differences between neighboring transistors (Random Dopant Fluctuations, Line Edge Roughness). Spatially uncorrelated.

The goal: Capture the worst-case delay caused by variation — without adding excessive guardband that wastes area and power.

2. OCV — The "Blunt Instrument"

Standard OCV applies a global, fixed margin to all timing paths via delay derating:

Tfinal = Tnominal × (1 + Derate)

Critical flaw — correlation ignorance: OCV treats a 5-cell path inside a small block exactly the same as a 100-cell path crossing half the die. Short paths get far more margin than statistically needed, causing false violations and over-design.

💡 When to use: Early exploration, mature nodes (>65nm), or when statistical foundry data is unavailable.

3. AOCV — The Statistical Standard

AOCV uses foundry sigma (σ) tables and recognizes that local variation accumulates with path length. The margin scales with the number of stages:

Margin = σglobal + σlocal × √N

The √N term is key: margin grows with path length, but at a decreasing rate. Short paths get small margins; long paths get proportionally larger ones.

  • ✅ Industry standard for 28nm → 7nm
  • ✅ Significantly de-pessimized vs. OCV
  • ⚠️ Path-based only — blind to physical location on the die

4. POCV — The Precision Tool

POCV moves from path-level to cell-level analysis. Each cell gets a unique sigma based on its exact location, local environment, and spatial correlation:

Margin = Σ ( wi × Ïƒi )

Where wi is a correlation weight based on cell positions. This captures local spatial variation that AOCV cannot see.

  • ✅ Highest accuracy, least pessimism — essential at 5nm/3nm/2nm
  • ⚠️ Complex setup, slower runtime, requires detailed foundry parametric files

5. Comparison Table

FeatureOCVAOCVPOCV
GranularityGlobal (whole chip)Path-based (statistical)Cell-based (parametric)
Local variation❌ Not captured⚠️ Approximated (√N)✅ Fully captured
PessimismHighMediumLow
RuntimeFastModerateSlow
Typical node>65nm28nm–7nm7nm and below
Data requiredUser deratesFoundry sigma tablesPer-cell sigma maps

6. Worked Example: Setup & Hold

Setup (long path): data arrives too late → variation must worsen the data path. Hold (short path): data arrives too early → variation must shrink the data path.

Setup Analysis — Long Path (Ddata = 950ps, Tclk = 1000ps, Tsetup = 50ps)

MethodMarginFinal DelaySlackResult
Nominal0950ps0psCritical
OCV (3%)+28.5ps978.5ps−28.5psFAIL
AOCV (3σ)+30ps980ps−30psFAIL
POCV+25ps975ps−25psFAIL (least pessimistic)

Hold Analysis — Short Path (Ddata = 60ps, Thold = 55ps)

MethodMarginFinal DelaySlackResult
Nominal060ps5psPass
OCV (3%)−1.8ps58.2ps3.2psPass
AOCV (3σ)−6ps54ps−1psFAIL
POCV−4ps56ps1psPass (tight)
⚠️ Interesting insight: On this short hold path, AOCV is more pessimistic than OCV because the statistical 3σ margin exceeds the fixed 3% derate. POCV fixes this using local sigma data — the choice of methodology directly changes pass/fail results!

7. Practical Tips

  • Never sign off with plain OCV below 28nm — it is too coarse.
  • Monitor AOCV hold fails: many new hold violations after switching from OCV? Check your sigma tables and correlation length.
  • POCV saves power: fewer buffers, smaller hold-fix delay cells, tighter clock trees.
  • A "fail" in OCV may be a "pass" in AOCV — always know which methodology your report uses.

Bottom line: OCV = simple but pessimistic. AOCV = balanced statistical approach. POCV = maximum precision for advanced nodes. Choose based on your node, data availability, and accuracy needs.

⚡

Enjoyed this article?

For more tutorials on STA, RTL Design, CDC, and VLSI — visit my blog:

Visit RTL Digital Design →

No comments:

Post a Comment

SiteMap