1: circuits & layoutslide 1ee 447 vlsi design vlsi design circuits & layout

48
1: Circuits & Layout Slide 1 EE 447 VLSI Design VLSI Design Circuits & Layout

Upload: glenn-culverhouse

Post on 15-Dec-2015

247 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 1EE 447 VLSI Design

VLSI Design

Circuits & Layout

Page 2: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 2EE 447 VLSI Design

Outline

CMOS Gate Design Pass Transistors CMOS Latches & Flip-Flops Standard Cell Layouts Stick Diagrams

Page 3: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 3EE 447 VLSI Design

CMOS Gate Design A 4-input CMOS NOR gate

A

B

C

DY

Page 4: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 4EE 447 VLSI Design

Complementary CMOS Complementary CMOS logic gates

– nMOS pull-down network– pMOS pull-up network– a.k.a. static CMOS

pMOSpull-upnetwork

outputinputs

nMOSpull-downnetwork

X (crowbar)0Pull-down ON

1Z (float)Pull-down OFF

Pull-up ONPull-up OFF

Page 5: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 5EE 447 VLSI Design

Series and Parallel nMOS: 1 = ON pMOS: 0 = ON Series: both must be ON Parallel: either can be ON

(a)

a

b

a

b

g1

g2

0

0

a

b

0

1

a

b

1

0

a

b

1

1

OFF OFF OFF ON

(b)

a

b

a

b

g1

g2

0

0

a

b

0

1

a

b

1

0

a

b

1

1

ON OFF OFF OFF

(c)

a

b

a

b

g1 g2 0 0

OFF ON ON ON

(d) ON ON ON OFF

a

b

0

a

b

1

a

b

11 0 1

a

b

0 0

a

b

0

a

b

1

a

b

11 0 1

a

b

g1 g2

Page 6: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 6EE 447 VLSI Design

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– Requires parallel pMOS

Rule of Conduction Complements– Pull-up network is complement of pull-down– Parallel -> series, series -> parallel

A

B

Y

Page 7: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 7EE 447 VLSI Design

Compound Gates Compound gates can do any inverting function Ex: (AND-AND-OR-INVERT, AOI22)Y A B C D

A

B

C

D

A

B

C

D

A B C DA B

C D

B

D

YA

CA

C

A

B

C

D

B

D

Y

(a)

(c)

(e)

(b)

(d)

(f)

Page 8: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 8EE 447 VLSI Design

Example: O3AI Y A B C D

Page 9: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 9EE 447 VLSI Design

Example: O3AI Y A B C D

A B

Y

C

D

DC

B

A

Page 10: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 10EE 447 VLSI Design

Pass Transistors Transistors can be used as switches

g

s d

g

s d

Page 11: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 11EE 447 VLSI Design

Pass Transistors Transistors can be used as switches

g

s d

g = 0s d

g = 1s d

0 strong 0

Input Output

1 degraded 1

g

s d

g = 0

s d

g = 1

s d

0 degraded 0

Input Output

strong 1

g = 1

g = 1

g = 0

g = 0

Page 12: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 12EE 447 VLSI Design

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 Thus PMOS are best for pull-up network

Page 13: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 13EE 447 VLSI Design

Transmission Gates Pass transistors produce degraded outputs Transmission gates pass both 0 and 1 well

Page 14: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 14EE 447 VLSI Design

Transmission Gates Pass transistors produce degraded outputs Transmission gates pass both 0 and 1 well

g = 0, gb = 1

a b

g = 1, gb = 0

a b

0 strong 0

Input Output

1 strong 1

g

gb

a b

a b

g

gb

a b

g

gb

a b

g

gb

g = 1, gb = 0

g = 1, gb = 0

Page 15: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 15EE 447 VLSI Design

Tristates Tristate buffer produces Z when not enabled

111

001

Z10

Z00

YAEN

A Y

EN

A Y

EN

EN

Page 16: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 16EE 447 VLSI Design

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)

A Y

EN

EN

Page 17: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 17EE 447 VLSI Design

Tristate Inverter Tristate inverter produces restored output

– Violates conduction complement rule– Because we want a Z output

A

YEN

EN

Page 18: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 18EE 447 VLSI Design

Tristate Inverter Tristate inverter produces restored output

– Violates conduction complement rule– Because we want a Z output

A

YEN

A

Y

EN = 0Y = 'Z'

Y

EN = 1Y = A

A

EN

Page 19: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 19EE 447 VLSI Design

Multiplexers 2:1 multiplexer chooses between two inputs

X11

X01

1X0

0X0

YD0D1S

0

1

S

D0

D1Y

Page 20: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 20EE 447 VLSI Design

Multiplexers 2:1 multiplexer chooses between two inputs

1X11

0X01

11X0

00X0

YD0D1S

0

1

S

D0

D1Y

Page 21: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 21EE 447 VLSI Design

Gate-Level Mux Design How many transistors are needed?

1 0 (too many transistors)Y SD SD

