cmos gate design modeling, design, and optimization

10
1 ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems Lec 3: September 6, 2019 Gates from Transistors (concl) and Transistor Introduction (first order) Penn ESE370 Fall2019 – Khanna CMOS Gate Design ! Systematic construction of any gate from transistors 1. Use static CMOS structure 2. Design PMOS pullup for f 3. Use DeMorgan’s Law to determine f’ 4. Design NMOS pulldown for f’ 2 Penn ESE370 Fall2019 – Khanna Gate Design Example ! Design gate to perform: f = (a + b ) c ! Strategy: 1. Use static CMOS structure 2. Design PMOS pullup for f 3. Use DeMorgan’s Law to determine f’ 4. Design NMOS pulldown for f’ 3 Penn ESE370 Fall2019 – Khanna Gate Design Example ! Design gate to perform: f = (a + b ) c a b c f 4 Penn ESE370 Fall2019 – Khanna Gate Design Example ! Design gate to perform: f = (a + b ) c a b c f 5 Penn ESE370 Fall2019 – Khanna f = a b + c Gate Design Example ! Design gate to perform: f = (a + b ) c a b c f 6 Penn ESE370 Fall2019 – Khanna f = a b + c

Upload: others

Post on 08-Jun-2022

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CMOS Gate Design Modeling, Design, and Optimization

1

ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems

Lec 3: September 6, 2019 Gates from Transistors (concl) and Transistor Introduction (first order)

Penn ESE370 Fall2019 – Khanna

CMOS Gate Design

!  Systematic construction of any gate from transistors

1.  Use static CMOS structure

2.  Design PMOS pullup for f

3.  Use DeMorgan’s Law to determine f’

4.  Design NMOS pulldown for f’

2 Penn ESE370 Fall2019 – Khanna

Gate Design Example

!  Design gate to perform: f = (a+ b) ⋅c

!  Strategy: 1.  Use static CMOS

structure 2.  Design PMOS pullup

for f 3.  Use DeMorgan’s Law

to determine f ’ 4.  Design NMOS

pulldown for f ’

3 Penn ESE370 Fall2019 – Khanna

Gate Design Example

!  Design gate to perform: f = (a+ b) ⋅c

a

bc

f

4 Penn ESE370 Fall2019 – Khanna

Gate Design Example

!  Design gate to perform: f = (a+ b) ⋅c

a

bc

f

5 Penn ESE370 Fall2019 – Khanna

f = a ⋅b+ c

Gate Design Example

!  Design gate to perform: f = (a+ b) ⋅c

a

bc

f

6 Penn ESE370 Fall2019 – Khanna

f = a ⋅b+ c

Page 2: CMOS Gate Design Modeling, Design, and Optimization

2

Static CMOS Source/Drains

!  With PMOS on top, NMOS on bottom "  PMOS source always at top

(near Vdd) "  NMOS source always at

bottom (near Gnd)

7 Penn ESE370 Fall2019 – Khanna

Inverting Stage

!  Each stage of Static CMOS gate is inherently inverting

8 Penn ESE370 Fall2019 – Khanna

How implement OR?

not nor

9 Penn ESE370 Fall2019 – Khanna

Implement:

!  Pullup?

!  Pulldown?

f = a ⋅b

not nor

10 Penn ESE370 Fall2019 – Khanna

a

b

a

Today

!  Boolean Logic "  Basic Algebra

"  DeMorgan’s Law "  Nand universality

"  Minimum Sum of Products/K-maps

!  Transistor first order model "  For performance estimates (i.e propagation delay!) "  There are always Rs and Cs!

11 Penn ESE370 Fall2019 – Khanna

Boolean Expressions

!  Sum-of-products form (SOP) "  Eg. ABC+DEF+GHI

!  Product-of-sums form (POS) "  Eg. (A+B+C)(D+E+F)(G+H+I)

!  Convert between the two with Boolean algebra "  DeMorgan’s Law

Penn ESE 370 Fall 2019 - Khanna 12

A+ B = A ⋅B

A ⋅B = A+ B

Page 3: CMOS Gate Design Modeling, Design, and Optimization

3

Canonical Form

Penn ESE 370 Fall 2019 - Khanna 13

!  Every minterm in your expression has every variable

Canonical Form

Penn ESE 370 Fall 2019 - Khanna 14

