You are on page 1of 34

Introduction to

CMOS VLSI
Design

Lecture 9:
Circuit Families
David Harris

Harvey Mudd College


Spring 2004
Outline
 Pseudo-nMOS Logic
 Dynamic Logic
 Pass Transistor Logic

9: Circuit Families CMOS VLSI Design Slide 2


Introduction
 What makes a circuit fast?
– I = C dV/dt -> tpd  (C/I) V
– low capacitance
– high current
B 4
– small swing
A 4
 Logical effort is proportional to C/I Y
1 1
 pMOS 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…

9: Circuit Families CMOS VLSI Design Slide 3


Pseudo-nMOS
 In the old days, nMOS processes had no pMOS
– Instead, use pull-up transistor that is always ON
 In CMOS, use a pMOS that is always ON
– Ratio issue
– Make pMOS about ¼ effective strength of
pulldown network
1.8

1.5
load
P/2 1.2
P = 24
Ids Vout 0.9

Vout 0.6

16/2 0.3
P = 14
P=4
Vin
0
0 0.3 0.6 0.9 1.2 1.5 1.8
Vin

9: Circuit Families CMOS VLSI Design Slide 4


Pseudo-nMOS Gates
 Design for unit current on output
to compare with unit inverter. Y
 pMOS fights nMOS inputs
f

Inverter NAND2 NOR2

gu = gu = gu =
gd = g = gd =
gavg = Y gd = gavg =
avg
pu = A pu =
Y Y pu =
A pd = B pd = A B pd =
pavg = pavg = pavg =

9: Circuit Families CMOS VLSI Design Slide 5


Pseudo-nMOS Gates
 Design for unit current on output
to compare with unit inverter. Y
 pMOS fights nMOS inputs
f

Inverter NAND2 NOR2

gu = gu = gu =
gd = 2/3 g = gd =
gavg = Y gd = gavg =
2/3 avg 2/3
pu = A 8/3 pu =
Y Y pu =
A 4/3 pd = B 8/3 pd = A 4/3 B 4/3 pd =
pavg = pavg = pavg =

9: Circuit Families CMOS VLSI Design Slide 6


Pseudo-nMOS Gates
 Design for unit current on output
to compare with unit inverter. Y
 pMOS fights nMOS inputs
f

Inverter NAND2 NOR2

gu = 4/3 gu = 8/3 gu = 4/3


gd = 4/9 2/3 g = 8/9 gd = 4/9
gavg = 8/9 Y gd = 16/9 gavg = 8/9
2/3 avg 2/3
A 8/3
Y pu = pu = Y pu =
A 4/3 pd = B 8/3 pd = A 4/3 B 4/3 pd =
pavg = pavg = pavg =

9: Circuit Families CMOS VLSI Design Slide 7


Pseudo-nMOS Gates
 Design for unit current on output
to compare with unit inverter. Y
 pMOS fights nMOS inputs
f

Inverter NAND2 NOR2

gu = 4/3 gu = 8/3 gu = 4/3


gd = 4/9 2/3 g = 8/9 gd = 4/9
gavg = 8/9 Y gd = 16/9 gavg = 8/9
2/3 avg 2/3
pu = 6/3 A 8/3 pu = 10/3
Y Y pu = 10/3
A 4/3 pd = 6/9 B 8/3 pd = 10/9 A 4/3 B 4/3 pd = 10/9
pavg = 12/9 pavg = 20/9 pavg = 20/9

9: Circuit Families CMOS VLSI Design Slide 8


Pseudo-nMOS Design
 Ex: Design a k-input AND gate using pseudo-nMOS.
Estimate the delay driving a fanout of H
Pseudo-nMOS
 G= In1 1
Y
 F= H
Ink 1
 P=
 N=
 D=

9: Circuit Families CMOS VLSI Design Slide 9


Pseudo-nMOS Design
 Ex: Design a k-input AND gate using pseudo-nMOS.
