350 likes | 646 Views
Chapter 7. Designing Sequential Logic Circuits. Rev 1.0: 05/11/03 1.1: 5/23/03. Sequential Logic. Finite State Machine (FSM) Pipelined System. 2 storage mechanisms: Positive feedback (SRAM) Charge-based (DRAM). Naming Conventions. In our textbook:
E N D
Chapter 7 Designing SequentialLogic Circuits Rev 1.0: 05/11/03 1.1: 5/23/03
Sequential Logic • Finite State Machine (FSM) • Pipelined System • 2 storage mechanisms: • Positive feedback (SRAM) • Charge-based (DRAM)
Naming Conventions • In our textbook: • a latch is Level-sensitive flip-flop • a register is Edge-triggered flip-flop • There are many different naming conventions • For instance, many books call Edge-triggered elements flip-flops (asynchronous JK, SR) This leads to confusion
Latch v.s. Register • Latch stores data when clock is low (or high) • Register stores data when clock rises (on edges) D Q D Q Clk Clk Clk Clk D D Q Q
Latches transparent hold hold hold
Latch-Based Design • N latch is transparentwhen f = 0; hold when f = 1 • P latch is transparent when f = 1; hold when f = 0 f f N P Logic Latch Latch Logic
CLK Register t D Q t t su hold D DATA CLK STABLE t t c q - Q DATA STABLE t Timing Definitions • (a) Setup time (T_su): the time before the clock edge that the D input has to be stable • (b) Hold time (T_hold): the time after tue clock edge that the D input has to main stable • (c) Clock-to-Q delay (Tc-q): the delay from the positive clock input to the new value of the Q output.
Characterizing Timing t D -Q D Q D Q Clk Clk t t C -Q C -Q Latch Register
Maximum Clock Frequency T CLK tclk-Q + tp,comb + tsetup Also: tcdreg + tcdlogic >= thold tcd: Contamination Delay = Minimum delay tclk-Q + tp,comb + tsetup <= T
Q 0 Q 1 D 1 D 0 CLK Mux-Based Latches Negative latch (transparent when CLK= 0) Positive latch (transparent when CLK= 1) CLK
Mux-Based Latch CLK Q M CLK Q M CLK CLK Non-overlapping clocks NMOS only
CLK D D CLK Writing into a Static Latch Use the clock as a decoupling signal, that distinguishes between the transparent and opaque states Forcing the state (can implement as NMOS-only) Converting into a MUX
Master-Slave (Edge-Triggered) Register Two opposite latches trigger on edge Also called master-slave latch pair
I I T I I T I Q 5 2 2 3 5 4 6 Q M D I T I T 1 1 4 3 CLK Master-Slave Register Multiplexer-based latch pair
Setup Time I2-T2 : I2 output toT2
Clk-Q Delay 2.5 CLK 1.5 D t c - q(lh) t c - q(hl) Volts Q 0.5 2 0.5 0 0.5 1 1.5 2 2.5 time, nsec
Reduced Clock Load Master-Slave Register c.f: 8 Clock loads in Mater-Slave Register Design
Avoiding Clock Overlap X CLK CLK Q A D B CLK CLK (a) Schematic diagram CLK CLK (b) Overlapping clock pairs
SR Flip-Flop: Cross-Coupled Pairs NOR-based Set-Reset Flop-Flop Cross-coupled NORs
Cross-Coupled NAND Cross-coupled NANDs Added Clock Control This asynchronous SR FF is not used in datapaths any more,but is a basic building memory cell
Sizing Issues Output voltage dependence on transistor width Transient response
CLK D Q CLK Storage Mechanisms Static Dynamic (charge-based)
Clock Overlap T0-0: T1 and T2 on Race Condition
Making a Dynamic Latch Pseudo-Static Adding a weak feedback inverter
Clocked CMOS (C2MOS) “Keepers” can be added to make circuit pseudo-static
Insensitive to Clock-Overlap V V V V DD DD DD DD M M M M 2 6 2 6 M M 0 0 4 8 X X D Q D Q M M 1 1 3 7 M M M M 1 5 1 5 (a) (0-0) overlap (b) (1-1) overlap
True Single-Phase Clocked Register (TSPC) Positive latch (transparent when CLK= 1) Negative latch (transparent when CLK= 0) A register can be constructed by cascading Positive and Negative Latches 12 transistors are used!
Including Logic in TSPC Example: logic inside the latch AND latch
Pipelining Pipelined Reference
Pipelining At the expense of “Latency (input-to-output delay)” Not good for interactive communicaitons
7.5.2. NORA CMOS- A logic style for pipelined structure (To be added next time)