Professional Documents
Culture Documents
Cadence Tutorial: Ieng9 Options Session Common Desktop Environment
Cadence Tutorial: Ieng9 Options Session Common Desktop Environment
I. Introduction
This tutorial provides an introduction to analog circuit design and simulation with Cadence, and covers most of
the features that are relevant for the homework assignments. The tutorial is divided into the following topics:
1.
2.
3.
4.
In order to use Cadence, you must be sitting in one of the three labs designated for use with this class EBU1-3329, EBU1-3327, or EBU1-5702. The passcode to the labs was provided in class, and is only
needed at night. ACS does not allow Cadence to be run directly from ieng9.
At the logon screen of the lab computers, go to Options > Session > Common Desktop
Environment, unless you have a specific preference for the Openwindows environment. CDE will
be your environment for future sessions. Now go ahead and enter your username and password at the
prompt. The instructions for how to do this should be on the slip provided to you in class.
After you have successfully logged on, open a terminal window if one is not already open. This can be
done using one of the menus at the bottom of the screen in CDE (Common Desktop Environment).
While youre using the menus, you may wish to turn off the beeping that the workstations make - in
one of the menus, go to Desktop Controls > Beep Style Manager and set the volume
to zero. If you want this to be permanent, youll need to save your session. This can be done by going
to Style Manager > Startup, and then selecting Set Home Session.
In the terminal window, type prep cadence. This command may prompt you to change to the
working directory for the class (you should answer yes), and will set some environmental variables for
use with Cadence. YOU WILL NEED TO USE THIS COMMAND EVERY TIME YOU START UP
CADENCE.
1/12
For first time users, the following paragraph wont be too important now. But youll want to
take another look at this if youd like to modify your environment later. There are a couple of files in
../public which can be used to customize your Cadence environment, if you wish to do so. If
you wish to be able to print to printers other than those in the lab, move .cdsplotinit to your
home (class?) directory and modify it to suit your needs. If you know about bindkeys, and youd like to
add some new ones, copy .cdsinit into your class directory and modify it. If youd like to change
the default colors for Cadence, you can create a display.drf file in your home/working directory. See
Cadence help for more information.
Cadence will generate several files during normal operation. If you like, you can create a
directory in which you do your work. If you choose to do this, change into this new directory now and
then proceed with the tutorial.
Starting Cadence
1.
2.
In the same terminal window that you typed the prep command, type icfb &. A window containing
text should appear at the bottom of the screen, labeled icfb - .... This is sometimes called the
CIW (Command Interpreter Window). A window explaining new features should also come up; in this
window, select Edit > Off at Startup, and then close it. The CIW window is the main
Cadence window, and much useful information is displayed here. If Cadence isnt doing what you
expect, it is often helpful to look here to read the error messages - feel free to make the window bigger.
You now need to bring up the library manager.
(a) In the CIW, select Tools > Library Manager. A Library Manager window
appears. Notice the library ece264lib. This library contains most if not all of the
components that will be used in this class.
II. Creating a Design
A simple transistor amplifier is created in the following.
Some notation
Within this section, you will occasionally find bracketed letters such as [a]. These are keyboard
shortcuts (bindkeys) which can be used instead of the menus or buttons to accomplish the given task.
To use these, place the pointer over the appropriate window and simply press the key. Please note that
these bindkeys are case sensitive. For letters enclosed by square brackets such as [a], the pointer
must be in a schematic window. For letters enclosed by curly brackets such as {a}, the pointer must
be in a waveform window. A summary of the most useful bindkeys is listed in Appendix A.
For ECE164, please replace the notation [LIB] with 164. For ECE264, [LIB] = 264.
Creating a new library and cellview
1.
2.
2/12
You will now place symbols on the Schematic Window as shown in Figure 1.
1.
2.
3/12
3.
4.
5.
6.
Once all the parts are placed on the schematic, you can set property values that are specific to the
design on each symbol. Figure 2 shows many of the property values that you will add in this part of the tutorial.
The vsin symbol has many properties: acm is AC Magnitude, the amplitude of the AC signal applied
to the linearized circuit (small signal circuit) during an AC Analysis. The acp is the AC Phase, vo
refers to DC Offset, and vm refers to Amplitude, the amplitude of the signal applied to the largesignal (non-linear) circuit during a Transient Analysis.
1.
Use the following procedure to change a symbols properties. Before you begin, make sure that you
have pressed ESC to clear the last action performed (the bottom line of the Schematic Window should
read >):
(a) Move the cursor to a location where there are no parts. Then press q. An Edit Object
4/12
(b) Click on the item whose properties youd like to change. The dialog box will expand to
2.
3.
4.
display a list of properties that can be changed. If you cant see any properties, make sure that
the CDF box is checked near the top of the Edit Object Properties window.
(c) In the list of properties, edit those that you would like to change or specify. DO NOT include
units such as Volts or Ohms - youll notice that these are filled in automatically after you
move on to the next property. DO NOT press return after you enter a property - use the mouse
or use the TAB key to proceed. DO specify abbreviations for scientific notation such as k
(kilo),u (micro), m (milli), M (mega), p (pico), f (femto).
(d) Click on the next part to change its properties. Cadence will ask whether you want to save the
property changes from the old part - say yes.
(e) When youre done entering properties, click Cancel at the top of the Edit Object
Properties dialog box.
Change the names of the transistors according to Figure 2 by changing the Instance name field.
Note: The name must be unique. Also insert the values for the transistor widths and lengths.
Flip the display of transistor M0 by first pressing m and clicking on the transistor to move it. While
you are holding it, press R on the keyboard. The symbol outline should flip. Place the flipped part
as shown in Figure 2.
Note that the ac magnitude and phase of the vsin part are not displayed by default. Edit the
properties of this part (with the q key, and then look at the AC Magnitude property. Click on
the button to the right of the property value, and a list of choices will appear. Select Both. This will
cause this property to be displayed on the schematic.
Wiring the Schematic
After the symbols are placed and the properties are set, you can wire the parts together as shown in
Figure 3.
1.
2.
3.
5/12
1.
2.
3.
4.
Press l (for label) on the keyboard. An Add Wire Name dialog box appears.
Enter vout vin in the Names field and press Return
Move the cursor until the dot is on top of the wire to be labeled vout. Left click once with the
mouse. The label will be attached to the wire, and the label you are moving with your cursor changes.
Place the vin label in an appropriate spot. Make sure the dot is on top of the wire before you leftclick.
Finally, add a single instance of ece[LIB]lib title underneath your schematic. Please
make sure that this is always placed in all your schematics.
At this point you have a completed design that is ready to be analyzed. In the next part of the tutorial,
you will simulate the amplifier. First, save the design by clicking the checkmark icon (the Check and Save icon)
on the left hand side of the Schematic Window (top). Check the CIW. There should be a message saying that
Schematic Check completed with no errors. Whenever you make a change to your design,
youll need to check and save before you simulate. Otherwise, you may get an error, which will show up in the
CIW window. Again, the CIW is extremely important for finding errors. You should read any errors carefully,
and sometimes warnings are important too.
III. Analyzing the Design
Before performing the circuit analysis, you need to start the analog environment by going to Tools >
6/12
Analog Environment in the schematic window. A new window called the Simulation Window will
appear.
Next you need to tell Cadence where to find the model library. For this class, we have a single model
library file, called bsim3v3.t17a.scs, which contains an nMOST model named N, and a pMOST
model named P. The symbols were using by default have these names specified in their symbol properties
(look at the properties for one of the transistors). If you ever decide to use a different symbol, youll need to
make sure the Model name property is correctly filled in. To tell Cadence where to look for the model file,
go to Setup > Model Libraries in the Simulation Window. In the Model Library File field,
enter:
/home/solaris/ieng9/ee[LIB]f/ee[LIB]f1/cdsConfig/models/bsim3v3.t17a.scs
Then click on Add (NOT OK). Youll see the path placed in the list of Model Library Files. Now click on
OK.
Finding the DC Operating Point and Performing a DC Sweep
In this section, youll find and annotate the DC operating point, and youll sweep the input voltage to find the
correct bias voltage for the nMOST transistor.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Now go to Analyses > Choose.... A new dialog box will appear. [a]
In the new dialog box, select the dc button. Check the Save DC Operating Point box.
This will allow us to annotate node voltages later. Finally click OK
Well now perform our first simulation. Click on the Netlist and Run icon, which is the green
traffic light on the right hand side of the Simulation Window. If this is your first time running Cadence,
a Welcome menu appears close it. A new window will appear, hopefully saying that the simulation
was successful, and providing a brief summary of the simulation convergence. [s]
If everything went well, go to the Simulation Window, and select Results > Annotate > DC
Node Voltages [d]. Note that the voltages at each terminal of each device are now marked on the
schematic. Now go to Results > Annotate > DC Operating Point [D]. Note that
important voltages and currents are now marked on each device. You can quickly see whether the
devices are biased properly. You can remove this annotation by using Results > Annotate >
Design Defaults [^d].
You should see a problem with the node voltages. The node vout should be about 2.4V. This means
that the top pMOST is operating in triode, and this amplifier will not work properly. Youll now fix
this using a DC sweep to find the correct bias point.
Go back to the Simulation Window, and select Analyses > Choose... [a]. Under Sweep
Variable on the DC Analysis Form, select Component Parameter. The form will become
larger.
On the expanded form, click the Select Component button. You will be prompted to select a
component on the schematic. Select the vsin symbol at the nMOST input. A new window will
appear, and you should select dc as the parameter you wish you vary, then click OK in the new
window.
Fill in the rest of the form so that the voltage is swept from 0 to 2.5V. Set the sweep type to
Linear, and set the number of points to be plotted to 500. When youre done, click OK on the
Choose Analyses window.
Now you need to select an output to plot. To plot a voltage, use the following procedure:
Go to Outputs > To Be Saved > Select on Schematic in the Simulation Window.
Left-click on the vout and vin nets in the schematic window, and then press ESC. This step is
typically not done as you can simply click on the nodes you want to plot after the simulation is
complete. However, go ahead and try it this time.
Go to Outputs > Setup.... In the Setting Outputs window, click on the vout line on the
right hand side. Then select the Plotted button, and press Apply. Do the same for the vin
line. Then click OK in the Setting Outputs window.
7/12
12.
13.
14.
15.
Finally, we can perform the DC Sweep. Press the green traffic light. The Waveform Window with the
simulation results should appear.
We need to find the input voltage which will place our output bias at roughly Vdd/2. Move your cursor
over the waveform plot of vout. Youll see the x and y coordinates at the top of the window. Using
this method, select the DC value of vin which will give an output of approximately 1.25V. You
should get about 550mV. Update the vsin symbol with this new DC offset voltage.
Repeat the DC simulation, and verify from the annotated voltages that your output is now roughly at
Vdd/2. If so, youre ready to move on to the next simulation.
But first, unless you like to repeat things, you should learn how to save the simulation state. Go to
Session > Save State..., and youll be prompted to save your current state. Enter the name
of a state of your choosing, or just stick with the default. This state can be reloaded later (using
Session > Load State..., and you wont have to enter all of the setup data again.
Performing a Transient Analysis
In this section, well look at the amplifiers large signal response to a sinusoidal input signal at 100kHz.
1.
2.
3.
4.
5.
6.
First, turn off the DC Sweep analysis by bringing up the choose Analysis window and unselecting the
Enabled box at the bottom of the form.
Select the tran button. Enter 100u in the Stop Time field. If you want, you can also click
the moderate button, but this is not necessary. It is recommended by Cadence you never click the
other two.
Click the Options button. A new dialog box appears. In this Transient Options window, change the
following attributes: step to 10n, maxstep to 10n, then press OK. These options make sure
that enough points are taken during the transient analysis. They will be different for other simulations
in this class, and youll need to experiment with them. Typically, you can leave this field blank and see
how well the transient results look. If they seem choppy, go ahead and enter a number here. Refer to
the Cadence documentation for more information on the other parameters on this form.
Youre now ready to simulate, and you havent changed the schematic, so you can press the yellow
traffic light to simply run the simulation.
After a few moments, the waveform window should appear with a nice sinusoid. You can remove the
input sinusoid (we know its just a 2mV peak-to-peak wave) to get a better view of the output. Go to
Curves > Edit in the Waveform Window, and turn off the vin waveform or click on the
waveform and press del.
To measure the peak-to-peak amplitude of the output, use the Markers {a},{b} menu to place
markers A and B at the highest and lowest points of vout. From the display at the bottom of the
window which will appear after you have done this, you should find the peak-to-peak amplitude to be
about 63mV, meaning the circuit has a gain of about 30.
Performing an AC Analysis
In this section, well look at the amplifiers frequency response. Hopefully youre becoming proficient with
Cadence now, so not as much detail about the individual steps will be provided.
1.
2.
3.
Bring up the Choosing Analyses window, and disable the transient simulation, and the sweep portion of
the DC simulation. Then click the ac button, and set up this simulation to sweep frequency from
100Hz to 1GHz, with 100 points per decade. You will need to change the sweep type to
logarithmic.
Netlist and Run the simulation (or just run it, if your schematic is unchanged). [s]
In the schematic window, we will now create a Bode plot. The easy way to do this is to go to Axes
and change the scale of the y-axis to be logarithmic. Well use a different approach, using the
Waveform Calculator, an important Cadence tool.
(a) First, add a new subwindow to plot our new graph in. Do this by going to the Window >
Subwindows... menu option, or by clicking on the subwindow icon on the left-hand side
of the Waveform Window{S}. Make sure that the new subwindow is active by left-clicking in
its area.
8/12
(b) Now click on the calculator icon on the left side of the waveform window. The calculator will
4.
5.
appear. By default, the calculator uses RPN (Reverse Polish Notation), but this can be
changed in the Options menu item, if youd like. For the following, I assume youre using
RPN.
(c) Click on the wave button in the calculator. You will be prompted to click on a wave - select
the vout waveform. The expression for this wave will appear in the calculator window.
(d) You want to plot 20*log10(vout). To do this in RPN, now click on the log10 button, then
enter 20 on the keypad, then press the multiply button. You should see the calculation take
place in the calculator window. If you prefer, you can simply type *20 at the end of the
expression in the calculator window. in other words, use it as a normal calculator.
(e) Now press the calculator plot button. The new wave will appear in the subwindow.
You can also make measurements with the calculator. If you click and hold the Special
Functions button, you will see a list of functions. Select bandwidth. A form will come up, and
you can click OK. Then press the print button on the calculator. This will bring up a window
with the measured 3-db bandwidth of your circuit.
Youre done with the AC Analysis now. Weve only scratched the surface of what can be done with the
Waveform Calculator. Feel free to experiment more with it if you wish. Then go to the next section.
Performing a Parametric Sweep
Sometimes its important to perform sweeps of two variables simultaneously. This section shows you how to do
this. We will sweep the nMOST bias voltage over a few values, and plot the frequency response of the amplifier
for each value. This will demonstrate how drastically the bias point (which determines whether transistors are
saturated) can affect circuit performance.
1.
2.
3.
4.
5.
6.
7.
For a parametric analysis, you must first define the variable to be parameterized (the one which takes
on discrete values). In our case, this will be the offset voltage of the vsin symbol. Go to this symbol
and edit its properties. In place of the number which you currently have entered in the Offset
voltage field, enter vgs. Then click OK. Check and save.
Go to the Simulator Window and select Variables > Copy From Cellview. You will
notice that vgs appears in the Design Variables subwindow.
Go to Variables > Edit... (or use the shortcut) and set the value of vgs to the bias voltage you found
during the DC Sweep portion of the tutorial.
Next, you will need to re-enable the DC simulation. To do so, go back to the analysis chooser and
select the DC analysis button. Choose to enable this simulation; however, make sure you disable the
component parameter sweep.
Now netlist the schematic. (You can find the option to just netlist under Simulation, or you can
just netlist and run. It doesnt make any difference. We just need to netlist somehow.) This is a critical
step. If you forget to do this, the parametric analysis will seem to do nothing.
In the Simulation Window, go to Tools > Parametric Analysis.... Set up the form so
that vgs is swept from 0.4V to 0.8V in 9 total steps. In the same form, go to Analysis >
Start to begin the analysis.
When the Waveform window comes back, it should have multiple distinct curves, showing the
frequency response for each value of vgs. Notice how dramatically the gain drops off away from the
correct bias point!
A Note on Measuring Currents
You select a current to be plotted in much the same way as you select a voltage. When selecting
outputs to be plotted (see the beginning of Analyzing the Design), click on the terminal of a device
rather than a wire. A circle should surround the terminal to show that the current flowing INTO this terminal
will be plotted. A few caveats: first, sometimes it can be very difficult to select a node - you may have to click
on the center of the symbol at which you want to measure current, which will select all nodes of that symbol,
and then delete the currents you dont want in the Simulation Window. Second, the transistor symbols used for
the class dont allow their currents to be plotted for some reason. Remember, you can always put in a zero-volt
voltage source if you need some usable terminals for measuring current!
9/12
A Note on Printing/Plotting
Some information on customizing printing was given earlier in this tutorial. In order to actually bring
up a plotting dialog box, you can go to Design > Plot > Submit.. in the Schematic Window, or
Window > Hardcopy in the Waveform Window. Youll have to experiment with the forms to get what
you want. The forms are quite versatile. Keep in mind you can print to a postscript file as well as directly to a
printer.
When printing, it is suggested that you do the following:
(a) Unselect the [Plot with] Header button.
(b) On the Plot options page:
i. Unselect the Mail Log to button.
ii. Select the Center plot button. [Not available when printing waveforms]
iii. Select the Fit to page button. [Not available when printing waveforms]
iv. Check that the correct printer is selected (or)
v. If you want to print to a postscript file, select the Send plot only to file button.
If you decide to print to a file, the output will be a postscript file. This may be inconvenient for some students. If
this is the case, you can run ps2pdf <filename.ps> to convert the postscript file to a PDF. This
program, however, is not available in your path, by default. You will need to add it to your path before ps2pdf
will work. To do so, at the UNIX command prompt (not the CIW!), type:
set path = ( $path /software/common/ghostscript-8.0.0/bin )
Note: Due to a bug in Cadence, waveforms are printed as they appear on the screen. In other words, if the
waveform window is small, on the screen, the printout will be equally small. It is suggested that you make the
waveform windows large to get the clearest printouts.
Revision
1.0
2.0
3.0
Author
??
A. Lewis
K. Wang
Date
??
1/1/2002
9/20/2004
3.1
3.2
3.2.1
3.3
K. Wang
K. Wang
K. Wang
K. Wang
9/28/2004
9/29/2004
9/29/2004
1/5/2005
Notes
Creation of file (Tex)
Updated file for ECE264A.
Converted from Tex to Word and updated for ECE[LIB] design kit.
Added section on Bindkeys (Appendix A). Updated paths.
Fixed errors. Expanded on printing section.
Added section on ps2pdf.
Added lines to set up ps2pdf.
Generalized library statements to accommodate both 164 and 264.
10/12
Description
Within the schematic window after Analog Artist (Spectre) has been started:
Key
Description
a
Analysis selection window
d
Annotate DC operating voltages
D
Annotate DC operating condition (ids, gm, )
^d
Show design defaults (Removes all annotation)
s
Check and save schematic and start a simulation
1
Direct plot DC
2
Direct plot AC magnitude (dB)
Direct plot AC magnitude (dB) and phase
2
3
Direct plot transient
4
Direct plot transient difference [select two nodes]
Direct plot transient sum [select two nodes]
4
Within the waveform window:
Key
q
Update results
s
Strip mode
c
Composite mode
S
Add subwindow
^s
Delete active subwindow
r
Clear waveform window
a
Show marker A
b
Show marker B
z
Zoom
f
Fit to screen
Description
11/12
12/12