© Digital Integrated Circuits 2nd Sequential Circuits Digital Integrated Circuits A Design Perspective Designing Sequential Logic Circuits Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic November 2002
© Digital Integrated Circuits 2nd Sequential Circuits Sequential Logic 2 storage mechanisms positive feedback charge-based
© Digital Integrated Circuits 2nd Sequential Circuits Naming Conventions In our text: a latch is level sensitive a register is edge-triggered There are many different naming conventions For instance, many books call edge- triggered elements flip-flops This leads to confusion however
© Digital Integrated Circuits 2nd Sequential Circuits Latch versus Register Latch stores data when clock is low D Clk Q D Q Register stores data when clock rises Clk D D QQ
© Digital Integrated Circuits 2nd Sequential Circuits Latches
© Digital Integrated Circuits 2nd Sequential Circuits Latch-Based Design N latch is transparent when = 0 P latch is transparent when = 1 N Latch Logic P Latch
© Digital Integrated Circuits 2nd Sequential Circuits Timing Definitions t CLK t D t c 2 q t hold t su t Q DATA STABLE DATA STABLE Register CLK DQ
© Digital Integrated Circuits 2nd Sequential Circuits Characterizing Timing Register Latch
© Digital Integrated Circuits 2nd Sequential Circuits Maximum Clock Frequency Also: t cdreg + t cdlogic > t hold t cd : contamination delay = minimum delay t clk-Q + t p,comb + t setup = T
© Digital Integrated Circuits 2nd Sequential Circuits Positive Feedback: Bi-Stability V o 1 V i 2 5 V o 1 V i 2 5 V o 1 V i1 A C B V o2 V i1 =V o2 V o1 V i2 V i2 =V o1 C is a “metastable operation point”
© Digital Integrated Circuits 2nd Sequential Circuits Meta-Stability Gain should be larger than 1 in the transition region = = = =
© Digital Integrated Circuits 2nd Sequential Circuits Writing into a Static Latch D CLK D Converting into a MUX Forcing the state (can implement as NMOS-only) Use the clock as a decoupling signal, that distinguishes between the transparent and opaque states
© Digital Integrated Circuits 2nd Sequential Circuits Mux-Based Latches Negative latch (transparent when CLK= 0) Positive latch (transparent when CLK= 1) CLK 1 0D Q 0 1D Q
© Digital Integrated Circuits 2nd Sequential Circuits Mux-Based Latch
© Digital Integrated Circuits 2nd Sequential Circuits Mux-Based Latch NMOS onlyNon-overlapping clocks
© Digital Integrated Circuits 2nd Sequential Circuits Master-Slave (Edge-Triggered) Register Two opposite latches trigger on edge Also called master-slave latch pair
© Digital Integrated Circuits 2nd Sequential Circuits Master-Slave Register Multiplexer-based latch pair
© Digital Integrated Circuits 2nd Sequential Circuits Clk-Q Delay
© Digital Integrated Circuits 2nd Sequential Circuits Setup Time = = - -
© Digital Integrated Circuits 2nd Sequential Circuits Reduced Clock Load Master-Slave Register
© Digital Integrated Circuits 2nd Sequential Circuits Avoiding Clock Overlap CLK A B (a) Schematic diagram (b) Overlapping clock pairs X D Q CLK
© Digital Integrated Circuits 2nd Sequential Circuits Overpowering the Feedback Loop ─ Cross-Coupled Pairs NOR-based set-reset
© Digital Integrated Circuits 2nd Sequential Circuits Cross-Coupled NAND Cross-coupled NANDs Added clock This is not used in datapaths any more, but is a basic building memory cell
© Digital Integrated Circuits 2nd Sequential Circuits Sizing Issues Output voltage dependence on transistor width Transient response
© Digital Integrated Circuits 2nd Sequential Circuits Storage Mechanisms D CLK Q Dynamic (charge-based) Static
© Digital Integrated Circuits 2nd Sequential Circuits Making a Dynamic Latch Pseudo-Static
© Digital Integrated Circuits 2nd Sequential Circuits More Precise Setup Time
© Digital Integrated Circuits 2nd Sequential Circuits Setup/Hold Time Illustrations Circuit before clock arrival (Setup-1 case)
© Digital Integrated Circuits 2nd Sequential Circuits Setup/Hold Time Illustrations Circuit before clock arrival (Setup-1 case)
© Digital Integrated Circuits 2nd Sequential Circuits Setup/Hold Time Illustrations Circuit before clock arrival (Setup-1 case)
© Digital Integrated Circuits 2nd Sequential Circuits Setup/Hold Time Illustrations Circuit before clock arrival (Setup-1 case)
© Digital Integrated Circuits 2nd Sequential Circuits Setup/Hold Time Illustrations Circuit before clock arrival (Setup-1 case)
© Digital Integrated Circuits 2nd Sequential Circuits Setup/Hold Time Illustrations Hold-1 case 0
© Digital Integrated Circuits 2nd Sequential Circuits Setup/Hold Time Illustrations Hold-1 case 0
© Digital Integrated Circuits 2nd Sequential Circuits Setup/Hold Time Illustrations Hold-1 case 0
© Digital Integrated Circuits 2nd Sequential Circuits Setup/Hold Time Illustrations Hold-1 case 0
© Digital Integrated Circuits 2nd Sequential Circuits Setup/Hold Time Illustrations Hold-1 case 0
© Digital Integrated Circuits 2nd Sequential Circuits Other Latches/Registers: C 2 MOS “Keepers” can be added to make circuit pseudo-static
© Digital Integrated Circuits 2nd Sequential Circuits Insensitive to Clock-Overlap M 1 DQ M 4 M 2 00 V DD X M 5 M 8 M 6 V (a) (0-0) overlap M 3 M 1 DQ M 2 1 V DD X M 7 1 M 5 M 6 V (b) (1-1) overlap
© Digital Integrated Circuits 2nd Sequential Circuits Pipelining Reference Pipelined