xch7 Sequential2
xch7 Sequential2
q Logic
g
Combinational circuits: output is only a function of
current input values.
Sequential circuits: outputs depend on not only current
Chapter 7. Designing Sequential input values, but also preceding input values. It remembers
L i Ci
Logic Circuits
i the histor
history of the ssystem.
stem
Sequential
q Logic
g Timing Metrics
setup time (tsu): the time that data inputs (D) must be valid before clock transition
transition.
Two storage mechanisms: hold time (thold): the time data input must remain valid after the clock edge.
9 Positive feedback propagation delay (tc-q): Data at D input is copied to Q output after a worst case
9 Charge based propagation delay (with reference to the clock edge)
edge).
Registers: used to hold the system state
9 positive edge triggered
9 negative
ti edge
d ttriggered
i d clock
clock
Inputs
p Outputs
p tsu thold time
Combinational
Logic
Current Next In data
stable
State State
tcc-qq time
Latches vs Flipflops
p p Sequential
q Definitions
Latches (level-sensitive) Static versus dynamic storage
level sensitive circuit that passes inputs to Q when the static uses a bistable element with feedback (regeneration) and
clock
l k iis hi
high
h ((or llow)) - transparent
t t mode
d thus preserves its state as long as the power is on
input sampled on the falling (or rising) edge of clock is static is preferred when updates are infrequent (clock gating)
held stable when clock is low ((or high) g ) - hold mode dynamic stores state on parasitic capacitors so only holds the
Flipflops (edge-triggered) state for a period of time (milliseconds) and requires periodic
edge sensitive circuits that sample the inputs on a clock refresh
transition dynamic is usually simpler (fewer transistors)
transistors), higher speed
speed, lower
– positive edge-triggered: 0 → 1 power
– negative
g edge-triggered:
g gg 1→0 Latch versus flipflop
built using latches (e.g., master-slave flipflops cascading latches are level sensitive with two modes: transparent - inputs
a positive and negative latch) are passed to Q, and hold - output stable.
fliplflops are edge sensitive that only sample the inputs on a clock
transition
N P
Clk Clk Logic
Latch Latch
tC 2 Q tC 2 Q
Q D D Q
1 Q 0
CLK
CLK
D D 0 D 1
CLK
Forcing the state CLK CLK
Converting into a MUX (can implement as NMOS-only)
Q = Clk ⋅ Q + Clk ⋅ In Q = Clk ⋅ Q + Clk ⋅ In
clk !Q
clk clk
D Q
D Q
!clk !clk
clk feedback ! lk
!clk feedback
(hold mode) (hold mode)
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
MS ET Implementation Slave
MS ET Timing
g Properties
p
Master
Assume propagation delays of inverter and TG are tpd_inv
and tpd_tx, that the contamination delay is 0, and that the
inverter delay to derive !clk is 0
I2 T2 I3 I5 T4 I6 Q Set-up time - time before rising edge of clk that D must be
QM valid
tsu=3 * tpd_inv + tpd_tx
I1 T1 I4 T3
D Propagation delay - time for QM to reach Q
tc-q=tpd_inv + tpd_tx
clk
Hold time - time D must be stable after rising edge of clk -
thlod=0
master transparent master hold
slave hold slave
l t
transparent
t
clk
! lk
!clk
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
Set--up Time Simulation
Set Set--up Time Simulation
Set
PSPICE setset-up
up time simulation: we progressively skew the input with PSPICE setset-up
up time simulation: we progressively skew the iput with
respect to the clock edge until the circuit fails. respect to the clock edge until the circuit fails.
9 Case #1: skew=210ps: correct value of input D is sampled (Q remains 9 Case #2: skew=200ps: incorrect value of D propagates to Q (Q
at VDD)
VDD). changes to 0)0).
3
3
Q
2.5
25
2.5
tsetup = 0.21 ns
2 QM I2 out tsetup = 0.20 ns
2
1.5 D clk 1.5 D clk
Volts
Volts
1 Q
1
V
V
0.5 0.5
I2 out
0 0
QM
works correctly
-0.5 -0.5 fails
0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1
Time (ns) Time (ns)
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
D
1 tc-q(LH) tc-q(HL) = 180 psec
V
tc-q(HL) I2 I4
reverse
0.5 !clk clk conduction
z to switch the state of master, T1 must be sized to overpower the
0 feedback inverter I2 to switch the state of cross-coupled inverter.
-0.5 (I2: small W/L → larger Ron, weaker device).
0 0.5 1 1.5 2 2.5
z to avoid reverse conduction
conduction, I4 must be weaker than I1 (I4: small W/L,
W/L
Time (ns) larger Ron, weaker device).
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
Master--slave Register based on NMOS-
Master NMOS-only Pass Transistors
Non--Ideal Clocks
Non
Negative
N ti master-slave
t l ttwo-stage
t register
i t based
b d on NMOS
NMOS-only
l Clock skews come from
pass transistors and cascade-inverter latches: 9 delay for clk’ generated from clk,
9 When clk=1, P1 on, P2 off, P3 off, P4 on, X=D’, master stage on, 9 Variations in wires used to route clk and clk’,
slave stage off, Q remains its previous value, 9 load capacitance vary based on data in connecting latches.
9 When clk=1→0, P1 off, P2 on, P3 on, P4 off, master stage off, slave Non-ideal clocks:
g on, Q=X’=(D’)’=D|
stage ( ) |clk 1 0: falling-edge
g g triggered.
gg
clk=1→0 9 1-1 overlap
9 0-0 overlap
clk clk
X !clk Q
clk !clk !clk
P1 A P3 I3 I4 !Q
D I1 I2
Id l clocks
Ideal l k Non-ideal
Non ideal clocks
B clock skew
P2 P4
1-1 overlap
0-0 overlap
© Digital Integrated Circuits2nd !clk clk © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
SR flip-
flip-flop: Cross
Cross--Coupled NAND 6 Transistor CMOS SR Latch
Another SR flip-flop implementation: cross-coupled NAND structure Previous SR flip-flop: asynchronous.
Static SR (set-reset) flip-flop based on cross-coupled NAND gates, Synchronous clocked 6-transistor CMOS SR latch: use clock for
with the 2nd input of NAND gates connected to trigger inputs (S and R
R, synchronous behavior
behavior.
active low) for forcing output Q and Q’ to a given state. 9 When clk=0: R and S are isolated from cross-coupled inverters, Q
9 SR=00: QQ’=11, Q’ is not inversion of Q → forbidden state. and Q’ remains their values.
9 SR=10: Q is forced to 0 0, Q’=1
Q =1. 9 When clk=0→1,
clk=0→1 S and R are connected to Q and Q’
Q.
9 SR=01: Q is forced to 1, Q’=0. - If SR=00: Q=0, Q’=0, forbidden.
9 SR=11: cross-coupled inverter ((A·0)’=A’, NAND gate with input “1” is - If SR=11: Q=1, Q’=1, forbidden.
lik an iinverter),
like t ) Q and d Q’ retain
t i th
their
i values.
l - If SR
SR=01:
01 QQ=0,
0 Q’
Q’=1,
1 clk
lk
- If SR=10: Q=1, Q’=0. clk M2 M4
Q M6
S
S R Q Q clk
lk !Q Q M5 !Q
S Forbidden State clk R
Q
S Q 0 0 1 1
R M1 M3
1 0 0 1 S
R Q
0 1 1 0
Q 1 1 Q Q
R
1.5
2 W = 0.5 μ m
off → on on → off
Q (Vollts)
0 6μ m
W = 0.6
Volts
ts
M2 M4 1.0
1 →0 W = 0.7 μ m
Q
1← 0 1
!Q 05
0.5 0 8μ m
W = 0.8
off->on off->on W = 0.9 μ m
0 → 1 clk M6 M8 clk 0 → 1 W = 1μ m
M1 M3 0.0 0
on → off
ff ff → on
off 20
2.0 25
2.5 3.0
3 0 35
3.5 40
4.0 0 0.2
0 2 0.4
0 4 0.6
0 6 0.8
0 8 1 1.21 2 1.4
1 4 1.6
1 6 1.8
18 2
M7 R1
0 S M5
off on
W/L 5 and 6 time (ns)
(a) (b)
Output voltage dependence T
Transient
i t response (L=0.25µm)
(L 0 25 )
on transistor width
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
Storage Mechanisms Dynamic ET Flipflop
Static storage: cross-coupled
cross coupled inverter pair forming a bistable element.
element Dynamic TG positive edge
edge-triggered
triggered register (8 transistors):
A stored value remains valid as long as supply voltage is applied. 9 When clk=0, T1 is on, T2 is off, master stage transparent, input D is
Dynamic storage: utilize charge stored on capacitor to represent logic sampled to storage node 1, slave stage is hold, node 2 is floating.
signal (absence:
( 0, presence: 1).
) Due to charge leakage, periodic 9 When clk=0→1, T1 on→off, ff T2 off→on,
ff master stage is hold, slave
refreshing is needed to maintain the signal. stage is transparent, the value sampled on node 1 before clock rising
edge propagates to output Q.
master slave
!clk clk
CLK
CLK
Node 1 QM Node 2
D T1 I1 T2 I2 Q
Q
D Q
CLK C1 C2
clk !clk
D
CLK master
aste ttransparent
a spa e t
slave hold clk
CLK
master hold
Static Dynamic (charge-based) !clk
slave transparent
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
A QM B
QM D T1 I1 T2 I2 Q
D T1 I1 T2 I2 Q
C1 C2
C C !clk1 !clk2
1 2 master transparent
clk !clk
slave hold
0-0 overlap race condition
clk
lk toverlap0-0 < tT1 +tI1 + tT2 clk1
lk1
tnon_overlap
!clk
1-1 overlap p race condition clk2
toverlap1-1 < thold master hold
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd slave transparent
Sequential Circuits Sequential Circuits
M5 M1
clk
Add above logic (weak feedback inverter) to all dynamic
Positive C2MOS latch Negative C2MOS latch
latches
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
C2MOS (Clocked CMOS) ET Flipflop C2MOS (Clocked CMOS) ET Flipflop
C2MOS (clocked CMOS) positive edge-triggered flipflop:
clock-skew insensitive, an ingenious master-slave
VDD VDD register insensitive to clock overlap (8-transistors).
Master Slave
M2 M6
M2 M6
CLK M4 CLK M8
X clk M4 !clk M8
D Q QM
CL1 CL2 D Q
CLK M3 CLK M7
!clk M3 CL1 clk M7 CL2
M1 M5
M1 M5
“Keepers”
Keepers can be added to make circuit pseudo
pseudo-static
static !clk
C2MOS (Clocked CMOS) ET Flipflop
Working g principle: operates in two phases ((positive edge-triggered
g gg register).
g )
C2MOS FF 0-
0-0 Overlap Case
C2MOS register with clk-clk
clk-clk’ clocking is insensitive to clock overlap
9 clk=0: M3, M4 on; M7, M8 off, master stage acts as inverter, QM=D’ (evaluation); as long as rise and fall times of clock edges are sufficiently small.
slave stage in high-impedance (hold), Q remains previous value stored on CL2.
Ex: For (0-0) clock overlap, M3 M7 are off, M4 M8 are on. If D=1, M2
9 clk=1: master stage in hold mode, slave stage evaluates, Q=QM’, value stored
in CL1 propagates to Q. is off
off, D cannot pass to QM. If D=0
D=0, QM=1,
=1 but M6 is off
off, Q is floating,
floating
Master Slave QM cannot pass to Q. Thus D cannot pass to Q during (0-0) overlap.
M2 M6
M2 M6
clk Mon !clk Moff
4
QM on 8 0 M4 0 M8
off Q QM
D Q
D
!clk Mon CL1 clk Moff CL2
3
on 7 C1 C2
off
M1 M5
M1 M5
master transparent
0-0 overlap: clk=clk’=0
slave hold
clk
clk clk
!clk master hold
!clk
!clk
slave transparent
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
CEx:2MOS FFoverlap,
1-1MOverlap
1- Case C2MOS Transient Response
For (1-1) clock overlap M are off
off, M M are on
on. If D=0
D=0, M is off
off, D In sum,, C2MOS register
g is insensitive to clock overlaps
p because overlaps p
4 8 3 7 1
cannot pass to QM. If D=1, QM=0, but M5 is off, Q is floating, QM cannot pass activate either pull-up or pull-down networks of latches, but never both of
to Q. Thus D cannot pass to Q during (1-1) overlap. them simultaneously.
However right after overlap
However, overlap, clk’=0
clk 0 and M8 is onon, QM=0 0 propagates to QQ. → However, if tr and tf of clock is large
g ((slow clocks),) there exists a time slot
Not good. Solution: 1-1 overlap constraint: toverlap1-1 < thold (data D should be where both NMOS and PMOS are on. → Both master and slave stages are
stable during overlap period). on, Input can directly go to output → signal race condition.
3
M2 M6
2.5 For a
QM(3) 0.1 ns clock: no
QM 2 Q(3) race
D Q
1 M3 C1 1 M7 C2 1.5
Q(0.1)
( )
1
M1 M5 clk(0.1)
1-1 overlap: clk=clk’=1 0.5
For a
clk(3) 3 ns clock
clk clk 0 (race condition
exists)
!clk !clk -0 5
-0.5
0 2 4 6 8
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd Time (nsec)
Sequential Circuits Sequential Circuits
clk clk Q
In In clk clk
Q
Positive latch (6 transistors) Negative latch (6 transistors)
(transparent when CLK= 1) (transparent when CLK= 0)
hold when clk = 1 transparent when clk = 1
transparent when clk = 0 hold when clk = 0
© Digital Integrated Circuits
2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
Embedding Logic in TSPC Latch TSPC - True Single Phase Clock Logic
TSPC latch offers possibility of embedding logic functionality into TSPC – True Single Phase Clock Logic
latches.→ reduce delay overhead due to latches. 9 Virtually no design constrains: no even-inversion
Ex: AND latch. Instead of implement it as “CMOS NAND + CMOS constrains between 2 latches or between a latch and a
inverter + positive TSPC latch”, we can implement it as “AND latch”. dynamic block. Dynamic and static circuits can mix freely.
9 When clk=0, hold mode, Q remains its current value,
9 Logic functions can be included in negative TSPC or
9 When clk
clk=1,
1, transparent mode, Q=X’=((AB)’)’=AB
Q X ((AB) ) AB
positive TSPC
S C latches, or placed between them.
9Disadvantage: more transistors per latch (6 instead of 4)
VD D VDD VDD VDD
PUN A B
PUN
Q X Q
In In
clk clk clk clk Static
φ φ φ φ
Logic Out
A
PDN PDN
B
Including logic into latch AND latch (positive) Including logic into Inserting logic between
© Digital Integrated Circuits2nd © Digital Integrated Circuits2ndthe latch latches
Sequential Circuits Sequential Circuits
A
Q B clk
In clk In clk D clk QM Q’
A Q Q
transparent
p when clk = 1 hold when clk = 1
hold when clk = 0 transparent when clk = 0 clk
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
Master--Slave Flip-
Master Flip-flops Optional: Pulse-
Pulse-Triggered Latches
Master-slave
Master slave flip
flip-flops
VDD
flops implemented with TSPC
VDD VDD VDD VDD VD D
An
A Alternative
Alt ti Approach
A h
φ φ
Y
D X
D D Ways to design an edge-triggered sequential cell:
φ φ φ φ
D
φ φ
Master-Slave Pulse-Triggered
(a) Positive edge-triggered D flip-flop (b) Negative edge-triggered D flip-flop
Latches Latch
L1 L2 L
VDD VDD VDD Data Data
D Q D Q D Q
D D
Clk Clk Clk Clk
φ φ
Clk
( ) Positive
(c) P iti edge-triggered
d ti d D flip-flop
fli fl
using split-output latches
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
Optional: Pulsed Latches Optional: Pulsed Latches
Hybrid Latch – Flip
Flip-flop
flop (HLFF), AMD K
K-6
6 and K
K-7
7:
VDD VDD
M3 M6 VDD
CLK CLK P1 P3
Q x Q
D CLKG CLKG MP CLKG
M2 M5
X M6
M3
MN
M1 M4
D P2 M5
M2
(a) register (b) glitch generation
M4
M1 CLKD
CLK
CLKG
clk 0 1
P1 ON Vdd
P3 Q 1/0
1.0 X
M3 OFF M6 OFF
0.5 CLK CLKD ON ON
1/0
0.0 D M2 ON/ P2 M5
1 OFF
1 0 1
20.5 ON
M1 M4
00
0.0 02
0.2 00.44 06
0.6 08
0.8 10
1.0 ON !clkd
0 OFF
time (ns)
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
Optional: Sense Amp FF ((StrongArm
StrongArm SA100) Flipflop Comparison Chart
Sense amplifier (circuits that accept small swing input
signals and amplify them to full rail-to-rail signals) flipflops Name Type #clk ld #tr tset-up thold tpFF
z advantages
g are reduced clock load and that it can be used as a
receiver for reduced swing differential buses Mux Static 8 (clk-!clk) 20 3tpinv+tptx 0 tpinv+tptx
PowerPC Static 8 (clk-!clk) 16
0 1
2-phase Ps-Static 8 (clk1-clk2) 16
D 1
M9
1 0
M2 T-gate Dynamic 4 (clk-!clk) 8 tptx to1-1 2tpinv+tptx
M5 M7
C2MOS Dynamic 4 (clk-!clk) 8
Q
TSPC Dynamic 4 (clk) 11 tpinv tpinv 3tpinv
M1 M4
1
S-O TSPC Dynamic 2 (clk) 10
!Q
AMD K6 Dynamic
y 5 ((clk)) 19
M6 M8
M3 1 1 SA 100 SenseAmp 3 (clk) 20
0 M10
clk 0 1
Pipelining
Choosing a Clocking Strategy Pipelining:
p g ap popular
p design
g technique
q to accelerate operation
p of
Choosing the right clocking scheme affects the functionality, speed, datapaths in digital processors.
and power of a circuit Ex: Datapath to compute log(|a+b|). (a,b: streams of numbers).
T
Two-phase
h d
designs
i Without pipeline,
pipeline minimum clock period Tmin for correct evaluation is:
+ robust and conceptually simple Tmin,non-pipe=tc-q+tpd,logic+tsu
- need to generate and route two clock signals
tc-q,
q, tsu: propagation delay and setup time of register,
tpd,logic: worst case delay path through combinational network,
- have to design to accommodate possible skew between the
two clock signals
tpd,logic=tpd,add+tpd,abs+tpd,log
Single phase designs
+ only need to generate and route one clock signal
+ supported by most automated design methodologies
+ don’t have to worry about skew between the two clocks
- have to have g guaranteed slopes
p on the clock edgesg
Example
E l off pipelined
i li d
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd computations
Sequential Circuits Sequential Circuits
Pipelining Pipelining
Pipeline
p improves
p resource utilization and increases functional Assume latch delay and setup time are ignorable with respect
throughput, with the cost of additional pipeline registers and to logic delays, and all logic blocks have approximately the same
increased latency. propagation delay
Ex: Datapath to compute log(|a+b|)
log(|a+b|). (a,b:
(a b: streams of numbers)
numbers). tp,add=tp,abs=tp,log=tp
With pipeline, minimum clock period Tmin for correct evaluation is:
9 Minimum clock period for non-pipelined design: Tmin_non_pipe=3tp
Tmin,pipe=tc-q+max(tpd,add, tpd,abs, tpd,log)+tsu
9 Minimum clock period for pipelined design: Tmin_pipe
i i =ttp
9 The pipelined network outperformed the non-pipelined version
by 3 times: Tmin_pipe=Tmin_non_pipe/3
REG
REG
a a
REG
REG
REG
. .
REG
φ log Out φ log Out
φ φ φ φ
REG
REG
b b
Example
E l off pipelined
i li d computations
t ti Non pipelinedversion
Non-pipelined version Pipelined version
φ φ
(assembly-line fashion)
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
Latch-
Latch
Pipeline
p
-Based Pipeline
circuits can be constructed with level-sensitive latches or
Pipelined Logic using C2MOS Latches
Pipelining datapath using C2MOS latches
edge-triggered registers.
Design constraint: A C2MOS-based pipelined circuit is
Ex: Pipeline based on pass-transistor-based positive and negative
latches (using clk-clk’
clk clk two
two-phase
phase non-overlapping
non overlapping clocks) race-free as long as all the logic functions F, G
9 when clk=0→1, input data is sampled on C1, computation of F starts, (implemented using static logic) between the latches are
9 when clk=1→0, result of F is stored on C2 and computation of G starts. noninverting.
Latch-based pipeline has race condition if overlap between clk and clk’
clk
exists. CLK CLK CLK
M2 M6 M2
In Out
F G
clk M4 !clk M8 clk M4
C1 C2 C3 F G
In Out
!clk M3 C1 clk M7 C2 !clk M3 C3
CLK M1 M5 M1
CLK
NORA Logicg
Compute F compute G
What are the constraints on F and G?
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
Pipelined Logic using C2MOS Latches Pipelined Logic using C2MOS Latches
In a C2MOS based pipelined circuit circuit, the only way a signal can Ex.
E If F is an inverter,
in erter in (0-0)
(0 0) clock overlapping,
o erlapping all
race from stage to stage is when logic function F is inverting. C2MOS latches simplify to pure pull-up networks: input races
Ex. If F is an inverter, in ((1-1)) clock overlapping,
pp g all C2MOS to output
output. (clk
(clk=clk’=0
clk 0, when In=0
In 0, it directly passes to Out
Out,
latches simplify to pure pull-down networks: input races to output. Out=1→not allowed!)
(clk=clk’=1, when In=1, it directly passes to Out, Out=0→not
allowed! Signal should pass one stage at a time) time).
VDD VDD VDD
φ φ
1
φ φ
N b off a static
Number t ti inversions
i i should
h ld be
b even
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
9 A bl
block
k th
thatt iis iin evaluation
l ti d during
i Φ=1Φ 1 iis called
ll d a Φ-
Φ VDD VDD VDD VD D
module, while the inverse is called a Φ-module. φ In 4
In 1 φ Out
In 2 PDN
In 3 φ
φ In4 (b) φ-module
module
nor2 inverter
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
NORA CMOS Modules NORA CMOS Modules
NORA datapath consists of a chain of alternating Φ and Φ
modules Design Rules
While one class of module is precharging with its output 9 The dynamic-logic rule: inputs to a dynamic Φn (Φp) block
latch in hold mode, preserving the previous output value, the are only allowed to make a single 0→1 (1→0) transition
other class is evaluating. during the evaluation period.
Data
D t isi passedd iin a pipelined
i li d ffashion
hi ffrom module
d l tto 9 The C2MOS rule: In order to avoid races
races, the number of
module. Due to its design flexibility, extra inverter stages, as static inversions between C2MOS latches should be even.
required in Domino-CMOS
Domino CMOS, are most often avoidedavoided. Revised C2MOS rule:
9 The number of static inversions between C2MOS latches
should be even (in the absence of dynamic nodes); if
dynamic nodes are present, the number of static inversions
between a latch and a dynamic gate in the logic block
should be even
even. The number of static inversions between
the last dynamic gate in a logic block and the latch should
be even as well.
Multivibrator Cricuits
Cricuits Non--Bistable Sequential Circuits─Schmitt Trigger
Non
Bistable circuits: two stable states. ((e.g.
g register,
g , latch)) Schmitt trigger:
Astable circuits: oscillators (e.g. on-chip clock generation) 9 Slowly changing input leads to fast transition time at output
Monostable (one-shot) circuits: used for pulse generators 9 VTC displays different switching thresholds for positive-
Schmitt
S h itt ttrigger:
i h
hysteresis
t i iin DC characteristics,
h t i ti switching
it hi and negative-going input signals - hysteresis.
threshold depends on transition direction (low-to-high or 9 Switching thresholds for low-to-high and high-to-low
high-to-low) good in noisy environments
high-to-low), environments. transitions are called VM+ and VM-.
Vout VOH
9 Hysteresis voltage = VM+-VM-
I
In O t
Out
VOL
Schematic symbol
VM– VM+ Vin
VTC of non-inverting Schmitt trigger
© Digital Integrated Circuits2nd © Digital Integrated Circuits2nd
Sequential Circuits Sequential Circuits
Noise Suppression using Schmitt Trigger CMOS Schmitt Trigger
Schmitt trigger can turn a noisy or slowly varying input to CMOS Schmitt trigger design
a clean digital output. 9 Switching threshold VM of CMOS inverter depends on (kn/kp)
Reason for hysteresis: positive feedback
feedback. 9 Increasing (kn/kp) ratio reduces VM, and vice versa
9 Adapting the ratio depending on the direction of the
Vin
i Voutt transition results in a shift in switching thresholds → hysterisis
VDD
VM+
M2 M4
Vin X Vout
VM–
M1 M3
t0 t t 0 + tp t
Schmitt Trigger
gg Simulated VTC Alternative CMOS Schmitt Trigger Design
Alternative CMOS Schmitt trigger design
VDD
5.0 6.0
M4
4.0 M6
4.0 M3
3.0
Vout (V)
V M+ In Out
VX (V)
2.0 M2
20
2.0 X
V M- M5 VD D
1.0
M1
0.0
0 0 0.0
0 0
0.0 1.0 2.0 3.0 4.0 5.0 0.0 1.0 2.0 3.0 4.0 5.0
Vin (V) V in (V)
9 In quiescent state
state, both inputs to XOR are identical → Out=0
9 An input transition causes XOR inputs to differ temporarily
→ Out
Out=11 for td then goes low again. In
In B VM
DELAY (b) Waveforms.
Out
td td
Out
t
t1 t2
M2
In
M1
Iref Iref
Vcontr M3
M5 Current starved inverter
tppH L (nsec)
4
2.0
15
1.5 Int
1.0
0.5
0.0
2 0.5
0.5 1.5 2.5 3.5
time (ns)
T = 2 (log3) RC
simulated waveforms of 2-stage
2 stage VCO