A data-arrives-before-the-setup-window-closes ledger checks whether data reaches the latch early enough before the selected clock edge. The stated 8 s edge, 5 s data arrival, 2 s setup window, and 1 s setup slack are exact only for the ideal timing-row model. Real timing closure adds clock skew, jitter, PVT variation, delay distributions, metastability risk, probe calibration, finite precision, and measurement uncertainty.

Setup and hold both pass when their slack values are nonnegative. Exact arithmetic here means exact results for the stated model inputs; measured inputs still carry uncertainty and significant-figure limits.

highlighted = computed this step

Data must arrive before the setup window closes

The selected edge is at 8 seconds, and data arrives at 5 seconds.

8 s+(−5 s)+(−2 s)=1 s8\ \text{s}+(-5\ \text{s})+(-2\ \text{s})=1\ \text{s}
Passing setup windowSetup slack is recomputed from edge and arrival.period 8 sedges 4edge 1 at 8 slast 24 sedge 1 at 8 sdata 5 snext 10 ssetup slack 1 shold slack 1 saccepted

Passing rows keep both slacks nonnegative

Each row recomputes setup and hold slack from arrival and next-change times.

tDtnextssetupshold4 s10 s2 s1 s5 s10 s1 s1 s6 s11 s0 s2 s\begin{array}{c|c|c|c}t_D&t_{\text{next}}&s_{\text{setup}}&s_{\text{hold}}\\4\ \text{s}&10\ \text{s}&2\ \text{s}&1\ \text{s}\\5\ \text{s}&10\ \text{s}&1\ \text{s}&1\ \text{s}\\6\ \text{s}&11\ \text{s}&0\ \text{s}&2\ \text{s}\\\end{array}

The next change must wait through the hold window

The next data change is at 10 seconds, leaving 1 second of hold slack.

10 s+(−8 s)+(−1 s)=1 s10\ \text{s}+(-8\ \text{s})+(-1\ \text{s})=1\ \text{s}
Passing hold windowBoth slacks are visible checked labels.period 8 sedges 4edge 1 at 8 slast 24 sedge 1 at 8 sdata 5 snext 10 ssetup slack 1 shold slack 1 saccepted