=====Cadence Setup for CPEG 424/624: Analog IC Design =====
Login to the ECE Linux VM **cpeg424.ece.udel.edu** using the **VNC Client**.
==== Setting up the NCSU PDK ====
1) Open the ''.bashrc'' file in your home directory. If it doesn't exist already, then create one using a text editor such as gedit
cd
gedit .bashrc &
Add the following lines to the ''.bashrc'' file in your home directory.
export CDSDIR=/software/Cadence/IC618
export CDK_DIR=/usa/vsaxena/pdks/ncsu-cdk-1.6.0.beta
export MMSIM_PATH=/software/Cadence/SPECTRE191
export PATH=$PATH:$CDSDIR/tools/bin
export PATH=$PATH:$CDSDIR/tools/dfII/bin
export PATH=$PATH:$CDSDIR/tools/lib/64bit
export PATH=$PATH:$MMSIM_PATH/bin
export PATH=$PATH:$MMSIM_PATH/tools/bin
export PATH=$PATH:$MMSIM_PATH/tools/lib
# Add this line, otherwise LVS will not work
export CDS_Netlisting_Mode="Analog"
# Add this line so that ADE works on our 64-bit machine
export CDS_AUTO_64BIT=ALL
Save the above file. Then in the command line, refresh the bash shell
source .bashrc
**Make sure the Cadence netlisting is set to Analog in your .bashrc as shown above, otherwise LVS will not work correctly!**
2) Copy the ''.cdsenv'' file into your home directory. Please **be mindful of the dot**, i.e. ".", in the filename
cp /usa/vsaxena/pdks/ncsu-cdk-1.6.0.beta/cdssetup/cdsenv .cdsenv
3) Create and descend into your course work directory, e.g. ''analog_course''. Better create a new directory for every course you take.
cd
mkdir analog_course
cd analog_course
4) If you have existing files, save backups of the files below, otherwise skip this step
cp .cdsinit .cdsinit_bkp
cp cds.lib cds.lib_bkp
5) Copy the ''.cdsinit'' from the NCSU setup directory using the command below to your into the ''analog_course'' directory. Again, **be mindful of the dot**, i.e. ".", in the filename
cp /usa/vsaxena/pdks/ncsu-cdk-1.6.0.beta/cdssetup/cdsinit .cdsinit
**Make sure you have this ''.cdsinit'' file copied into the analog_course folder and not your home directory.**
6) If you don't have an existing ''cds.lib'' file, then copy the ''cds.lib'' file using the following command:
cp /usa/vsaxena/pdks/ncsu-cdk-1.6.0.beta/cdssetup/cds.lib cds.lib
7) You should be ready to start Cadence Virtuoso now! Always start virtuoso from your analog_course directory (and not the home directory)
virtuoso &
**Always start virtuoso from your analog_course directory (and not your home directory).**
**This completes your Cadence setup for the CPEG 424/624 course.** You can move on to the [[cad_tutorials|Cadence Video Tutorials]] now.
-----
-----
===== Simulation Models =====
=== 180nm CMOS Models ===
180nm CMOS models are located in the following directory on the VM server.
/usa/vsaxena/pdks/ncsu-cdk-1.6.0.beta/models/spectre/standalone
**tsmc018allModels.scs** : 180nm CMOS models with tt, ss, sf, fs and ff process corners.
=== 1um and 50nm CMOS Models ===
The 1um and 50nm CMOS models are located in the following directory on the VM server.
/usa/vsaxena/pdks/models/
**cmos_1u.txt:** 1um CMOS models
**cmos_50n.txt:** 50nm CMOS models
-----
===== Process Design Rules =====
We are using a **0.18 micron 6 Metal 1 Poly** (1.8V) CMOS technology for chip layout. In PDK specific terms, we will use **SUBM_DEEP** design rules with lambda(λ) equal to 0.09 micro meters with Lmin=2λ. Note that this λ is not the channel length modulation parameter!
The design rules are available as a {{ :wiki:scmos_180nm.pdf | PDF}} and also in [[https://www.eecis.udel.edu/~vsaxena/Cadence/SCMOS_rules/MOSIS_Layer_Map_for_SCN6M.html|Web Browsable Format]].
Note that the design rules are given in terms of λ while Cadence Virtuoso uses absolute values without any scaling. Thus in your layouts, multiply all design rule numbers by 0.09u for final layout dimensions. E.g. the minimum N-well width of 12 translates into 12*0.09u=1.08u in Virtuoso layout.
-----
===== Process Characterization Results =====
The process characterization results are available as: {{ :wiki:tsmc018_info.pdf |}}. You can find numerical values for the various resistances and capacitances in the process.
-----
-----
===== CMOS Book Examples =====
If you are interested, you may add Prof. Baker's CMOS book examples by adding the following line to your cds.lib file
SOFTINCLUDE /usa/vsaxena/CMOSedu/CMOS_cds.lib
**Note:** 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.