Cadence Virtuoso Schematic- Legacy

Before you Begine: Read FAQ's and Do's and Don'ts!

To start Cadence:

  • Login to the Linux System in EECH 107.

  • Open a terminal window.

  • Alternately, if you are logging in from a Windows system,

  • Click on the Start>Programs>XWin 32 5.4>X-win 32

  • Then, open Putty (Start> Programs > Putty ) and enter a remote login rcXXxece107.managed.mst.edu where XX can be any number from 05 to 18

  • On the Putty left hand menu, navigate to Connections -> SSH -> X11 and select enable X11 forwarding.

  • Navigating back to the main screen on Putty select Open to connect

  • Go to your Home Directory and create a new directory just for this Cadence library using "mkdir filename". This will be the directory for the NCSU library and is only to be used for that library.

  • Navigate to the new directory.

  • In the command prompt, type: ncsu.sh &

This starts cadence in the background. You will see the Command Interpreter window as shown in the following figure.

Creating a New library

    • Now you need to create a new library (to contain your circuits).

    • Go to File > New > Library. Then fill in the name of the new library (e.g. CpE_311_AMI06) in the dialog window, and leave the Path in default directory (this will create the library in the directory where you started virtuoso, you could also choose to set a path if you wanted another directory).

    • Click on Do Not Need Process Information. And then click OK.

    • Now the newly created library should appear in the Library Manager window. Use this library to create all your designs for this lab.

Attaching the technology library

    • Now go back to the CIW and select Technology File Manager from the Tools menu.

    • Select Attach

    • We will be using NCSU_TechLib_ami06 for this and all of our labs. Select it and hit OK

Creating Schematic

  • Here, we will create a simple nmos inverter circuit.

    • Go to File > New > Cellview. Choose CpE_311_AMI06 library in the Library options, then type in nmos_inv as the cell name and select schematic as the type. Click OK.

    • This will open the Virtuoso Schematic Editor Window.

    • To place components, Go to Create > Instance. You may notice letters by some of these menu choices. Rather than clicking through all the menus, you can just hit that button on the keyboard to the same effect. These are called hot-keys. In the future, you can press i in order to insert an instance.

    • A Command Browser window appears. In this window, select NCSU_Analog_parts under Library pull down menu. Next click on N_Transistors and then select NMOS. The window should look as shown in the figure below.

    • To place the instance, click the left mouse button to put the instance at the place desired. Press <Esc> to return to a normal cursor after you have finished placing all the transistors you want.

  • To set the property of the instance that you just placed or any object in your schematic or layout design, select the object by clicking on it and then go to Edit >properties>Object (or type q). An object properties editing form will pop up. You can change the width or length of the gate to the desired value. In this case, we use the default value.

  • Following the same technique, we can add an instance of a PMOS.

  • To connect any electrically connected devices, click on Create> wire(narrow) in the schematic window (or type w). Click at the terminal where the wire starts and click at the terminal where the wire ends, a wire will be automatically added. If you are not satisfied with the automatic wiring, you can remove the wire and reroute it manually. This time, instead of clicking at the terminal where the wire ends directly, you can click the left mouse button whenever you want to change the wire direction. If you want to stop the wire somewhere instead of connecting it to a terminal, double click your left mouse button and a dangling wire is created.

  • To create pins and labels, we have to specify its input/output behavior. We can achieve this through adding the pins for its input and output. For some global wires (like VDD and GND), we can simplify the I/O of the schematic by adding a label to each one of them. Click on Create >Pin (or type p) in the schematic window, the following dialogue box would appear.

  • For an input pin, choose the Direction to be INPUT. Specify the Pin Names (Vin in the example). Activate the schematic window and click on the left mouse to put the pin. Similarly we can put an output pin (Vout) to the output of the cell.

  • Now we also need to add power supply and ground. First let's add ground by clicking on Instance again and then choosing Supply_Nets and then gnd in the component browser window, then place one gnd below the n transistor. Similarly add one vdd above the PMOS.

  • The final schematic should look something like this:

  • After the design has been completed, click on Check and Save button to check and save your designs. Check the main virtuoso window to see if there are any errors in your designs. If there any errors in the design, go back to the schematic and correct the errors.

Hot Keys :

i: Add instances

q: Edit properties

u : undo

w: Add wires

p: Add a pin

l: Label a wire

Shift + Z: Zoom out

Ctrl + Z: Zoom in

f: fit the schematic in your schematic window

Prepared by: Sambhav Kundaikar; Updated by Travis Schulze.