cmos vlsi review - egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 ·...

26
CMOS VLSI Review 1

Upload: others

Post on 11-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

CMOS VLSI Review

1

Page 2: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Technology => Performance

Complex Cell

CMOS Logic Gate

Complex Cell

Transistor

g

WiresWires

2

Page 3: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Range of Design Styles

Custom Design Standard Cell Gate Array/FPGA/CPLD

Gates

Routing Channel

Gates

Logi

c CustomALU

GatesStandard

ALU

m C

ontro

l L

Routing Channel

Gates

Standard Registers

Cus

tom

CustomRegister File

PerformanceDesign Complexity (Design Time)

Longer wiresCompact

3

Compact

Page 4: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Basic Technology: CMOS

• CMOS: Complementary Metal Oxide Semiconductor– NMOS (N-Type Metal Oxide Semiconductor) transistors– PMOS (P-Type Metal Oxide Semiconductor) transistors

• NMOS Transistor– Apply a HIGH (Vdd) to its gate Vdd = 5VApply a HIGH (Vdd) to its gate

turns the transistor into a “conductor”– Apply a LOW (GND) to its gate

shuts off the conduction path GND = 0vshuts off the conduction path

• PMOS Transistor

GND 0v

– Apply a HIGH (Vdd) to its gateshuts off the conduction path

– Apply a LOW (GND) to its gate

Vdd = 5V

turns the transistor into a “conductor” GND = 0v

4

Page 5: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Basic Components: CMOS InverterVdd

Symbol Circuit PMOS

OutIn OutIn

PMOS

• Inverter Operation

NMOS

p

Vdd VddVdd

Vout

Vdd

Out

OpenCharge

Discharge

Open

5VinVdd

Page 6: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Basic Components: CMOS Logic Gates

NAND Gate NOR Gate

OutAB

A

B

OutA B Out0 0 10 1 11 0 1

A B Out0 0 10 1 01 0 0

Vdd Vdd

B1 0 11 1 0

1 0 01 1 0

Out

A

B

OutB

Out

A

6

Page 7: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Gate ComparisonVdd Vdd

A

B

OutB

Out

A

Out

NAND G t NOR Gate

• If PMOS transistors is faster:– It is OK to have PMOS transistors in series

NAND Gate NOR Gate

– NOR gate is preferred– NOR gate is preferred also if H -> L is more critical than L -> H

If NMOS transistors is faster:• If NMOS transistors is faster:– It is OK to have NMOS transistors in series– NAND gate is preferred

7– NAND gate is preferred also if L -> H is more critical than H -> L

Page 8: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Ideal (CS) versus Reality (EE)

• When input 0 1, output 1 0 but NOT instantly– Output goes 1 0: output voltage goes from Vdd (5v) to 0vp g p g g ( )

• When input 1 0, output 0 1 but NOT instantly– Output goes 0 1: output voltage goes from 0v to Vdd (5v)

Voltage does not like to change instantaneo sl• Voltage does not like to change instantaneously

Voltage1 => Vdd

Vout

OutInVin

0 => GND

8Time

Page 9: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Fluid Timing Model

Level (V) = Vdd

VddTank Level (Vout)

Sea Level (GND)

SW2SW1SW1

Tank Level (Vout)

Vout

Reservoir Tank

( )

SW2Cout

W El i l Ch T k C i C i (C)

Tank(Cout)

Bottomless Sea

• Water Electrical Charge Tank Capacity Capacitance (C)• Water Level Voltage Water Flow Charge Flowing (Current)• Size of Pipes Strength of Transistors (G)p g ( )• Time to fill up the tank ~ C / G

9

Page 10: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Series Connection

Vdd

V t

Vdd

V1Vi

V1Vin Vout

G1 G2

Cout

Vout

C1

V1VinG1 G2 G1 G2

VoltageVddVdd

Vin V1 Vout

Vdd/2

GND

d1 d2

• Total Propagation Delay = Sum of individual delays = d1 + d2

Time

• Capacitance C1 has two components:– Capacitance of the wire connecting the two gates– Input capacitance of the second inverter

10

p p

Page 11: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Review: Calculating Delays

VddVddV1Vin V2

i V2

C1

V1VinG1 G2

V3

Vdd

• Sum delays along serial paths• Delay (Vin V2) ! = Delay (Vin V3)

V3G3

– Delay (Vin V2) = Delay (Vin V1) + Delay (V1 V2)– Delay (Vin V3) = Delay (Vin V1) + Delay (V1 V3)

• Critical Path = The longest among the N parallel paths• Critical Path = The longest among the N parallel paths• C1 = Wire C + Cin of Gate 2 + Cin of Gate 3

11

Page 12: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Review: General C/L Cell Delay Model

Cout

VoutAB Combinational

DelayVa -> Vout

X

X

Cout

X

.

.

.

CombinationalLogic Cell

