Cadence 6.1 Setup: Difference between revisions

From VLSI
Jump to navigation Jump to search
Taoc (talk | contribs)
Radodge (talk | contribs)
m Added tsmc's 20um model libraries to the spectre model libraries string
 
(9 intermediate revisions by 4 users not shown)
Line 1: Line 1:
==Cadence 6.15 Setup==
==Cadence 6.18 Setup==
This tutorial is designed to help students set up their accounts in order to run Cadence 6.15 with the NCSU Cadence Design Kit.
This tutorial is designed to help students set up their accounts in order to run Cadence 6.15 with the NCSU Cadence Design Kit.


Line 19: Line 19:


<blockquote><code><big><pre>
<blockquote><code><big><pre>
SPECTRE
IC
IC
MMSIM
SIGRITY
MODUS
GENUS
CALIBRE
CALIBRE
ASSURA
QUANTUS
EDI
INNOVUS
 
</pre></big></code></blockquote>
</pre></big></code></blockquote>


Line 29: Line 34:




*<b>Creat a .bashrc File</b>
*<b>Creat a ~/.bashrc File</b>
:*You will need to create a ~/.bashrc file which contains the following 3 lines:
:*You will need to create a ~/.bashrc file which contains the following 3 lines:
<blockquote><code><big><pre>
<blockquote><code><big><pre>
Line 77: Line 82:
The following steps should be taken for <i>every</i> new project.
The following steps should be taken for <i>every</i> new project.


*Creat a Project Directory
*Create a Project Directory
**It is best to organize your work into multiple directories with each directory being dedicated to a specific class or research project. We will create a new directory where all of our libraries will be stored. Type the following lines at the command line:
**It is best to organize your work into multiple directories with each directory being dedicated to a specific class or research project. We will create a new directory where all of our libraries will be stored. Type the following lines at the command line:


Line 84: Line 89:
cd <proj dir>
cd <proj dir>
</pre></big></code></blockquote>
</pre></big></code></blockquote>


*You must now copy some Cadence configuration files into your newly created project directory. You will need to copy several files by typing the following commands at the prompt:
*You must now copy some Cadence configuration files into your newly created project directory. You will need to copy several files by typing the following commands at the prompt:
Line 94: Line 100:
</pre></big></code></blockquote>
</pre></big></code></blockquote>


*You will need to edit your cds.lib file in order to add the analogLib. Using a text editor open the cds.lib file and add the following line:
*Now open your ~/<proj dir>/cds.lib file and add the following one line to its contents (remember to press enter at the end of the line).
 
<blockquote><code><big><pre>
<blockquote><code><big><pre>
DEFINE analogLib $IC/tools/dfII/etc/cdslib/artist/analogLib
INCLUDE ~/cds.lib
</pre></big></code></blockquote>
</pre></big></code></blockquote>
:This line will include the contents of our ~/cds.lib file giving us access to the common libraries defined there. Whenever you launch Cadence IC tool from ~/<proj dir> and create any new libraries, this file will be automatically updated to include the definitions of the new libraries.


*Optional (the .cdsenv is set correctly for AMI0.6um CMOS process by default) : you may edit the ~/<proj dir>/.cdsenv file. Using a text editor add the following lines under their respective heading to your .cdsenv file to set the default simulator as Spectre and set the correct model files (TSMC0.25um, TSMC0.35um, and AMI0.5um CMOS) for NCSU PDK.  If there is an existing command of the same type, please alter the existing command.
*Optional (the .cdsenv is set correctly for AMI0.6um CMOS process by default) : you may edit the ~/<proj dir>/.cdsenv file. Using a text editor add the following lines under their respective heading to your .cdsenv file to set the default simulator as Spectre and set the correct model files (TSMC0.25um, TSMC0.35um, and AMI0.5um CMOS) for NCSU PDK.  If there is an existing command of the same type, please alter the existing command.
Line 117: Line 124:
; spectre environment variables
; spectre environment variables
;--------------------------------------------------------------------------
;--------------------------------------------------------------------------
spectre.envOpts    modelFiles      string  "$CDK_DIR/models/spectre/standalone/tsmc25N.m \
spectre.envOpts    modelFiles      string  "$CDK_DIR/models/spectre/standalone/tsmc20N.m \
                                            $CDK_DIR/models/spectre/standalone/tsmc20P.m \
                                            $CDK_DIR/models/spectre/standalone/tsmc25N.m \
                                             $CDK_DIR/models/spectre/standalone/tsmc25P.m \
                                             $CDK_DIR/models/spectre/standalone/tsmc25P.m \
                                             $CDK_DIR/models/spectre/standalone/tsmc35N.m \
                                             $CDK_DIR/models/spectre/standalone/tsmc35N.m \

Latest revision as of 18:40, 1 October 2023

Cadence 6.18 Setup

This tutorial is designed to help students set up their accounts in order to run Cadence 6.15 with the NCSU Cadence Design Kit.

Setup

Once you have successfully logged into your account on a Linux machine, you need to take a few steps before you can start using the IC design tools. The following steps will only need to be perfromed once.

  • Set Bash Shell for your account
    • Login to http://www.asw.iastate.edu
    • Click on: Manage Net-ID (password, email settings, etc.)
    • Click on: View/Edit your (Linux/Unix) login shell
    • Select: "/bin/bash"
    • Click on: Update Shell
    • Click on: Logout
    • Note: These changes will take overnight to take effect. Until that time you will need to set your shell manually by typing bash at the command prompt. You will only need to do this for the first day and then your shell will default to the Bash Shell.


  • Create a ~/.software File
    • The Computer Support Group (CSG) has made a variety of software available for student use. To enable the use of different software tools, every user needs to have a special file, the .software file located in their home directory (i.e., ~/.software). Using a text editor of your choice, create a new file by that name in your home directory, e.g. by entering “gedit ~/.software”, and enter the following lines in that file:

