CMOS VLSI Design

Download Report

Transcript CMOS VLSI Design

Introduction to
CMOS VLSI
Design
Lecture 1:
Circuits & Layout
David Harris
Harvey Mudd College
Spring 2004
Outline






A Brief History
CMOS Gate Design
Pass Transistors
CMOS Latches & Flip-Flops
Standard Cell Layouts
Stick Diagrams
1: Circuits & Layout
CMOS VLSI Design
Slide 2
A Brief History
 1958: First integrated circuit
– Flip-flop using two transistors
– Built by Jack Kilby at Texas Instruments
 2003
– Intel Pentium 4 mprocessor (55 million transistors)
– 512 Mbit DRAM (> 0.5 billion transistors)
 53% compound annual growth rate over 45 years
– No other technology has grown so fast so long
 Driven by miniaturization of transistors
– Smaller is cheaper, faster, lower in power!
– Revolutionary effects on society
1: Circuits & Layout
CMOS VLSI Design
Slide 3
Annual Sales
 1018 transistors manufactured in 2003
– 100 million for every human on the planet
Global Semiconductor Billings
(Billions of US$)
200
150
100
50
0
1982
1984
1986
1988
1990
1992
1994
1996
1998
2000
2002
Year
1: Circuits & Layout
CMOS VLSI Design
Slide 4
Invention of the Transistor
 Vacuum tubes ruled in first half of 20th century Large,
expensive, power-hungry, unreliable
 1947: first point contact transistor
– John Bardeen and Walter Brattain at Bell Labs
– Read Crystal Fire
by Riordan, Hoddeson
1: Circuits & Layout
CMOS VLSI Design
Slide 5
Transistor Types
 Bipolar transistors
– npn or pnp silicon structure
– Small current into very thin base layer controls
large currents between emitter and collector
– Base currents limit integration density
 Metal Oxide Semiconductor Field Effect Transistors
– nMOS and pMOS MOSFETS
– Voltage applied to insulated gate controls current
between source and drain
– Low power allows very high integration
1: Circuits & Layout
CMOS VLSI Design
Slide 6
MOS Integrated Circuits
 1970’s processes usually had only nMOS transistors
– Inexpensive, but consume power while idle
Intel 1101 256-bit SRAM
Intel 4004 4-bit mProc
 1980s-present: CMOS processes for low idle power
1: Circuits & Layout
CMOS VLSI Design
Slide 7
Moore’s Law
 1965: Gordon Moore plotted transistor on each chip
– Fit straight line on semilog scale
– Transistor counts have doubled every 26 months
1,000,000,000
Integration Levels
100,000,000
10,000,000
Transistors
Intel486
1,000,000
Pentium 4
Pentium III
Pentium II
Pentium Pro
Pentium
Intel386
10 gates
MSI: 1000 gates
80286
100,000
SSI:
8086
10,000
8080
LSI:
8008
4004
1,000
1970
1975
1980
1985
1990
1995
2000
10,000 gates
VLSI: > 10k gates
Year
1: Circuits & Layout
CMOS VLSI Design
Slide 8
Corollaries
 Many other factors grow exponentially
– Ex: clock frequency, processor performance
10,000
4004
1,000
8008
Clock Speed (MHz)
8080
8086
100
80286
Intel386
Intel486
10
Pentium
Pentium Pro/II/III
Pentium 4
1
1970
1975
1980
1985
1990
1995
2000
2005
Year
1: Circuits & Layout
CMOS VLSI Design
Slide 9
CMOS Gate Design
 Activity:
– Sketch a 4-input CMOS NAND gate
1: Circuits & Layout
CMOS VLSI Design
Slide 10
CMOS Gate Design
 Activity:
– Sketch a 4-input CMOS NOR gate
A
B
C
D
Y
1: Circuits & Layout
CMOS VLSI Design
Slide 11
Complementary CMOS
 Complementary CMOS logic gates
– nMOS pull-down network
– pMOS pull-up network
inputs
– a.k.a. static CMOS
Pull-up OFF
Pull-up ON
Pull-down OFF Z (float)
1
Pull-down ON
X (crowbar)
1: Circuits & Layout
0
CMOS VLSI Design
pMOS
pull-up
network
output
nMOS
pull-down
network
Slide 12
Series and Parallel




nMOS: 1 = ON
pMOS: 0 = ON
Series: both must be ON
Parallel: either can be ON
a
a
0
g1
g2
(a)
(b)
a
g1
g2
(c)
a
g1
g2
b
1: Circuits & Layout
CMOS VLSI Design
0
1
b
b
OFF
OFF
OFF
ON
a
a
a
a
0
1
1
1
0
1
b
b
b
b
ON
OFF
OFF
OFF
a
a
a
a
0
0
b
1
b
0
b
1
1
0
g2
a
b
a
g1
a
0
0
b
(d)
a
0
1
1
0
1
1
b
b
b
b
OFF
ON
ON
ON
a
a
a
a
0
0
0
1
1
0
1
1
b
b
b
b
ON
ON
ON
OFF
Slide 13
Conduction Complement
 Complementary CMOS gates always produce 0 or 1
 Ex: NAND gate