XX

X

C t

XX

Ccritical

Internal Delaydelay per unit load

• Combinational Cell (symbol) is fully specified by:– functional (input output) behavior

CoutCcritical

• truth-table, logic equation, VHDL– load factor of each input– critical propagation delay from each input to each output for each

transition• THL(A, o) = Fixed Internal Delay + Load-dependent-delay x load

• Linear model composes

12

Page 13: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Characterize a Gate

• Input capacitance for each input• For each input-to-output path:

– For each output transition type (H L, L H, H Z, L Z ... etc.)• Internal delay (ns)y ( )• Load dependent delay (ns / fF)

• Example: 2-input NAND Gate

OutAB

Delay A -> OutOut: Low -> High

For A and B: Input Load = 61 fF

For either A > Out or B > Out:

Slope =0.0021ns / fF

For either A -> Out or B -> Out:TPlh = 0.5ns Tplhf = 0.0021ns / fFTPhl = 0.1ns TPhlf = 0.0020ns / fF

Cout

0.5ns

13

Page 14: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

A Specific Example: 2 to 1 MUX

AGate 1

Wire 1Wire 0

AY

2 x 1Y = (A and !S) or (A and S)B

Gate 3

Gate 2Wire 2

Wire 0B

S

1 Mux

SWire 2 S

• Input Load (I.L.)– A, B: I.L. (NAND) = 61 fF – S: I.L. (INV) + I.L. (NAND) = 50 fF + 61 fF = 111 fF( ) ( )

• Load Dependent Delay (L.D.D.): Same as Gate 3– TAYlhf = 0.021 ns / fF TAYhlf = 0.020 ns / fF

TBYlhf = 0 021 ns / fF TBYhlf = 0 020 ns / fF– TBYlhf = 0.021 ns / fF TBYhlf = 0.020 ns / fF– TSYlhf = 0.021 ns / fF TSYlhf = 0.020 ns / fF

14

Page 15: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

2 to 1 MUX: Internal Delay Calculation

Y = (A and !S) or (A and S)

AGate 1

Wire 1Wire 0 Y = (A and !S) or (A and S)

B

Gate 3

Gate 2Wire 2

Wire 0

SWire 2

• Internal Delay (I.D.):– A to Y: I.D. G1 + (Wire 1 C + G3 Input C) * L.D.D G1 + I.D. G3– B to Y: I.D. G2 + (Wire 2 C + G3 Input C) * L.D.D. G2 + I.D. G3( p )– S to Y (Worst Case) : I.D. Inv + (Wire 0 C + G1 Input C) * L.D.D. Inv

+ Internal Delay A to Y• We can approximate the effect of “Wire 1 C” by:• We can approximate the effect of Wire 1 C by:

– Assume Wire 1 has the same C as all the gate C attached to it.– Total C Gate 1 need to drive: 2.0 x Input C of Gate 3

15

Page 16: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

2 to 1 MUX: Internal Delay Calculation (continue)

Y (A and !S) or (A and S)

AGate 1

Wire 1Wire 0 Y = (A and !S) or (A and S)

B

Gate 3

Gate 2Wire 2

Wire 0

SWire 2

• Internal Delay (I.D.):– A to Y: I.D. G1 + (Wire 1 C + G3 Input C) * L.D.D G1 + I.D. G3– B to Y: I.D. G2 + (Wire 2 C + G3 Input C) * L.D.D. G2 + I.D. G3( p )– S to Y (Worst Case): I.D. Inv + (Wire 0 C + G1 Input C) * L.D.D. Inv

+ Internal Delay A to Y• Specific Example:• Specific Example:

– TAYlh = TPhl G1 + (2.0 * 61 fF) * TPhlf G1 + TPlh G3= 0.1ns + 122 fF * 0.0020 ns/fF + 0.5ns = 0.844 ns

16

Page 17: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Abstraction: 2 to 1 MUX

AY

2 x 1

AGate 1

B1 M

uxB

Gate 3

Gate 2

Y

Input Load: A = 61 fF B = 61 fF S = 111 fF

S

S

• Input Load: A = 61 fF, B = 61 fF, S = 111 fF• Load Dependent Delay:

– TAYlhf = 0.021 ns / fF TAYhlf = 0.020 ns / fF– TBYlhf = 0.021 ns / fF TBYhlf = 0.020 ns / fF– TSYlhf = 0.021 ns / fF TSYlhf = 0.020 ns / fF

• Internal Delay:Internal Delay:– TAYlh = TPhl G1 + (2.0 * 61 fF) * TPhlf G1 + TPlh G3

= 0.1ns + 122 fF * 0.0020ns/fF + 0.5ns = 0.844ns

17– Fun Exercises: TAYhl, TBYlh, TSYlh, TSYlh

Page 18: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Storage Element’s Timing Model

Clk

D QD Don’t Care Don’t Care