!  Every minterm in your expression has every variable

What is a K(arnaugh)-map?

!  A grid of squares (representing truth table) !  Each square represents one minterm !  The minterms are ordered according to Gray code

"  Only one variable changes between adjacent squares

!  Squares on edges are considered adjacent to squares on opposite edges "  I.e Table wraps around

!  K-maps are clumsy with more than 4 variables

Penn ESE 370 Fall 2019 - Khanna 15

A B

0 1

0 1 A

BC

0 1

00 01 11 10

K-map Examples

!  2-variable

!  3-variable

Penn ESE 370 Fall 2019 - Khanna 16

A B

0 1

0 1

A BC

0 1

00 01 11 10

Eg: Z = A’B’ + AB’ + A’B

K-map Examples

!  2-variable

!  3-variable

Penn ESE 370 Fall 2019 - Khanna 17

A B

0 1

0 1

A BC

0 1

00 01 11 10

Eg: Z = A’B’C’ + A’B + ABC’ + AC

Eg: Z = A’B’ + AB’ + A’B

Preclass

!  What voltage do the cases converge to?

18 Penn ESE370 Fall2019 – Khanna

Page 4: CMOS Gate Design Modeling, Design, and Optimization

4

Final Voltage?

19 Penn ESE370 Fall2019 – Khanna

Final Voltage?

20 Penn ESE370 Fall2019 – Khanna

Final Voltage?

!  Bonus question: Which one will settle faster?

21 Penn ESE370 Fall2019 – Khanna

Final Voltage?

22 Penn ESE370 Fall2019 – Khanna

Final Voltage?

23 Penn ESE370 Fall2019 – Khanna

Conclude?

!  DC/Steady-State "  Ignore the capacitors "  Look like “open circuit”

24 Penn ESE370 Fall2019 – Khanna

Page 5: CMOS Gate Design Modeling, Design, and Optimization

5

MOSFET – Zeroeth Order Model

!  Ideal Switch VGS > Vth # switch is closed, conducts VGS < Vth # switch is open, does not conduct

!  Gate draws no current from input "  Loads input capacitively (gate capacitance)

25 Penn ESE370 Fall2019 – Khanna

First Order Model

!  Switch "  Loads gate input capacitively

"  Cg

"  Has finite drive strength "  Ron

26 Penn ESE370 Fall2019 – Khanna

First Order Model

!  Switch "  Loads gate input capacitively

"  Cg

"  Has finite drive strength "  Ron

27 Penn ESE370 Fall2019 – Khanna

What do drive and load mean?

Buffer Gate (Source Follower)

!  Is this a CMOS gate?

28 Penn ESE370 Fall2019 – Khanna

Buffer Gate (Source Follower)

29 Penn ESE370 Fall2019 – Khanna

!  VDD=1V and VIN is gnd

Buffer Gate (Source Follower)

!  VDD=1V and VIN is switched to VDD

30 Penn ESE370 Fall2019 – Khanna

Page 6: CMOS Gate Design Modeling, Design, and Optimization

6

Buffer Gate (Source Follower)

!  VDD=1V and VIN is switched to VDD "  What is VOUT for unloaded gate?

31 Penn ESE370 Fall2019 – Khanna

Buffer Gate (Source Follower)

Equivalent circuit: gate output stage

32 Penn ESE370 Fall2019 – Khanna

!  VDD=1V and VIN is switched to VDD "  What is VOUT for unloaded gate?

Gate Output - Load

!  What happens to Vout when the output is loaded?

33 Penn ESE370 Fall2019 – Khanna

Equivalent circuit: gate output stage

Gate Output - Resistive Load

!  What happens when load is resistive? What is VOUT?

34 Penn ESE370 Fall2019 – Khanna

Equivalent circuit: gate output stage

Gate Output - Capacitive Load

!  What happens when load is capacitive? What is VOUT?

35 Penn ESE370 Fall2019 – Khanna

Equivalent circuit: gate output stage

First Order Model - PMOS

36 Penn ESE370 Fall2019 – Khanna

VDS,VGS,ID<0

Page 7: CMOS Gate Design Modeling, Design, and Optimization

7

CMOS Buffer Gate

37 Penn ESE370 Fall2019 – Khanna

