EE 447 VLSI Design

Download Report

Transcript EE 447 VLSI Design

EE 447
VLSI Design
Lecture 8:
Circuit Families
EE 447 VLSI Design
1
Outline



Pseudo-nMOS Logic
Dynamic Logic
Pass Transistor Logic
EE 447 VLSI Design
2
Introduction





What makes a circuit fast?
 I = C dV/dt
-> tpd  (C/I) DV
 low capacitance
 high current
B
 small swing
A
Logical effort is proportional to C/I
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…
EE 447 VLSI Design
4
4
Y
1
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
load
1.8
1.5
P/2
1.2
Ids
P = 24
Vout
16/2
Vin
Vout 0.9
0.6
P = 14
0.3
P=4
0
0
0.3
0.6
0.9
1.2
1.5
1.8
Vin
EE 447 VLSI Design
4
Pseudo-nMOS Gates


Design for unit current on output
to compare with unit inverter.
pMOS fights nMOS
Inverter
Y
A
Y
inputs
f
NAND2
gu
gd
gavg
pu
pd
pavg
=
=
=
=
=
=
A
B
gu
g
Y gd
avg
pu
pd
pavg
NOR2
=
=
=
=
=
=
EE 447 VLSI Design
A
B
gu
gd
gavg
Y pu
pd
pavg
=
=
=
=
=
=
5
Pseudo-nMOS Gates


Design for unit current on output
to compare with unit inverter.
pMOS fights nMOS
Inverter
2/3
Y
A
4/3
Y
inputs
f
NAND2
gu
gd
gavg
pu
pd
pavg
=
=
=
=
=
=
gu
g
Y gd
avg
8/3
pu
pd
8/3
pavg
2/3
A
B
NOR2
=
=
=
=
=
=
EE 447 VLSI Design
2/3
A
4/3 B
gu
gd
gavg
Y pu
4/3 pd
pavg
=
=
=
=
=
=
6
Pseudo-nMOS Gates


Design for unit current on output
to compare with unit inverter.
pMOS fights nMOS
Inverter
2/3
Y
A
4/3
Y
inputs
f
NAND2
gu
gd
gavg
pu
pd
pavg
= 4/3
= 4/9
= 8/9
=
=
=
A
B
gu
2/3
g
Y gd
avg
8/3
pu
pd
8/3
pavg
NOR2
= 8/3
= 8/9
= 16/9
=
=
=
EE 447 VLSI Design
2/3
A
4/3 B
gu
gd
gavg
Y pu
4/3 pd
pavg
= 4/3
= 4/9
= 8/9
=
=
=
7
Pseudo-nMOS Gates


Design for unit current on output
to compare with unit inverter.
pMOS fights nMOS
Inverter
2/3
Y
A
4/3
Y
inputs
f
NAND2
gu
gd
gavg
pu
pd
pavg
= 4/3
= 4/9
= 8/9
= 6/3
= 6/9
= 12/9
gu
g
Y gd
avg
8/3
pu
pd
8/3
pavg
2/3
A
B
NOR2
= 8/3
= 8/9
= 16/9
= 10/3
= 10/9
= 20/9
EE 447 VLSI Design
2/3
A
4/3 B
gu
gd
gavg
Y pu
4/3 pd
pavg
= 4/3
= 4/9
= 8/9
= 10/3
= 10/9
= 20/9
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=
F=
P=
N=
D=
In1
1
Ink
1
EE 447 VLSI Design
Y
H
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
F = GBH = 8H/9
P = 1 + (4+8k)/9 = (8k+13)/9
N=2
4 2 H 8k  13

D = NF1/N + P =
3
9
In1
1
Ink
1
EE 447 VLSI Design
Y
H
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
EE 447 VLSI Design
11
Dynamic Logic


Dynamic gates uses a clocked pMOS pullup
Two modes: precharge and evaluate
2
A

2/3
Y
1
Y
1
A
Static
4/3
Pseudo-nMOS

Precharge
Y
A
1
Dynamic
Evaluate
Precharge
Y
EE 447 VLSI Design
12
The Foot


What if pulldown network is ON during precharge?
Use series evaluation transistor to prevent fight.
precharge transistor

