Skip to main content

Cadence ~~


As modern technology goes on increasing the size of components used in it goes on decreasing. that is, we have VLSI and then AVLSI.

In engineering studies we use a tool called CADENCE that is used for this VLSI designing and simulation.

It's quite difficult to be honest at first, but after 2 years in it, the following steps basic one's ofcourse might help you out surviving in VLSI practicals .. :)

Running the Cadence tools
Log in to your UNIX/LINUX 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
>>csh
>> source cshrc
>>cd cadence_ms_labs_613
>>virtuoso

The command will start Cadence and after a while you should get a window with the
“Virtuoso@ 6.1.5”, also called Command Interpreter Window (CIW) as below:



now :

Go to file -> New -> Library from the file menu
You
will see a “New Library” window (Fig 3). 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 “Virtuoso”, you could also choose to set a path if you wanted another directory). Click on
“Attach to existing tech library” and click OK.




Once you have created your library. Let's start making a simple schematic file.

Go to File-> New ->Cell View



Wait for a while. “The schematic window will appear. You should get the “Virtuoso Schematic
Editing” window as shown below (Fig 5). 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 manuals.




So here we are ready with the environment we have to create our circuit diagram to implement any circuit.

Adding a component.

press i or 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



Now click on the Browse. Another window called “Library Browser – Add Instance” (Fig 6) 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 (Fig 7).
Library =>gpdk180
Cell => pmos
View => symbol



choose every component you want to add from this library and note always click on symbol and then add it.

 

Making a Symbol From the Schematic

Follow the steps as given below:
Once you are done with your schematic and you want to make a symbol representing the whole schematic, do the following

1. Go to create -> Cellview -> From cell view
2. Then here only change the symbol name .. the name with which the symbol is going to be saved
3. note the symbol always gets saved in the library you are working and under the cell name of the schematic
4. once you have change the symbol name, click ok
5. The you'll get a window showing top,left, up and down pins
6. Here you can arrange the way you want the pins in schematic to be displayed ..e.g Vdd on top and Gnd at below
7. Note: Also if you have multiple pins of same name coming you can delete them too ( no worries  :) )
8. Then click ok
9. A new window appears where you have a square box with your pins as per you define them and a Partname in middle
10. You can change the Part name by double-click on it. Once you are done, just go to File-> Save Symbol

YOU ARE DONE CREATING A SYMBOL :)

You can add this symbol in any other schematic ...
Click i --> Go to your library where the schematic of your symbol is saved --> then click on the cellview name i.e. schematic name and then --> On the right hand side choose the symbol you created  --> That's it :)

BIG NOTE: While doing a symbol always replace your Vdd and Gnd by Pins ... click P --> Name it as VDD/GND ... Input ... And don't forget to make it a POWER function instead the default SIGNAL option.  
 

THE "ADE L" :

So after setting up your schematic and getting done with the symbol, you'll surely like to see whether it is working as per you design or not.. ;)

Cadence provides us with a powerful tool named as ADE --> ANALOG DESIGN ENVIRONMENT

http://nano.wiki.ifi.uio.no/images/thumb/4/4a/Cadence_Starting_LayoutGXL.png/600px-Cadence_Starting_LayoutGXL.png 
  
So above is the window that you see when you are in schematic mode, now go to Launch --> click on ADE L

After clicking on it the following window will appear ..
http://www.bioee.ee.columbia.edu/courses/cad/html/ade.png 

 Here is where you'll setup the things you need to see at the output screen.

Follow the steps below to do the simulation:

1. Go to setup --> Stimuli --> following window appears

http://www.cse.buffalo.edu/~shixiong/CadenceTutorial_files/image032.jpg  

 2. Here we are having inputs and Global Sources , the inputs will contain all the pins that you have assigned as inputs and global sources are the Vdd and Gnd pins in your schematic.
 3. As seen in the pic above, you have enable the pin --> Choose the type of function you want , e.g. pulse, bit , dc etc and type of signal whether current or voltage.
