30
ENSC 460: Special Topics: ENSC 460: Special Topics: Theory, Analysis, and Simulation Theory, Analysis, and Simulation of Nonlinear Circuits Final Project Presentation of Nonlinear Circuits Final Project Presentation Spring 2004 Spring 2004 SPICE and MATLAB Simulation SPICE and MATLAB Simulation on Nonlinear Circuits on Nonlinear Circuits Alan Chuang ([email protected]) Wayne Huang ([email protected]) Henry Lin ([email protected])

on Nonlinear Circuits SPICE and MATLAB Simulationljilja/ENSC895/Spring04/Projects/chuang_huang_lin/...Introduction Project Idea: use SPICE and MATLAB to simulate and observe circuit

Embed Size (px)

Citation preview

ENSC 460: Special Topics: ENSC 460: Special Topics: Theory, Analysis, and Simulation Theory, Analysis, and Simulation

of Nonlinear Circuits Final Project Presentation of Nonlinear Circuits Final Project Presentation Spring 2004Spring 2004

SPICE and MATLAB Simulation SPICE and MATLAB Simulation on Nonlinear Circuitson Nonlinear Circuits

Alan Chuang ([email protected])Wayne Huang ([email protected])

Henry Lin ([email protected])

IntroductionIntroduction

�� Project Idea: use SPICE and MATLAB to Project Idea: use SPICE and MATLAB to simulate and observe circuit behaviorssimulate and observe circuit behaviors

�� Scope: compare between simulation Scope: compare between simulation results from SPICE, MATALAB and results from SPICE, MATALAB and experimental result from actual circuitexperimental result from actual circuit

�� Motivation: search and identify multiple Motivation: search and identify multiple operating points and NDR; verify the operating points and NDR; verify the validity of simulation modelsvalidity of simulation models

ImplementationImplementation�� Equations & Constants used:Equations & Constants used:

�� αα = = ββ/(1+ /(1+ ββ))npnnpn (2N3904): (2N3904): ββf = 416.4 , f = 416.4 , ββr = 0.7371r = 0.7371pnppnp (2N3906): (2N3906): ββf = 180.7 , f = 180.7 , ββr = 4.977r = 4.977

�� IeIe x x ααff = = IcIc x x ααrrIeIe, , IcIc: saturation currents: saturation currentsnpnnpn: : IeIe = 6.734f= 6.734fpnppnp: : IeIe = 1.41f= 1.41f

�� fi(vifi(vi) = ) = mi(exp(nimi(exp(ni x vi) x vi) -- 1)1)where mi, where mi, nini > 0 for > 0 for pnppnp

< 0 for < 0 for npnnpn�� nini = = q/(kTq/(kT))

T = 300KT = 300K

ββ+1

ββ+1 ββ+1

ββ+1

Circuit 1 Circuit 1 -- Flip FlopFlip Flop

•• Schematic [ FS (13) ]Schematic [ FS (13) ]

Circuit 1 Circuit 1 -- Flip FlopFlip Flop

•• Spice simulation (NSpice simulation (N--type NDR)type NDR)

Circuit 1 Circuit 1 -- Flip FlopFlip Flop•• MatlabMatlab simulationsimulation•• --i = G*v + c and i = T*i = G*v + c and i = T*F(vF(v) => T*) => T*F(vF(v) + G*v + c = 0 ) + G*v + c = 0 •• => => F(vF(v) + ) + inv(Tinv(T)*G*v + )*G*v + inv(Tinv(T)*c = 0)*c = 0

Circuit 1 Circuit 1 -- Flip FlopFlip Flop

�� SPICE and MATLAB Comparison:SPICE and MATLAB Comparison:

--11.9611.96--12.0512.0511.9211.92--0.0880.0880.4070.407--0.6980.6980.3180.318--0.7100.710

--11.9611.96--12.0512.0511.9211.92--0.0880.0886.286.28--0.6070.607--0.0240.024--0.6920.692

7.457.45--0.0960.0960.6180.618--0.7140.714MATLABMATLAB

7.427.42--0.1230.123--0.6170.617--0.6950.695PSPICEPSPICE

V4 (V)V4 (V)V3 (V)V3 (V)V2 (V)V2 (V)V1 (V)V1 (V)

Initial Point Extracted from PSPICE

Circuit 1 Circuit 1 -- Flip FlopFlip Flop

Circuit 2Circuit 2

•• SchematicSchematic•• [FS(1,4), c14 = [FS(1,4), c14 = --5.53e5.53e--6] [FS(1,3), c13 = 6] [FS(1,3), c13 = --7.39]7.39]

Circuit 2 Circuit 2

•• Spice simulation (SSpice simulation (S--type NDR)type NDR)

Circuit 2 Circuit 2

•• MatlabMatlab simulationsimulation•• Q*T*Q*T*F(vF(v) + P*v + c = 0) + P*v + c = 0

Circuit 2Circuit 2

�� SPICE and MATLAB Comparison:SPICE and MATLAB Comparison:

0.8390.8390.8550.855--0.5140.514--0.7580.7580.1870.1870.8070.807--0.3400.340--0.6320.632

0.6450.6450.9110.911--0.5270.527--0.7160.7160.2390.2390.8260.826--0.3710.371--0.6470.647

--0.6410.6410.4580.4580.3660.366--0.2750.275MATLABMATLAB

--0.7070.7070.3890.3890.3870.387--0.2750.275PSPICEPSPICE

V4 (V)V4 (V)V3 (V)V3 (V)V2 (V)V2 (V)V1 (V)V1 (V)

Circuit 3Circuit 3

•• Schematic [FS(1,3), c13 = Schematic [FS(1,3), c13 = --0.0004525 ]0.0004525 ]

