Presentation is loading. Please wait.

Presentation is loading. Please wait.

EE141 Chapter 6 Designing Combinational Logic Circuits V1.0 4/25/2003.

Similar presentations


Presentation on theme: "EE141 Chapter 6 Designing Combinational Logic Circuits V1.0 4/25/2003."— Presentation transcript:

1 EE141 Chapter 6 Designing Combinational Logic Circuits V1.0 4/25/2003

2 Combinational vs. Sequential Logic
EE141 Combinational vs. Sequential Logic Combinational Sequential Output = f ( In ) Output = f ( In, Previous In )

3 EE141 Static CMOS Circuit At every point in time (except during the switching transients) each gate output is connected to either via a low-resistive path. V or V DD ss The outputs of the gates assume at all times the value of the Boolean function, implemented by the circuit (ignoring, once again, the transient effects during switching periods). This is in contrast to the dynamic circuit class, which relies on temporary storage of signal values on the capacitance of high impedance circuit nodes.

4 Static Complementary CMOS
EE141 Static Complementary CMOS VDD In1 PMOS only (good for transfer 1) In2 PUN InN F(In1,In2,…InN) In1 In2 PDN NMOS only (good for transfer 0) InN One and only one of the networks (PUN or PDN) is conducting in steady state PUN and PDN are dual logic networks

5 Threshold Drops in NMOS and PMOS
EE141 Threshold Drops in NMOS and PMOS VDD VDD PUN S D VDD D S 0  VDD 0  VDD - VTn VGS CL CL PDN VDD  0 VDD  |VTp| Why PMOS in PUN and NMOS in PDN … threshold drop NMOS transistors produce strong zeros; PMOS transistors generate strong ones VGS CL CL D S VDD S D

6 Complementary CMOS Logic Style
EE141 Complementary CMOS Logic Style

7 NMOS Transistors in Series/Parallel Connection
EE141 NMOS Transistors in Series/Parallel Connection Transistors can be thought as a switch controlled by its gate signal NMOS switch closes when switch control input is high

8 PMOS Transistors in Series/Parallel Connection
EE141 PMOS Transistors in Series/Parallel Connection

9 EE141 Example Gate: NAND

10 EE141 Example Gate: NOR

11 Complex CMOS Gate B C A D OUT = D + A • (B + C) A D B C EE141
Shown synthesis of pull up from pull down structure D B C

12 Constructing a Complex Gate
EE141 Constructing a Complex Gate

13 CMOS Properties Full rail-to-rail swing; high noise margins
EE141 CMOS Properties Full rail-to-rail swing; high noise margins Logic levels not dependent upon the relative device sizes; ratioless Always a path to Vdd or GND in steady state; low output impedance Extremely high input resistance; nearly zero steady-state input current No steady-state direct path between power and ground; no static power dissipation Propagation delay function of load capacitance and resistance of transistors

14 Switch Delay Model Req A A B Rp A Rn CL Cint CL B Rn A Rp Cint A Rp A
EE141 Switch Delay Model Req A A B Rp A Rn CL Cint CL B Rn A Rp Cint A Rp A Rp A Rn CL Note capacitance on the internal node – due to the source grain of the two fets in series and the overlap gate capacitances of the two fets in series NOR2 INV NAND2

15 Input Pattern Effects on Delay
EE141 Input Pattern Effects on Delay Delay is dependent on the pattern of inputs Low-to-high transition Both inputs go low Delay is 0.69 (Rp/2) CL One input goes low Delay is 0.69 (Rp) CL High-to-low transition? Both inputs go high (required for NAND) Delay is 0.69 (2Rn)CL A Rp B Rp CL Rn B A Rn Cint

16 Delay Dependence on Input Patterns
EE141 Delay Dependence on Input Patterns Input Data Pattern Delay (psec) A=B=01 69 A=1, B=01 62 A= 01, B=1 50 A=B=10 35 A=1, B=10 76 A= 10, B=1 57 A=B=10 A=10, B=1 Voltage [V] A=1, B=10 Gate sizing should result in approximately equal worst case rise and fall times. Reason for difference in the last two delays is due to internal node capacitance of the pulldown stack. When A transitions, the pullup only has to charge CL; when A=1 and B transitions pullup have to charge up both CL and Cint. For high to low transitions (first three cases) delay depends on state of internal node. Worst case happens when internal node is charged up to VDD – VTn. Conclusions: Estimates of delay can be fairly complex – have to consider internal node capacitances and the data patterns. time [ps] NMOS = 0.5m/0.25 m PMOS = 0.75m/0.25 m CL = 100 fF A=1, B=10 (for both Cint and CL)