4.  Do this for all the inputs 

NOTE: When you are choosing function as pulse always the Period > Pulse width 

5. In Global source you'll get only one pin as Vdd/Gnd .. choose dc function and put the required value (usually 1.8V )
6. So after you are done with this , click apply --> ok
7. Then you need to select the outputs that need to be plotted in the simulation --> Go to Outputs in the ADE L window --> To be plotted --> Select on schematic.So, here just select the pins you want to see in the simulation either be inputs or outputs.
8.  After this you need to setup the analysis part .. meaning how much you want the simulation to run and all the things like whether you want transient analysis or something else. ( SOMETHING LIKE THIS )
 
http://eda.engineering.wustl.edu/wiki/images/7/79/Tutorials-Cadence-Schematic_TestInv_Transient3.gif 
9 . In tran don't forget to Choose Moderate and Enable it.
10. the final window will look like below all  you need now is click on the Green Button that runs the Simulation :) YOU'RE DONE

BIG NOTE: Always save your states before exiting the ADE L , go to Session --> Save state the following window will appear .. just browse where you want to save the states and always click on select all at the bottom so all the settings are saved -- > Click OK.. Also you can load these states any time following Session --> Load state --> Browse --> Select the state --> OK

http://eda.engineering.wustl.edu/wiki/images/d/db/Tutorials-Cadence-SaveState-002.png

Comments

  1. thanks a lot..that was very helpful

    ReplyDelete
  2. Nice work Prasad. Looking forward to the updates !!!

    ReplyDelete
  3. Thanks malhar , will sure add more things here :)

    ReplyDelete

Post a Comment

Popular posts from this blog

Microsoft BizTalk Server | Interview Questions | Set 1

Hi Folks, Below is list of Some important questions that you may want to go through for a Biztalk developer role opening. Sharing the set 1 now just with questions. Will be sharing more soon. What is BizTalk Server? List down components of Biztalk server Biztalk architecture how is it? Types of schemas Document schema vs Envelope schema How to create envelope schema and its properties What is Property schema , how to create and its basic properties Purpose of using Flat file schema How to create a Flat file schema What do you mean by Canonical Schema What's is a message type Can a schema be without namespace What is min max and group min max property in a schema Explain Block default property Property promotion and types Distinguished field vs Promoted field Is it possible to promote XML record of complex content What is <Any> element in a schema Max length Promoted field and distinguished field What's Auto mapping and Default mapping  Can w

Microsoft BizTalk Server| Interview Questions| Set 2

Hi folks, We are back with set 2 of Biztalk server developer Interview Questions. Let's have a look then. State and explain stages of receive and send pipeline. Difference Between XML receive pipeline and passThru pipeline. State minimum components required in a pipeline. State maximum components used in a pipeline. Which property is required using Flat file dissambler and what happens if it is not set. What are the base types of pipeline components. What Interfaces are used for developing a general custom component pipeline. What Interfaces are used for implementing a dissambler custom pipeline component. How to execute a pipeline in an Orchestration. How to set properties of an adaptor dynamically in an Orchestration. What is message box and its purpose in Biztalk server. Types of subscription in Biztalk. Is it possible to have more than one port with same name. In which state can a send port do not subscribe to a message. Why multiple receive locations can

Microsoft C# - Basics

What is C#? We'll Take this definition from Wiki: Basic Points we should cover up: We would be learning following points in this Post: Writing and Reading from Console Variables, Data Types and Conversions Operators Conditions Passing Values to methods Handling Nullables Arrays, String, Struct and Enums Let's Code: The below Program will help you understand the basics of the above points listed. Go through each region separately and get to know the syntax of C#. We Believe, it's always better to Code and Learn than Read and Learn! If you want theoretical help related the basics, please visit here: C# Basics   Hope this helps to get you to start off with C# Coding! We would be adding more to this soon! And don't forget to visit  Joodle  to compile your codes online. Thanks! 😀