This tutorial provides an introduction to using Cadence design tools to lay out and simulate circuits. It describes creating a working directory, starting Cadence, making a design library, and laying out an inverter cell including placing transistors, connecting layers, adding pins, and extracting the layout for simulation. The key steps are creating an inverter layout with minimum sized PMOS and NMOS transistors using a 180nm technology, connecting the layers, adding power and ground rails, and extracting the layout to verify the design rules and enable simulation.
This tutorial provides an introduction to using Cadence design tools to lay out and simulate circuits. It describes creating a working directory, starting Cadence, making a design library, and laying out an inverter cell including placing transistors, connecting layers, adding pins, and extracting the layout for simulation. The key steps are creating an inverter layout with minimum sized PMOS and NMOS transistors using a 180nm technology, connecting the layers, adding power and ground rails, and extracting the layout to verify the design rules and enable simulation.
This tutorial provides an introduction to using Cadence design tools to lay out and simulate circuits. It describes creating a working directory, starting Cadence, making a design library, and laying out an inverter cell including placing transistors, connecting layers, adding pins, and extracting the layout for simulation. The key steps are creating an inverter layout with minimum sized PMOS and NMOS transistors using a 180nm technology, connecting the layers, adding power and ground rails, and extracting the layout to verify the design rules and enable simulation.
This tutorial provides an introduction to using Cadence design tools to lay out and simulate circuits. It describes creating a working directory, starting Cadence, making a design library, and laying out an inverter cell including placing transistors, connecting layers, adding pins, and extracting the layout for simulation. The key steps are creating an inverter layout with minimum sized PMOS and NMOS transistors using a 180nm technology, connecting the layers, adding power and ground rails, and extracting the layout to verify the design rules and enable simulation.
Copyright:
Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online from Scribd
Download as pdf or txt
You are on page 1of 17
At a glance
Powered by AI
The document discusses layout design and circuit simulation.
It describes components like inverters, inputs, and windows for defining stimuli.
It allows defining the inputs to the circuit component being simulated.
!!!!!!! l!l!I!.
School o Llectrical Lngineering and Computer Science
\ashington State Uniersity, Pullman, \A-99163.
1his tutorial is an introduction to Cadence tool or circuit layout and simulations. It deals with the layout o the circuits and their simulations using Cadence packages.
Virtuoso or layouts Analog Artist Lnironment or design simulations.
Virtuoso is the layout editor tool o Cadence. 1he simulations o the designs can be done using the Analog Artist Lnironment.
oggivg ovto tbe |^ .,.tev.
At the SUN systems log in screen enter your LLCS log in ID, change the enironment to Common Desktop Lnironment ,CDL, in the options menu ollowed by pressing OK and then enter your password ollowed by LN1LR.
Creativg a ror/ivg airector,
Once logged in successully, open a terminal window. 1o do this you can do one o the ollowing
1. Right click on the desktop and go to the 1ools option, then choose 1erminal. 2. Click on the button aboe Perormance management meter on the ront panel. Choose 1his host
Now at the prompt gto`, type mkdir Cadwork to create a working directory named Cadwork. All the work done will be stored in this directory.
tartivg Caaevce
1o start cadence, type rcad at the command prompt. 1his starts Cadence in the background and you should get a window with the icfb Command Interpreter Window (CIW) as below.
1he Library manager window, which looks like this, also opens.
\ou will also get a "\hat's New" window which you can read and then close or minimize.
1o iew the help manuals, click the lelp button on the icb window.
Creativg a tibrar,
1he ist task is to create a design library. 1o create a library, go to lileNewLibrary. 1he ollowing window opens. Lnter the name o your library say tutorial in the text box.
I you want to store the library at a dierent path, enter the name in the path text box. Lg. ~,Cadwork Next click on the radio button Attach to an existing tech library. 1his displays a drop down menu box. lrom the menu box choose the technology you want to use. In this tutorial we shall use TSMC 0.2u CMOS018 (6M, sblock, HV FET) technology, which is the CMOS 180nm ,0.18m, technology.
1hen click the OK button. 1his will create a library with name tutorial, attached to 1SMC 180nm technology.
Look at the Library manager window. 1his new library created should be an entry in it under the column Library.
Creativg a cettrier for a,ovt eaitor
Once you hae created a design library, you can start to put your design into it. In this tutorial we shall create an inerter. Now to create a cell-iew go to lileNewCell-iew
lrom the drop down menu box o Library name, choose the library you want the current cell-iew to be in. In the present case, it is the tutorial library.
Lnter the name o your cell-iew say inerter in the text box. 1hen choose the Virtuoso rom the drop down menu called 1ool. Virtuoso is the layout editor.
Clicking the OK button should open the layout editor and the LS\, which look as ollows:
1he LS\ window contains a list o all the layers aailable in the technology being used ,here 1SMC 180nm,. 1he layers must irst be selected rom this window to draw them in the layout editor. Get acquainted with the Virtuoso Layout editor window. On the let side are arious shortcuts to commonly used commands such as: sae, it, edit, zoom in and out, stretch, copy, moe, delete, undo, instances, path, rectangle, ruler etc. 1hese commands and many more can also be accessed rom the menu.
De.igv vrerter Now let us create an inerter in the editor. 1o create an inerter we need a PMOS transistor, an NMOS transistor. A transistor is ormed by the oerlap the actie ,p-actie or PMOS and n-actie or NMOS, and poly layer ,polysilicon, layers. In this tutorial we shall use the MOSIS SCMOS ,Scalable CMOS, scalable design rules. 1hese design rules are -based designed rule set, all design rules are expressed as unction o . lollowing table shows the alues o or arious technologies.
1echnology 1echnology name in NSCU 1ool kit () AMI 1.5m AMI 1.6u ABN ,2P, NPN, 0.8 AMI 0.5m AMI 0.6u C5N ,3M, 2P, high-res, 0.3 lP 0.5m lP 0.6u AMOS141B ,3M, sblock, thin- ox cap, 0.3 1SMC 0.35m 1SMC 0.4u CMOS035 ,4M,sblock,lV lL1, 0.2 1SMC 0.25m 1SMC 0.3u CMOS025 ,5M,lV lL1, 0.15 1SMC 0.18m 1SMC 0.2u CMOS018 ,6M,sblock,lV lL1, 0.1
1he alue or this tutorial is 0.1
1he design rules set can be ound at MOSIS`s website http:,,www.mosis.org,1echnical,Designrules,scmos,scmos-main.html
In this tutorial we shall layout an inerter with PMOS and NMOS transistors o minimum size. According to the design rules the minimum length o transistor equals 2 ,the minimum width o polysilicon,, while minimum width equals 3 ,the minimum width o actie,diusion,.
a,ovt of vrerter
1he instances o the PMOS and NMOS transistors are already aailable in the technology library. lor an NMOS transistor, go to CreateInstance 1he ollowing window should open
Click on Browse and the ollowing Library Browser window should open.
Under the Library column choose NSCU_1echLib_tsmc02 ,this is the technology we are using, and under the Cell column choose the nmos cell and click Close button. Place the instance o the NMOS transistor in the Layout Lditing window as ollows
1o reeal the nmos transistor with all its layers click Shit- and the NMOS transistor is shown.
In the similar way obtain an instance o the PMOS transistor and place it aboe the NMOS transistor such that the distance between n-actie layer ,green, and n-well layer is 0.6 ,6,. \ou can use the ruler to measure the lengths in the Layout Lditor window.
Since both the transistors in an inerter hae the same input, we shall connect the gates with polysilicon layer. Choose the poly layer and draw a rectangle as shown in the ollowing igure. In the inerter, the output terminal is the contact o the drains o the two transistors. Draw a rectangle o metal1 layer and place it such that it touches the metal layers o the contacts in the two transistors.
Now or the power and ground rails, draw two metal1 rectangles and place those at 0.3 unit distance rom two actie regions, as shown in igure. Connect these two metal layers to the source o the transistors with metal1 layer to complete the contact between the transistor and power rails.
1he bulks o the two transistors must be connected to proper oltages. lere the n-well o PMOS must be tied to Vdd while the bulk o NMOS must be tied to ground. Goto CreateContact. lrom the drop down box choose M1_N contact and place it on the power rail as shown in igure. Goto CreateContact. lrom the drop down box choose M1_P contact and place it on the ground rail as shown in igure. 1o reeal the contacts press Shit- and to hide them press Ctrl-.
1he M1_N contact must be inside the n-well, so draw a rectangle with n-well layer so that it encloses the contact by at least 0.1 units on all sides.
It is a good practice to periodically keep checking or design rule errors. Goto VeriyDRC. 1he ollowing window appears.
linish by clicking OK. I any design rules hae been iolated, they would be marked on the layout. Usually a simple rule iolation could result in multiple errors.
Now we shall create pins to mark the input terminal, output terminal, VDD and GND. Goto CreatePin, the ollowing window appears.
In the 1erminal Names ield enter the ollowing labels: In, Out, VDD, GND. lor Mode select sym pin ,i it is not already selected,. Select Display Pin Name, or I,O 1ype select input and chose poly or Pin 1ype. Now moe the cursor to the Virtuoso window, you will ind that it now carries a rectangle box with In` letters. Place it at the mid point o the polysilicon layer. Clicking once places the poly layer and a second click o the let mouse button ensures that the label is attached to the layer. Go to the CreatePin orm and change I,O 1ype to output and the Pin 1ype to metal1. Moe the cursor back to the Virtuoso editor and place this layer at the center o the metal1 layer that connects the transistor Drains. Click once to place the layer and one more time to attach the label. Go to the CreatePin orm and change I,O 1ype to input. Back on the Virtuoso editing window place this pin at the center o the metal1 layer ,power rail, aboe the p-type transistor. Click once to place the layer and second time to attach the Vdd label. Repeat the aboe procedure to attach the gnd label on the metal1 layer below the n-type transistor. 1he Pin type must be same as the layer on which they are place. Click on the Sae button or go to Design Sae to sae the layout. Run the DRC again and i any design rule iolations occur, correct them. Repeat this until there are no errors. Ones the DRC is passed, goto VeriyLxtract.
Click on the Set Switches button and select tract_ara.itic_ca., and /ee_tabet._iv_etractea_rier click OK. 1he rest o the inormation in this window should be correct by deault, inish by clicking OK. 1his should create an extracted iew o the inerter layout. Simulation can be perormed on this iew. 1o open the extracted iew, in the library manager window, select the library 1utorial` under library column, inerter` in the cell column, and double click on extracted iew` in the iew column. 1he ollowing window should open.
ivvtatiov
lor the simulations o the designs we use the Analog Artist Lnironment tool. In the Virtuoso Layout Lditing window o the extracted iew, start by going to 1oolsAnalog Lnironment. 1his will open the Airma Artist Circuit Design Lnironment simulation window, which is as shown below
1he design should be set to the right Library, Cell and View.
Now go to SetupSimulator,Directory,lost.
lrom the window that opens up select the simulation type as spectreS rom the drop down menu. linish by clicking OK. 1hen go to SetupStimulusLdit Analog. lrom window that opens up choose the radio button graphical and click OK
The window shown below opens. This is the window in which the stimulus to the inverter is defined. Observe that the inputs defined in our layout are the entries in this window.
Click on Oll IN,gnd! Voltage dc, in the text box. Change the lunction to a pulse. And enter the pulse parameters as shown and click the change button. Obsere the input IN change rom o to on.
Now select and enable the Vdd input, gie it a dc alue o 5V and click the change button. Obsere Vdd change rom o to on. linish by clicking OK. Similarly gie gnd a dc alue o 0.
Next we hae to gie the type o analysis to be perormed. Let us perorm a transient analysis or 20ns. So go to AnalysisChoose or click the second button on the right o the window. Click the transient analysis radio button and enter the stop time as 20n. linish by clicking OK.
Now we hae to choose the outputs to be plotted in the waeorm iewer. Go to Outputs1o be plottedSelect on schematic. 1hen the editor window automatically comes into ocus. Click on the polysilicon layer or input and metal layer or output. Notice that these metal layers are highlighted. Go back to the Analog Artist Lnironment window and now there are two entries in the output section o the window. 1hese are the signals that will be displayed. 1o start the simulations click on the button showing the traic light ,with green,. Ater simulations are done the waeorm window opens and displays the signals IN and OU1 as shown.
Click on this button Switch Axis mode in the waeorm iewer to display the waeorms separately. \ou can use the crosshair to make measurements on the waeorms. 1hey can be obtained by clicking the buttons Crosshair marker A, Crosshair marker B or using the hot keys a and b.
1he netlist generated by the simulator can be iewed by going to SimulationNetlistDisplay linal Netlist It is a good idea to sae the state o simulation, i you want to redo any o the simulations without haing to re-enter eerything rom scratch. 1o sae the current state o the simulation, in the Analog Artist Lnironment window go to SessionSae state. In the window that opens, enter the name or the state o simulation to be saed.
1o redo a saed simulation, ollow this procedure. \hen the Analog Artist Lnironment window opens, go to SetupSimulation.
lrom the window that opens select the simulation type as SpectreS rom the drop down menu. linish by clicking OK. 1hen go to SessionLoad state. A window as ollows opens.
lrom this select the state you want to load and inish by clicking OK. 1he preiously saed state o simulation is loaded and you can make any changes i needed and continue with simulation.