STA6 min read

OCV vs AOCV vs POCV Explained

OCV, AOCV, and POCV are three ways of answering the same question: how do you account for the fact that two identical cells on the same chip do not behave identically? Each is less pessimistic and more accurate than the last. Knowing the difference is a common interview question and a real lever on timing margin.

Why derating exists at all

Process variation, voltage, and temperature mean a cell delay is not a single fixed number. To sign off safely, timing tools apply a derate that makes the launch path slower and the capture path faster (for setup), modelling a worst-case spread. The question is how that derate is chosen.

OCV: a flat derate

On-chip variation in its basic form applies a single flat percentage derate to every cell, regardless of where it is or how long the path is. It is simple and safe, but very pessimistic, because it assumes every cell on a long path varies in the worst direction at once, which is statistically unlikely.

AOCV: derate by depth and distance

Advanced OCV recognizes that longer paths average out variation. The more cells (depth) a path has, the less likely they all drift the same way, so the derate shrinks with depth. It also accounts for physical distance. AOCV uses tables of derate versus depth and distance, recovering margin OCV threw away.

POCV: statistical, per-cell

Parametric or statistical OCV models each cell delay as a distribution with its own sigma, taken from LVF data in the library. Instead of a derate guess, it computes how variation actually accumulates along the path statistically. It is the least pessimistic and most accurate, and it is the standard at advanced nodes.

MethodHow derate is chosenPessimismTypical use
OCVFlat percentage on all cellsHighestOlder or mature nodes
AOCVTables by path depth and distanceMediumMid-range nodes
POCVPer-cell sigma from LVF, statisticalLowestAdvanced nodes (FinFET)
Pro Tip

The one-line interview answer: OCV is a flat derate, AOCV scales the derate by path depth and distance, and POCV is statistical using per-cell sigma. Each recovers pessimism the previous one left on the table.

Watch out

POCV needs LVF data in your libraries. If the library does not provide it, the tool falls back to more pessimistic behaviour, and your timing looks worse than it should. Confirm the library supports POCV before assuming you are getting it.

Key takeaways

  • All three model the fact that identical cells vary on-chip
  • OCV is flat and pessimistic, AOCV scales with depth and distance
  • POCV is statistical, per-cell, and least pessimistic
  • POCV is the advanced-node standard but needs LVF library data
Have a question about this? Ask in the community.