– Series nMOS: Y=0 when both inputs are 1
– Thus Y=1 when either input is 0
Y
– Requires parallel pMOS
A
B
 Rule of Conduction Complements
– Pull-up network is complement of pull-down
– Parallel -> series, series -> parallel
1: Circuits & Layout
CMOS VLSI Design
Slide 14
Compound Gates
 Compound gates can do any inverting function
 Ex: Y  A B  C D (AND-AND-OR-INVERT, AOI22)
A
C
A
C
B
D
B
D
(a)
A
(b)
B C
D
(c)
C
D
A
B
(d)
C
D
A
B
A
B
C
D
Y
A
C
B
D
Y
(f)
(e)
1: Circuits & Layout
CMOS VLSI Design
Slide 15
Example: O3AI
 Y   A B  C D
1: Circuits & Layout
CMOS VLSI Design
Slide 16
Example: O3AI
 Y   A B  C D
A
B
C
D
Y
D
A
1: Circuits & Layout
B
C
CMOS VLSI Design
Slide 17
Signal Strength
 Strength of signal
– How close it approximates ideal voltage source
 VDD and GND rails are strongest 1 and 0
 nMOS pass strong 0
– But degraded or weak 1
 pMOS pass strong 1
– But degraded or weak 0
 Thus nMOS are best for pull-down network
1: Circuits & Layout
CMOS VLSI Design
Slide 18
Pass Transistors
 Transistors can be used as switches
g
s
d
g
s
d
1: Circuits & Layout
CMOS VLSI Design
Slide 19
Pass Transistors
 Transistors can be used as switches
g=0
g
s
d
s
d
Input g = 1 Output
0
strong 0
g=1
s
d
g=0
g
s
s
g=1
Input
d
d
g=1
s
1: Circuits & Layout
1
d
CMOS VLSI Design
degraded 1
g=0
0
Output
degraded 0
g=0
strong 1
Slide 20
Transmission Gates
 Pass transistors produce degraded outputs
 Transmission gates pass both 0 and 1 well
1: Circuits & Layout
CMOS VLSI Design
Slide 21
Transmission Gates
 Pass transistors produce degraded outputs
 Transmission gates pass both 0 and 1 well
Input
g
a
b
gb
a
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
g
b
gb
1: Circuits & Layout
a
g
b
gb
Output
a
b
gb
CMOS VLSI Design
Slide 22
Tristates
 Tristate buffer produces Z when not enabled
EN
A
0
0
0
1
1
0
1
1
EN
Y
Y
A
EN
Y
A
EN
1: Circuits & Layout
CMOS VLSI Design
Slide 23
Tristates
 Tristate buffer produces Z when not enabled
EN
A
Y
0
0
Z
0
1
Z
1
0
0
1
1
1
EN
Y
A
EN
Y
A
EN
1: Circuits & Layout
CMOS VLSI Design
Slide 24
Nonrestoring Tristate
 Transmission gate acts as tristate buffer
– Only two transistors
– But nonrestoring
• Noise on A is passed on to Y
EN
A
Y
EN
1: Circuits & Layout
CMOS VLSI Design
Slide 25
Tristate Inverter
 Tristate inverter produces restored output
– Violates conduction complement rule
– Because we want a Z output
A
EN
Y
EN
1: Circuits & Layout
CMOS VLSI Design
Slide 26
Tristate Inverter
 Tristate inverter produces restored output
– Violates conduction complement rule
– Because we want a Z output
A
A
A
EN
Y
Y
Y
EN = 0
Y = 'Z'
EN = 1
Y=A
EN
1: Circuits & Layout
CMOS VLSI Design
Slide 27
Multiplexers
 2:1 multiplexer chooses between two inputs
S
S
D1
D0
0
X
0
0
X
1
1
0
X
1
1
X
1: Circuits & Layout
Y
D0
0
Y
D1
CMOS VLSI Design
1
Slide 28
Multiplexers
 2:1 multiplexer chooses between two inputs
S
S
D1
D0
Y
0
X
0
0
0
X
1
1
1
0
X
0
1
1
X
1
1: Circuits & Layout
CMOS VLSI Design
D0
0
Y
D1
1
Slide 29
Gate-Level Mux Design
 Y  SD1  SD0 (too many transistors)
 How many transistors are needed?
1: Circuits & Layout
CMOS VLSI Design
Slide 30
Gate-Level Mux Design
 Y  SD1  SD0 (too many transistors)
 How many transistors are needed? 20
D1
S
D0
D1
S
D0
1: Circuits & Layout
Y
4
2
4
2
4
2
Y
2
CMOS VLSI Design
Slide 31
Transmission Gate Mux
 Nonrestoring mux uses two transmission gates
1: Circuits & Layout
CMOS VLSI Design
Slide 32
Transmission Gate Mux
 Nonrestoring mux uses two transmission gates
