Every edge-triggered flip-flop comes with four timing numbers, all measured from its active clock edge. Two are requirements on the D input; two are delays on the Q output.
- Setup time
tsu: D must be stable at least this long before the edge. - Hold time
th: D must stay stable at least this long after the edge. - Minimum clock-to-Q
tcq(min): Q can't start to change until this long after the edge. - Clock-to-Q
tcq: Q is guaranteed new by this long after the edge.
The first two define the setup and hold window around the edge. The second two are the flip-flop's contamination and propagation delays.
They feed the two checks on every register-to-register path:
- Setup uses the slow numbers:
T ≥ tcq + tpd + tsu. - Hold uses the fast numbers:
tcq(min) + tcd ≥ th.