A gate delay depends on manufacturing process, supply voltage and temperature. Signoff therefore checks several corners.
Slow data often limits setup and fast data often limits hold. These are starting intuitions: relative clock/data delays, RC corners and library checks decide the actual worst view.
Corner | Process / voltage / temperature (typical) | Gates are | Used for |
|---|---|---|---|
Slow | Slow process, low voltage; temperature from the library view | Usually slow data | Often limits setup; also check hold, recovery and removal |
Fast | Fast process, high voltage; temperature from the library view | Usually fast data | Often limits hold; also check setup, recovery and removal |
Typical | Nominal | Nominal | Power estimates, sanity checks |
Consider a 1.00 ns typical path with illustrative scale factors. The factors only show the effect; real libraries give different numbers.
Corner | Scale factor | Path delay | Effect |
|---|---|---|---|
Fast | × 0.70 | 0.70 ns | Shortest delay → hold is hardest |
Typical | × 1.00 | 1.00 ns | Reference |
Slow | × 1.35 | 1.35 ns | Longest delay → setup is hardest |
Put that path in a 1.50 ns cycle with 0.12 ns setup, 0.06 ns hold and no skew or uncertainty. Count its delay from the launch edge to the D pin, clock-to-Q included.
Read each bar as the time the new data takes to reach the capture flop. A bar must end after the hold strip and before the setup strip.
Slow corner: the bar ends at 1.35 ns, only 0.03 ns before the setup window at 1.38 ns. Setup is tightest here.
Fast corner: the bar ends at 0.70 ns, the closest of the three to the hold strip: hold slack 0.70 - 0.06 = +0.64 ns. Hold is tightest here.
Typical sits in between and is the tightest at neither check, which is why signoff never uses it alone.
Corner | Arrival | Setup slack (1.38 - arrival) | Hold slack (arrival - 0.06) |
|---|---|---|---|
Fast | 0.70 ns | +0.68 ns | +0.64 ns (worst hold) |
Typical | 1.00 ns | +0.38 ns | +0.94 ns |
Slow | 1.35 ns | +0.03 ns (worst setup) | +1.29 ns |
Corners also include RC corners for the wires (high or low resistance and capacitance) and, in modern flows, many combinations (multi-mode multi-corner, MMMC). Every mode (functional, test, sleep) is checked at every relevant corner.
Yes. Holding the other terms fixed, hold slack changes by -20 - 80 = -100 ps. The corner name alone does not determine the worst check.
T ≥ 0.35 + 1.35 + 0.12 = 1.82 ns, i.e. about 549 MHz, ignoring skew and uncertainty.