31
Electronic Circuits Laboratory EE462G Lab #7 NMOS and CMOS Logic Circuits

Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

  • Upload
    vutu

  • View
    217

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

Electronic Circuits LaboratoryEE462GLab #7

NMOS and CMOS Logic Circuits

Page 2: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

Logic Device Nomenclature

5-Volt Positive logic: Logic gate circuitry where a 5V level corresponds to logic 1 and 0V level corresponds to logic 0. Truth Table: Input-output description of gate in terms of logic

symbols. VIL: Highest input voltage guaranteed to be accepted as a logic 0. VIH: Lowest input voltage guaranteed to be accepted as a logic 1. VOL: Highest logic-0 output voltage produced (given inputs are

consistent with VIL and VIH). VOH: Lowest logic-1 output voltage produced (given inputs are

consistent with VIL and VIH).

Page 3: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

FET Operation as a Logic DeviceInput values will change between 0 volts (VGS < Vtr) and 5 volts (VGS> VDS+Vtr). Thus, the NMOS transistor will operate primarily in the cutoff and triode regions. The circuit below represents a logic inverter.

Three Regions of Operation:

Cutoff region (VGS ≤ Vtr)

Triode region (VGS > Vtr ,VDS ≤VGS - Vtr )

Constant current region

(VGS > Vtr , VDS >VGS - Vtr )

VDD

Vin

D

G

S

Vout

+

-

RD

RG

+

-

Load

22( )D GS tr DS DSI Kp V V V V = − − Triode region

Page 4: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

Transfer CharacteristicObtain relationship between Vin to Vout in cutoff region.

0≈→<≈ DtrGSin IVVV

outDSDDDSDDDD VVVVIRV =≈→+=

VDD

Vin

D

G

S

Vout

+

-

RD

RG

+

-

Load

ID

Vin

Vout

Vtr

VDD=VOH

What would VILbe in this case?

Page 5: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

Transfer CharacteristicObtain relationship between Vin to Vout in Triode region.

( )on

DSDStrGSDtrDSGSin r

VVVVKpIVVVV =−≈→+>≈

OL

on

D

DDout

on

DDSDDDSDDDD V

rR

VVrRVVVIRV ≈

+

≈→

+≈→+=

11

VDD

Vin

D

G

S

Vout

+

-

RD

RG

+

-

Load

ID

( )trGSon VVKp

r−

=1

where

Vin

Vout

Vtr

VDD=VOH

VOL

What would VIHbe in this case?

Page 6: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

Truth TableThe truth table with logic input-output relationships are shown below:

Vin

Vout

Vtr

VDD=VOH

VOL

Input Vin VoutOutput

0

0

1

1

VIL < Vtr VOH ≈VDD

VIH > VtrOL

on

D

DD V

rR

V≈

+1

Page 7: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

The stray capacitance in the NMOS device limits the speed of the transition between states of the inverter.

Capacitive effects between the drain and source, and gate and source create delays (propagation delay) between input and output transitions, and nonzero rise times and fall times of the output transitions.

These quantities are defined below:

Transition Between States

t

Vout

Vin

t

tfdelay trdelay

trise tfall

50%

50% 50%

50%

90%

10%

90%

10%

turn off

turn on

Propagation delay is taken as the average between the 2 edge delays

2delaydelay

PD

tftrt

+=

Page 8: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

Transition Low to High The equivalent circuit below represents the NMOS inverter

going into a logic 1 output state. Circuit equations are:

RD

RON

CVDD

VGS <Vtr

+Vout

-

