3.4.5 · D3Sequential Circuits

Worked examples — Setup and hold time constraints

3,015 words14 min readBack to topic

This page is a drill hall. The parent note Setup and Hold Time Constraints built the two constraints; here we hit every kind of case they can throw at you — from the friendly ones to the nasty degenerate corners.

Before symbols appear, here is the whole vocabulary in one place (all from the parent):


The scenario matrix

Everything setup/hold analysis can ask you falls into one of these cells. Each worked example below is tagged with the cell(s) it covers.

# Cell (case class) What makes it different Example
A Plain setup (find ) slowest path vs next edge, skew Ex 1
B Plain hold check fastest path vs hold window, skew Ex 2
C Both pass / slack reported compute positive margins, confirm safe Ex 3
D Positive skew (helps setup, hurts hold) on both sides Ex 4
E Negative skew (hurts setup, helps hold) sign flip of skew Ex 5
F Zero logic (register-to-register, ) degenerate path — pure flip-flop timing Ex 6
G Fixing a hold violation by adding buffers insert min-delay, re-verify Ex 7
H Limiting case (, and ) what constraints survive Ex 8
I Real-world word problem (spec a part) translate English → inequality Ex 9
J Exam twist: skew that breaks a passing circuit slack sign flips as skew grows Ex 10

The figure below is the timeline every example lives on — pin it in your mind.

Figure — Setup and hold time constraints

Cell A — plain setup, find max frequency


Cell B — plain hold check


Cell C — both pass, report slack


Cell D — positive skew (helps setup, hurts hold)


Cell E — negative skew (hurts setup, helps hold)


Cell F — zero logic (register-to-register)


Cell G — fixing a hold violation with buffers


Cell H — limiting cases


Cell I — real-world word problem


Cell J — exam twist: skew breaks a passing circuit



Connections