17 Transistor Sizing NAND is preferred than NOR implementation!!
EE141 Transistor Sizing Assumes Rp = 2Rn at same W/L CL B Rn A Rp Cint B Rp A Rn CL Cint 4 2 2 Assumes Rp = Rn 1 NAND is preferred than NOR implementation!!

18 Transistor Sizing a Complex CMOS Gate
EE141 Transistor Sizing a Complex CMOS Gate A B 8 4 C 8 D 4 OUT = D + A • (B + C) For class lecture. Red sizing assuming Rp = Rn Follow short path first; note PMOS for C and B 4 rather than 3 – average in pull-up chain of three – (4+4+2)/3 = 3 Also note structure of pull-up and pull-down to minimize diffusion cap at output (e.g., single PMOS drain connected to output) Green for symmetric response and for performance (where Rn = 3 Rp) Sizing rules of thumb PMOS = 3 * NMOS 1 in series = 1 2 in series = 2 3 in series = 3 etc. A 2 D 1 B 2 C 2

19 Fan-In Considerations
EE141 Fan-In Considerations 4-input NAND Gate While output capacitance makes full swing transition (from VDD to 0), internal nodes only transition from VDD-VTn to GND C1, C2, C3 on the order of 0.85 fF for W/L of 0.5/0.25 NMOS and 0.375/0.25 PMOS CL of 3.2 fF with no output load (all diffusion capacitance – intrinsic capacitance of the gate itself). To give a 80.3 psec tpHL (simulated as 86 psec)

