1ECE 438( Digital Integrated Circuits) Cadence Tutorials Cadence Tutorial 2 Schematic Entry & Digital Simulation ( Using Virtuoso Schematic and Analog Artist ( Spectre)) Department of Electrical & Computer Engineering University of Waterloo, Ontario, CANADA [Date: MAY,2006] Developed by: Manisha Shah ( Lab Instructor) Assisted by : Paul Hayes, Rasoul Keshavarzi Acknowledgments I would like to thank Mr. Javid Jaffari for his input in doing cosmetic modifications for better look and providing some useful information in the Appendix of the tutorial. This document will help students to learn cadence tools. Please send any comments, corrections and suggestions for improvement to manisha@ecemail.uwaterloo.ca or phayes@ecemail.uwaterloo.ca . Your feedback will be greatly appreciated. _______________________________________________________________________________ This document is solely for educational purpose without any commercial advantage. It is mainly focused for students of University of Waterloo, Canada. Cadence is a trademark of Cadence Design Systems, Inc., 555 River Oaks Parkway, san Jose, CA 95134 2 The following Cadence CAD tools will be used in this tutorial: • Virtuoso Schematic for schematic capture. • Analog Artist (Spectre) for simulation. We will practice ...
1
ECE 438( Digital Integrated Circuits) Cadence Tutorials
Cadence Tutorial 2
Schematic Entry & Digital Simulation
( Using Virtuoso Schematic and Analog Artist ( Spectre))
Department of Electrical & Computer Engineering
University of Waterloo, Ontario, CANADA
[Date: MAY,2006]
Developed by: Manisha Shah ( Lab Instructor)
Assisted by : Paul Hayes, Rasoul Keshavarzi
Acknowledgments
I would like to thank Mr. Javid Jaffari for his input in doing cosmetic modifications for better look
and providing some useful information in the Appendix of the tutorial.
This document will help students to learn cadence tools. Please send any comments, corrections
and suggestions for improvement to manisha@ecemail.uwaterloo.ca or
phayes@ecemail.uwaterloo.ca . Your feedback will be greatly appreciated.
_______________________________________________________________________________
This document is solely for educational purpose without any commercial advantage. It is mainly focused
for students of University of Waterloo, Canada.
Cadence is a trademark of Cadence Design Systems, Inc., 555 River Oaks Parkway, san Jose, CA 95134
2
The following Cadence CAD tools will be used in this tutorial:
• Virtuoso Schematic for schematic capture.
• Analog Artist (Spectre) for simulation.
We will practice using CADENCE with a CMOS Inverter: creating (1) Schematic (2) Symbol (3)
Symbol Test Bench.
Computer Account Setup
Please revisit Unix Tutorial before doing this new tutorial.
YOU SHOULD HAVE YOUR ENVIRONMENT SET UP FOR CADENCE AND
ADDITIONAL TOOLS
Running the Cadence tools
Log in to your unix account. Open the terminal window.
Now you should be able to run the Cadence tools. Never run Cadence from your root directory, it
creates many extra files that will clutter your root. Instead please create a directory (e.g. cadence).
mkdir cadence
cd cadence
Now start Cadence by typing
startCds –t cmosp18
The command will start Cadence and after a while you should get a window with the “icfb”, also
called Command Interpreter Window (CIW) as below: Fig 1.
3
CADENCE MAIN WINDOW ( Note: “icfb” in the Title bar)
Fig 1 Cadence icfb ( CIW) window
“You will also get a "Cadence Update" window which you can read and then close or minimize.
With in “icfb(CIW)”you can launch other applications and you can also manage your files and
libraries. NEVER use Unix commands (cp, mv) for moving Cadence design files as you may run
into trouble later. For more information on the various Cadence tools I encourage you to read the
corresponding user manuals. You can get to the manuals by pressing Help -> Cadence
Documentation on any Cadence window (e.g. CIW(icfb)) or in the “Library Manager(F6)”
You can also open the on-line manuals by typing following at the prompt in your terminal
window.
cdsdoc&
Spend some time browsing the manuals to understand what is available (a lot!). During the
semester you will have to look for information in the on-line manuals to complement the (limited)
1
info given by these tutorials.”
We are going to create a new library. Howver, there are two different ways to work with. In this
tutorial we will work mainly from “icfb(CIW)” window. But it will be a good idea to read the
following paragraph and the “Note” started on the page 4 before you proceed.
Now we need to create a new library (to contain your circuits) so from the icfb ( Fig 1) Command
Interpreter Window (CIW) go to File -> New -> Library from the File menu. You will see a
“New Libarary” window (Fig 2). Fill in the name of the new library (e.g. CMOSInverter) in the
dialog window (this will create the library in the directory where you started icfb, you could also
choose to set a path if you wanted another directory). Click on “Attach to existing tech library”
and click OK.
1 Reference A 4
Fig 2 New Library Window
You will get another window called “ Attach Design Library to Technology File” ( Fig 3) . Select
“cmosp18” as Technology Library and click OK
Fig 3 Attach Design Library
Note : (Starts here)
Note ends on page 6.
The above steps can be also performed using the Library Manager. After you start Cadence and
get the “icfb CIW” window, go to Tools->Library Manager or press F6 on keyboard. It will
open the Library Manager window (Fig 4) as shown below. You can create the new library
(CMOSInverter) from the Library Manager following the same steps as explained above. Now the
“CMOSInverter” library should appear in the Library Manager window. It is easier to work with
Library Manager. However, for this document we will work through icfb- CIW window.
5
Fig 4 Library Manager window (Press F6 to get Library Manager)
It might be a good idea to put A1,A2, A3...in front of your library name. E.g
“A1_CMOSInverter”. This will place your libraries at the top in the “Library Manager” window
under “Library” column (See Fig 5). So, it will be easy for you to search (browse) your library
next time, when you open the Library Manager. Otherwise you have to search thro’ all the
libraries to locate your library as your created library is mixed with cadence system libraries.
6
Fig 5 Library Manager (Library name “A1_CMOSInverter” at top)
Note (Ends here). Go back to page 3.
Let's start our first schematic now!
SCHEMATIC CAPTURE
In the icfb CIW window go to File -> New -> Cell View. You will get a “Create New file”
window (Fig 6). Fill in the information in the dialogue window as below and then press OK.
Library Name : CMOSInverter
Cell Name : myinverter (you can choose other name if you want)
View Name : Schematic
Tool : Composer-schematic
7
Fig 6 Create New File window
Wait for a while. “The schematic window will appear. You should get the “Virtuoso Schematic
Editing” window as shown below (Fig 7). Spend some time analyzing the window. On the left
side you have various shortcuts to common used commands such as: placing component instances
(looks like an IC), drawing wires, placing ports, stretching, copying, zooming in and out, saving,
etc. If you pass the mouse pointer on top of the buttons you get short pop-up help messages. You
also have access to these commands (and others) from the menu. It is not possible here to describe
all the functionality of Virtuoso Schematic so you are strongly encouraged to read the on-line user
1
manuals in cdsdoc.”
You should notice that the top bar of the window will display the name of the library
(CMOSInverter), cellview (myinverter) and schematic at the end.
Fig 7 Virtuoso Schematic Editing window ( Composer)
1 Reference A 8
You can zoom in or stretch the window to see the full view of the window and all icons of the
various commands on the left side.
“Note: The process of editing a design is called schematic capture. You can use several methods in
the Cadence environment tools to achieve the same effect. We could select from the pull-down
menus, or click on one of the icons on the left of the design entry form, or use a shortcut letter,
2
refered to as a Bindkey.”
Let's start our first schematic to create the CMOS Inverter. Expand the Virtuoso Schematic Editing
window if necessary. We will pace the NMOS and PMOS transistors.on the schematic.
Placing Instances
Click on the “Instance” button (icon) on the left side (which looks somewhat like an IC, or go to
Add -> Instance), this will pop-up an “Add Instance” window (Fig 8).
Fig 8 Add Instance Window
Now click on the Browse. Another window called “Library Browser – Add Instance” (Fig 9) will
pop up. We will select PMOS transistor and will place it on the Virtuoso Schematic window.
Follow the steps now. Select as follows in the Library Browser window.
Library =>cmosp18
Cell => pfet
View => symbol
2 Reference B 9
Fig 9 Library Browser Window ( Looks like Library Manager Window)
There is no need to close the Library Browser window at present. Now go back to “Add Instance”
window. You will see that “Add Instance” has expanded to display various other parameters (see
Fig 10 below). Fig 8 changes to Fig 10.
Change following properties of pfet in “Add instance” as given here.
Names => M1
Width =>800 nm
Length => 180 nm
Note : Please refer to Appendix 1 ( at the end of the document) for some useful information
on parameters. This information is provided by Mr. Javid Jaffari.
10
Fig 10 Add Instance Window with variables
“If you move the mouse now on top of the Virtuoso Schematic editing window you will see an
"outline" (or ghost) of the transistor. You can move, rotate, flip this outline until you get what you
1
want, then by clicking the left-mouse button you can place it in the schematic.” Also you can
press “Esc” key on the keyboard to release any command.
Now we will place the NMOS transistor. Go back to the “Library Browser-Add Instance” by left
clicking on this window. Select as follows:
Library =>cmosp18
Cell => nfet
View => symbol
Notice carefully. You need to select “nfet” under the cell for NMOS.
Now click on the “Add Instance” window. Change following properties of the nfet in the “Add
instance” window.
Names => M2, Width => 360 nm, Length => 180 nm
_______________________________________________________________________________
1 Reference A