0% found this document useful (0 votes)
406 views17 pages

Setup and Hold Time

Setup time is the minimum amount of time the data signal should be held steady before the clock event so that the data are reliably sampled by the clock. Hold time is the minimum amount of time the data signal should be held steady after the clock event so that the data are reliably sampled. Setup and hold timing analysis checks for violations by comparing the maximum delay along the data path to the minimum delay along the clock path for setup, and comparing the minimum delay along the data path to the maximum delay along the clock path for hold. An example circuit is analyzed and found to have a setup violation but no hold violation. Increasing the clock period or decreasing the data path delay could eliminate the setup violation.

Uploaded by

Vamsi Somisetty
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
406 views17 pages

Setup and Hold Time

Setup time is the minimum amount of time the data signal should be held steady before the clock event so that the data are reliably sampled by the clock. Hold time is the minimum amount of time the data signal should be held steady after the clock event so that the data are reliably sampled. Setup and hold timing analysis checks for violations by comparing the maximum delay along the data path to the minimum delay along the clock path for setup, and comparing the minimum delay along the data path to the maximum delay along the clock path for hold. An example circuit is analyzed and found to have a setup violation but no hold violation. Increasing the clock period or decreasing the data path delay could eliminate the setup violation.

Uploaded by

Vamsi Somisetty
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

Setup and Hold time

Setup time
Setup time is the minimum amount of time
the data signal should be held steady before
the clock event so that the data are reliably
sampled by the clock. This applies to
synchronous circuits such as the flip-flop.
The Time when input data is available and
stable before the clock pulse is applied is
called Setup time.

Hold time
Hold time is the minimum amount of time the
data signal should be held steady after the
clock event so that the data are reliably
sampled. This applies to synchronous circuits
such as the flip-flop.
The Time after clock pulse where data input is
held stable is called hold time.

Single-Cycle Setup and Hold For Flip-Flops

Setup Check Timing

if Slack= Required Time - Arrival time < 0 (-ve) ,


then there is a Setup violation at FF2.

Hold Check Timing

Hold Check Timing

Problem 1

Hold Analysis:
When a hold check is performed, we
have to consider two things Minimum Delay along the data path.
Maximum Delay along the clock
path.

Hold Analysis:
Data path is: CLK->FF1/CLK ->FF1/Q
->Inverter ->FF2/D
Delay in Data path
= min(wire delay to the clock input of FF1) +
min(Clk-to-Q delay of FF1) +min(cell delay of
inverter) + min(2 wire delay- "Qof FF1-toinverter" and "inverter-to-D of FF2")
=Td = 1+9+6+(1+1)=18ns

Hold Analysis:
Clock path is: CLK-> buffer -> FF2/CLK
Clock path Delay
= max(wire delayfrom CLK to Buffer
input) + max(cell delay of Buffer) +
max(wire delay from Buffer output to
FF2/CLK pin) + (hold time of FF2)
=Tclk = 3+9+3+2 = 17 ns
Hold Slack = Td - Tclk = 18ns -17ns
= 1ns
Since Hold Slack is positive-> No
hold Violation.

Hold Analysis:
If the hold time had been 4 ns
instead of 2 ns, then there would
have been a hold violation.
Td=18ns and Tclk = 3+9+3+4=19ns
Hold Slack=Td - Tclk = 18ns - 19ns =
-1ns (Violation)

Setup Analysis:
Maximum Delay along the data path.
Minimum Delay along the clock path.

Setup Analysis:
Data path is: CLK->FF1/CLK ->FF1/Q
->Inverter
->FF2/D
Delay in Data path
= max(wire delay to the clock input
of FF1) + max(Clk-to-Q delay of FF1)
+max(cell delay of inverter) + max(2
wire delay- "Qof FF1-to-inverter" and
"inverter-to-D of FF2")
=Td = 2+11+9+(2+2) = 26ns

Setup Analysis:
The first part of the clock path delay (during
setup calculation) is the clock period, which
has been set to 15 ns. Setupischeckedatthe
next clock cycle. That's the reason for clock
path delay we have to include clock period
also.

Setup Analysis:
Clock path is: CLK-> buffer -> FF2/CLK
Clock path Delay
= (Clock period) + min(wire delay from CLK to
Buffer input) + min(cell delay of Buffer) +
min(wire delay from Buffer output to FF2/CLK
pin) - (Setup time of FF2)
= Tclk = 15+2+5+2-4=20ns
Setup Slack = Tclk - Td = 20ns - 26ns = -6ns.
Since Setup Slack is negative -> Setup violation.

Setup Analysis:
A bigger clock period or a less maximum
delay of the inverter solve this setup
violations in the circuit.
e.g
If Clock period is 22ns then
Tclk = 22+2+5+2-4=31-4=27ns AND Td =
26ns
Setup Slack = Tclk - Td = 27-26= 1ns (No
Violation)

You might also like