AdvancedQuestion 43 of 63Source: Synopsys PrimeTime User Guide: Parametric On-Chip Variation (POCV)

How does POCV model variation in vias, and why does it need slew variation data?

From PDVerse STA Mentor Guide · pdVerse Mentor Guide

Short Answer

Via variation models the manufacturing spread in vias - the connections between metal layers - as an independent, Gaussian random variable per via, contributing both delay and slew variation because a via carries both resistive and capacitive components. It specifically needs slew variation data from LVF libraries because a via's resistance affects how much the signal's slew degrades as it travels along the net, and that slew-degradation effect has to be computed and propagated accurately, not just its delay contribution.

Technical Reference DiagramHow does POCV model variation in vias, and why does it need slew variation data?
A net routed through three VIA1 instances at a given area, each labeled with table_min_sigma and table_max_sigma coefficients from an IVM side file, with two branching arrows showing the via's resistive variation feeding both the net's delay-spread calculation and its slew-degradation calculation

Technical Explanation

  • Via variation is a distinct source of variation from cell and interconnect variation. It targets manufacturing spread specifically in vias, the physical connections between different metal layers, which can vary in resistance and capacitance independently of the cells and wires around them.
  • Each via's variation is treated as statistically independent and Gaussian. Unlike distance-based variation, which assumes correlation over physical distance, via variation assumes each via's manufacturing spread is its own, unrelated random event.
  • A via contributes both a resistive and a capacitive component to interconnect. Because of that, via variation introduces variation in both delay and slew - the slew effect exists specifically because slew degrades as a signal travels along a net, and via resistance changes how much that degradation compounds.
  • LVF libraries with slew variation data are required to compute this accurately. Without slew variation data available, PrimeTime cannot properly compute and propagate the via-induced slew variation along the net, only the delay portion.
  • Via variation data comes from a separate interconnect variation model (IVM) side file. That file specifies via area values and, for each area, table_min_sigma/table_max_sigma coefficients of variation in resistance, interpolated linearly between the listed area values.
  • Using via variation requires a PrimeTime-ADV-PLUS license, the same as moment-based analysis. Both of these more advanced variation-modeling features sit behind the same license tier, separate from baseline POCV analysis.

Common Mistake

  • Enabling via variation analysis in a flow whose libraries provide only ordinary delay variation data, without slew variation data, and expecting full via-induced timing spread to be modeled.
  • Slew variation data specifically is what lets PrimeTime compute and propagate a via's contribution to slew degradation along a net; without it, only the delay side of via variation can be modeled accurately, understating the real spread.
  • Cost: a design that believes it has full via-variation coverage is actually missing the slew-degradation component of that variation, silently optimistic on any path where via resistance spread meaningfully affects downstream slew.

Follow-up Question & Model Response

If two vias of the same layer and the same physical area show different table_min_sigma and table_max_sigma values in an IVM side file, what would explain that difference, and would you expect their contribution to delay variation and slew variation to differ equally?

Candidate Model Response: Two vias of the same layer and area should not normally show different table_min_sigma/table_max_sigma coefficients in a well-built IVM file, since those coefficients are meant to describe the manufacturing process's variation characteristics for that layer and area combination, not any one specific via instance - a difference would most likely mean the file has separate default and layer-specific entries, and the two vias are picking up different ones by object-matching rather than by a real physical distinction. I would not expect delay and slew variation to differ equally in general, though, because delay variation follows directly from the resistance and capacitance coefficients of variation, while slew variation additionally depends on how that resistance interacts with the downstream net's own capacitance and the arc's transition time - two vias with identical resistance-variation coefficients can still contribute differently to slew degradation depending on what they are driving.

Practical Example

An IVM side file specifies a default via entry with table_min_sigma: 0.25 and table_max_sigma: 0.4 for any via with no more specific match, and a layer-specific VIA1 entry at area 0.2 with table_min_sigma: 0.185 and table_max_sigma: 0.223. A net routed with three VIA1 instances at that exact area picks up the tighter, layer-specific coefficients rather than the looser default, because PrimeTime matches the more specific layer_name: VIA1 entry first. With slew variation data present in the library, PrimeTime propagates each via's contribution to both the net's delay spread and its slew degradation along the downstream path; without that slew data, the same via variation model would only be able to account for the delay portion of the same physical effect.

Complete STA Handbook

Get the complete 10-chapter STA handbook covering setup/hold margins, clock modeling, OCV/POCV, crosstalk noise, and PrimeTime closure.

Static Timing Analysis (STA) Handbook — ten chaptersSTA HandbookTen chapters on setup, hold, OCV, and PrimeTime signoff. →