Lecture 14
Lecture 14
[Adapted from Prof. Mary Jane Irwin’s slides, Rabaey’s Digital Integrated
Circuits, Second Edition, ©2003 J. Rabaey, A. Chandrakasan, B. Nikolic]
Review: Sequential Definitions
Static versus dynamic storage
static uses a bistable element with feedback (regeneration) and
thus preserves its state as long as the power is on
static is preferred when updates are infrequent (clock gating)
dynamic stores state on parasitic capacitors so only holds the
state for a period of time (milliseconds) and requires periodic
refresh
dynamic is usually simpler (fewer transistors), higher speed, lower
power
Latch versus flipflop
latches are level sensitive with two modes: transparent - inputs
are passed to Q and hold - output stable
fliplflops are edge sensitive that only sample the inputs on a clock
transition
Review: Timing Metrics
In D Q Out
clock
clock
In data
stable
tc-q time
Inputs Outputs
Combinational
Logic
Current Next
Registers
State State
State
T (clock period)
clock
!clk clk
QM
D T1 I1 T2 I2 Q
C1 C2
clk !clk
tsu = tpd_tx
thold = zero
master transparent
tc-q = 2 tpd_inv + tpd_tx
slave hold
clk
QM
Q
!clk
!clk clk
QM
D T1 I1 T2 I2 Q
C1 C2
clk !clk
clk1 clk2
QM
D T1 I1 T2 I2 Q
C1 C2
!clk1 !clk2
master transparent
slave hold
clk1
tnon_overlap
clk2
master hold
slave transparent
C2MOS (Clocked CMOS) ET Flipflop
A clock-skew insensitive FF
Master Slave
M2 M6
clk Mon
4
!clk Moff
8
off QM on
D Q
!clk Mon
3
C1 clk Moff
7
C2
off on
M1 M5
master transparent
slave hold
clk
M2 M6
0 M4 0 M8
QM
D Q
C1 C2
M1 M5
clk clk
!clk !clk
C2MOS FF 1-1 Overlap Case
M2 M6
QM
D Q
1 M3 C1 1 M7 C2
M1 M5
clk clk
!clk !clk
3
For a
2.5
QM(3) 0.1 ns clock
2 Q(3)
Volts
1.5
Q(0.1)
1 clk(0.1)
0.5 For a
clk(3) 3 ns clock
0 (race condition
exists)
-0.5
0 2 4 6 8
Time (nsec)
Pipelining using C2MOS
In = 1
on clk (off)
!clk
clk clk Q
In In clk clk
Q
PUN A B
Q Q
In clk clk clk clk
A
PDN
B
TSPC ET FF
Master Slave
clk on clk on on on Q
D
off off QM clk off clk off
master transparent
slave hold
master hold
clk slave transparent
Simplified TSPC ET FF
off
M3 clk on
M 6 M9
QM 1 D
QD
clk Mon
D off 2 X !D M5 clk Moff
on 8
M1 clk Moff
4 M7
on
master transparent
slave hold
master hold
clk slave transparent
Sizing Issues in Simplified TSPC ET FF
clk
!Qmod Transistor sizing
2 !Qorig
Original width
Volts
M4, M5 = 0.5m
1 M7, M8 = 2m
Qorig
Modified width
0 M4, M5 = 1m
Qmod
0 0.2 0.4 0.6 0.8 1 M7, M8 = 1m
Time (nsec)
Split-Output TSPC Latches
Positive Latch Negative Latch
Q A
In clk In clk
A Q
clk
D clk QM
Q
clk
Fix 4: Pulsed FF (AMD-K6)
Pulse registers - a short pulse (glitch clock) is generated
locally from the rising (or falling) edge of the system clock
and is used as the clock input to the flipflop
race conditions are avoided by keeping the transparent mode time
very short (during the pulse only)
advantage is reduced clock load; disadvantage is substantial
increase in verification complexity
0/1 on/off
off
clk 0 1
P1 on P3 Q 1/0
X 1
M3 off M6 off
on on
1/0
D M2 on/ P2 M5
1 off
1 0 1 on
M1 M4
on !clkd
0 off
Fix 5: Sense Amp FF (StrongArm SA100)
Sense amplifier (circuits that accept small swing input
signals and amplify them to full rail-to-rail signals) flipflops
advantages are reduced clock load and that it can be used as a
receiver for reduced swing differential buses
onoffon
1
D 1
M9
M2
on M5 M7
01 11
off on on off 1 0
offonoff !Q
M1 M4
Q
on off off on 0 1
11 01
off M6 M8
M3
0 M10
clk onoffon
Flipflop Comparison Chart