Upload
ashrafuli44
View
220
Download
0
Embed Size (px)
Citation preview
7/31/2019 Delay Components in Circuit
1/8
CS623
CAD for VLSI
Lecture 30 : Delay Components in aCircuit
Shankar Balachandran
Dept. of Computer Science and Engineering
Indian Institute of Technology Madras
CS623
21April2
007
The following slides are adopted from UTD 3325
Slides
CS623
31April2007
Combinational Circuit Timing Parameters
Rise Time (tr), the time required for a signal totransition from 10% of its maximum value to 90%
of its maximum value.
Fall Time (tf), the time required for a signal totransition from 90% of its maximum value to 10%
of its maximum value.
Propagation Delay (tpLH, tpHL), the delay measuredfrom the time the input is at 50% of its full swing
value to the time the output reaches its 50% value.
CS623
41April2007
Timing parameters (contd)
time
Vin
Vout
time
Vma x
0.5Vma x
0.5Vma x
Vma x0.9Vma x
0.1Vma x
tpLH tpHL
tr tf
0
0
7/31/2019 Delay Components in Circuit
2/8
CS623
51April2
007
Example: Gate delayDetermine the worst case propagation delay throughthese circuits.
( ) ( ) ( ){ }max 2 5 , 3 5 , 3 8pt gd= + + =
2 ns 4 ns 2 gd
3 gd
5 gd
2 4 6pt ns= + =
2 gd
3 gd
5 gd
3 gd 6 gd
( ) ( ) ( ) ( ){ }max 2 5 , 3 5 , 3 , 6 3 9pt gd= + + + =
CS623
61April2
007
Timing Analysis of Combinational Circuits
Using gates with finite propagation delays, tpLHand tpHL instead of zero gate delays used in
functional analysis.
4 ns5 nsXOR
2 ns3 nsINV
tp H Ltp LHGate
CS623
71April2007
Vin
V1
V2
V3
Vou t
t=0
4
2
3
2
5
8 ns
01 Transition on Vin
Vin
V1
V2
V3
Vou t 4
3
2
3
5
9 ns
10 Transition on Vin
4 ns5 nsXOR
2 ns3 nsINV
tpH LtpL HGate
CS623
81April2007
Setup and Hold Times
Setup time, tsu, is the time period prior to the clock
becoming active (edge or level) during which the
flip-flop inputs must remain stable.
Hold time, th, is the time after the clock becomes
inactive during which the flip-flop inputs must
remain stable.
Setup time and hold time define a window of time
during which the flip-flop inputs cannot change
quiescent interval.
7/31/2019 Delay Components in Circuit
3/8
CS623
91April2
007
Propagation Delay
Propagation delay, tpHL and tpLH, has the same
meaning as in combinational circuit beware
propagation delays usually will not be equal for all
input to output pairs. There can be two propagation
delays: tC-Q (clockQ delay) and tD-Q (dataQ
delay).
For a level or pulse tr iggered latch:
Data input should remain stable till the clock becomes
inactive.
Clock should remain active till the input change is
propagated to Q output. That is, active period of the clock,
tw > max {tpLH, tpHL}
CS623
101April2
007
Latch & Flip -flop Timing Parameters
CS623
111April2007
Latch and Flip-flop Timings
CLK
D
Q
Q
Flip-flop
Latch
tsuth
tC-Q
tsu
thtC-Q
tsuth
tC-QtD-Q
CS623
121April2007
Characterizing Timing Setup time, hold time
Propagation delays
tC-QtC-Q
tD-Q
Flip-FlopLatch
tD-CtD-C
7/31/2019 Delay Components in Circuit
4/8
CS623
131April2
007
More Precise FF Setup & Hold Times
CLK
D
Q
t
t
t
Sampling Window
0
50
100
150
200
250
300
350
-200 -150 -100 -50 0 50 100 150 200
Data-Clk [ps]
Clk-Output[ps]
Setup Hold
Minimum Data-Output
CS623
141April2
007
Sequential Circuit Timing
Once the functionality of a sequential network is
designed, its timing parameters must be
determined. Timing problems can be very subtle
because timing parameters can vary with device
age and other operating conditions.
CS623
151April2007
Global setup time (Tsu)
Global hold time (Th)
Maximum clock frequency
Clock skew.
These parameters are derived using the circuit (known) delays described
below.
tio delay from input of IFL to output of OFL
tif delay from circuit inputs of flip-flop inputs
tfo delay from flip-flop outputs to circuit outputs
tff delay from flip-flop outputs to flip-flop inputs
tc-q clock to Q propagation delay of flip-flopstsu setup time of flip-flops
th hold time of flip-flops
tc clock delay; time required for clock to reach all flip-flops
Timing Parameters
CS623
161April2007
X (at sequential circuit input)
Changes that occur at inputs can be delayed by as much as
maximum tif by the time they reach the flip-flop inputs. Hence, we
want to setup circuit inputs relative to clock edge appearing at the
flip-flops.
Similarly, hold time of the circuit inputs relative to the system clock
at the source is given by
= + max max min ifu su cs t t tT
= +max min max h if c hT t t t
Global Setup and Hold Times
Tsu Th
th
tsu
CLK (at clock source)tc
CK (at FF clock input)
tif
tif
D (at FF input)
7/31/2019 Delay Components in Circuit
5/8
CS623
171April2
007
The limiting factor on the clocking rate is the propagation delaythrough the IFL block:
Changes on the Qs must propagate through the IFL before they
can affect the next state
Clock Frequency
CS623
181April2
007
The limiting factor on the clocking rate is the propagation delay
through the combinational logic block (input forming logic):
Changes on the Qs must propagate through the combinational
logic before they can affect the next state
Clock Frequency
Comb.
logic
Q iD i
QjDj
CK i
CKj
tff
CL K
CS623
191April2007
Maximum Clock Frequency
For an edge-triggered circuit: minimum clock period is,
Maximum Clock Frequency:
+ +C Q ,ma x ff ,ma x su ,ma x clk t t tT
clk
clkT
f1
tsu
Tck (=Tclk)
CKi
Edge Triggering
tff
Dj
Qi
tC-Q
CS623
201April2007
Maximum Clock Frequency
For an edge-triggered circuit: minimum clock period is,
Maximum Clock Frequency:
+ +C Q ff su max max max
clk t t tT
clk
clkT
f1
Comb.
logic
Q iDi
Qj
Dj
CKi
CKj
tff
CL K
tsu
Tck (=Tclk)
CKi
Edge Triggering
tff
Dj
Qi
tC-Q
7/31/2019 Delay Components in Circuit
6/8
CS623
211April2
007
Timing Violations
The clock period (Tclk) has a lower bound oftff.max .
If the clock period is equal to (tff.max + tC-Q.max) then the
flip-flop state changes can violate setup times.
Remedy:
Use faster flip-flops (decrease tC-Q )
Use faster gates (decrease tff)
Use a slower clock (increase clock period, Tclk)
+ +max maxmaxfC fl uc k Q st tT t
CS623
221April2
007
The previous discussion assumes that clock signals arrive
at all flip-flops simultaneously - this is not a good
assumption since it is not true in practice.
Because of different wire lengths over which the clock
signals travel and the load at the destination, there is a
slight difference in clock arrival times at different flip-flop
inputs.
Clock skew, tskew, is the difference in time between
triggering edges seen at different flip-flops. Clock skew
affects minimum Tclk.
Clock Skew
CS623
231April2007
Therefore, for an edge-triggered circuit with clock skew,
Clock skew is a significant factor in determining the speed of high-performance
sequential circuits. The larger the skew, the slower the circuit will operate.
max,max,max,max, suffpskewclkttttT +++
Max. Clock Frequency wi th Skew
tsu
Tck (=Tclk)
CKi tskew
CKj tp
Qj tff
Di
CS623
241April2007
Therefore, for an edge-triggered circuit with clock skew,
Clock skew is a significant factor in determining the speed of high-performancesynchronous circuits. The larger the skew, the slower the circuit will operate.
max max max maxclk skew C Q ff suT t t t t
+ + +
Max. Clock Frequency with Skew
tsu
Tck(=Tclk)
CKi tskew
CKj tC-Q
Qj tff
Di
ts k ew
Comb.
logic
Q iDi
Qj
Dj
CK i
CKj
tff
CL K
7/31/2019 Delay Components in Circuit
7/8
CS623
251April2
007
Can any skew be countered simply by slowing down the clock?
If the skew is too large, state change caused by an edge at FFi will changethe state ofFFj erroneously when the clock edge finally gets there!
In the worst case, iftff= 0 then,
flip-flops propagation delay must be greater than its hold time.
min maxallowedskew C Q ht t t
=
Maximum Allowable Clock SkewNo
CKj
C Q ff skew ht t t t + +CKi
Qi
Dj
state ofDj before
clock becomes active
state ofDj after
clock becomes active
tskew
thtC-Q
tff
tskew
Comb.logic
Q iD i
QjDj
CKi
CKj
tff
CL K
CS623
261April2
007
For the circuit given below determine all the sequential circuit timing
parameters.
For a D flip-flop use: tsu = 2ns, th = 15ns and tC-Q = 20ns
For a NAND gate use: tp,max= 10ns and tp,min = 3ns
Timing Analysis Example
CS623
271April2007
.
Why is clock skew irrelevant in this example?
nstt
nstt
nstt
nstt
nstt
nstt
nandpc
nandpc
nandpff
nandpff
nandpif
nandpif
62
202
62
202
62
303
min,,min,
max,,max,
min,,min,
max,,max,
min,,min,
max,,max,
==
==
==
==
==
==
,max ,max ,min
,max ,min ,max
,max ,max ,max
,max
,max ,min ,min ,max
2 30 6 26
20 1 5 6 29
20 20 2 42
1 / 42 23.8
20 6 15 11
su su if c
h h if c
clk C Q ff su
clk
skew C Q ff h
T t t t ns
T t t t ns
T t t t ns
f ns MHzt t t t ns
= + = + =
= + = + =
+ + = + + =
= =
= + = + =
For a D flip-flop use: tsu = 2ns, th = 15ns, tC-Q = 20ns
For a NAND gate use: tp,max= 10ns, tp,min = 3ns
CS623
281April2007
1-Phase Clock w/ Level Triggering
( )
( )
and
ormin max ma
min max ma
x
max min max
min
min
m
x
i
max
n
w d q h skew
w d q h s
skew d q w
l
l
w
h
w su
l
ke
t t t t
t t t
t t t
t
t
t
t t
t
t
+ +
+
+ >
Latch must be open for less than the shortest combinational logic
delay but more than the worst setup time.
Positive clock skew
7/31/2019 Delay Components in Circuit
8/8
CS623
291April2
007
Sequential Systems Using Latches
Latches can be used to create sequential systems. However, since these are
level-triggered clocking must be done carefully must ensure that state changes
only once per clock cycle.
Use narrow-width clock whosepulse width is less than the fastest possible path
through the combinational logic.
To guarantee correct next state, make sure that the clock period is longer thanthe worst-case propagation delay through the combinational logic.
tw< tff.min+ tD-Q.min
> (tD-Q.max + tff.max+ tsu.max)
CLK
ts k ew
Comb.
logicQ iD i
QjDj
CK i
CKj
tffCL K
CS623
301April2
007
Clocking Constraints with Latches
th
CKi
tD-Q
Qi
tff
Di
tskewCKj
Dj
tw
min min max max
max
w D Q ff h skew
w su
t t t t t
t t
< +
>
tw
tsu
tskew
Comb.
logicQ iD i
QjDj
CKi
CKj
tffCLK
CS623
311April2007
Clocking Frequency with LatchesTclk
tsu
CKi
tD-Q
Qjtff
Dj
tskew
CKj
Di
( )max min max max maxclk skew w su D Q ff su
T t t t t t t
> + + + +
tsu
tw
ts k ew
Comb.
logicQ iD i
QjD
j
CK i
CKj
tffCL K