EE241 - Spring 2001 Advanced igital Integrated Circuits Lecture 22 Flip-Flop esign Latch vs. Flip-Flop Latch stores data when clock is low Flip-Flop stores data when clock rises 1
Latch Pair vs. Flip-Flop Performance metrics elay metrics» elay penalty» Clock skew penalty» Inclusion of logic» Inherent race immunity Power/Energy Metrics» Power/energy»PP, EP esign robustness Latches Negative latch (transparent when CLK= 0) Positive latch (transparent when CLK= 1) 2
Latches Transmission-Gate Latch C 2 MOS Latch Latches Courtesy of IEEE Press, New York. 2000 3
Pipelined Logic using C 2 MOS In C 1 F C 2 G C 3 Out NORA CMOS What are the constraints on F and G? TSPC - True Single Phase Clock Logic M 1 Out M 1 M 1 Out M 1 In M 2 In M 2 Out In M 2 In M 2 Out M 3 M 3 M 3 M 3 Precharged N Precharged P Non-precharged N Non-precharged P 4
TSPC - True Single Phase Clock Logic PUN In Static Logic Out PN Including logic into the latch Inserting logic between latches oubled TSPC Latches Out In Out oubled n-tspc latch oubled p-tspc latch 5
Master-Slave TSPC Flip-flops X Y (a) Positive edge-triggered flip-flop (b) Negative edge-triggered flip-flop (c) Positive edge-triggered flip-flop using split-output latches EC Alpha 21064 obberpuhl, JSSC 11/92 6
EC Alpha 21064 L1: L2: EC Alpha 21064 Integrating logic into latches Reducing effective overhead 7
EC Alpha 21164 L1 Latch L2 Latch L1 Latch with logic Flip-Flop as a Latch Pair 8
Latch vs. Flip-Flop Courtesy of IEEE Press, New York. 2000 Requirements in the Flip-Flop esign High speed of operation: Small -Output delay Small setup time Small hold time Inherent race immunity Low power Small clock load High driving capability Integration of the logic into flip-flop Multiplexed or clock scan Robustness Crosstalk insensitivity - dynamic/high impedance nodes are affected 9
Sources of Noise Courtesy of IEEE Press, New York. 2000 Gate Isolation Courtesy of IEEE Press, New York. 2000 10
Flip-Flop Robustness Robustness of the storage node Input isolation ata stored statically, max resistance limit Min capacitance limit Preventing exposure Types of Flip-Flops Latch Pair (Master-Slave) Pulse-Triggered Latch ata L1 L2 L ata 11
Flip-Flop elay Sum of setup time and -output delay is the only true measure of the performance with respect to the system speed T = T - + T Logic + T setup + 2T skew Logic N T - T Logic T Setup elay vs. Setup/Hold Times 350 Minimum ata-output 300 250 -Output [ps] Setup 200 150 100 Hold 50 0-200 -150-100 -50 0 50 100 150 200 ata- [ps] 12
Master-Slave Latches Positive setup times Two clock phases:» distributed globally» generated locally Small penalty in delay for incorporating MUX Some circuit tricks needed to reduce the overall delay Master-Slave Latches Case 1: PowerPC 603 (Gerosa, JSSC 12/94) b b 13
T-G Master-Slave Latch Feedback added for static operation Unbuffered input input capacitance depends on the phase of the clock over-shoot and under-shoot with long routes wirelength must be restricted at the input Clock load is high Low power Small clk-output delay, but positive setup Master-Slave Latches Case 2: C 2 MOS Ck Ckb Ckb Ck Ck Ckb Ck Feedback added for static operation Locally generated clock Poor driving capability Robustness to clock slope Ck Ckb 14
Pulse-Triggered Latches First stage is a pulse generator generates a pulse (glitch) on a rising edge of the clock Second stage is a latch captures the pulse generated in the first stage Pulse generation results in a negative setup time Frequently exhibit a soft edge property Note: power is always consumed in the pulse generator Pulse-Triggered Latches Case 1: Hybrid Latch Flip-Flop, AM K-6 Partovi, ISSCC 96 15
HLFF Operation 1-0 and 0-1 transitions at the input with 0ps setup time Hybrid Latch Flip-Flop Flip-flops features: single phase clock edge triggered, on one clock edge Latch features: Soft clock edge property brief transparency, equal to 3 inverter delays negative setup time allows slack passing absorbs skew Hold time is comparable to HLFF delay minimum delay between flip-flops must be controlled Fully static Possible to incorporate logic 16
Soft Edge Property Also known as cycle borrowing, or slack passing In latch based designs, if longest path datum reaches latch before its setup time, clock skew does not affect cycle time If longest path reaches latch close to setup time, clock skew is directly subtracted from cycle time Flip-flop presents a hard edge - no slack passing. HLFF is a compromise - has a controlled transparency period, that can absorb skew Price is paid in the hold time Skew absorption Hybrid Latch Flip-Flop Partovi et al, ISSCC 96 17
Pulse-Triggered Latches Case 2: AM K-7 Courtesy of IEEE Press, New York. 2000 Pulse-Triggered Latches Case 3: Semi-ynamic Flip-Flop (SFF), Sun UltraSparc III, Klass, VLSI Circuits 98 Pulse generator is dynamic, cross-coupled latch is added for robustness. Loses soft edge on rising transition Latch has one transistor less in stack - faster than HLFF, but 1-1 glitch exists Small penalty for adding logic 18
Pulse-Triggered Latches Case 3: 7474, Texas Instruments 64 S R 7474 Karnaugh maps for signals S and R S R R, 00 01 11 10 00 x 1 1 1 S R R, 00 01 11 10 00 x 1 1 1 01 11 10 S x 1 1 1 01 x 1 1 1 x 1 1 0 11 x 0 0 1 x 1 0 0 10 x 0 1 1 R R S S S S = R S R = S R S R 19
Pulse-Triggered Latches Case 4: Sense-amplifier-based flip-flop, Matsui 1992. EC Alpha 21264, StrongARM 110 First stage is a sense amplifier, precharged to high, when = 0 After rising edge of the clock sense amplifier generates the pulse on S or R The pulse is captured in S-R latch Cross-coupled NAN has different propagation delays of rising and falling edges Sense Amplifier-Based Flip-Flop The first stage is unchanged sense amplifier Second stage is sized to provide maximum switching speed river transistors are large Keeper transistors are small and disengaged during transitions 20
Sense Amplifier-Based Flip-Flop Courtesy of IEEE Press, New York. 2000 Flip-Flop Performance Comparison Test bench ata 200fF Total power consumed internal power Clock 200fF data power clock power 50fF Measured for four cases no activity (0000 and 1111 ) maximum activity (0101010..) elay is (minimum -) average activity (random sequence) - + setup time Stojanovic, Oklobdzija JSSC 4/99 21
Flip-Flop Performance Comparison elay vs. power comparison of different flip-flops Flip-flops are optimized for speed with output transistor sizes limited to 7.5µm/4.3 µm Total transistor gate width is indicated 70 Total power [uw] 60 50 40 30 20 10 HLFF 54µm msaff 64µm SFF 49 µm TG M-S 52µm Original SAFF 60µm C 2 MOS 80µm 0 100 150 200 250 300 350 400 450 500 elay [ps] Energy Consumption Energy Breakup in TG-MS (PowerPC603) 8% Clocked Nodes 6fJ Always consume E CLK = E 0-0 = E 1-1 When : 1-0 or 0-1 E int = E 1-0 E 0-0 Only when : 0-1 E ext = E 0-1 E 1-0 54% External Load 42fJ Internal Nodes 29fJ Non-inverting Flops: E avg = E CLK + α E ext + (1- α) E int Inverting Flops: 38 E avg = E CLK + (1-α) E ext + α E int (α - probability of : 0-1) [Markovic] 22
Energy issipation Comparison of Master Slave and Pulse-Triggered Flip-Flops 250 200 0--0 0--1 1--0 1--1 198 183 Energy [fj] 150 100 85 101 102 103 94 114 114 64 59 57 50 14 31 14 23 42 23 30 36 0 TG FF C2MOS HLFF SFF SAFF Resized for Energy/elay Local Clock Gating CKI 0.85 0.85 I 0.5 0.85 0.5 0.5 CKIB CKIB 0.5 2 1.2 0.5 ata-transition Look-Ahead 0.85 0.5 0.85 0.5 Pulse Generator XNOR CP 0.85 0.5 CKIB CKI Clock on demand Flip-flop 23