Page 22: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 22EE 447 VLSI Design

Gate-Level Mux Design How many transistors are needed? 20

1 0 (too many transistors)Y SD SD

44

D1

D0S Y

4

2

22 Y

2

D1

D0S

Page 23: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 23EE 447 VLSI Design

Transmission Gate Mux Nonrestoring mux uses two transmission gates

Page 24: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 24EE 447 VLSI Design

Transmission Gate Mux Nonrestoring mux uses two transmission gates

– Only 4 transistors

S

S

D0

D1

YS

Page 25: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 25EE 447 VLSI Design

Inverting Mux Inverting multiplexer

– Use compound AOI22– Or pair of tristate inverters– Essentially the same thing

Noninverting multiplexer adds an inverter

S

D0 D1

Y

S

D0

D1Y

0

1S

Y

D0

D1

S

S

S

S

S

S

Page 26: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 26EE 447 VLSI Design

4:1 Multiplexer 4:1 mux chooses one of 4 inputs using two selects

Page 27: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 27EE 447 VLSI Design

4:1 Multiplexer 4:1 mux chooses one of 4 inputs using two selects

– Two levels of 2:1 muxes– Or four tristates

S0

D0

D1

0

1

0

1

0

1Y

S1

D2

D3

D0

D1

D2

D3

Y

S1S0 S1S0 S1S0 S1S0

Page 28: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 28EE 447 VLSI Design

D Latch When CLK = 1, latch is transparent

– Q follows D (a buffer with a Delay) When CLK = 0, the latch is opaque

– Q holds its last value independent of D a.k.a. transparent latch or level-sensitive latch

CLK

D Q

Latc

h D

CLK

Q

Page 29: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 29EE 447 VLSI Design

D Latch Design Multiplexer chooses D or old Q

1

0

D

CLK

QCLK

CLKCLK

CLK

DQ Q

Q

Page 30: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 30EE 447 VLSI Design

D Latch Operation

CLK = 1

D Q

Q

CLK = 0

D Q

Q

D

CLK

Q

Page 31: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 31EE 447 VLSI Design

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

Flo

p

CLK

D Q

D

CLK

Q

Page 32: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 32EE 447 VLSI Design

D Flip-flop Design Built from master and slave D latches

QM

CLK

CLKCLK

CLK

Q

CLK

CLK

CLK

CLK

D

Latc

h

Latc

h

D QQM

CLK

CLK

A “negative level-sensitive” latch A “positive level-sensitive” latch

Page 33: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 33EE 447 VLSI Design

D Flip-flop Operation

CLK = 1

D

CLK = 0

Q

D

QM

QMQ

D

CLK

Q

Inverted version of D

Inverts NOT(QM) and holds it.Hold the last value of NOT D

Page 34: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 34EE 447 VLSI Design

Race Condition Back-to-back flops can malfunction from clock skew

– Second flip-flop fires Early– Sees first flip-flop change and captures its result– Called hold-time failure or race condition

CLK1

D Q1

Flo

p

Flo

p

CLK2

Q2

CLK1

CLK2

Q1

Q2

Page 35: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 35EE 447 VLSI Design

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 1

11

1

2

22

2

2

1

QMQD

Page 36: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 36EE 447 VLSI Design

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

Page 37: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 37EE 447 VLSI Design

Example: Inverter

Page 38: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 38EE 447 VLSI Design

Inverter, contd..

Page 39: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 39EE 447 VLSI Design

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

Page 40: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 40EE 447 VLSI Design

NAND3, contd.

Page 41: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 41EE 447 VLSI Design

Stick Diagrams Stick diagrams help plan layout quickly

– Need not be to scale– Draw with color pencils or dry-erase markers

Page 42: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 42EE 447 VLSI Design

Stick Diagrams Stick diagrams help plan layout quickly

– Need not be to scale– Draw with color pencils or dry-erase markers

VinVout

VDD

GND

Page 43: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 43EE 447 VLSI Design

Wiring Tracks A wiring track is the space required for a wire

– 4 width, 4 spacing from neighbor = 8 pitch Transistors also consume one wiring track

Page 44: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 44EE 447 VLSI Design

Well spacing Wells must surround transistors by 6

– Implies 12 between opposite transistor flavors– Leaves room for one wire track

Page 45: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 45EE 447 VLSI Design

Area Estimation Estimate area by counting wiring tracks

– Multiply by 8 to express in

Page 46: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 46EE 447 VLSI Design

Example: O3AI Sketch a stick diagram for O3AI and estimate area

– Y A B C D

Page 47: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 47EE 447 VLSI Design

Example: O3AI Sketch a stick diagram for O3AI and estimate area

– Y A B C D

Page 48: 1: Circuits & LayoutSlide 1EE 447 VLSI Design VLSI Design Circuits & Layout

1: Circuits & Layout Slide 48EE 447 VLSI Design

Example: O3AI Sketch a stick diagram for O3AI and estimate area

– Y A B C D