Professional Documents
Culture Documents
VLSI Design: Circuits & Layout
VLSI Design: Circuits & Layout
Outline
CMOS Gate Design
Pass Transistors
CMOS Latches & Flip-Flops
Standard Cell Layouts
Stick Diagrams
A
B
C
D
Complementary CMOS
Complementary CMOS logic gates
nMOS pull-down network
pMOS pull-up network
a.k.a. static CMOS
inputs
pMOS
pull-up
network
output
nMOS
pull-down
network
Pull-up OFF
Pull-up ON
Pull-down OFF
Z (float)
Pull-down ON
X (crowbar)
a
0
g1
g2
(a)
g2
OFF
OFF
ON
b
(d)
ON
OFF
OFF
OFF
OFF
ON
ON
ON
a
g2
OFF
g1
(c)
(b)
g2
g1
a
g1
0
b
nMOS: 1 = ON
pMOS: 0 = ON
Series: both must be ON
Parallel: either can be ON
ON
ON
ON
OFF
Conduction Complement
Complementary CMOS gates always produce 0 or 1
Ex: NAND gate
Y
A
B
Compound Gates
Compound gates can do any inverting function
Ex: AND-AND-OR-INV
Y ( A B ) (C D)
(AOI22)
(a)
(b)
B C
(c)
(d)
(e)
A
B
C
D
Y
(f)
Example: O3AI
Y ( A B C) D
Example: O3AI
Y ( A B C) D
A
B
C
D
D
Pass Transistors
Transistors can be used as switches
g
s
g
s
Pass Transistors
Transistors can be used as switches
g=0
g
s
d
g=1
d
g=0
g
s
Input g = 1 Output
0
strong 0
Input
d
g=1
s
g=1
g=0
g=0
degraded 1
Output
degraded 0
strong 1
Signal Strength
Strength of signal
Transmission Gates
Pass transistors produce degraded outputs
Transmission gates pass both 0 and 1 well
Transmission Gates
Pass transistors produce degraded outputs
Transmission gates pass both 0 and 1 well
Input
g
a
b
gb
b
gb
g = 0, gb = 1
a
b
g = 1, gb = 0
0
strong 0
g = 1, gb = 0
a
b
g = 1, gb = 0
strong 1
1
g
a
g
b
gb
Output
b
gb
Tristates
Tristate buffer produces Z when not enabled
EN
EN
A
EN
A
EN
Nonrestoring Tristate
Transmission gate acts as tristate buffer
Only two transistors
But nonrestoring
Noise on A is passed on to Y (after several stages, the
noise may degrade the signal beyond recognition)
EN
A
Y
EN
Tristate Inverter
Tristate inverter produces restored output
Note however that the Tristate buffer
A
EN
EN
Tristate Inverter
Tristate inverter produces restored output
Note however that the Tristate buffer
A
EN
EN = 0
Y = 'Z'
EN = 1
Y=A
EN
Multiplexers
2:1 multiplexer chooses between two inputs
D1
D0
D0
D1
Multiplexers
2:1 multiplexer chooses between two inputs
D1
D0
S
D0
D1
D1
S
D0
D1
S
D0
2
4
gates
gates
Only 4 transistors
S
D0
S
D1
S
Inverting Mux
Inverting multiplexer
S
D1
S
D0
D1
S
Y
D0
D1
4:1 Multiplexer
4:1 mux chooses one of 4 inputs using two
selects
4:1 Multiplexer
4:1 mux chooses one of 4 inputs using two
selects
D0
S0
D0
D1
D2
D3
S1
D1
0
1
Y
D2
D3
D Latch
When CLK = 1, latch is transparent
Q follows D (a buffer with a Delay)
When CLK = 0, the latch is opaque
Latch
CLK
CLK
D
Q
Q
D Latch Design
Multiplexer chooses D or old Q
CLK
D
1
0
CLK
Q
Q
Q
CLK
Old Q
CLK
CLK
D Latch Operation
Q
D
CLK = 1
CLK
D
Q
Q
D
CLK = 0
D Flip-flop
When CLK rises, D is copied to Q
At all other times, Q holds its value
a.k.a. positive edge-triggered flip-flop, master-
slave flip-flop
CLK
CLK
D
Flop
Q
Q
D Flip-flop Design
Built from master and slave D latches
CLK
CLK
CLK
CLK
QM
Latch
Latch
CLK
D
QM
D
CLK
Q
CLK
CLK
Q
CLK
A negative level-sensitive latch
CLK
A positive level-sensitive latch
D Flip-flop Operation
Inverted version of D
QM
CLK = 0
Holds the last value of NOT(D)
QM
Q
Q -> NOT(NOT(QM))
CLK = 1
CLK
D
Q
Race Condition
Back-to-back flops can
Nonoverlapping Clocks
Nonoverlapping clocks can prevent races
1
QM
D
2
2
1
2
Q
1
Gate Layout
Layout can be very time consuming
Example: Inverter
Inverter, contd..
Example: NAND3
Horizontal N-diffusion and p-diffusion strips
Vertical polysilicon gates
Metal1 VDD rail at top
Metal1 GND rail at bottom
32 by 40
Stick Diagrams
Stick diagrams help plan layout quickly
Stick Diagrams
Stick diagrams help plan layout quickly
VDD
Vin
Vout
GND
Wiring Tracks
A wiring track is the space required for a wire
Well spacing
Wells must surround transistors by 6
Area Estimation
Estimate area by counting wiring tracks
Multiply by 8 to express in
Example: O3AI
Sketch a stick diagram for O3AI and estimate area
Y ( A B C) D
Example: O3AI
Sketch a stick diagram for O3AI and estimate area
Y ( A B C) D
Example: O3AI
Sketch a stick diagram for O3AI and estimate area
Y ( A B C) D