- Parent Directory - MIF File -
Experiment 2 - Introduction to PSPICE
One of the tools you will be using as an electrical engineer is SPICE. SPICE is essential to the analysis and design of complex circuits. In this experiment, you will be introduced to the basics of SPICE. You will learn techniques in representing circuit elements, constructing the circuits, and finally simulating the circuits.
The version of SPICE you will be using is PSPICE. PSPICE is available in room 123 Cory Hall.
Reading:
Vladirmirescu, Chapters 1.1-1.3, 2.1-2.3
Those
who have personal computers can enter your SPICE decks. Save the
file as <your-filename.cir>
1. Construct the lowpass filter shown below. The small signal voltage source has no DC value. Let the waveform be a 1kHz square wave that ranges from 0 to 5V.
2. Your SPICE deck should contain the following information:
.ac
statement for frequencies ranging from 10Hz to 100kHz on a decade
scale.
.tran
statement for the times t=0 to t=10ms
A voltage source has the following format:
Vname +node -node dc <dc/tran> ac
<acmag acphase> transient information
The value for acmag is NOT the ac
amplitude. It is the magnitude of the phasor used in finding the
network function. (see p 48 of The SPICE Book) You should
set the ac argument to be 1,0. Any small signal amplitude (of a
waveform) should be included in the transient information.
The square wave in the above example can be
modeled as either a pulse or a piecewise linear
function
3. Launch the PSPICE program by double-clicking on its icon.
5. Select the filename you assigned to your SPICE deck and SPICE will analyze the circuit.
6. Launch Probe by double-clicking on its icon.
7. Open the data file by clicking on File followed by Open. Probe data files have a .dat extension.
8. From the Plot menu, select AC. This will tell Probe to plot ac data and not transient data.
9. Click on the Trace command followed by Add. This will allow you to plot the voltages and currents available in the circuit.
10. Obtain the Bode plot (phase plot is
optional) for the transfer function
. How do the results compare to
hand calculations? Label the -3dB point.
Probe can also plot mathematical expressions
involving the voltages and currents.
Voltages in decibel scale can be plotted by
using Vdb(node number).
You can use the cursor command from the Tools
menu in probe to get x and y coordinates from the graph.
Labels and Titles can be inserted into your
plots for clearer understanding. These are accessible from the Tools
menu
11. Print out your plot by clicking on File followed by Print.
12. From the Plot menu, select Transient. This will tell probe to plot transient data and not ac data.
13. Obtain a printout for both vout(t) and vs(t).
1. The following circuit is a MOS field effect transistor. You do not need to know the internal operations of the MOSFET in order to complete this part of the experiment. Enter the circuit below in a SPICE deck.
2. Include in your SPICE deck the
following:
.dc
lin VDD 0 5 .1 VGS 0 5 1 (This sweeps VDD
from 0 to 5V in .1V interval for each value of VGS. (0
to 5V in 1V intervals))
Kp=60e-6
Vto=1 Lambda=.05 for .model parameters
3. Run PSPICE and Probe and plot the
drain current of your transistor ID1.
This will give you the MOSFET's IV characteristics. Print a
hardcopy. Always include your input deck in your lab report.
There are many versions of SPICE available (PSPICE, SPICE3, HSPICE, etc.). Regardless of the version, the structure of an input file is the same. A SPICE simulation consists of 4 parts:
3. Specifying the type of analysis
SPICE can simulate a wide variety of circuit elements. In this tutorial, we will introduce the elements which you will encounter in EE105.
Two terminal elements are specified by the + and - terminals. In cases of passive element, such as resistors and capacitors, there is no distinction between the + and - terminals. For voltage sources and current sources, the order of the nodes determines the polarity of the voltage or the direction of the source.
Resistors
(Rname <+ node> <- node> value)
Capacitors
(Cname <+ node> <- node> value)
Voltage
Source (Vname <+ node> <- node> value)
Current
Source (Iname <+ node> <- node> value)
Bipolar
Transistors (Qname <collector node> <base node>
<emitter node> model type)
A bipolar transistor is specified by its
collector, base and emitter terminals. The model type tells SPICE
to refer to that particular model with its specific parameters.
MOSFETS
(Mname <drain node> <gate node> <source
node> <body node> model type, geometry)
A MOS transistor is specified by its drain,
gate, source and body terminals along with the name of a model.
If the geometry is not specified, it will have a gate length and
width of 1
m. It is important to
note that on a circuit, the body is often not labeled as a
"terminal". Most often, for a NMOS, the body is either
tied to ground or to the source and for the PMOS, the body is
either tied to the power supply or the source.
Note that whenever you are modeling an active
device, you must specify it with a .model statement in SPICE. For
example, if you want to model an npn BJT with the following
properties:
of 100, VA
of 100V, and IS = 1x10-15A.
You would include the following statement:
.model n1 npn Bf=100 Vaf=100 Is=1e-15
Consult the PSPICE manual for the form of
.model lines for other active devices.
You will be using PSPICE for Windows in room 123. In order to enter the SPICE deck, you will need to use a text editor. The editor you should use is Notepad found in the Accessories group. If you are unfamiliar with the Windows environment, ask your TA for assistance.
Once you have finished entering your SPICE
deck, save the file. The filename should be in the format <your
filename>.cir. The filename should be no more than 8
characters long, not including the cir extension.
Your SPICE deck should have the following
format:
The
first line must be a title.
The
end of the deck is defined with a .end statement.
It is
often a good practice to group the netlist with the following
format:
4. analysis and options statements
note:
Any statement that is preceded by "*" is recognized as
a comment. It is often a good idea to comment your netlist so
that others can understand what you're doing.
Nodes
can be represented as numbers as well as strings. Use meaningful
nodenames. Ground is always node 0.
The file you have created in Notebook is ready to be simulated. You can open the PSPICE windows by double-clicking its icon. A window which resembles figure 5 will appear.
2. Select the SPICE deck you want to simulate.
Note the path in which you have saved your
SPICE deck. If you don't see your Notebook file, select All
Files in the filter within the dialog box. If the file is
still not there, then PSPICE is not looking in the directory in
which you saved your .cir file. You will have to traverse up or
down the directory tree until you reach the correct directory.
If the circuit contains no error, PSPICE will
display a message telling you that the simulation was successful.
If there were errors, then you will need to fix it within your
SPICE deck. You can view your errors by clicking File and
then Examine Output.
Probe is a graphing program which plots data obtained from a PSPICE simulation. You can launch Probe by double-clicking its icon. A window which resembles figure 6 will appear.
In order to run probe, you must include the
following line in your SPICE deck:
Data for Probe is stored with the same name as
your SPICE deck file, with the .dat extension. For example, if
your SPICE deck was named test.cir, the data file for
Probe will be named test.dat.
Before plotting your data, you must open the
.dat file. This can be done in the File menu.
If your simulation contains multiple types of
analysis (dc, ac or transient) you can specify which type of data
to load into probe in the plot menu.
Data is plotted using the Add function
in the Trace Menu.
You can obtain a hardcopy of the plot by using
the Print function in the File Menu.
Label your plots with insightful comments.
Somewhere on your plot you should include your name. This can
make identifying your plot an easier job.
If the print queue is long, you can convert the
plot in postscript format. Use the Printer Select
function in the File Menu.