Professional Documents
Culture Documents
In this tutorial you will be working with TSMC 0.18um CR018/CM018 mixed-mode
process design kit, available through MOSIS. The information contained in the design kit
is extremely confidential and you are recommended to consult your course instructor
before disclosing any results obtained in your class project/assignments. This is a short
tutorial meant to give a heads-up to those who are new to Cadence Design Environment.
In order to use Cadence software, you will need an account in CAD and Visualization
Lab (CVL) or IMPACT cluster.
• Environment Setup
• Layout Tutorial
Environment Setup
Please note that the steps given in this section are specific to the Cadence installation
environment in CVL and IMPACT.
2. Use a text editor of your liking and create a file named cds.lib and copy/paste the
following text into the file:
INCLUDE /software/Cadence/IC5141/share/cdssetup/cds.lib
DEFINE tsmc18rf /software/Cadence/TSMC018/tsmc18rf
DEFINE avTech /software/Cadence/ASSURA315/tools/assura/etc/avtech/avTech
> Cadence [It is a script which configures various environment variables required to
properly run Cadence]
> icfb& [It stands for Integrated Circuit Front-to-Back and is a Cadence program, which
integrates all the design tools required for IC front and back-end design]
If you are able to work through till this point without troubles, then your environment
setup for working with Cadence is complete.
Creating a Library and plotting MOS I-V characteristics
In this section you will learn how to create your library and create a simple schematic/cell
view to simulate NMOS I-V characteristics and plot various MOS parameters thereof.
2. As you hit OK, a new dialog-box appears. Check the box corresponding to
"Attach to an existing techfile" and hit OK, as shown in figure 5:
4. You would see "tutorial" in the list of libraries in Library Manager. Next select
"tutorial" library in Library Manager and click on File->New->Cell View. A new
cell view dialog-box appears as shown in figure 7. Type in "mosiv" in Cell Name
and make sure that View Name is "schematic" and Tool is selected as "Composer-
Schematic" and Library Name is "tutorial". Hit OK and a Virtuoso Schematic
Editing window will open up.
5. With Virtuoso Schematic Window selected hit 'i' key, an Add Instance dialog-box
will show up. Click "Browse" button, a Library Browser window will open up.
Select tsmc18rf Library, Mosfets from Category, nmos2v from Cell and symbol
from View column. Go back to the Add Instance dialog-box and change l (M)
property to 'l' and w (M) property to 'w' as shown in figure 8. At this point you
have configured NMOS properties and are ready to place an instance in your
schematic. So, go back to Schematic Editing Window and you would see a ghost
of the NMOS device symbol, place it anywhere in the dotted black area and hit
escape key.
Figure 8. Add Instance Dialog-box for NMOS
6. Following the same procedure, add a voltage source and a ground into your
schematic. The voltage source can be found in analogLib->Sources:Independent-
>vdc->symbol. The voltage source configuration in shown in figure 9. Ground
component is available in analogLib->Sources:Globals->gnd->symbol.
7. In order to wire the placed component. Hit 'w' to enable wiring tool. Click on
NMOS gate terminal and layout the wire to connect to positive terminal of DC
voltage source, finally clicking on the positive terminal of the voltage source to
end the wire. Similarly connect NMOS drain and body terminals and negative
terminal of voltage source to the gnd component. Finally hit escape key to end
wiring. The schematic now looks as shown in figure 10. Save the schematic by
clicking the save button (highlighted in figure 10).
Figure 10. Intermediate State of the Schematic
8. Now hit 'c' key and click on gate DC voltage source to make a copy of it. You
would see a ghost voltage source symbol. Place the copied voltage source close to
NMOS drain. Hit escape key to end copy. Now select the copied source and hit 'q'
key. An object property editor window will open up; change the DC voltage
property to "vds". You will observe that the object highlight box color changes to
pink in the schematic. Make sure that in the property editor window "Apply to" is
selected as "only current instance" and hit ok. Wire the copied voltage source as
shown in figure 11. Hit check and save button and make sure that CIW window
does not show any errors.
Figure 11. Final Schematic
10. Select Variable->Copy from Cellview, you will see all the variables defined in
schematic show up in "Design Variables" section. Double click on 'w' and change
its value to 1u. Similarly, set vgs = 1, vds=1.4 and l=180n.
12. Next you need to select the variables to be plotted. Select Outputs->To Be Plotted
and then click on the drain terminal of NMOS in the schematic. The current
through the drain terminal is added to "Outputs" section of ADE. Double click on
the output and check the "saved" checkbox and hit "change". Quit the "Setting
Outputs" dialog-box by hitting OK. The current state of ADE window looks as
shown in figure 13:
Figure 13: Virtuoso Analog Design Environment Window
13. Click on Simulation->Netlist and Run. When the simulation completes, you will
observe a plot similar the one shown in figure 14. The axis labels have been
intentionally removed because of confidentiality of the values.
Figure 14: NMOS Ids vs Vds
14. Output resistance (ro) of a NMOS is the inverse of the slope of the above plot.
This mathematical operation can be performed by using calculator tool. Click on
Tools->Calculator... . In the calculator window select "dc" tab and check "wave"
checkbox. Now go the plotted waveform and click at any point on the waveform.
The waveform expression is copied into the calculator. Next select "deriv"
operation from listed operations in calculator, followed by "1/x" operation.
Change plot option to "New Win" and click on "Eval" button. A new plot of ro is
generated as shown in figure 15b. The calculator window settings are shown in
figure 15a. You may want to play around with the calculator utility and try
plotting mobility, gm etc of NMOS.
Figure 15a. Calculator Window
16. Then click on Analysis->Start. At the completion of the analysis you will observe
a plot similar to the one shown in figure 17 below:
There are two types of layout design: Full-Custom and Automated. Full-custom
layout is when the user physically draws all of the layers for the individual
transistor. This is a very tedious process, but usually enables results in a
compacter design than the automated process. The automated process, on the
other hand, is done by instantiating standard cells (reusing basic blocks) and
usually takes more area, but it is much faster.
To get you acquainted with the layout process, a tutorial has been developed that
describes the procedure to custom layout an inverter. Please go through it.
The first step in layout design is to layout the transistors in your circuit. Where the
transistors are placed can be critical in getting the most compact design. Also, it
is important to make sure that all important nodes are accessible for routing.
After the transistors have been implemented, the next step is to make the
necessary routing connections. Usually, for large circuits, routing can take up as
much as 50% of the total area. Hence, it is a good idea to think about the
floorplanning of your design before you start the layout.
You can look at the Inverter Tutorial to get a basic introduction to what the
necessary components are.
Back To Top
Once you have finished creating the layout, the next step is to add the I/O pins of
your circuit. It is necessary to add the vdd! and vss! connections to your circuit for
the purpose of DRC. The following is a procedure to add I/O pins to your circuit:
Before you start, you have to have a layout (view name: layout) in your library.
o From your Layout window:
1. Choose Create->Pin... from the menu.The Create Pin form
will appear.
2. If the form is titled "Create Shape Pin", choose "sym pin"
under the Mode option.
3. Enter a TerminalName(the name of your pin).
NOTE: For HSPICE, there is a node name limit
of 16 characters.
4. Make sure that the "Display Pin Name" option is selected.
5. Specify the "I/O Type" as either input, output, or inputoutput.
6. Specify the Pin Type as either Metal1_T, Metal2_T,...
depending on which is the top layer at the place that the pin
is to be inserted.
7. Specify the Pin Width to the desired pin width (the pin is
square).
8. Move the mouse to specify where the pin and the label
should be placed.
9. Repeat the above process (1-7) for all the pins in your
circuit.
Back To Top
Go to the DRC Section of the Cadence Tutorial, to get the DRC procedures.
1. Pin names: On
2. Minor Spacing : 1.08
3. Major Spacing : 4.32
4. X Snap Spacing: 0.06
5. Y Snap Spacing: 0.06
6. Display levels:
7. From: 0
8. To: 30
• Click "Save To" to set them permanently.
• Layout an Inverter:
o You should follow MOSIS SCN5M_DEEP design rule for TSMC
0.25 um five-metal, 2.5V processing (lambda = 0.12 um & min.
length = 0.24 um).
o The inverter consists of three parts -- p-transistor, n-transistor, and
connections.
o This inverter is probably almost minimum size; therefore, the n- and
p-transistors have the same W/L.
Draw Diffusions
Draw Poly
Place Contacts
Place Contacts
Metal Connections
o Add Pins:
You need to add pins for the input (named ip), output
(named op), vdd, and vss in order to pass DRC. Go to the
Creating I/O Pins section to get the procedure on how to add
pins to your layout.
d) Add wires to connect gates and pins: Add -> Wire or use
the toolbar.
4. Use Check and Save to save design. Select Design -> Check and Save
or use the toolbar. Errors will be displayed in the CIW. Correct any
errors.
5. Further instruction is available in cdsdoc. To view Composer tutorial: