lecture 10 - cpe 690 introduction to vlsi design
DESCRIPTION
CpE 690 Introduction to VLSI DesignFall 2013Stevens Institute of TechnologyCombinational Circuit DesignPsuedo-NMOS logicDynamic LogicPass Transistor LogicTRANSCRIPT
![Page 1: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/1.jpg)
CpE 690: Digital System Design Fall 2013
Lecture 10 Combinational Logic
1
Bryan Ackland Department of Electrical and Computer Engineering
Stevens Institute of Technology Hoboken, NJ 07030
Adapted from Lecture Notes, David Mahoney Harris CMOS VLSI Design
![Page 2: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/2.jpg)
2
• Combinational circuits: outputs depend only on current inputs (no memory)
• CMOS Combinational Circuit Families: – Static (compound) gates – Ratio’ed CMOS gates – Dynamic CMOS gates – Pass Transistor Logic
• Compound Gates: complimentary N and P networks that ensure gate is always driven high or low (but not both)
• Techniques to optimize compound gates – Bubble pushing – Input ordering – Asymmetric gates – Skewed gates
Combinational Logic Families
![Page 3: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/3.jpg)
3
• Logic traditionally expressed in terms of AND & OR • CMOS compound gates are always inverting
– NAND, NOR, INV etc.
• “Push bubbles” around to reformat logic expressions in form amenable to CMOS compound gates
• DeMorgan’s Law:
Bubble Pushing
𝐴.𝐵 = �̅� + 𝐵�
𝐴 + 𝐵 = �̅�.𝐵�
![Page 4: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/4.jpg)
4
• Y = A.B + C.D – used frequently as 2-input multiplexer: 𝑌 = 𝑆̅. 𝐼0 + 𝑆. 𝐼1
Example: AOI22
A B C D
Y
A B
C D
Y
A B
C D
Y
![Page 5: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/5.jpg)
5
• Y = A.B + C.D • Implement as a single-stage compound gate plus inverter:
where • Which implementation is better?
Example: Alternate Solution
A B C D
Y
![Page 6: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/6.jpg)
6
• Suppose the Y=A.B + C.D function must drive a load of 160 units of capacitance and is limited to a Cin of 16 units of capacitance on each input.
H= B= N=
Example: Compare delays
160/16 = 10 1 2
𝑃 = 2 + 2 = 4
𝐺 = 43� × 4
3� = 169�
𝐹 = 𝐺.𝐵.𝐻 = 1609�
𝑓 = 𝐹𝑁 = 4.2
𝐷 = 𝑁.𝑓 + 𝑃 = 12.4𝜏
𝑃 = 4 + 1 = 5 𝐺 = 2 × 1 = 2
𝐹 = 𝐺.𝐵.𝐻 = 20
𝑓 = 𝐹𝑁 = 4.5
𝐷 = 𝑁.𝑓 + 𝑃 = 14𝜏
![Page 7: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/7.jpg)
7
Example: Determine Transistor Sizes
8 8
8
8
8
8
8
8
25 25
25
25
Cin = 160.(4/3)/4.2 = 50
Cin = 50.(4/3)/4.2 = 16
11 11
11 11
5
5 5
5
24
12
Cin = 160x1/4.5 = 36
Cin = 36x2/4.5 = 16
![Page 8: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/8.jpg)
Logical Effort of Compound Gates
• In general, logical effort of compound gate depends on which input path is passing through:
8
![Page 9: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/9.jpg)
Input Ordering Delay
• When using logical effort, our parasitic delay model only accounted for C on output node
• Recall that Elmore delay allows us to account for C on intermediate nodes – nominally symmetric gates (NAND, NOR etc) will show different
parasitic delays at different inputs
• Calculate NAND2 parasitic delay for Y falling • If B arrives latest? • If A arrives latest?
9
6C
2C2
2
22
B
Ax
Y
p = (R/2)(2C)+R(6C) = 7RC = 2.33τ
p = R(6C) = 6RC = 2τ
![Page 10: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/10.jpg)
Inner vs. Outer Inputs
• Inner input is closest to output (A) • Outer input is closest to rail (B)
• Effect is more pronounced with higher fan-in gates • e.g., a NAND6 has parasitic delays: 6τ (innermost)
7.7τ 9τ 10τ 10.7τ 11τ (outermost)
• If input arrival time is known – Connect “latest” input to inner-most terminal 10
almost 2:1 variation!
![Page 11: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/11.jpg)
Example: Carry Ripple Delay
• Need to minimize delay from cin to cout • 𝑐𝑐𝑐𝑐 = 𝑎. 𝑏 + 𝑐𝑐𝑐(𝑎 + 𝑏)
11
pd = (R/2)(6C)+R(18C) = 21RC = 7τ pu = 24RC = 8τ
pd = pu = R(12C) = 12RC = 4τ
A B
B
A
A B
cin
cin
B
A
cout
4 4
4 4 4
2 2
2 2 2
A B B
A
A B
cin
cin
B
A
cout 4 4
4 4 4
2 2
2 2 2
![Page 12: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/12.jpg)
Asymmetric Gates
• In addition to choosing innermost gate, we can change relative size of inner and outer transistors
• Ex: suppose input A of a NAND gate is most critical
• Use smaller transistor on A (less capacitance) – Boost size of noncritical input so total resistance is same
• gA = 10/9 (normally NAND2 is 4/3)
• pA = 16/9 (normally 2)
• greset = (6/3) = 2, preset = 19/9 • gavg = (gA + greset)/2 = 14/9 (normally 12/9)
• As asymmetry increases, g 1 on critical input – at expense of much greater delay on non-critical input
12
![Page 13: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/13.jpg)
Symmetric Gates
• Can we build a perfectly symmetric gate?
13
A
B
Y2
1
1
2
1
1
![Page 14: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/14.jpg)
Skewed Gates
• Skewed gates favor one edge over another • Ex: suppose rising output of inverter is most critical
– downsize noncritical nMOS transistor
• Calculate logical effort by comparing to un-skewed inverter with same effective resistance on that edge. – gu = 2.5 / 3 = 5/6 – gd = 2.5 / 1.5 = 5/3
14
![Page 15: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/15.jpg)
HI and LO Skew
• Define: Logical effort of a skewed gate for a particular transition is the ratio of the input capacitance of that gate to the input capacitance of an un-skewed inverter delivering the same output current for the same transition.
• Skewed gates reduce size of noncritical transistors – HI-skew gates favor rising output (small nMOS) – LO-skew gates favor falling output (small pMOS)
• Reduced logical effort in the favored direction – at expense of larger logical effort in the other direction – also reduced noise margin
15
![Page 16: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/16.jpg)
HI and LO Skew
16
![Page 17: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/17.jpg)
Asymmetric + Skew
Combine asymmetric and skewed gates – Downsize noncritical transistor on unimportant input – Reduces parasitic delay for critical input
• gA = 10/9 (normally NAND2 is 4/3)
• pA = 13/9 (normally 2)
• greset = (5/1.5) = 10/3 • gavg = (gA + greset)/2 = 20/9 (normally 12/9)
17
1
![Page 18: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/18.jpg)
What is best nominal P/N ratio?
• We normally set P/N ratio for equal rise and fall resistance (µ = µn/µp = 2-3 for an inverter).
• Alternative: choose ratio for least average delay • Ex: Calculate delay of inverter driving identical inverter
– tpdf = (P+1).RC – tpdr = (P+1)(µ/P).RC – tpd = RC.(P+1).(1+µ/P)/2 = RC.(P + 1 + µ + µ/P)/2 – Least delay when dtpd / dP = RC.(1- µ/P2)/2 = 0 – when P = √𝜇
18
![Page 19: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/19.jpg)
P/N Ratios
In general, fastest avg. P/N ratio is sqrt of equal delay ratio. – Only improves average delay slightly for inverters – But significantly decreases area and power
19
Inverter NAND2 NOR2
1
1.414A Y
2
2
22
B
AY
BA
11
2
2
fastest P/N ratio gu =
gd = gavg =
gu = gd =gavg =
gu = gd = gavg =
Y1.14 0.80 0.97
4/3 4/3 4/3
2 1 3/2
![Page 20: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/20.jpg)
Observations
• For speed: – NAND vs. NOR – Many simple stages vs. fewer high fan-in stages – Latest-arriving input
• For area and power:
– Many simple stages vs. fewer high fan-in stages
• P/N ratio should be chosen on the basis of area & power, not average delay – In most standard cell libraries, the pitch of the cell influences
P/N ratio of individual gates
20
![Page 21: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/21.jpg)
Beyond Static CMOS
• What makes a circuit fast? – I = C dV/dt -> tpd ∝ (C/I) ∆V – low capacitance – high current – small swing
• Logical effort is proportional to C/I • pMOS transistors are the enemy!
– High capacitance for a given current • Can we take the pMOS capacitance off the input? • Various circuit families try to do this…
21
BA
11
4
4
Y
![Page 22: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/22.jpg)
Ratio’d Circuits
• Ratio’s circuits use a passive pullup instead of active pMOS devices. – when nMOS network is not conducting,
output is high – when nMOS network is conducting, it is
stronger than R and pulls output low – resistors are impractically large
• Before CMOS, nMOS logic families
used depletion device as passive load – depletion transistor has VT<0
• Unlike complimentary CMOS, ratio of
transistor sizes must be carefully chosen to ensure correct operation 22
nMOS network
nMOS network
![Page 23: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/23.jpg)
Psuedo-nMOS
• In CMOS, use a single pMOS transistor as load
• pMOS gate grounded so its always ON – ratio issue
• What size should the pMOS be?
– If too large, will slow 10 transition and gate may not pull down properly
– If too small, will slow 01 transition
23
![Page 24: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/24.jpg)
Psuedo-nMOS
• Use SPICE to try out different ratios:
• Make pMOS about ¼ strength of pulldown network – compromise between speed & noise margin
24
P=4 P=8
P=12
P=16 P=20 P=24
Vout
Vin
![Page 25: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/25.jpg)
Psuedo-nMOS Performance • Logical effort is ratio of input capacitance of gate to that of standard
complimentary inverter that delivers same current • Parasitic delay is ratio of output capacitance compared to standard
inverter delivering same current • Remember that on pull-down: pMOS fights nMOS
• Best suited to large fan-in NOR networks 25
Inverter NAND2 NOR2
4/3
2/3
AY
8/3
8/3
2/3
B
AY
A B 4/34/3
2/3
gu = 4/3gd = 4/9gavg = 8/9pu = 6/3pd = 6/9pavg = 12/9
Y
gu = 8/3gd = 8/9gavg = 16/9pu = 10/3pd = 10/9pavg = 20/9
gu = 4/3gd = 4/9gavg = 8/9pu = 10/3pd = 10/9pavg = 20/9
![Page 26: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/26.jpg)
Psuedo-nMOS Power
• Pseudo-nMOS draws power whenever Y = 0 – Called static power P = IDDVDD
– A few hundred µA / gate * 1M gates is a problem – Explains why nMOS went extinct
• Use pseudo-nMOS sparingly for wide NORs
• Turn off pMOS when not in use
26
![Page 27: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/27.jpg)
Dynamic Logic
• Ratio’d circuits reduce input capacitance by replacing pMOS pullup tree with a single static load – slow rising transitions – contention on falling transitions – static power dissipation – non-zero VOL (reduced noise margin)
• Dynamic gates use a clocked pMOS pullup
27
1
2A Y
4/3
2/3
AY
1
1
AY
φ
Static Pseudo-nMOS Dynamic
![Page 28: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/28.jpg)
Dynamic Logic Phases
• Dynamic gates operate in two phases: precharge and evaluate
• During pre-charge phase (φ=0), the output Y is initialized high
• During the evaluate phase (φ=1), Y is conditionally discharged low, depending on the value of input A
• What happens if A=1 during precharge? 28
φ Precharge Evaluate
Y
Precharge
![Page 29: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/29.jpg)
The Foot
• Introduce series nMOS evaluation transistor called foot – eliminates contention during precharge
29
φ Precharge Evaluate
Y
Precharge
AY
φ
foot
precharge transistorφ
Y
inputs
φY
inputs
footed unfooted
f f
![Page 30: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/30.jpg)
Logical Effort of Dynamic Gates
30
compare to static:
g=1 p=1
g=4/3 p=2
g=5/3 p=2
![Page 31: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/31.jpg)
Compared to static logic
• Advantages of dynamic gates: – fastest commonly used circuit family – lower input capacitance – no contention during switching – zero static power dissipation – no ratio issues
• Limitations of dynamic gates: – precharge/evaluate paradigm – require careful clocking – consume significant dynamic power – reduced noise margin – monotonicity requirement
31
![Page 32: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/32.jpg)
Monotonicity
• Dynamic gates require monotonically rising inputs during evaluation
– 0 -> 0 – 0 -> 1 – 1 -> 1 – but not 1 -> 0!
32
A
φ
φ Precharge Evaluate
Y
Precharge
A
Output should rise but does not
violates monotonicity during evaluation
![Page 33: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/33.jpg)
A X
φ Yφ Precharge Evaluate
X
Precharge
A = 1
Y
A X
φ Yφ Precharge Evaluate
X
Precharge
A = 1
Y should rise but cannot
Y
X monotonically falls during evaluation
Monotonicity Woes
• But dynamic gates produce monotonically falling outputs during evaluation
• Illegal for one dynamic gate to drive another!
33
![Page 34: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/34.jpg)
Domino Gates
• Monotonicity problem can be solved by putting an static inverter between each dynamic gate
• Inverter output will be monotonically rising
34
A
W
φ
B C
X Y Z
domino AND
dynamicNAND
staticinverter
![Page 35: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/35.jpg)
Domino Operation
• All dynamic gates in chain are precharged in parallel • During evaluation phase, a falling transition at the
output of the first dynamic gate generates a rising transition at the output of the inverter which, in turn, is input to the second dynamic gate.
• Each domino gate triggers next one, like a string of dominos toppling over
35
A
W
φ
B C
X Y Z
domino AND
dynamicNAND
staticinverter
![Page 36: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/36.jpg)
Domino Optimization
• Gates evaluate sequentially but precharge in parallel • Thus evaluation is more critical than precharge • Use high-skew inverter
36
A
W
φ
B C
X Y Z
domino AND
dynamicNAND
staticinverter
=
![Page 37: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/37.jpg)
Compound Domino
• More complex inverting (high skew) static gates can be used in place of inverter
• Example: 8 input domino multiplexer
37
S0
D0
S1
D1
S2
D2
S3
D3
φ
S4
D4
S5
D5
S6
D6
S7
D7
φ
YH
![Page 38: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/38.jpg)
Dual Rail Domino
• Domino only performs non-inverting functions: – AND, OR but not NAND, NOR, or XOR
• Dual-rail domino solves this problem – Takes true and complementary inputs – Produces true and complementary outputs
38
sig_h sig_l Meaning 0 0 Precharged 0 1 ‘0’ 1 0 ‘1’ 1 1 invalid
Y_h
f
φ
φ
inputs
Y_l
f
![Page 39: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/39.jpg)
Example: AND/NAND
• Given A_h, A_l, B_h, B_l
compute Y_h = A•B = A_h • B_h
and Y_l = A•B = A + B = A_l + B_l
• Pulldown networks are topological complements
39
Y_hφ
φ
Y_lA_h
B_hB_lA_l
= A*B= A*B
![Page 40: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/40.jpg)
Example: XOR/XNOR
• Sometimes possible to share transistors:
40
B_l
A_l
φ
A_h φ
B_h
A_l A_h
H H
VDD
Y_h = A xor B Y_l = A xnor B
![Page 41: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/41.jpg)
Dynamic Hazards: Leakage
• Dynamic node is not driven high during evaluation – Floating node held by charge on node capacitance – Transistors are leaky (IOFF ≠ 0) – Dynamic value will leak away over time – Used to be miliseconds, now nanoseconds
• Use keeper to hold dynamic node – Must be weak enough not to fight evaluation
41
A
φH
2
2
1 kX Y
weak keeper
![Page 42: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/42.jpg)
Dynamic Hazards: Charge Sharing
• Transitions on inner inputs can steal charge from output node:
42
B = 0
AY
φ
x
Cx
CY
A
φ
x
Y
A
φ
x
Y
Charge sharing noise
∆𝑉𝑌 =𝐶𝑥
𝐶𝑥 + 𝐶𝑌.𝑉𝐷𝐷 𝑉𝑥 =
𝐶𝑌𝐶𝑥 + 𝐶𝑌
.𝑉𝐷𝐷
(not important) may cause output error!
![Page 43: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/43.jpg)
Solutions to Charge Sharing
• Increase size of load capacitance CY – increases gate delay
• Add secondary precharge transistors – typically need to precharge every other node
• A keeper transistor can restore output if charge sharing is small
43
B = 0
AY
φ
x
Cx
CY
B
AY
φ
x
secondaryprechargetransistor
![Page 44: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/44.jpg)
Dynamic Hazards: Noise
• Dynamic gates are very sensitive to noise – Inputs: VIL ≈ Vtn
– Outputs: floating output susceptible noise
• Noise sources include: – Capacitive crosstalk – Charge sharing – Power supply noise – Feedthrough noise
44
![Page 45: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/45.jpg)
Dynamic Hazards: Dynamic Power
• Domino gates have high activity factors – Gate precharges and evaluates each clock cycle – When output of dynamic gate remains high
• no transitions per clock cycle – When output of dynamic gate is pulled low
• 2 transitions per clock cycle – If output transition probability = 0.5,
• Gate activity factor α = 0.5 – Also clock power dissipated in precharge and foot
transistors
• Leads to very high power consumption
45
![Page 46: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/46.jpg)
Domino Summary
• Domino logic is attractive for high-speed circuits – 1.3 – 2x faster than static CMOS – But many challenges:
• Monotonicity, leakage, charge sharing, noise • Widely used in high-performance microprocessors in
1990s when speed was primary driver • Largely displaced by static CMOS now that power is the
limiter • Still used in memories for speed & area efficiency
– wide NOR decoder structures
46
![Page 47: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/47.jpg)
Pass Transistor Gates
• We know we can use pass transistors to build efficient multiplexers
• Use transmission gates rather than simple pass gates to generate strong 1 and 0.
• Need to add output buffer to restore driven logic level
47
A
B
S
S
S
YA
B
S
S
S
Y
![Page 48: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/48.jpg)
Equivalence to Static CMOS
• If we place restoring buffer on the input: – easier to calculate logical effort – N-input inverting multplexer looks like N tristate inverters driving
common output – e.g. N=2
48
![Page 49: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/49.jpg)
Tristate Inverter
• Tristate inverter can be redrawn as static CMOS gate:
49
A Y
EN
ENb
note:
![Page 50: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/50.jpg)
2-input inverting multiplexer
50
![Page 51: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/51.jpg)
Remember this latch?
51
D
Q
ck
=
![Page 52: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/52.jpg)
Other Pass Gate Families: LEAP
• LEAn integration with Pass transistors • Get rid of pMOS transistors
– Use weak pMOS feedback to pull fully high – Ratio constraint
52
B
S
SA
YL
![Page 53: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/53.jpg)
Other Pass Gate Families:CPL
• Complementary Pass-transistor Logic – Dual-rail form of pass transistor logic – Avoids need for ratioed feedback – Optional cross-coupling for rail-to-rail swing
53
B
S
S
S
S
A
B
AY
YL
L
![Page 54: Lecture 10 - CpE 690 Introduction to VLSI Design](https://reader036.vdocuments.mx/reader036/viewer/2022062409/55cf9a74550346d033a1d34e/html5/thumbnails/54.jpg)
Pass Gate Summary
• Researchers investigated pass transistor logic for general purpose applications in the 1990’s
– Benefits over static CMOS were small or negative – No longer generally used
• However, pass transistors still have a niche in special
circuits such as memories where they offer small size and the threshold drops can be managed
54