Lecture on PSpice. Introduction to SPICE SPICE was originally developed at the University of...

Post on 20-Jan-2016

221 views 0 download

Tags:

transcript

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 <carriage return> "+" sign (continuation sign)

Suffixes

T Tera (10+12) G Giga (10+9) MEG Mega (10+6) K Kilo (10+3) M Mili (10-3) U Micro (10-6) N Nano (10-9) P Pico (10-12) F Femto (10-15)

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 <IC> Lname N+ N- Value <IC> IC = initial condition (DC voltage or current)

Example: C1 3 4 1pF 5V C2 1 2 2pF L1 3 4 1mHL2 7 3 2mH 1mA

1pF_

4

3

+5V

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(5 10 50 0.2 0.1)

V2 3 4 SIN(0 10 50)

360/PHASE)TD(2sinVAVOVname )(THET tfe TDtA

0 0.5 1 1.5 2 2.5 3 3.50

1

2

3

4

5

6

7

8

9

10

F=1, THETA=.4, VO=5, VA=3, TD=0, Phase=600

Piecewise linear source (PWL)

Vname N+ N- PWL(T1 V1 T2 V2 T3 V3 ...)

Vi is the value source at time Ti

 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 opamp741 1 2 3 rin 1 2 2meg rout 6 3 75 e1 4 0 1 2 100k r1 4 5 0.5meg c1 5 0 31.85nf eout 6 0 5 0 1 .ends opamp741

Using Subcircuit

vs 1 0 dc 5

r1 1 2 200

rf 2 3 1k

x1 0 2 3 opamp741

.dc vs 0 10 1

.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 V1 0 20 2

.TRAN Statement

Specifies time interval for transient analysis  

.TRAN TSTEP TSTOP <TSTART>  

TSTEP = increment TSTOP = final time TSTART = starting time

.AC Statement Specify frequency (AC) analysis 

 

.AC LIN NP FSTART FSTOP  

LIN = linear frequency variation NP = number of points. FSTART and FSTOP = start and stopping frequencies

(Hz)  Example: .AC LIN 10 1000 2000

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 TYPE OV1 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

R1 1 2 1K

R2 2 3 10K

R3 1 3 15K

R4 2 4 40K

R5 3 0 50K

.tran .01n 50n

.TF V(3,0) VIN

.DC VIN 0 20 2

.PLOT DC V(1,2)

.END

Example 2

Pulse

0.1n

50n

0.1n

100n

10M

10M

1uF

5V

* pulse generator

* +node -node V1 V2 TD TR TF PW PER

VIN 1 0 PULSE ( 0 5 0 0.1N 0.1N 50N 100N)

R1 1 2 10M

R2 2 0 10M

C1 2 0 1uF

* 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 0 5 0.01

.end

Example 3

* TheveninVs 1 0 DC 10VE1 3 2 4 6 5R1 1 2 5R2 1 4 5R3 0 4 5R4 3 4 10R5 2 5 10R6 2 6 10R7 5 4 10R8 4 6 10.TF V(5,6) Vs

.plot DC V(5,6)

.plot DC I(Vs)

.DC Vs 0 100 10

.END

0

1 2

3 65

4

+

10V

_

5V46

-

+

5

5

5

10 10 10

10 10

Example 4

OLD_HW1_Solution* TheveninVs 2 5 DC 100VVmeas 2 3 DC 0VFx 6 7 Vmeas 4.0Ex 2 1 5 4 3.0R1 3 4 5.0R2 4 7 5.0R3 5 4 4.0R4 7 0 4.8R5 5 6 1.0R10 1 0 1MEG.TF V(4,0) Vs.plot DC V(5,4).plot DC V(1,0).plot DC I(Vmeas).DC Vs 0 100 10.tran 1n 50n 0.END

Example 5

10MVs =

1V AC1nF

1mH

21

0

OLD_HW2_Solution

Vs 1 0 AC 1L1 1 2 1mC1 1 2 1nR1 2 0 10M.AC LIN 10 1000 2000plot AC V(1,2) I(Vs).END