20 Fan-In Considerations
B A CL C3 C2 C1 Distributed RC model (Elmore delay) tpHL = 0.69(R1C1+(R1+R2)C2 + (R1+R2+R3)C3 + (R1+R2+R3+R4)CL =0.69 Reqn(C1+2C2+3C3+4CL) Propagation (H L) delay deteriorates rapidly as a function of fan-in no. : Quadratically in the worst case.

21 tp as a Function of Fan-In
EE141 tp as a Function of Fan-In tpHL quadratic linear tp Gates with a fan-in greater than 4 should be avoided. tp (psec) tpLH Fixed fan-out (NMOS 0.5 micrcon, PMOS 1.5 micron) tpLH increases linearly due to the linearly increasing value of the diffusion capacitance tpHL increase quadratically due to the simultaneous incrase in pull-down resistance and internal capacitance fan-in

22 (tpHL, tpLH) as a Function of Fan-Out
EE141 (tpHL, tpLH) as a Function of Fan-Out slope is a function of the driving strength

23 tp as a Function of Fan-In and Fan-Out
EE141 tp as a Function of Fan-In and Fan-Out Fan-in: quadratic due to increasing resistance and capacitance Fan-out: each additional fan-out gate adds two gate capacitances to CL a1 term is for parallel chain, a2 term is for serial chain, a3 is fan-out

24 Fast Complex Gates: Design Technique 1
EE141 Fast Complex Gates: Design Technique 1 Transistor sizing as long as fan-out capacitance dominates Progressive sizing CL Distributed RC line: M1 > M2 > M3 > … > MN (the FET closest to the output is the smallest) Not simple in Layout InN MN C3 M1 have to carry the discharge current from M2, M3, … MN and CL so make it the largest MN only has to discharge the current from MN (no internal capacitances) In3 M3 C2 In2 M2 C1 In1 M1

25 Fast Complex Gates: Design Technique 2
EE141 Fast Complex Gates: Design Technique 2 Transistor ordering: Put late arrival signal near the output node. critical path critical path 01 CL CL charged charged 1 In1 In3 M3 M3 1 C2 1 C2 In2 In2 M2 discharged M2 charged 1 C1 C1 In3 discharged For lecture. Critical input is latest arriving signal Place latest arriving signal (critical path) closest to the output In1 charged M1 M1 01 Delay determined by time to discharge CL, C1 and C2 Delay determined by time to discharge CL

26 Fast Complex Gates: Design Technique 3
EE141 Fast Complex Gates: Design Technique 3 Alternative logic structures (A) F =NAND8, C > B > A in speed Reduced fan-in -> deeper logic depth Reduction in fan-in offsets, by far, the extra delay incurred by the NOR gate (second configuration). Only simulation will tell which of the last two configurations is faster, lower power (C) (B)

27 Fast Complex Gates: Design Technique 4
EE141 Fast Complex Gates: Design Technique 4 Isolating fan-in from fan-out using buffer insertion CL CL Reduce CL on large fan-in gates, especially for large CL, and size the inverters progressively to handle the CL more effectively

28 Sizing Logic Paths for Speed
Frequently, input capacitance of a logic path is constrained Logic also has to drive some capacitance Example: ALU load in an Intel’s microprocessor is 0.5pF How do we size the ALU datapath to achieve maximum speed? We have already solved this for the inverter chain – can we generalize it for any type of logic?

29 Buffer Example In Out CL 1 2 N (in units of tinv)
EE141 Buffer Example In Out CL 1 2 N (in units of tinv) For given N: Ci+1/Ci = Ci/Ci-1 To find N: Ci+1/Ci ~ 4 How to generalize this to any logic path?

30 EE141 Logical Effort Inverter has the smallest logical effort and intrinsic delay of all static CMOS gates Logical effort of a gate presents the ratio of its input capacitance to the inverter capacitance when sized to deliver the same current Logical effort increases with the gate complexity

31 EE141 Logical Effort Logical effort is the ratio of input capacitance of a gate to the input capacitance of an inverter with the same output current g = 1 g = 4/3 g = 5/3

32 EE141 Logical Effort From Sutherland, Sproull

33 Estimated Intrinsic Delay Factor

34 Logical Effort p – intrinsic delay : gate parameter
EE141 Logical Effort p – intrinsic delay : gate parameter g – logical effort : gate parameter f – effective fanout Normalize everything to an inverter: ginv =1, pinv = 1 Divide everything by tinv (everything is measured in unit delays tinv) Assume g = 1.

35 Delay in a Logic Gate Gate delay: d = h + p effort delay
EE141 Delay in a Logic Gate Gate delay: d = h + p effort delay intrinsic delay Effort delay: h = g f logical effort effective fanout = Cout/Cin Logical effort is a function of topology, independent of sizing Effective fanout (electrical effort) is a function of load/gate size

36 Logical Effort of Gates

37 Logical Effort of Gates
EE141 Logical Effort of Gates t pNAND g = 4/3 p = 2 d = (4/3)f+2 pINV t Normalized delay (d) g = 1 p = 1 d = f+1 F(Fan-in) 1 2 3 4 5 6 7 Fan-out (f)

38 EE141 Add Branching Effort Branching effort:

39 Multistage Networks Stage effort: hi = gifi
Path electrical effort: F = Cout/Cin Path logical effort: G = g1g2…gN Branching effort: B = b1b2…bN Path effort: H = GFB Path delay D = Sdi = Spi + Shi

40 Optimum Effort per Stage
EE141 Optimum Effort per Stage When each stage bears the same effort: Stage efforts: g1f1 = g2f2 = … = gNfN Effective fanout of each stage: Minimum path delay

41 Optimal Number of Stages
EE141 Optimal Number of Stages For a given load, and given input capacitance of the first gate Find optimal number of stages and optimal sizing Substitute ‘best stage effort’

42 Example: Optimize Path
EE141 Example: Optimize Path g = 1 f = a g = 5/3 f = b/a g = 5/3 f = c/b g = 1 f = 5/c Effective fanout, F = 5 G = 25/9 H = GF=125/9 = 13.9 h = 1.93 (optimal stage effort) = a = 1.93 b = ha/g2 = 2.23 c = hb/g3 = 5g4/f = 2.59

43 EE141 Example – 8-input AND

44 Method of Logical Effort
EE141 Method of Logical Effort Compute the path effort: F = GBH Find the best number of stages N ~ log4F Compute the stage effort f = F1/N Sketch the path with this number of stages Work either from either end, find sizes: Cin = Cout*g/f Reference: Sutherland, Sproull, Harris, “Logical Effort, Morgan-Kaufmann 1999.

45 EE141 Summary Sutherland, Sproull Harris

46 Pass-Transistor Logic

47 Pass-Transistor Logic
EE141 Pass-Transistor Logic

48 EE141 Example: AND Gate A, B: One is Input signal, the other is Control Signal

49 NMOS-Only Logic In Out x EE141 [V] e g a t l o V Time [ns] 3.0 2.0 1.0
0.0 0.5 1 1.5 2 Time [ns]

50 NMOS-only Switch V does not pull up to 2.5V, but 2.5V - V
EE141 NMOS-only Switch C = 2.5 V C = 2.5 V M 2 A = 2.5 V A = 2.5 V B M B n C M 1 L V does not pull up to 2.5V, but 2.5V - V B TN Threshold voltage loss causes static power consumption NMOS has higher threshold than PMOS (body effect)

51 NMOS Only Logic: Level Restoring Transistor
EE141 NMOS Only Logic: Level Restoring Transistor V DD Level Restorer V DD M r B M 2 X A M n Out M 1 Advantage: Full Swing Restorer adds capacitance, takes away pull down current at X Ratio problem among (Mr and Mn)

52 Restorer Sizing Upper limit on restorer size
EE141 Restorer Sizing 100 200 300 400 500 0.0 1.0 2.0 W / L r =1.0/0.25 =1.25/0.25 =1.50/0.25 =1.75/0.25 V o l t a g e [V] Time [ps] 3.0 Upper limit on restorer size Pass-transistor pull-down can have several transistors in stack

53 Solution 2: Single Transistor Pass Gate with VT=0
EE141 Solution 2: Single Transistor Pass Gate with VT=0 V DD V DD 0V 2.5V V 0V Out DD 2.5V WATCH OUT FOR LEAKAGE CURRENTS

54 Complementary Pass Transistor Logic
EE141 Complementary Pass Transistor Logic

55 Solution 3: Transmission Gate
EE141 Solution 3: Transmission Gate C C A B A B C C C = 2.5 V A = 2.5 V B C L C = 0 V

56 Resistance of Transmission Gate
EE141 Resistance of Transmission Gate

57 Pass-Transistor Based Multiplexer
EE141 Pass-Transistor Based Multiplexer S S VDD GND In1 S S In2

58 EE141 Transmission Gate XOR B B M2 A A F M1 M3/M4 B B

59 Delay in Transmission Gate Networks
EE141 Delay in Transmission Gate Networks V n-1 n C 2.5 In 1 i i+1 V 1 i-1 C 2.5 i i+1 R eq C (a) (b) m R eq R eq R eq In C C C C (c)

60 EE141 Delay Optimization

61 Transmission Gate Full Adder
EE141 Transmission Gate Full Adder Similar delays for sum and carry

62 Dynamic Logic

63 EE141 Dynamic CMOS In static circuits at every point in time (except when switching), the output is connected to either GND or VDD via a low resistance path. Fan-in of n requires 2n (n N-type + n P-type) devices Dynamic circuits rely on the temporary storage of signal values on the capacitance of high impedance nodes. Requires on n + 2 (n+1 N-type + 1 P-type) transistors

64 Dynamic Gate Two phase operation Precharge (Clk = 0)
EE141 Dynamic Gate Out Clk A B C Mp Me off Clk Mp on 1 Out CL ((AB)+C) In1 In2 PDN In3 Clk Me off For lecture Evaluate transistor, Me, eliminates static power consumption on Two phase operation Precharge (Clk = 0) Evaluate (Clk = 1)

65 EE141 Conditions on Output Once the output of a dynamic gate is discharged, it cannot be charged again until the next precharge operation. Inputs to the gate can make at most one transition during evaluation. Output can be in the high impedance state during and after evaluation (PDN off), state is stored on CL This behavior is fundamentally different than the static counterpart that always has a low resistance path between the output and one of the power rails.

66 Properties of Dynamic Gates
EE141 Properties of Dynamic Gates Logic function is implemented by the PDN only number of transistors is N + 2 (versus 2N for static complementary CMOS) Full swing outputs (VOL = GND and VOH = VDD) Non-ratioed - sizing of the devices does not affect the logic levels Faster switching speeds reduced load capacitance due to lower input capacitance (Cin) reduced load capacitance due to smaller output loading (Cout) no Isc, so all the current provided by PDN goes into discharging CL CL being lower also contributes to power savings

67 Properties of Dynamic Gates
EE141 Properties of Dynamic Gates Overall power dissipation usually higher than static CMOS no static current path ever exists between VDD and GND (including Psc) no glitching Higher transition probabilities Extra load on Clk PDN starts to work as soon as the input signals exceed VTn, so VM, VIH and VIL equal to VTn Low noise margin (NML) Needs a precharge/evaluate clock

68 Issues in Dynamic Design 1: Charge Leakage
EE141 Issues in Dynamic Design 1: Charge Leakage CLK Clk Mp Out CL A Evaluate VOut Clk Me Precharge leakage sources are reverse-biased diode and the sub-threshold leakage of the NMOS pulldown device. Charge stored on CL will leak away with time (input in low state during evaluation) Requires a minimum clock rate - so not good for low performance products such as watches (or when have conditional clocks) PMOS precharge device also contributes some leakage due to reverse bias diode and subthreshold conduction that, to some extent, offsets the leakage due to the pull down paths. Leakage sources Dominant component is subthreshold current

69 Solution to Charge Leakage
EE141 Solution to Charge Leakage Keeper Clk Mp Mkp CL A Out B Clk Me During precharge, Out is VDD and inverter out is GND, so keeper is on During evaluation if PDN is off, the keeper compensates for drained charge due to leakage. If PDN is on, there is a fight between the PDN and the PUN - circuit is ratioed so PDN wins, eventually Note Psc during switching period when PDN and keeper are both on simultaneously Same approach as level restorer for pass-transistor logic

70 Issues in Dynamic Design 2: Charge Sharing
EE141 Issues in Dynamic Design 2: Charge Sharing Charge stored originally on CL is redistributed (shared) over CL and CA leading to reduced robustness Clk Mp Out CL A CA B=0 CA initially discharged and CL fully charged. CB Clk Me

71 Charge Sharing Example
EE141 Charge Sharing Example Clk Out CL=50fF A A Ca=15fF B Cb=15fF B B !B Cc=15fF Cd=10fF Out = A xor B xor C What is the worst case change in voltage on node Out - assume all inputs are low during precharge and all internal capacitances are initially 0V Worst case is obtained by exposing the maximum amount of internal capacitance to the output node during evaluation. This happens when !A B C or A !B C 30/(30+50) * 2.5 V = 0.94 V so the output drops to = 1.56 V C C Clk

72 EE141 Charge Sharing B = Clk X C L a b A Out M p V DD e

73 Solution to Charge Redistribution
EE141 Solution to Charge Redistribution Clk Clk Mp Mkp Out A B Clk Me Precharge internal nodes using a clock-driven transistor (at the cost of increased area and power)

74 Issues in Dynamic Design 3: Backgate Coupling
EE141 Issues in Dynamic Design 3: Backgate Coupling Clk Mp Out1 =1 Out2 =0 CL1 CL2 In A=0 B=0 Due to capacitive backgate coupling between the internal and output node of the static gate and the output of the dynamic gate, Out1 voltage reduces Clk Me Dynamic NAND Static NAND

75 Backgate Coupling Effect
EE141 Backgate Coupling Effect Out1 Voltage Clk Out1 overshoots Vdd (2.5V) due to clock feedthrough And Out2 never quite makes it to GND Out2 In Time, ns

76 Issues in Dynamic Design 4: Clock Feedthrough
Coupling between Out and Clk input of the precharge device due to the gate to drain capacitance. The voltage of Out can rise above VDD. The fast rising (and falling edges) of the clock couple to Out. Clk Mp Out CL A B Clk Danger is that signal levels can rise enough above VDD that the normally reverse-biased junction diodes become forward-biased causing electrons to be injected into the substrate. Me

77 Clock Feedthrough Clock feedthrough Clk Out In1 In2 In3 In & Clk In4
Voltage In4 Out Clk Time, ns Clock feedthrough

78 Other Effects Capacitive coupling Substrate coupling
EE141 Other Effects Capacitive coupling Substrate coupling Minority charge injection Supply noise (ground bounce)

79 Cascading Dynamic Gates
EE141 Cascading Dynamic Gates V Clk Clk Clk Mp Mp Out2 Out1 In In Out1 VTn Clk Clk Me Me Out2 V Out2 should remain at VDD since Out1 transitions to 0 during evaluation. However, since there is a finite propagation delay for the input to discharge Out1 to GND, the second output also starts to discharge. The second dynamic inverter turns off (PDN) when Out1 reaches VTn. Setting all inputs of the second gate to 0 during precharge will fix it. Correct operation is guaranteed (ignoring charge redistribution and leakage) as long as the inputs can only make a single 0 -> 1 transition during the evaluation period t Only 0  1 transitions allowed at inputs!

80 Domino Logic Clk Clk Out1 Out2 In1 In4 PDN In2 PDN In5 In3 Clk Clk Mp
EE141 Domino Logic Clk Mp Mkp Clk Mp Out1 Out2 1  1 1  0 0  0 0  1 In1 In4 PDN In2 PDN In5 In3 Ensures all inputs to the Domino gate are set to 0 at the end of the precharge period. Hence, the only possible transition during evaluation is 0 -> 1 Clk Me Clk Me

81 Why Domino? Like falling dominos! Ini PDN Inj Ini Inj PDN Ini PDN Inj
EE141 Why Domino? Ini PDN Inj Ini Inj PDN Ini PDN Inj Ini PDN Inj Clk Clk Like falling dominos!

82 Properties of Domino Logic
EE141 Properties of Domino Logic Only non-inverting logic can be implemented Very high speed static inverter can be skewed, only L-H transition Input capacitance reduced – smaller logical effort First 32 bit micro (BellMAC 32) was designed in Domino logic Now a rather rare design style due to non-inverting logic only

83 Designing with Domino Logic
EE141 Designing with Domino Logic V DD V DD V DD Clk M Clk M p p M Out1 r Out2 In 1 In PDN In PDN 2 4 In 3 Can be eliminated! Clk M Clk M e e Inputs = 0 during precharge

84 EE141 Footless Domino The first gate in the chain needs a foot switch Precharge is rippling – short-circuit current A solution is to delay the clock for each stage

85 Differential (Dual Rail) Domino
EE141 Differential (Dual Rail) Domino off on Clk Clk Mp Mkp Mkp Mp Out = AB Out = AB A !A !B B AND/NAND differential logic gate. The inputs and their complements come from other differential DR gates and thus all inputs are low during precharge and make a conditional transition from 0 to 1. Annotations show state during evaluate cycle (CLK = 1) Expensive - but can implement any arbitrary function. Use significant power since they have a guaranteed transition every single clock cycle (regardless of signal statistics, since either Out or !Out will transition from 0 to 1). Not ratioed (even though have a cross-coupled PMOS pair) Clk Me Solves the problem of non-inverting logic

86 EE141 np-CMOS Clk Me Clk Mp Out1 1  1 1  0 In4 PUN In1 In5 In2 PDN 0  0 0  1 In3 Out2 (to PDN) Clk Mp Also called zipper logic - In4 and In5 must be from PDN’s DEC alpha uses np-CMOS logic (Dobberpuhl) Have to size the PUN’s to equalize the delay to that of the PDN’s Really dense layouts and very high speed (20% faster than domino with the correct sizing) Reduced noise margin (as with any dynamic gate) Have two clock signals to generate and route - CLK and !CLK Clk Me Only 0  1 transitions allowed at inputs of PDN Only 1  0 transitions allowed at inputs of PUN

87 NORA Logic Clk Clk Out1 In4 PUN In1 In5 In2 PDN In3 Out2 (to PDN) Clk
EE141 NORA Logic Clk Me Clk Mp Out1 1  1 1  0 In4 PUN In1 In5 In2 PDN 0  0 0  1 In3 Out2 (to PDN) Clk Mp Clk Me NORA - no race CMOS to other PDN’s to other PUN’s WARNING: Very Sensitive to Noise!


Download ppt "EE141 Chapter 6 Designing Combinational Logic Circuits V1.0 4/25/2003."

Similar presentations


Ads by Google