SPECTRE
IC
SIGRITY
MODUS
GENUS
CALIBRE
QUANTUS
INNOVUS

These entries enable the use of the IC design tools with the Spectre circuit simulator. You will need to close your terminal and open a new terminal in order for these changes to take effect. If other tools are needed (i.e., tools for automatic place-and-route) you will have to edit this file and add the appropriate entreis as directed by your TA.


  • Creat a ~/.bashrc File
  • You will need to create a ~/.bashrc file which contains the following 3 lines:
if [ -f /etc/bashrc ]; then
   . /etc/bashrc
fi


  • Create a ~/.bash_profile File
    • Create a file named ~/.bash_profile and add the following lines to that file:
if [ -f ~/.bashrc ]; then
   . ~/.bashrc
fi

PATH=$PATH:$HOME/bin
BASH_ENV=$HOME/.bashrc
USERNAME=""
export USERNAME BASH_ENV PATH DISPLAY
This file is where you will add any other types of customization to your shell, such as aliases etc.


  • Create a ~/cds.lib file
  • The Library Manager keeps information about system-wide libraries as well as your design libraries in a special file called "cds.lib"(the contents of "cds.lib" file are case-sensitive). For better organization purposes, you will create a "cds.lib" in your home directory. This file will include definitions of system wide libraries as well as any library that you would like to be available for all of your projects
INCLUDE /usr/local/cadence/iclocal/local/cdssetup/cds.lib
DEFINE analogLib $IC/tools/dfII/etc/cdslib/artist/analogLib
The first line includes a cds.lib file created by the system administrators from another location on the system. The second line defines a library “analogLib” supplied by Cadence which includesthe basic circuit elements. Except for transistors, most of your schematic components will be instantiated from this library.


  • Open A New Terminal
  • After making sure that these lines are present in the ~/.bashrc, ~/.bash_profile, and ~/.software files, you will need to start a new terminal in order for these changes to take effect. You can do this by typing
bash
  • Or reload the config by typing
source ~/.bashrc

New Project Setup

The following steps should be taken for every new project.

  • Create a Project Directory
    • It is best to organize your work into multiple directories with each directory being dedicated to a specific class or research project. We will create a new directory where all of our libraries will be stored. Type the following lines at the command line:
mkdir <proj dir>
cd <proj dir>


  • You must now copy some Cadence configuration files into your newly created project directory. You will need to copy several files by typing the following commands at the prompt:
cp /remote/ncsu_oa/local/cdssetup/cdsenv ~/<proj dir>/.cdsenv
cp /remote/ncsu_oa/local/cdssetup/cdsinit ~/<proj dir>/.cdsinit
cp /remote/ncsu_oa/local/cdssetup/cds.lib ~/<proj dir>/cds.lib
cp /remote/ncsu_oa/local/cdssetup/display.drf ~/<proj dir>/display.drf
  • Now open your ~/<proj dir>/cds.lib file and add the following one line to its contents (remember to press enter at the end of the line).
INCLUDE ~/cds.lib
This line will include the contents of our ~/cds.lib file giving us access to the common libraries defined there. Whenever you launch Cadence IC tool from ~/<proj dir> and create any new libraries, this file will be automatically updated to include the definitions of the new libraries.


  • Optional (the .cdsenv is set correctly for AMI0.6um CMOS process by default) : you may edit the ~/<proj dir>/.cdsenv file. Using a text editor add the following lines under their respective heading to your .cdsenv file to set the default simulator as Spectre and set the correct model files (TSMC0.25um, TSMC0.35um, and AMI0.5um CMOS) for NCSU PDK. If there is an existing command of the same type, please alter the existing command.
;--------------------------------------------------------------------------
; Analog Artist Simulation Environment Defaults
; FORMAT: tool[.partition] varName type value private {choices, minmax} comment
;--------------------------------------------------------------------------
asimenv.startup       simulator       string  "spectre"

;--------------------------------------------------------------------------
; Graphics Editor and Design Editor Environment Variables
;--------------------------------------------------------------------------
graphic       drfPath string  "/usr/local/cadence/iclocal/local/cdssetup/display.drf"

;--------------------------------------------------------------------------
; spectre environment variables
;--------------------------------------------------------------------------
spectre.envOpts    modelFiles       string  "$CDK_DIR/models/spectre/standalone/tsmc20N.m \
                                             $CDK_DIR/models/spectre/standalone/tsmc20P.m \
                                             $CDK_DIR/models/spectre/standalone/tsmc25N.m \
                                             $CDK_DIR/models/spectre/standalone/tsmc25P.m \
                                             $CDK_DIR/models/spectre/standalone/tsmc35N.m \
                                             $CDK_DIR/models/spectre/standalone/tsmc35P.m \
                                             $CDK_DIR/models/spectre/standalone/ami06N.m \
                                             $CDK_DIR/models/spectre/standalone/ami06P.m"

spectre.envOpts controlMode string "batch"
  • You may also add the following script to setup the default directory to store simulation results.
asimenv.startup       projectDir      string  "~/cadence/simulation"
  • Optional: You may edit the ~/<proj dir>/.cdsinit file to add the following script to set the default editor in Cadence to gedit.
editor="gedit"
  • You are now ready to run Cadence 6.15. You can invoke cadence using the following command:
virtuoso &