Y


Y
inputs
A
Y
inputs
f
f
foot
footed
EE 447 VLSI Design
unfooted
13
Logical Effort
Inverter

unfooted
NAND2
1
gd
pd
footed
2
2
2
B
2
gd
pd
=
=

1
1
B
Y
gd
pd
=
=
A
1
gd
pd
=
=
1
Y
1
Y
A
A
=
=


1
Y
1
Y
A

NOR2
A
3
B
3
3

1
Y
gd
pd
=
=
EE 447 VLSI Design
A
2
B
2
2
gd
pd
=
=
14
Logical Effort
Inverter

unfooted
NAND2
1
gd
pd
footed
2
2
2
B
2
gd
pd
= 2/3
= 3/3

1
1
B
Y
gd
pd
= 2/3
= 3/3
A
1
gd
pd
= 1/3
= 3/3
1
Y
1
Y
A
A
= 1/3
= 2/3


1
Y
1
Y
A

NOR2
A
3
B
3
3

1
Y
gd
pd
= 3/3
= 4/3
EE 447 VLSI Design
A
2
B
2
2
gd
pd
= 2/3
= 5/3
15
Monotonicity

Dynamic gates require monotonically rising inputs during
evaluation

 0 -> 0
A
 0 -> 1
 1 -> 1
violates monotonicity
during evaluation
 But not 1 -> 0
A

Precharge
Evaluate
Precharge
Y
Output should rise but does not
EE 447 VLSI Design
16
Monotonicity Woes


But dynamic gates produce monotonically falling outputs
during evaluation
Illegal for one dynamic gate to drive another!
A=1

A
Y

Precharge
Evaluate
Precharge
X
X
Y
EE 447 VLSI Design
17
Monotonicity Woes


But dynamic gates produce monotonically falling outputs
during evaluation
Illegal for one dynamic gate to drive another!
A=1

A
Y

Precharge
Evaluate
Precharge
X
X
X monotonically falls during evaluation
Y
Y should rise but cannot
EE 447 VLSI Design
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
B
C

Y
Z
dynamic static
NAND inverter

A
B


W
X
H
C
EE 447 VLSI Design
Y
H
Z
=
A
B

X
C
Z
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
H
Y

S4
S5
S6
S7
D4
D5
D6
D7
EE 447 VLSI Design
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
0
0
1
1
sig_l
0
1
0
1
Meaning
Y_l
Prechar
inputs
ged
‘0’
‘1’
EE 447 VLSI Design
invalid

f
Y_h
f

21
Example: AND/NAND


Given A_h, A_l, B_h, B_l
Compute Y_h = A * B, Y_l = ~(A * B)
EE 447 VLSI Design
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
A_h
= A*B
A_l
B_l
Y_h
= A*B
B_h

EE 447 VLSI Design
23
Example: XOR/XNOR

Sometimes possible to share transistors

Y_l
= A xnor B
A_h
Y_h
A_l
A_l
B_l
B_h
A_h
= A xor B

EE 447 VLSI Design
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

A
1 k
X
H
Y
2
2
EE 447 VLSI Design
25
Charge Sharing

Dynamic gates suffer from charge sharing


A
Y
CY
x
A
Y
B=0
Cx
x
EE 447 VLSI Design
26
Charge Sharing

Dynamic gates suffer from charge sharing


A
Y
CY
x
A
Y
B=0
Cx
Charge sharing noise
x
Vx  VY 
EE 447 VLSI Design
27
Charge Sharing

Dynamic gates suffer from charge sharing


A
Y
CY
x
A
Y
B=0
Cx
Charge sharing noise
x
CY
Vx  VY 
VDD
C x  CY
EE 447 VLSI Design
28
Secondary Precharge


Solution: add secondary precharge transistors
 Typically need to precharge every other node
Big load capacitance CY helps as well

Y
A
secondary
precharge
transistor
x
B
EE 447 VLSI Design
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!
EE 447 VLSI Design
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
EE 447 VLSI Design
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
S
Y
Y
B
B
S
S
EE 447 VLSI Design
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
EE 447 VLSI Design
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
L
Y
B
S
A
S
B
EE 447 VLSI Design
34