Lecture on PSpice
Introduction to SPICE SPICE was originally developed at the University of California, Berkeley (1975). Simulation Program for Integrated Circuits Emphasis HSPICE = High-performance SPICE PSpice = PC version of SPICE
SPICE Functions DC analysis: DC transfer curve Transient analysis: voltage and current as a function of time AC Analysis: output as a function of frequency Noise analysis and more …. SPICE has analog and digital libraries for standard components (Transistor, NAND, NOR, …) Different temperatures Default temperature is 300K
Components Independent voltage and current sources Dependent voltage and current sources Resistor Capacitor Inductor Operational amplifier Transistor Digital gates …
SPICE Source File Title statement: first line Data statements: specify the Circuit, components, interconnections Control statements: specify what types of analysis to perform on the circuit. Output statements: specify outputs Comment statements: begin with an asterisk (*) End statement:.END "+" sign (continuation sign)
Suffixes TTera ( ) GGiga (10 +9 ) MEGMega (10 +6 ) KKilo (10 +3 ) MMili (10 -3 ) UMicro (10 -6 ) NNano (10 -9 ) PPico ( ) FFemto ( )
Independent DC Sources Voltage source: Vname N+ N- Type Value Current source: Iname N+ N- Type Value Type: DC, AC or TRAN (transient) (like PULSE, …) Vin 2 0 DC 10 Vin 2 0 AC 10 Is 3 4 DC 1.5 Voltage and Current Conventions N1(+) N2(-) N1(+) N2(-)
Dependent DC Sources Voltage controlled voltage source: Ename N+ N- NC+ NC- Value Voltage controlled current source: Gname N+ N- NC+ NC- Value Current controlled voltage source: Hname N+ N- Vmeas Value Current controlled current source: Fname N+ N- Vmeas Value N+ and N- are terminals of the dependent source NC+ and NC- are terminals of the controlling voltage source
Ename N+ N- NC+ NC- α Gname N+ N- NC+ NC- γ Hname N+ N- Vmeas ρ Fname N+ N- Vmeas β Vmeas N+ N- Vmeas
Example F1 0 3 Vmeas 0.5 Vmeas 4 0 DC 0
Resistors, Capacitors, Inductors Rname N+ N- Value Cname N+ N- Value Lname N+ N- Value IC = initial condition ( DC voltage or current ) Example: C pF 5V C pF L mH L mH 1mA 1pF _4_ V
Damped Sinusoidal Sources Vname N+ N- SIN(VO VA FREQ TD THETA PHASE) VO - offset voltage in volt. VA - amplitude in volt. f = FREQ in Hz TD - delay in seconds THETA - damping factor per second Phase - phase in degrees If TD, THETA and PHASE are not specified, it is assumed to be zero. Example: V1 1 2 SIN( ) V2 3 4 SIN( )
F=1, THETA=.4, VO=5, VA=3, TD=0, Phase=600
Piecewise linear source (PWL) Vname N+ N- PWL(T 1 V 1 T 2 V 2 T 3 V 3...) V i is the value source at time T i Example: Vg 1 2 PWL(0 0 10U 5 100U 5 110U 0)
Pulse Vname N+ N- PULSE(V1 V2 TD Tr Tf PW Period) V1 - initial voltage V2 - peak voltage TD - initial delay time Tr - rise time Tf - fall time pw- pulse-width Period - period
Subcircuits A subcircuit allows you to define a collection of elements as a subcircuit (e.g. an operational amplifier).SUBCKT SUBNAME N1 N2 N3... Element statements..ENDS SUBNAME N1, N2, N3 are the external nodes of the subcircuit. The external nodes cannot be 0. The node numbers used inside a subcircuit are strictly local, except for node 0 which is always global.
Example: µ741 (Op Amp) * Subcircuit for 741 op amp * +in (=1) -in (=2) out (=3).subckt opamp rin 1 2 2meg rout e k r meg c nf eout ends opamp741
Using Subcircuit vs 1 0 dc 5 r rf 2 3 1k x opamp741.dc vs option post.end
.OP Statement Instructs SPICE to compute DC operating points voltage at each node current in each voltage source operating point for each element
.DC Statement Increment (sweep) an independent source over a certain range with a specified step.DC SRCname START STOP STEP SRCname = name of the source START and STOP = starting and ending values STEP = size of increments Example:.DC V
.TRAN Statement Specifies time interval for transient analysis.TRAN TSTEP TSTOP TSTEP = increment TSTOP = final time TSTART = starting time
.AC Statement Specify frequency (AC) analysis.AC LIN NPFSTART FSTOP LIN = linear frequency variation NP = number of points. FSTART and FSTOP = start and stopping frequencies (Hz) Example:.AC LIN
Output Statements .PLOT plots selected output variables, to design.lis using ASCII characters..PLOT is useful for looking at plotted results without access to AvanWaves. .PRINT DC V(2) prints node voltage value for node 2 in the design.lis file.
.PRINT &.PLOT .PRINT TYPEOV1 OV2 OV3... .PLOT TYPE OV1 OV2 OV3... TYPE = type of analysis printed or plotted DC TRAN AC OV1, OV2 = output variables Examples:.PLOT DC V(1,2) V(3) I(Vmeas).PRINT TRAN V(3,1) I(Vmeas)
Example 1
* We are interested in finding the following characteristics: * 1. Node voltages v12, v2 and current i4 when vin=10V * 2. Thevenin equivalent voltage and resistance, seen * at the output terminals v(3,0) VIN 1 0 DC 10 VMEAS 4 0 DC 0 *VMEAS is a 0V source to measure i4 F1 0 3 VMEAS 0.5 R K R K R K R K R K.tran.01n 50n.TF V(3,0) VIN.DC VIN PLOT DC V(1,2).END
Example 2
* pulse generator * +node -node V1 V2 TD TR TF PW PER VIN 1 0 PULSE ( N 0.1N 50N 100N) R M R M C uF * transient simulation for 50ns with 0.01ns step size.tran.1n 500n * dc simulation with stimulus voltage (source VIN) from 0 to 5V in 0.1V steps.DC VIN end
Example 3 * Thevenin Vs 1 0 DC 10V E R R R R R R R R TF V(5,6) Vs.plot DC V(5,6).plot DC I(Vs).DC Vs END V _ 5V
Example 4
OLD_HW1_Solution * Thevenin Vs 2 5 DC 100V Vmeas 2 3 DC 0V Fx 6 7 Vmeas 4.0 Ex R R R R R R MEG.TF V(4,0) Vs.plot DC V(5,4).plot DC V(1,0).plot DC I(Vmeas).DC Vs tran 1n 50n 0.END
Example
OLD_HW2_Solution Vs 1 0 AC 1 L m C n R M.AC LIN plot AC V(1,2) I(Vs).END