Stage 1 Stage 2 What happens when Vin = Vdd > Vthn? Vth,p = -Vth,nVGS = VG - VS

Reminder: Zero-Order Model?

VGS =VG -VS=Vdd > Vth,n

VGS = 0 > Vth,p

V2=Gnd=0

VGS = 0 < Vth,n

VGS = -Vdd < Vth,p

Vout = Vdd

38 Penn ESE370 Fall2019 – Khanna

CMOS Buffer Gate - First Order

39 Penn ESE370 Fall2019 – Khanna

CMOS Buffer Gate - First Order

40 Penn ESE370 Fall2019 – Khanna

CMOS Buffer Gate - First Order

41 Penn ESE370 Fall2019 – Khanna

CMOS Buffer Gate - First Order

42 Penn ESE370 Fall2019 – Khanna

Page 8: CMOS Gate Design Modeling, Design, and Optimization

8

Zero-Order Model to Set Switches

!  What is VIN for this switch pattern?

43 Penn ESE370 Fall2019 – Khanna

CMOS Buffer Gate - First Order

!  Leaves an RC Circuit we can analyze ESE215 problem

44 Penn ESE370 Fall2019 – Khanna

CMOS Buffer Gate - First Order

!  Look at intermediary node V2

"  Connected to output of stage 1 and input of stage 2

45 Penn ESE370 Fall2019 – Khanna

CMOS Buffer Gate - First Order

!  What is equivalent circuit for the gate output for stage 1 driving V2? What is load on the output for stage 1?

46 Penn ESE370 Fall2019 – Khanna

CMOS Buffer Gate - First Order

!  Stage 1 equivalent circuit for the gate output !  Load on V2

"  Capacitive, input of stage 2

47 Penn ESE370 Fall2019 – Khanna

CMOS Buffer Gate - First Order

!  Stage 1 equivalent circuit for the gate output !  Load on V2

"  Capacitive, input of stage 2

48 Penn ESE370 Fall2019 – Khanna

Page 9: CMOS Gate Design Modeling, Design, and Optimization

9

CMOS Buffer Gate - First Order

!  What is settling time of V2 when Vin switches from VDD to 0?

49 Penn ESE370 Fall2019 – Khanna

CMOS Buffer Gate - First Order

!  What is settling time of V2 when Vin switches from VDD to 0? "  τ= 2RonCg

50 Penn ESE370 Fall2019 – Khanna

First-Order Model

!  Includes settling times/delay !  Voltage settling with capacitive loads

"  At least some basis for reasoning about delay

51 Penn ESE370 Fall2019 – Khanna

What is still missing?

52 Penn ESE370 Fall2019 – Khanna

IV curve 1st Order

What is still missing?

53 Penn ESE370 Fall2019 – Khanna

IV curve 1st Order !  What happens at intermediate voltages?

"  When the input is not rail-to-rail (not just gnd or Vdd inputs)

!  Details of dynamics, including… "  Input transition is not an ideal step "  Intermediate drive strengths change with VGS

"  Drain resistance changes

!  Sub-threshold operation "  When Vgs<Vth

What is still missing?

54 Penn ESE370 Fall2019 – Khanna

Page 10: CMOS Gate Design Modeling, Design, and Optimization

10

Design: Engineering Control

!  Vth "  Process engineer

!  Drive strength (Ron) "  Circuit engineer "  Control with sizing transistors

!  Supply voltages (Vdd) "  Range set by process engineer "  Detail use by circuit engineer

55 Penn ESE370 Fall2019 – Khanna

Big Ideas

!  MOSFET Transistor as switch "  With limited drive

!  Purpose-driven simplified modeling "  Aid reasoning, sanity check, simplify design

!  Analysis methodology "  Zero order to understand switch state (logic) "  First-order to get equivalent RC circuit (delay)

56 Penn ESE370 Fall2019 – Khanna

Admin

!  Diagnostic grades recorded "  Solutions posted online (pdf in Canvas) "  Make sure you understand "  Diagnose what you need to review and study

"  Karnaugh maps (minimum sum of products), RC capacitive settling (time constant), and wire resistive and capacitive properties

!  HW 2 due Tuesday next week "  Finish lab as necessary "  Extended because you need Monday lecture for noise

margins "  HW 3 still due following Monday 9/16

57 Penn ESE370 Fall2019 – Khanna