Circuit 3Circuit 3

•• Spice simulation (NSpice simulation (N--type NDR)type NDR)

Circuit 3Circuit 3

•• MatlabMatlab simulationsimulation•• P*v + Q*i + c = 0 and i = T*P*v + Q*i + c = 0 and i = T*F(vF(v) ) •• => Q*T*=> Q*T*F(vF(v) + P*v + c = 0 ) + P*v + c = 0

Circuit 3Circuit 3

�� SPICE and MATLAB Comparison:SPICE and MATLAB Comparison:

17.16817.168--0.02620.0262--0.7040.704--0.7310.7312.8752.875--0.7190.7190.08640.0864--0.6320.632

17.2117.21--0.030.03--0.7590.759--0.7900.7902.8382.838--0.7280.7280.08560.0856--0.627 0.627

0.2120.212--0.7230.7230.5580.558--0.1650.165MATLABMATLAB(drive (drive with I = with I = 9.2mA)9.2mA)

0.5450.545--0.7250.7250.50.5--0.2240.224PSPICEPSPICE

V4 (V)V4 (V)V3 (V)V3 (V)V2 (V)V2 (V)V1 (V)V1 (V)

Circuit 4 Circuit 4 -- OrchardOrchard

•• Schematic [FS(1,3)]Schematic [FS(1,3)] [FS(1,3), c13 = [FS(1,3), c13 = --1.65E20]1.65E20]

Circuit 4 Circuit 4 -- OrchardOrchard

•• Spice simulation (NSpice simulation (N--type NDR)type NDR)

Circuit 4 Circuit 4 -- OrchardOrchard•• MatlabMatlab simulationsimulation•• P*v + Q*i + c = 0 and i = T*P*v + Q*i + c = 0 and i = T*F(vF(v) ) •• => Q*T*=> Q*T*F(vF(v) + P*v + c = 0) + P*v + c = 0

Circuit 4 Circuit 4 -- OrchardOrchard

�� SPICE and MATLAB Comparison:SPICE and MATLAB Comparison:

--17.95217.952--0.1110.1110.7040.7040.7230.723--8.5998.5990.7010.701--0.5950.5950.6820.682

--17.95 17.95 --0.108 0.108 0.702 0.702 0.724 0.724 --8.56 8.56 0.690 0.690 --0.587 0.587 0.680 0.680

--0.1890.1890.7180.718--1.2511.2510.4170.417MATLABMATLAB

--0.192 0.192 0.717 0.717 --1.2571.2570.4220.422PSPICEPSPICE

V4 (V)V4 (V)V3 (V)V3 (V)V2 (V)V2 (V)V1 (V)V1 (V)

Circuit 4 Circuit 4 -- OrchardOrchard

•• Experimental Results:Experimental Results:

Circuit 5 Circuit 5 –– Schmitt TriggerSchmitt Trigger

•• Schematic [FS(1,3), c13 = Schematic [FS(1,3), c13 = --3.668E3.668E--7]7]

Circuit 5 Circuit 5 –– Schmitt TriggerSchmitt Trigger

•• Spice simulation (SSpice simulation (S--type NDR)type NDR)

Circuit 5 Circuit 5 –– Schmitt TriggerSchmitt Trigger

•• MatlabMatlab simulationsimulation•• --i = G*v + c and i = T*i = G*v + c and i = T*F(vF(v))

=> => F(v) + inv(T)*G*v + inv(T)*c = 0F(v) + inv(T)*G*v + inv(T)*c = 0

Circuit 5 Circuit 5 –– Schmitt TriggerSchmitt Trigger

�� SPICE and MATLAB Comparison:SPICE and MATLAB Comparison:

18.09318.0932.6592.6590.4210.421--0.7340.7343.083.08--0.7330.73310.95410.954--0.6880.688

18.0818.082.652.650.4520.452--0.7390.7392.622.62--0.7330.73311.35811.358--0.6780.678

0.6050.605--0.7370.73713.11213.112--0.330.33MATLABMATLAB

0.7870.787--0.7390.73912.33412.334--0.4760.476PSPICEPSPICE

V4 (V)V4 (V)V3 (V)V3 (V)V2 (V)V2 (V)V1 (V)V1 (V)

Circuit 5 Circuit 5 –– Schmitt TriggerSchmitt Trigger•• Circuit Implementation Circuit Implementation

A simple current source and a A simple current source and a ii--vv convertorconvertor were were implemented to measure the input current.implemented to measure the input current.

�� Experimental ResultExperimental Result

Circuit 5 Circuit 5 –– Schmitt TriggerSchmitt Trigger

Current-Iout

VinCurrent-Iout

Vin

Circuit 5 Circuit 5 –– Schmitt TriggerSchmitt TriggerVout v.s. Vin

DiscussionDiscussion

�� Difficulties encountered:Difficulties encountered:

�� Appropriate biasing to achieve NDRAppropriate biasing to achieve NDR�� Use the condition for Use the condition for cijcij�� Transistor onTransistor on--off characteristicsoff characteristics�� Trial and errorTrial and error

�� Current source circuit implementationCurrent source circuit implementation�� Output Output impedenceimpedence�� Extra transistors affect the circuit behaviorExtra transistors affect the circuit behavior

ConclusionConclusion

�� Most SPICE and MATLAB simulation Most SPICE and MATLAB simulation results are consistentresults are consistent

�� VcbVcb’’ss usually possess most uncertaintiesusually possess most uncertainties�� Certain properties such as Certain properties such as hysteresishysteresis in in

Schmitt Trigger circuit can not be Schmitt Trigger circuit can not be observed with SPICEobserved with SPICE