Estimate the delay driving a fanout of H
Pseudo-nMOS
 G = 1 * 8/9 = 8/9 In1 1
Y
 F = GBH = 8H/9 H
Ink 1
 P = 1 + (4+8k)/9 = (8k+13)/9
 N=2
4 2 H 8k  13
 D = NF1/N + P = 
3 9

9: Circuit Families CMOS VLSI Design Slide 10


Pseudo-nMOS Power
 Pseudo-nMOS draws power whenever Y = 0
– Called static power P = I•VDD
– A few mA / gate * 1M gates would be a problem
– This is why nMOS went extinct!
 Use pseudo-nMOS sparingly for wide NORs
 Turn off pMOS when not in use

en
Y
A B C

9: Circuit Families CMOS VLSI Design Slide 11


Dynamic Logic
 Dynamic gates uses a clocked pMOS pullup
 Two modes: precharge and evaluate

2 2/3  1
A Y Y Y
1 A 4/3 A 1

Static Pseudo-nMOS Dynamic

 Precharge Evaluate Precharge

9: Circuit Families CMOS VLSI Design Slide 12


The Foot
 What if pulldown network is ON during precharge?
 Use series evaluation transistor to prevent fight.

 
precharge transistor
 Y Y
Y inputs inputs
A f f
foot

footed unfooted

9: Circuit Families CMOS VLSI Design Slide 13


Logical Effort
Inverter NAND2 NOR2

 1
Y
 1  1
A 2
unfooted Y Y
A 1 B 2 A 1 B 1
gd = gd = gd =
pd = pd = pd =

 1
Y
 1  1
A 3
Y Y
footed A 2 B 3 A 2 B 2
gd = gd = gd =
2 pd = 3 pd = 2 pd =

9: Circuit Families CMOS VLSI Design Slide 14


Logical Effort
Inverter NAND2 NOR2

 1
Y
 1  1
A 2
unfooted Y Y
A 1 B 2 A 1 B 1
gd = 1/3 gd = 2/3 gd = 1/3
pd = 2/3 pd = 3/3 pd = 3/3

 1
Y
 1  1
A 3
Y Y
footed A 2 B 3 A 2 B 2
gd = 2/3 gd = 3/3 gd = 2/3
2 pd = 3/3 3 pd = 4/3 2 pd = 5/3

9: Circuit Families CMOS VLSI Design Slide 15


Monotonicity
 Dynamic gates require monotonically rising inputs
during evaluation
– 0 -> 0 

A
– 0 -> 1
– 1 -> 1
violates monotonicity
– But not 1 -> 0 during evaluation
A

 Precharge Evaluate Precharge

Output should rise but does not

9: Circuit Families CMOS VLSI Design Slide 16


Monotonicity Woes
 But dynamic gates produce monotonically falling
outputs during evaluation
 Illegal for one dynamic gate to drive another!

A=1

  Precharge Evaluate Precharge


Y
X
A
X

9: Circuit Families CMOS VLSI Design Slide 17


Monotonicity Woes
 But dynamic gates produce monotonically falling
outputs during evaluation
 Illegal for one dynamic gate to drive another!

A=1

  Precharge Evaluate Precharge


Y
X
A
X
X monotonically falls during evaluation
Y
Y should rise but cannot

9: Circuit Families CMOS VLSI Design Slide 18


Domino Gates
 Follow dynamic stage with inverting static gate
– Dynamic / static pair is called domino gate
– Produces monotonic outputs
 Precharge Evaluate Precharge

domino AND
W

W X Y Z X
A
Y
B C

Z

dynamic static
 
NAND inverter  
A W X A X
H Y =
B H Z B Z
C C

9: Circuit Families CMOS VLSI Design Slide 19


Domino Optimizations
 Each domino gate triggers next one, like a string of
dominos toppling over
 Gates evaluate sequentially but precharge in parallel
 Thus evaluation is more critical than precharge
 HI-skewed static stages can perform logic