outDoutDD VCRVV += OLout VV =+ )(0

−−−=

CRtVVVtV

DOLDDDDout exp)()(

What critical parameters affect the rise time?What effects would VDD have on the rise time?

Page 9: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

Transition High to Low The equivalent circuit below represents the NMOS inverter

going into a logic 0 output state. Circuit equations are:

RD

RON

CVDD

VGS >Vtr

+Vout

-

outDON

ONDoutDD

DON

ON VCRR

RRVVRR

R +

+=+

DON

ONDDOLOHout RR

RVVVV+

==+ 0 )(

+

−−−=

CRR

RRtVVVtV

DON

DONOHOLOLout exp)()(

What critical parameters affect the fall time?What effects would VDD have on the fall time (note this ends in the triode region)?

Page 10: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

SPICE Analysis

The logic circuit can be analyzed in SPICE. For this lab use the MOSFET (Level 1 NMOS) component model. This is a generic model where parameters such as Kp and Vtr can be set. Stray capacitance values can also be set; however, this lab does not request this.

The transient simulation can be run, using V2 as VDD and V1 as a square wave (pulse setting in SPICE). The input and output voltages can be observed simultaneously.

M1M1

V1

0

R1 10K

R2

5K

V2

5

IVm1

IVm2

Page 11: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

SPICE Results

Using a 10kHz square wave input, Kp=.225 and Vtr = 2.1:

TIME +35.560u V(IVM1) +1.533m V(IVM2) +5.000 D(TIME) 0.0

D(V(IVM1)) 0.0

Cirex-Transient-5 Time (s)

(V)

0.0

+2.000

+4.000

+6.0000.0 +20.000u +40.000u +60.000u +80.000u +100.000u +120.000u

Page 12: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

SPICE Results

Using a 10kHz square wave input, Kp=.225 and Vtr = 2.1 and Drain-Body and Source-Body capacitance of 1nF each:

TIME -1.000 V(IVM1) -1.000 V(IVM2) -1.000 D(TIME) -1.000

D(V(IVM2)) -1.002

Cirex-Transient-6 Time (s)

(V)

0.0

+2.000

+4.000

+6.0000.0 +20.000u +40.000u +60.000u +80.000u +100.000u +120.000u

Page 13: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

CMOSComplementary metal-oxide semiconductor logic (CMOS) circuits use both NMOS and PMOS transistors. Desirable properties include: Zero static-power consumption. Smaller devices with thinner gate oxide

leading to smaller propagation delays and lower supply voltages.

Smaller chip areas as a result of eliminating resistors.

Page 14: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

PMOS CharacteristicsThe p-channel MOSFET symbol and equations

Three Regions of Operation (Note that Vtr ≤ 0):

Cutoff region (Vtr ≤ VGS)

(iD = 0)Triode region (Vtr ≥ VGS) (VDS ≥ VGS - Vtr )

Constant current region (Vtr ≥ VGS) (VGS- Vtr ≥ VDS )

G

D

S

iD

[ ]222 DSDStrGSD VVVVKP

LWI −−

= )(

2

2)( trGSD VVKP

LWI −

=

Page 15: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

Ideal CMOS InverterSketch the equivalent circuit by replacing the MOS transistors with short and open circuits when Vin= 0 and Vin = VDD. Generate a truth table.

+ Vin

_

+ Vout

_

VDD

S

D G

D

S G

+ Vout

-

VDD

S

D

D

S

+ Vout

-

VDD

S

D

D

S

Vin = 0

Vin = VDD

Page 16: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

Transfer CharacteristicsA load-line analysis is no longer possible in a CMOS circuit because the current-voltage relationship of the other transistor is not linear:

Equations for analysis:

+ Vin

_

+ Vout

_

VDD

S

D G

D

S G

DSnDSpDD VVV +−=

inGSpDD VVV +−= inGSn VV =

2)( trnGSnnDSn VVKI −=2)( trpGSppSDp VVKI −=

For constant current regions:

For triode regions:

[ ]22 DSnDSntrnGSnnDSn VVVVKI −−= )(

[ ]22 DSpDSptrpGSppSDp VVVVKI −−= )(

Page 17: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

Load-Curve AnalysisWhile the 2 circuit elements have non-linear i-v relationships, the intersection of their transfer characteristic curves, constrained by the circuit equations from KVL and KCL, yield the circuit voltages and currents.

The circuit constrains the relationship between the input voltage and gate voltages according to:

A Matlab program was written to sweep through values of Vin and find the operating points of the transistors. Note that for an open circuit load:

DDinGSp VVV −= inGSn VV = DDDSnDSp VVV −=

DSnout VV = SDpDSn II =

Page 18: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

Program to Find TC of Circuit vton = 2.1; % Threshold voltage for NMOSvtop = -2.1; % Threshold voltage for PMOSK=1.1; W=1; L=1; KP=2*K; VDD=5; vin = [0:.05:VDD]; % input voltages to sample at vdsn = [0:.01:VDD]; % Create Vds value over of the NMOS transistorvdsp = vdsn-VDD; % Create vds values over the PMOS transistor (note vsdn-vdsp=VDD)

% Loop to compute operating pointsfor vinx = 1:length(vin)

idsp = pmos(vdsp,vin(vinx)-VDD,KP,W,L,vtop); % Generate Load Curve (gate voltage is vin-VDD)idsn = nmos(vdsn,vin(vinx),KP,W,L,vton); % Compute characteristic curve

% get effective intersection point[err, inderr] = min(abs(idsp - idsn)); % Find closest point

vout(vinx) = vdsn(inderr(1)); % Store output voltageid(vinx) = idsp(inderr(1)); % Store drain current

end

Page 19: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

TCs for Various Vin Values

0 1 2 3 4 50

2

4

6

8

10

VDS - Volts

ID -

Am

ps

Vin = .1

PMOS TC

NMOS TC

0 1 2 3 4 50

0.05

0.1

0.15

0.2

0.25

0.3

0.35Vin = 2.3

PMOS TC

NMOS TC

0 1 2 3 4 50

0.05

0.1

0.15

0.2Vin = 2.5

PMOS TC

NMOS TC

0 1 2 3 4 50

0.05

0.1

0.15

0.2

0.25

0.3

0.35Vin=2.6

PMOS TC

NMOS TC

0 1 2 3 4 50

1

2

3

4

5

6

7 Vin = 4

PMOS TC

NMOS TC

Note that the PMOS TC is mapped from VDSp to VDSn through the KVL equation

DDDSpDSn VVV +=

Page 20: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

TC: Vout vs. Vin

0 1 2 3 4 50

1

2

3

4

5

Voltage Input - Volts

Vol

tage

Out

put -

Vol

ts

Transfer Characteristics for CMOS Invertor

Threshold Voltage effect

Page 21: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

TC: IDS vs. Vin

0 1 2 3 4 50

0.05

0.1

0.15

0.2

Voltage Input - Volts

Dra

in c

urre

nt -

Am

psDrain Current CMOS Invertor

Page 22: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

TC: Instantaneous Power vs. Vin

0 1 2 3 4 50

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Voltage Input - Volts

Wat

ts

Power consumed by NMOS Transistor in CMOS Invertor

How does this curve demonstrate zero static power consumption?

Page 23: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

NMOS Logic Inverter Circuit

Vin

Vout

VDD

S

D

D

S G

G

This circuit will be examined in the lab. Note the “diode-connected” NMOS transistor. Determine the TC of this connection.

GSDS VV =

This ensures the operation is either in the cutoff or con atant current region:

trGSDS VVV −≥ GStr VV ≥or22( )D GS tr DS DSI Kp V V V V = − −

Page 24: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

SPICE Example

Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting Kp=.225, Vtr = 1.8 and Drain-Body and Source-Body capacitance of 0.1µF each:

M1M1

M2M2 V

15

V2

0

IVm1IVm2

In SPICE use the pulse input for V2 and set transient properties with appropriate period and voltage levels.

For the FET, edit simulation properties and select the shared properties tab to set the parameters.

Page 25: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

SPICE Result

(Input fat/green, Output skinny/red) Note capacitive effects and results of using the NMOS transistor as a pull-up resistor.

TIME -1.000 V(4) -1.000 V(IVM1) -1.000

V(IVM2) -1.000 D(TIME) -1.000 D(V(IVM2)) -6.000

naninvert.ckt-Transient-5 Time (s)

(V)

0.0

+5.000

0.0 +100.000u +200.000u +300.000u +400.000

Page 26: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

TC of Diode-Connected NMOS

0 1 2 3 4 50

2

4

6

8

10

VDS- Volts

IDC

- A

MP

S

TC for Diode-Connected NMOS

vton = 2.1; % Threshold voltage for NMOSK=1.1; W=1; L=1; KP=2*K; VDD=5; vdsn = [0:.01:VDD]; % Create Vds value over of the NMOS transistorvgs = vdsn; % input voltages to sample at

% Loop to compute operating pointsfor k = 1:length(vgs)

% Compute characteristic curveidsn(k) = nmos(vdsn(k),vgs(k),KP,W,L,vton);

end

VDD D

S G

IDS

Page 27: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

PMOS Characterization Circuit Use Matlab to compute TC of circuit

Vin Vout

VDD

+

-

+

- RD

D

S G

DDinGSp VVV −= IDD

DDDSD R

VVI +=

Let RD = 5kΩ, VDD = 5V, and sweep Vin from 0 to 5V

% Set ParametersK=.15; vto = -2.1;W=1; L=1; KP=2*K;VDD=5; RD=5000;vds = -[0:.001:VDD]; % sample point for load line and TCvin = [0:.01:VDD]; % Create x-axisidsll = vds/(RD) + VDD/(RD); % Generate Load Line% Loop to sweep through input valuesfor k=1:length(vin)

ids = pmos(vds,vin(k)-VDD,KP,W,L,vto); % Compute characteristic curve[err, inderr] = min(abs(idsll - ids)); % Find closest point to desired operating pointvout(k) = idsll(inderr(1))*RD; % Compute output voltageid(k) = idsll(inderr(1)); % Store drain current in array

end

Page 28: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

PMOS TC Mfile Function

function ids = pmos(vds,vgs,KP,W,L,vto)

% This function generates the drain-source current values "ids" for% a PMOS Transistor as a function of the drain-source voltage "vds".%% ids = nmos(vds,vgs,KP,W,L,vto)%% where "vds" is a vector of drain-source values% "vgs" is the gate voltage% "KP" is the device parameter% "W" is the channel width% "L" is the channel length% "vto" is the threshold voltage% and output "ids" is a vector of the same size of "vds"% containing the drain-source current values.

ids = zeros(size(vds)); % Initialize output array with all zeros

k = (W/L)*KP/2; % Combine devices material parameters

Page 29: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

PMOS TC Mfile Function

% For non-cutoff operation:if vgs <= vto

% Find points in vds that are in the triode regionktri = find(vds>=(vgs-vto) & vds <= 0); % Only take point up to the gate voltage minus the threshold.% If points are found in the triode region compute ids with proper formula if ~isempty(ktri)

ids(ktri) = k*(2*(vgs-vto).*vds(ktri)-vds(ktri).^2);end% Find points in saturation regionksat = find(vds<(vgs-vto) & vds <= 0); % Take points greater than the excess voltage% if points are found in the saturation regions compute ids with proper formula if ~isempty(ksat)

ids(ksat) = k*((vgs-vto).^2);end

% If points of vds are outside these ranges then the ids values remain zeroend

Page 30: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

TC: PMOS Circuit

0 1 2 3 4 50

1

2

3

4

5

Input voltage

Out

put v

olta

getransfer characteristics

Threshold Voltage

VGS = VIN - 5

Page 31: Electronic Circuits Laboratory EE462G Lab #7zhichen/TEACHING/Lab 7/Lecture7...Compare input and output of inverter using a 10kHz square wave input, with a level 1 nmos fet setting

Questions for Lab Report:

What is the purpose of decoupling capacitors (in parallel with the DC power supply) in CMOS logic circuits?

What factors determine the highest clock speed at which a logic gate can reliably be driven?