Setup Hold

Cl k QUnknownQ

Clock-to-Q

• Setup Time: Input must be stable BEFORE the trigger clock edge• Hold Time: Input must REMAIN stable after the trigger clock edge

Clock to Q time:• Clock-to-Q time:– Output cannot change instantaneously at the trigger clock edge– Similar to delay in logic gates, two components:

• Internal Clock-to-Q• Load dependent Clock-to-Q

18

Page 19: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Clocking Methodology

Clk

. . . .Combination Logic.

...

.

...

Combination Logic

All t l t l k d b th l k d• All storage elements are clocked by the same clock edge• The combination logic block’s:

– Inputs are updated at each clock tick– All outputs MUST be stable before the next clock tick

19

Page 20: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Critical Path & Cycle Time

Clk

. . . .

.

...

.

...

• Critical path: the slowest path between any two storage devicesp p y g• Cycle time is a function of the critical path

– must be greater than:Clock to Q + Longest Path through the Combination Logic + SetupClock-to-Q + Longest Path through the Combination Logic + Setup

20

Page 21: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Clock Skew’s Effect on Cycle Time

Clk1

Clk2 Clock Skew

.

.

.

.

.

.

.

.

.

.

.

.

• The worst case scenario for cycle time consideration:– The input register sees CLK1p g– The output register sees CLK2

• Cycle Time = CLK-to-Q + Longest Delay + Setup + Clock Skew

21

Page 22: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Tricks to Reduce Cycle Time

• Reduce the number of gate levels

AAB

C

AB

CCD

CD

• Pay attention to loading• Pay attention to loading– One gate driving many gates is a bad idea– Avoid using a small gate to drive a long wire

INV4x• Use multiple stages to drive large load

Clarge

22INV4x

Page 23: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

How to Avoid Hold Time Violation?

Clk

. . . .Combination Logic.

...

.

...

Combination Logic

• Hold time requirement:Input to register must NOT change immediately after the clock tick– Input to register must NOT change immediately after the clock tick

• This is usually easy to meet in the “edge trigger” clocking scheme • Hold time of most FFs is ≈ 0 ns• CLK-to-Q + Shortest Delay Path must be greater than Hold Time

23

Page 24: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Clock Skew’s Effect on Hold Time

Clk1

Cl k SkClk2 Clock Skew

.

.

.

.

.

.

.

.

.

.

.

.Combination Logic

Clk2 Clk1

• The worst case scenario for hold time consideration:– The input register sees CLK2

Clk2 Clk1

p g– The output register sees CLK1– fast FF2 output must not change input to FF1 for same clock edge

• (CLK to Q + Shortest Delay Path Clock Skew) > Hold Time

24

• (CLK-to-Q + Shortest Delay Path - Clock Skew) > Hold Time

Page 25: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

To Get More Information

• A Classic Book that Started it All:– Carver Mead and Lynn Conway, “Introduction to VLSI Systems,”

Addison-Wesley Publishing Company, October 1980.Addison Wesley Publishing Company, October 1980.• A Good VLSI Circuit Design Book

– Lance Glasser & Daniel Dobberpuhl, “The Design and Analysis of VLSI Circuits,” Addison-Wesley Publishing Company, 1985.

Mr Dobberpuhl is responsible for the DEC Alpha chip design• Mr. Dobberpuhl is responsible for the DEC Alpha chip design.• The Best VLSI book out there now!!

– Neil H. E. Waste and D. Harris, “CMOS VLSI Design: A Circuits and Systems perspective,” Addison-Wesley Publishing Company, 2004.

• Another great book from a great researcher who recently passed away.– J. P. Uyemura, “CMOS Logic Circuit Design,” Kluwer Academic

Publishers, 1999.• A Book on How and Why Digital ICs Work:A Book on How and Why Digital ICs Work:

– David Hodges & Horace Jackson, “Analysis and Design of Digital Integrated Circuits,” McGraw-Hill Book Company, 1983.

25

Page 26: CMOS VLSI Review - Egloospds5.egloos.com/pds/200704/11/49/comparch_ch05_cmos.pdf · 2007-04-11 · Basic Components: CMOS Logic Gates NAND Gate NOR Gate A Out B A B Out ABOut 00 1

Summary

• Performance and Technology Trends– Keep the design simple to take advantage of the latest technologyp g p g gy– CMOS inverter and CMOS logic gates

• Delay Modeling and Gate CharacterizationDelay = Internal Delay + (Load Dependent Delay x Output Load)– Delay = Internal Delay + (Load Dependent Delay x Output Load)

• Clocking Methodology and Timing Considerations– Simplest clocking methodology

• All storage elements use the SAME clock edge– Cycle Time = CLK-to-Q + Longest Delay Path + Setup + Clock Skew– (CLK-to-Q + Shortest Delay Path - Clock Skew) > Hold Time( Q y )

26