Documente Academic
Documente Profesional
Documente Cultură
Sequential Logic
Sequence of values
Next
Trigger State
periodically Memory
Current
Device State Combinational
LOAD Logic
Input Output
Result: a bistable
1
0 0
1 1
0 storage element
VIN VOUT
Not affected
VTC for by noise
Feedback constraint:
inverter pair
VIN = VOUT
VOUT
Three solutions:
• two end-points are stable
• middle point is metastable
A D0 G D Q’ Q
Q’
Q
Y 0 -- 0 0
Q stable
D
B D1 0 -- 1 1
S 1 0 -- 0
Q follows D
S
G 1 1 -- 1
D: data input
G: gate input
Q: state output
6.004 Computation Structures L5: Sequential Logic, Slide #6
New Device: D Latch
G=1: G=0:
Q follows D Q holds
Q’ 0
Circuit: Q D V1 V2
D 1
G G
Q V1 V2
D Q
Schematic TPD TPD
Symbol: G
BUT… A change in D
or G contaminates
G=1: Q Follows D, independently of Q’ Q, hence Q’ … how
can this possibly
G=0: Q Holds stable Q’, independently of D work?
Q’
A 0 D V2
Q
D 1
G
G
Q V2
New
State
D Q
Current
G State Combinational
Logic
Input Output
How do we
ensure
only one
car gets
through?
Sequence
of values
Gate 2 Gate 2
Gate 1 Gate 1
Sequence
of values
Key: at no
Gate 1: open time is there a Gate 1: closed
Gate 2: closed path through Gate 2: open
both gates
6.004 Computation Structures L5: Sequential Logic, Slide #12
(Edge-Triggered) D Register
D D Q D Q Q D D Q Q
master slave
G G CLK
CLK
D
CLK
D D Q D Q Q
master slave
G G
CLK
D
CLK
Q
D D Q Q
CLK
CLK
D
tPD: maximum propagation delay, CLK→Q ≥tSETUP ≥tHOLD
tCD: minimum contamination delay, CLK→Q
tSETUP: setup time
guarantee that D has propagated through feedback path before master
closes
tHOLD: hold time
guarantee master is closed and data is stable before allowing D to
change
6.004 Computation Structures L5: Sequential Logic, Slide #16
Single-clock Synchronous Circuits
We’ll use registers in a highly constrained way to build
digital systems:
Does that
symbol
register?
Single-clock Synchronous Discipline
• No combinational cycles
• Single periodic clock signal
shared among all clocked
devices
• Only care about value of
register data inputs just before
rising edge of clock
• Period greater than every
combinational delay + setup time
• Change saved state after
noise-inducing logic
transitions have stopped!
6.004 Computation Structures L5: Sequential Logic, Slide #17
Timing in a Single-clock System
Input Output
Next
tCD,R = 1ns
State
tPD,R = 3ns
tS,R = 2ns Current
tH,R = 2ns Combinational
State
Logic
Clock tCD,L = ?
tPD,L = 5ns
Input Output
Questions:
tCD,R (1 ns) + tCD,L(?) ≥ tH,R(2 ns)
• Constraints on tCD for the logic? tCD,L ≥ 1 ns
Input tPD,L
• Setup, Hold times for Inputs?
tS,INPUT = tPD,L + tS,R = 7 nS Next State tCD,L
tH,INPUT = tH,R - tCD,L= 1 nS clk tS,R
tH,R
6.004 Computation Structures L5: Sequential Logic, Slide #20
Summary
>tS >tH
Basic memory elements:
• Feedback, detailed analysis D
=> basic level-sensitive
devices (eg, latch) Clk
• 2 Latches => Register Q
• Dynamic Discipline: >tCD
constraints on input timing
<tPD
Synchronous 1-clock logic:
• Simple rules for sequential
circuits Out
In DQ DQ
• Yields clocked circuit with TS, Combinational
logic
TH constraints on input timing
Clk
Finite State Machines
Next Lecture Topic!