This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
vlsi_course [2019/01/10 21:38] vsaxena [Simulation Models] |
vlsi_course [2019/04/13 01:55] (current) vsaxena |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| =====Cadence Setup for ECE 445: Introduction to VLSI Design ===== | =====Cadence Setup for ECE 445: Introduction to VLSI Design ===== | ||
| - | Login to the ENGR server **ece-ecegrad.ece.uidaho.edu** using X2Go+Mate Client. | + | Graduate students login to the server **ece-ecegrad.ece.uidaho.edu** and undergraduates should log into Graduate students login to the server **ece-ece310.ece.uidaho.edu** using X2Go+Mate Client. |
| + | |||
| Linux and Mac users can use ssh instead of the X2Go client. They can do this with | Linux and Mac users can use ssh instead of the X2Go client. They can do this with | ||
| Line 19: | Line 21: | ||
| <code> | <code> | ||
| export CDSDIR=/usr/local/cadence/installs/IC617 | export CDSDIR=/usr/local/cadence/installs/IC617 | ||
| + | # NCSU CDK specific | ||
| + | export SPECTRE_DEFAULTS=-E | ||
| + | export CDS_Netlisting_Mode=Analog | ||
| + | export CDS_LOAD_ENV=CWDElseHome | ||
| export CDK_DIR=/home/vsaxena/pdk/ncsu-cdk-1.6.0.beta | export CDK_DIR=/home/vsaxena/pdk/ncsu-cdk-1.6.0.beta | ||
| </code> | </code> | ||
| Line 26: | Line 32: | ||
| source .bashrc</code> | source .bashrc</code> | ||
| - | 1) Copy the .cdsenv file into your home directory. | + | 1) **Copy the .cdsinit, .cdsenv, .simrc and display.drf files** into your work directory i.e. ece445. |
| <code> | <code> | ||
| - | cp /home/vsaxena/pdk/ncsu-cdk-1.6.0.beta/cdssetup/.cdsenv .cdsenv | + | cp /home/vsaxena/pdk/ncsu-cdk-1.6.0.beta/cdssetup/cdsinit .cdsinit |
| + | cp /home/vsaxena/pdk/ncsu-cdk-1.6.0.beta/cdssetup/cdsenv .cdsenv | ||
| + | cp /home/vsaxena/pdk/ncsu-cdk-1.6.0.beta/cdssetup/simrc .simrc | ||
| + | cp /home/vsaxena/pdk/ncsu-cdk-1.6.0.beta/cdssetup/display.drf display.drf | ||
| </code> | </code> | ||
| Line 50: | Line 59: | ||
| </code> | </code> | ||
| - | 3) If you have existing files, save backups of the files below | ||
| - | <code> | ||
| - | cp .cdsinit .cdsinit_bkp | ||
| - | cp cds.lib cds.lib_bkp | ||
| - | </code> | ||
| - | |||
| - | 4) Copy .cdsinit from the NCSU setup directory using the command below to your into ece445 directory | ||
| - | |||
| - | <code> | ||
| - | cp /home/vsaxena/pdk/ncsu-cdk-1.6.0.beta/cdssetup/.cdsinit .cdsinit | ||
| - | </code> | ||
| <note warning>Make sure you have this .cdsinit file copied into the ece445 folder.</note> | <note warning>Make sure you have this .cdsinit file copied into the ece445 folder.</note> | ||
| - | 5) If you dont have an existing cds.lib file, then copy the cds.lib file using the following command and skip to the next step: | + | 3) If you don't have an existing cds.lib file, then copy the cds.lib file using the following command and skip to the next step: |
| <code> | <code> | ||
| Line 72: | Line 70: | ||
| <note warning>Please note that we are using 0.5um On-Semi CMOS models while using NCSU libraries. This may be different from some of the tutorials and setup used in other courses.</note> | <note warning>Please note that we are using 0.5um On-Semi CMOS models while using NCSU libraries. This may be different from some of the tutorials and setup used in other courses.</note> | ||
| - | + | 4) Create a symbolic link to CMOSEdu examples in your home directory | |
| - | 6) You should be ready to start Cadence Virtuoso now! | + | |
| <code> | <code> | ||
| - | virtuoso & | + | cd |
| + | ln -s /home/vsaxena/CMOSEdu | ||
| </code> | </code> | ||
| - | ===== CMOS Book Examples ===== | + | |
| - | * You can add CMOS book examples by adding the following line to your cds.lib file. These are already included in the cds.lib file that you've already copied in Step 5. | + | 5) You should be ready to start Cadence Virtuoso now! |
| <code> | <code> | ||
| - | SOFTINCLUDE /home/vsaxena/CMOSedu/cds.lib | + | virtuoso & |
| </code> | </code> | ||
| - | * You can comment this line in the cds.lib file if you don't want to clutter up your Library Manager view with the examples. | + | ===== Cadence Tutorials ===== |
| - | <note warning>Please do not re-download Prof Baker's CMOS Book examples from http://cmosedu.com and/or install the NCSU PDK as directed in the CMOSEdu tutorials. They are already installed and available in your course directory and can be seen in the Cadence Library Manager.</note> | + | Cadence tutorials using On Semi C5 process are posted [[http://lumerink.com/courses/ece445/Cadence_Tutorials/cadence_tutorials.htm|here]]. |
| + | |||
| + | You can find the related Cadence libraries on the ece-ecegrad sever in my directory at /home/vsaxena/ece445/ | ||
| + | as **Tutorial_1** and **Layout_tutorial** libraries. | ||
| - | ==== Running Book Examples ==== | ||
| - | Basic instructions for simulating CMOS book examples using Cadence Spectre (refer to the Cadence [[http://cmosedu.com/videos/cadence/cadence_videos.htm|Tutorials]] for details): | ||
| - | * With Cadence running use the Library Manager to open the schematic view of a cell for simulation using Virtuoso Schematic Editor (SE) | ||
| - | * In the menu of the SE Window select Launch -> ADE L to open the Virtuoso Analog Design Environment (ADE) Window. Use the ‘Always’ option when prompted for license. | ||
| - | * In the ADE Window’s menu select Setup -> Simulator/Directory/Host… and then set the Simulator menu item | ||
| - | * For most simulations Spectre will be used, if UltraSim or some other simulator is used it will be noted on the schematic. In your environment, Spectre should already be set up as the default simulator. | ||
| - | * Next, again in the ADE Window’s menu, select Session -> Load State | ||
| - | * set the Load State Option to **Cellview** and press OK | ||
| - | * Finally, in the ADE Window’s menu select Simulation -> Netlist and Run (or just hit the green button) to simulate. | ||
| ===== Simulation Models ===== | ===== Simulation Models ===== | ||
| Line 117: | Line 108: | ||
| | | ||
| - | ==== C5 Design Rules and Process Information ==== | + | ===== On Semi C5 Design Rules and Process Information ===== |
| - | * **Design information** for the C5 0.5u process is available [[http://mosis.com/vendors/view/on-semiconductor/c5|here]]. | + | * **Design information** for the C5 0.5u process is available [[https://www.mosis.com/vendors/view/on-semiconductor/c5|here]]. |
| * Use the MOSIS Scalable CMOS (SCMOS) **SUBM** **design rules** for your ece510 layouts. The design rules can be found in this [[http://mosis.com/files/scmos/scmos.pdf|document]]. Note that the design rules are given in terms of lambda (=0.3u) while Cadence Virtuoso uses absolute values without any scaling. Thus in your layouts, multiply all design rule numbers by 0.3u for final layout dimensions. Eg. the minimum N-well width of 12 translates into 12*0.3u=3.6u in Virtuoso layout. | * Use the MOSIS Scalable CMOS (SCMOS) **SUBM** **design rules** for your ece510 layouts. The design rules can be found in this [[http://mosis.com/files/scmos/scmos.pdf|document]]. Note that the design rules are given in terms of lambda (=0.3u) while Cadence Virtuoso uses absolute values without any scaling. Thus in your layouts, multiply all design rule numbers by 0.3u for final layout dimensions. Eg. the minimum N-well width of 12 translates into 12*0.3u=3.6u in Virtuoso layout. | ||
| Line 133: | Line 124: | ||
| <note important> In this directory, you should see 5 files corresponding to each of the corner models: (tt) typical, (ss)slow-slow, (ff) fast-fast, (sf) slow_fast and (fs) fast_slow. Point to the models in these files for your corner sims. | <note important> In this directory, you should see 5 files corresponding to each of the corner models: (tt) typical, (ss)slow-slow, (ff) fast-fast, (sf) slow_fast and (fs) fast_slow. Point to the models in these files for your corner sims. | ||
| </note> | </note> | ||
| + | |||
| + | ===== CMOS Book Examples ===== | ||
| + | * You can add CMOS book examples by adding the following line to your cds.lib file. These are already included in the cds.lib file that you've already copied in Step 5. | ||
| + | |||
| + | <code> | ||
| + | SOFTINCLUDE /home/vsaxena/CMOSedu/cds.lib | ||
| + | </code> | ||
| + | |||
| + | * You can comment this line in the cds.lib file if you don't want to clutter up your Library Manager view with the examples. | ||
| + | |||
| + | <note warning>Please do not re-download Prof Baker's CMOS Book examples from http://cmosedu.com and/or install the NCSU PDK as directed in the CMOSEdu tutorials. They are already installed and available in your course directory and can be seen in the Cadence Library Manager.</note> | ||
| + | |||
| + | ==== Running Book Examples ==== | ||
| + | Basic instructions for simulating CMOS book examples using Cadence Spectre (refer to the Cadence [[http://cmosedu.com/videos/cadence/cadence_videos.htm|Tutorials]] for details): | ||
| + | * With Cadence running use the Library Manager to open the schematic view of a cell for simulation using Virtuoso Schematic Editor (SE) | ||
| + | * In the menu of the SE Window select Launch -> ADE L to open the Virtuoso Analog Design Environment (ADE) Window. Use the ‘Always’ option when prompted for license. | ||
| + | * In the ADE Window’s menu select Setup -> Simulator/Directory/Host… and then set the Simulator menu item | ||
| + | * For most simulations Spectre will be used, if UltraSim or some other simulator is used it will be noted on the schematic. In your environment, Spectre should already be set up as the default simulator. | ||
| + | * Next, again in the ADE Window’s menu, select Session -> Load State | ||
| + | * set the Load State Option to **Cellview** and press OK | ||
| + | * Finally, in the ADE Window’s menu select Simulation -> Netlist and Run (or just hit the green button) to simulate. | ||
| + | |||
| | | ||