– Only 4 transistors
S
D0
Y
S
D1
S
1: Circuits & Layout
CMOS VLSI Design
Slide 33
Inverting Mux
 Inverting multiplexer
– Use compound AOI22
– Or pair of tristate inverters
– Essentially the same thing
 Noninverting multiplexer adds an inverter
D0
S
S
D1
D0
D1
S
S
Y
S
S
S
Y
S
D0
Y
S
D1
1: Circuits & Layout
CMOS VLSI Design
0
1
Slide 34
4:1 Multiplexer
 4:1 mux chooses one of 4 inputs using two selects
1: Circuits & Layout
CMOS VLSI Design
Slide 35
4:1 Multiplexer
 4:1 mux chooses one of 4 inputs using two selects
– Two levels of 2:1 muxes
S1S0 S1S0 S1S0 S1S0
– Or four tristates
D0
S0
D0
0
D1
1
S1
D1
0
Y
Y
D2
0
D3
1
1
D2
D3
1: Circuits & Layout
CMOS VLSI Design
Slide 36
D Latch
 When CLK = 1, latch is transparent
– D flows through to Q like a buffer
 When CLK = 0, the latch is opaque
– Q holds its old value independent of D
 a.k.a. transparent latch or level-sensitive latch
D
Latch
CLK
1: Circuits & Layout
CLK
D
Q
Q
CMOS VLSI Design
Slide 37
D Latch Design
 Multiplexer chooses D or old Q
CLK
D
1
CLK
Q
Q
Q
D
Q
0
CLK
CLK
CLK
1: Circuits & Layout
CMOS VLSI Design
Slide 38
D Latch Operation
Q
D
CLK = 1
Q
Q
D
Q
CLK = 0
CLK
D
Q
1: Circuits & Layout
CMOS VLSI Design
Slide 39
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
D
Q
Q
1: Circuits & Layout
CMOS VLSI Design
Slide 40
D Flip-flop Design
 Built from master and slave D latches
CLK
CLK
CLK
QM
D
CLK
QM
Latch
D
Latch
CLK
CLK
CLK
CLK
Q
CLK
1: Circuits & Layout
Q
CMOS VLSI Design
CLK
Slide 41
D Flip-flop Operation
D
QM
Q
CLK = 0
D
QM
Q
CLK = 1
CLK
D
Q
1: Circuits & Layout
CMOS VLSI Design
Slide 42
Race Condition
 Back-to-back flops can malfunction from clock skew
– Second flip-flop fires late
– Sees first flip-flop change and captures its result
– Called hold-time failure or race condition
CLK1
CLK2
Q1
Flop
D
Flop
CLK1
CLK2
Q2
Q1
Q2
1: Circuits & Layout
CMOS VLSI Design
Slide 43
Nonoverlapping Clocks
 Nonoverlapping clocks can prevent races
– As long as nonoverlap exceeds clock skew
 We will use them in this class for safe design
– Industry manages skew more carefully instead
2
1
QM
D
2
2
2
Q
1
1
1
1
2
1: Circuits & Layout
CMOS VLSI Design
Slide 44
Gate Layout
 Layout can be very time consuming
– Design gates to fit together nicely
– Build a library of standard cells
 Standard cell design methodology
– VDD and GND should abut (standard height)
– Adjacent gates should satisfy design rules
– nMOS at bottom and pMOS at top
– All gates include well and substrate contacts
1: Circuits & Layout
CMOS VLSI Design
Slide 45
Example: Inverter
1: Circuits & Layout
CMOS VLSI Design
Slide 46
Example: NAND3





Horizontal N-diffusion and p-diffusion strips
Vertical polysilicon gates
Metal1 VDD rail at top
Metal1 GND rail at bottom
32 l by 40 l
1: Circuits & Layout
CMOS VLSI Design
Slide 47
Stick Diagrams
 Stick diagrams help plan layout quickly
– Need not be to scale
– Draw with color pencils or dry-erase markers
1: Circuits & Layout
CMOS VLSI Design
Slide 48
Wiring Tracks
 A wiring track is the space required for a wire
– 4 l width, 4 l spacing from neighbor = 8 l pitch
 Transistors also consume one wiring track
1: Circuits & Layout
CMOS VLSI Design
Slide 49
Well spacing
 Wells must surround transistors by 6 l
– Implies 12 l between opposite transistor flavors
– Leaves room for one wire track
1: Circuits & Layout
CMOS VLSI Design
Slide 50
Area Estimation
 Estimate area by counting wiring tracks
– Multiply by 8 to express in l
1: Circuits & Layout
CMOS VLSI Design
Slide 51
Example: O3AI
 Sketch a stick diagram for O3AI and estimate area
– Y   A B  C D
1: Circuits & Layout
CMOS VLSI Design
Slide 52
Example: O3AI
 Sketch a stick diagram for O3AI and estimate area
– Y   A B  C D
1: Circuits & Layout
CMOS VLSI Design
Slide 53
Example: O3AI
 Sketch a stick diagram for O3AI and estimate area
– Y   A B  C D
1: Circuits & Layout
CMOS VLSI Design
Slide 54