Beruflich Dokumente
Kultur Dokumente
Sequential Circuits
Boonchuay Supmonchai
Integrated Design Application Research (IDAR) Laboratory
B.Supmonchai
Clocking Strategies
Sequential Logic
B.Supmonchai
Sequential Logic
Inputs
Outputs
COMBINATIONAL
LOGIC
Current State
Next state
Q
State
Register
CLOCK
Storage Mechanisms
Positive Feedback
STATIC
2102-545 Digital ICs
Charge-Based
DYNAMIC
Sequential Logic
B.Supmonchai
Static storage
preserve state as long as the power is on
have positive feedback (regeneration) with an internal
Dynamic storage
store state on parasitic capacitors
only hold state for short periods of time (milliseconds)
Sequential Logic
B.Supmonchai
Flipflops (edge-triggered)
edge sensitive circuits that sample the inputs on a clock
transition
positive edge-triggered: 0 1
negative edge-triggered: 1 0
built using latches (e.g., master-slave flipflops)
2102-545 Digital ICs
Sequential Logic
B.Supmonchai
Vo1
Vi2
Vo2
Cascaded Inverters
A
C
B
Vi1 = Vo2
2102-545 Digital ICs
Sequential Logic
B.Supmonchai
Vi1
Vi2
the total propagation delay around the loop circuit (twice the
delay of an inverter)
2102-545 Digital ICs
Sequential Logic
B.Supmonchai
Review: SR Latch
!Q
!Q
Action
!Q
memory
set
reset
disallowed
Sequential Logic
B.Supmonchai
!Q
clock
clock
transparent mode
In our course
All latches mean
clocked latches
clock
hold mode
2102-545 Digital ICs
Sequential Logic
B.Supmonchai
Latch
D Q
D Q
Clk
Clk
Clk
Clk
Flipflop
Sequential Logic
10
B.Supmonchai
Negative Latch
In
Out
Clk
Clk
Clk
Clk
In
In
Out
Out
Out
Stable
Out
Follow In
Out
Stable
Out
Follow In
Sequential Logic
Out
Stable
Out
Follow In
Out
Out
Stable
Out
Follow In
11
B.Supmonchai
Latch-Based Design
N latch is transparent
when f = 0
P latch is transparent
when f = 1
N
Latch
Logic
P
Latch
Logic
2102-545 Digital ICs
Sequential Logic
12
B.Supmonchai
Timing Metrics
clock
clock
tsu
In
time
thold
data
stable
time
tc-q
Out
output
stable
output
stable
time
2102-545 Digital ICs
Sequential Logic
13
B.Supmonchai
Timing Definitions
Sequential Logic
14
B.Supmonchai
Outputs
COMBINATIONAL
LOGIC
Current State
Next state
Q
State
Register
T (clock period)
CLOCK
Sequential Logic
15
B.Supmonchai
Sequential Logic
16
B.Supmonchai
CLK
Q
CLK
D
CLK
CLK
17
B.Supmonchai
feedback
0
Q
clk
1
clk
Positive Latch
Negative Latch
Q = clk & Q | !clk & D
Sequential Logic
18
B.Supmonchai
Positive Latch
Q
input sampled
(transparent mode)
!clk
D
clk
clk
clk load is two transistors (and two
for !clk) = clock load of 4
!clk
Sequential Logic
feedback
(hold mode)
19
B.Supmonchai
!Q
input sampled
(transparent mode)
!clk
clk
Reduced clock load, but
threshold drop at output of
pass transistors so reduced
noise margins and performance
2102-545 Digital ICs
!clk
Sequential Logic
feedback
(hold mode)
20
B.Supmonchai
clk
clk
21
B.Supmonchai
0
1
D
Q
QM
clk
clk
clk
clk
Slave
Master
clk = 0
transparent
hold
clk = 1
hold
transparent
Sequential Logic
QM
Q
22
B.Supmonchai
MS ET Implementation
Slave
Master
I2
I3
T2
I5
T4
I4
T3
I6
QM
D
I1
T1
20 Transistors*
8 clock loads
clk
master transparent
slave hold
clk
master hold
slave transparent
!clk
2102-545 Digital ICs
Sequential Logic
23
B.Supmonchai
MS ET Timing Properties
Sequential Logic
24
B.Supmonchai
Set-up time
How long before the rising edge does D have to be stable such
Hold time
since T1 turns off when the clock goes high, any changes in D
Sequential Logic
25
B.Supmonchai
2.5
QM
Volts
2
1.5
1
tsetup = 0.21 ns
clk
0.5
I2 out
-0.5
0
0.2
0.4
0.6
0.8
Time (ns)
works correctly
2102-545 Digital ICs
Sequential Logic
26
B.Supmonchai
2.5
I2 out
Volts
2
1.5
1
tsetup = 0.20 ns
clk
0.5
QM
-0.5
0
0.2
0.4
0.6
0.8
Time (ns)
Fails!
2102-545 Digital ICs
27
B.Supmonchai
2.5
Volts
Clk
1.5
tc-q (LH)
tc-q (HL)
0.5
0
-0.5
0.5
1.5
2.5
Time (ns)
propagation delay is measured from the 50% point
of the clk edge to the 50% point of the Q output
2102-545 Digital ICs
Sequential Logic
28
B.Supmonchai
Reduced Load MS ET FF
I1
QM
T
1
T
2
I2
!clk
12 Transistors
4 clock loads
!clk
clk
clk
Q
I4
reverse conduction
Sequential Logic
29
B.Supmonchai
Non-Ideal Clocks
clk
clk
!clk
!clk
Ideal clocks
2102-545 Digital ICs
0-0 Overlap
Non-Ideal clocks
Sequential Logic
30
B.Supmonchai
clk
!clk
Race
D
P1
I2
I1
P3
I3
I4
P2
P4
!clk
clk
!Q
Undefined state both B and D are driving A when clk and !clk
are both high
Dynamic storage when clk and !clk are both low (0-0 overlap)
2102-545 Digital ICs
Sequential Logic
31
B.Supmonchai
Pseudostatic Two-Phase ET FF
X
clk1
D
P1
I2
I1
P3
B
P2
clk2
master transparent
slave hold
clk1
clk2
dynamic
storage
tnon_overlap
I3
I4
!Q
P4
clk1
master hold
slave transparent
clk2
2102-545 Digital ICs
Sequential Logic
32
B.Supmonchai
clk1
clk
B
clk2
clk
A
B
clk1
clk2
2102-545 Digital ICs
Sequential Logic
33
B.Supmonchai
Power PC Flipflop
!clk
clk
1D
01
!clk
10
10
clk
master transparent
slave hold
clk
16 Transistors
8 clock loads
master hold
slave transparent
!clk
2102-545 Digital ICs
Q 01
Sequential Logic
34
B.Supmonchai
M2
M4
Q
!Q
clk
M6
M1
M8
clk
M7
M3
M5
Sequential Logic
35
B.Supmonchai
on off
M2
M4
Q 1 0
1 0 !Q
off ->on
0 1 clk
off ->on
M6
M1
0 S
on off
clk 0 1
M7
R 1
M3
off on
M5
on
off
M8
8 Transistors
2 Clock loads*
* sized
over M2
2102-545 Digital ICs
Sequential Logic
36
B.Supmonchai
Sizing Issues
(W/L)2 and 4 = 1.5m/0.25 m
(W/L)1 and 3 = 0.5m/0.25 m
!Q (Volts)
1.5
0.5
0
2
2.5
3.5
(W/L)5 and 6
Sequential Logic
37
B.Supmonchai
Transient Response
!Q (Volts)
!Q
S
W=0.5 m
W=0.6 m
W=0.7 m
W=0.8 m
W=1 m
W=0.9 m
0
0
0.4
0.8
1.2
1.6
Time (ns)
Individual device ratio for M5 or M6 must be larger than approx. 6.
Analysis results give 2.26 (instead of 3) since it doesnt take into account
channel length modulation and DIBL (drain induced barrier loading).
2102-545 Digital ICs
Sequential Logic
38
B.Supmonchai
clk
clk
clk
M2
M4
Q
R
M5
!Q
M1
M6
M3
6 Transistors
2 Clock loads
Sequential Logic
39
B.Supmonchai
Static
(Positive Feedback)
CLK
CLK
Q
CLK
D
CLK
CLK
Sequential Logic
40
B.Supmonchai
Dynamic ET Flipflop
master
slave
!clk
clk
T1
I1
QM
T2
C
1
clk
I2
C
!clk
tsu = tpd_tx
thold = zero
tc-q = 2 tpd_inv + tpd_tx
master transparent
slave hold
clk
!clk
8 Transistors
4 Clock loads
master hold
slave transparent
Sequential Logic
41
B.Supmonchai
clk
QM
T1
I1
T2
C
clk
clk
!clk
I2
C
!clk
Sequential Logic
42
B.Supmonchai
Dynamic Two-Phase ET FF
clk1
clk2
QM
T1
T2
I1
C
!clk1
I2
!clk2
master transparent
slave hold
clk1
tnon_overlap
clk2
master hold
slave transparent
2102-545 Digital ICs
Sequential Logic
43
B.Supmonchai
T1
!clk
2102-545 Digital ICs
Sequential Logic
44
B.Supmonchai
Slave
M2
on
clk
M4
off
on
M3
!clk
QM
C1
off
!clk
M8
on
off
clk
M7
Q
C2
on
off
M1
M5
master transparent
slave hold
clk
!clk
2102-545 Digital ICs
8 Transistors
4 Clock loads
M6
Insensitive to clock
overlap as long as the
rise and fall times of
the clock edges are
sufficiently small
master hold
slave transparent
Sequential Logic
45
B.Supmonchai
M4
D
M3
M6
QM
C1
M7
M1
C2
M5
clk
clk
!clk
!clk
M8
Sequential Logic
46
B.Supmonchai
Sequential Logic
47
B.Supmonchai
D
1
M3
M6
M8
QM
C1
Q
1
M1
M7
C2
M5
clk
clk
!clk
!clk
1-1 overlap constraint: toverlap1-1 < thold
Sequential Logic
48
B.Supmonchai
Sequential Logic
49
B.Supmonchai
QM(3)
2.5
Q(3)
2
1.5
Q(0.1)
clk(0.1 ns)
0.5
clk(3 ns)
0
-0.5
0
Time (nsec)
Sequential Logic
50
B.Supmonchai
Positive Latch
Q
clk
In
clk
In
clk
clk
Sequential Logic
51
B.Supmonchai
PUN
Q
In
clk
clk
Q
clk
clk
PDN
B
A AND B
Sequential Logic
52
B.Supmonchai
Sequential Logic
53
B.Supmonchai
TSPC ET FF
Master
clk
on
off
clk
Slave
on
QM
off
on
clk off
on
clk
Q
off
12 Transistors
4 Clock loads
master transparent
slave hold
master hold
slave transparent
clk
Sequential Logic
54
B.Supmonchai
Notes on TSPC ET FF
Sequential Logic
55
B.Supmonchai
Simplified TSPC ET FF
I1
clk
I3
off
on
M6
M9
Y1D
clk
on X !D
clk
off M2
off
M5
on M8
clk
M1
Moff
M7
4
on
M3
I2
9 Transistors*
4 Clock loads
I1 sample (transparent)
I2 precharged
I3 hold
*(11 if Q is needed)
I1 hold
I2 evaluate
I3 sample (transparent)
clk
Q D
Sequential Logic
56
B.Supmonchai
Notes on TSPC ET FF
Sequential Logic
57
B.Supmonchai
!Qmod
Transistor sizing
!Qorig
2
Original width
M4, M5 = 0.5m
M7, M8 = 2m
Qmod Qorig
0
0
0.2
0.4
0.6
0.8
Time (nsec)
Modified width
M4, M5 = 1m
M7, M8 = 1m
Sequential Logic
58
B.Supmonchai
Negative Latch
Q
In
clk
A
In
clk
When In = 1, A = | VTp |
Sequential Logic
59
B.Supmonchai
Split-Output TSPC ET FF
8 Transistors*
2 Clock loads
*(10 if Q is needed)
clk
A
clk
QM
Q
Which edge-triggered?
Sequential Logic
60
B.Supmonchai
Pulse-Triggered Flipflops
L1
Data
D
Clk
Pulse-Triggered Flipflop
L2
D
L
Q
Clk
Data
Clk
Clk
Clk
Sequential Logic
61
B.Supmonchai
Pulsed FF (AMD-K6)
clk
0/Vdd
P1ON X Vdd
P3
M3OFF
M6OFF
ON
1/0
D
1
1/0
P2
M5
OFF
1
0
ON
M2ON/
0
ON/OFF
M1ON
!clkd
M4
ON
OFF
Sequential Logic
62
B.Supmonchai
Notes on Pulsed FF
propagate to Q.
the clock goes high, meaning that time can be borrowed from
the previous cycle.
2102-545 Digital ICs
Sequential Logic
63
B.Supmonchai
M2
1
M5
M9
M7
!S
Q
M1
M4
!R
M3
0
M6
1
M8
M10
0 1
clk
2102-545 Digital ICs
!Q
Sequential Logic
64
B.Supmonchai
Sequential Logic
65
B.Supmonchai
Type
#clk ld
#tr
tset-up
thold
tpFF
Mux
Static
8 (clk-!clk)
20
3tpinv+tptx
tpinv+tptx
PowerPC
Static
8 (clk-!clk)
16
2-phase
Ps-Static
8 (clk1-clk2)
16
T-gate
Dynamic
4 (clk-!clk)
C2MOS
Dynamic
4 (clk-!clk)
TSPC
Dynamic
4 (clk)
11
S-O TSPC
Dynamic
2 (clk)
10
AMD K6
Dynamic
5 (clk)
19
SA 100
SenseAmp
3 (clk)
20
Sequential Logic
tptx
to1-1 2tpinv+tptx
tpinv
tpinv
3tpinv
66
B.Supmonchai
Two-phase designs
+ robust and conceptually simple
- need to generate and route two clock signals
- have to design to accommodate possible skew between the
Sequential Logic
67
B.Supmonchai
Astable
No stable states -> Oscillator, On-chip clock generator
Schmitt Trigger
A special regenerative circuit exhibiting hysteresis in VTC.
2102-545 Digital ICs
Sequential Logic
68
B.Supmonchai
Schmitt Trigger
Non-Bistable Sequential Circuits
V OH
Vout
In
Out
2 important properties
V OL
Hysteresis
Fast Transition Time
at the output
2102-545 Digital ICs
VM
Sequential Logic
VM+
Vin
69
B.Supmonchai
VIN
VOUT
VM+
VM-
t0
t0 + t p
Sequential Logic
70
B.Supmonchai
M2
Moves switching
threshold of the
first inverter
M4
VIN
M1
VOUT
M3
Low-to-High
reff = kM1/(kM2 + kM4)
High-to-Low
reff = (kM1 + kM3)/kM2
Adapting the ratio between PMOS and NMOS, depending upon the
direction of the transition results in a shift in switching threshold
2102-545 Digital ICs
Sequential Logic
71
B.Supmonchai
2.5
2.5
2.0
2.0
VM1
1.5
1.0
Vout(V)
Vout(V)
M4 = 1.5 m/0.25 m
VM2
1.5
1.0
k=1
k=3
0.5
0.0
0.0
k=2
0.5
0.5
1.0
1.5
Vin (V)
2.0
2.5
0.0
0.0
k=4
0.5
1.0
1.5
Vin (V)
2.0
2.5
Sequential Logic
72
B.Supmonchai
M4
M6
M3
VOUT
VIN
M2
M5
X
M1
Sequential Logic
73
B.Supmonchai
3.0
2.5
V 1 V3 V 5
Period: T = 2 x tp x N
2.0
1.5
1.0
0.5
0.0
20.5
0.0
0.5
1.0
1.5
time (ns)
Sequential Logic
74
B.Supmonchai
VDD
M6
M4
Schmitt Trigger
restores signal slopes
M2
In
M1
Ire f
Vcontr
Ire f
M3
M5
c
2102-545 Digital ICs
e
s
n
Sequential Logic
75
Vcontr
M3
M5
Current starv
B.Supmonchai
tpHL (nsec)
6
)
c
e
s
n
(
t
L
H
p
4
2
0.0
0.5
1.5
V contr (V)
Vctrl (V)
2.5
Sequential Logic
of contro
Delay sensitive to
B.Supmonchai
V o1 +
- in 2
v1
v2
v3
v4
V ctrl
delay cell
- Inverting Inputs/Outputs
Sequential Logic
77
B.Supmonchai
V1 V2
2.5
V4
2.0
1.5
1.0
0.5
0.0
2 0.5
0.5
1.5
2.5
3.5
time (ns)
Sequential Logic
78