S0 S1 S2 S3
D0 D1 D2 D3
Y
H

S4 S5 S6 S7
D4 D5 D6 D7

9: Circuit Families CMOS VLSI Design Slide 20


Dual-Rail Domino
 Domino only performs noninverting 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

sig_h sig_l Meaning


Y_l  Y_h
0 0 Precharged
inputs
0 1 ‘0’ f f

1 0 ‘1’ 

1 1 invalid

9: Circuit Families CMOS VLSI Design Slide 21


Example: AND/NAND
 Given A_h, A_l, B_h, B_l
 Compute Y_h = A * B, Y_l = ~(A * B)

9: Circuit Families CMOS VLSI Design Slide 22


Example: AND/NAND
 Given A_h, A_l, B_h, B_l
 Compute Y_h = A * B, Y_l = ~(A * B)
 Pulldown networks are conduction complements

Y_l  Y_h
= A*B A_h = A*B
A_l B_l B_h

9: Circuit Families CMOS VLSI Design Slide 23


Example: XOR/XNOR
 Sometimes possible to share transistors

Y_l  Y_h
= A xnor B A_h A_l A_l A_h = A xor B
B_l B_h

9: Circuit Families CMOS VLSI Design Slide 24


Leakage
 Dynamic node floats high during evaluation
– Transistors are leaky (IOFF  0)
– Dynamic value will leak away over time
– Formerly miliseconds, now nanoseconds!
 Use keeper to hold dynamic node
– Must be weak enough not to fight evaluation
weak keeper
 1 k
X
H Y
A 2
2

9: Circuit Families CMOS VLSI Design Slide 25


Charge Sharing
 Dynamic gates suffer from charge sharing



Y A
A x CY
Y
B=0 Cx

9: Circuit Families CMOS VLSI Design Slide 26


Charge Sharing
 Dynamic gates suffer from charge sharing



Y A
A x CY
Y
B=0 Cx Charge sharing noise

Vx  VY 

9: Circuit Families CMOS VLSI Design Slide 27


Charge Sharing
 Dynamic gates suffer from charge sharing



Y A
A x CY
Y
B=0 Cx Charge sharing noise

CY
Vx  VY  VDD
C x  CY

9: Circuit Families CMOS VLSI Design Slide 28


Secondary Precharge
 Solution: add secondary precharge transistors
– Typically need to precharge every other node
 Big load capacitance CY helps as well

secondary
 precharge
Y transistor
A x
B

9: Circuit Families CMOS VLSI Design Slide 29


Noise Sensitivity
 Dynamic gates are very sensitive to noise
– Inputs: VIH  Vtn
– Outputs: floating output susceptible noise
 Noise sources
– Capacitive crosstalk
– Charge sharing
– Power supply noise
– Feedthrough noise
– And more!

9: Circuit Families CMOS VLSI Design Slide 30


Domino Summary
 Domino logic is attractive for high-speed circuits
– 1.5 – 2x faster than static CMOS
– But many challenges:
• Monotonicity
• Leakage
• Charge sharing
• Noise
 Widely used in high-performance microprocessors

9: Circuit Families CMOS VLSI Design Slide 31


Pass Transistor Circuits
 Use pass transistors like switches to do logic
 Inputs drive diffusion terminals as well as gates

 CMOS + Transmission Gates:


– 2-input multiplexer
– Gates should be restoring
S S

A A

S Y S Y

B B

S S

9: Circuit Families CMOS VLSI Design Slide 32


LEAP
 LEAn integration with Pass transistors
 Get rid of pMOS transistors
– Use weak pMOS feedback to pull fully high
– Ratio constraint

S
A
S L Y
B

9: Circuit Families CMOS VLSI Design Slide 33


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

S
A
S L Y
B
S
A
S L Y
B

9: Circuit Families CMOS VLSI Design Slide 34

You might also like