Archive for the ‘Cadence’ Category

Environment variables:

AMSPath=__install_dir__/IBM_PDK
setenv SPECTRE_DEFAULTS -E
setenv CDS_Netlisting_Mode Analog

Must put a copy of display.drf in the run directory or all layers will appear yellow. Use $AMSPath/bicmos8hp/V1.0.3.3HP/cdslib/bicmos8hp/display.drf

Sample .cdsenv file is found in $AMSPath/bicmos8hp/V1.0.3.3HP/cdslib/examples/.cdsenv Cadence always reads the .cdsenv file from the current working directory. If want to set things up somewhere else, use CDS_LOAD_ENV=CSF and put locations in setup.loc in __toolname__/.cdsenv

Copy the $AMSPath/bicmos8hp/V1.0.3.3HP/cdslib/examples/.cdsinit to the user’s home directory. This will put the IBM_PDK menu choice on the icms window and will setup keybindings.


IHP had provided us with an entire setup for using the Cadence tools. Now that we’re switching to the IBM process, we have lost the setup. So, in order to make the IHP setup available to everyone, I have copied the files provided by IHP to /net/sw/cad_env.

setenv EDG_CDS_ENV /net/sw/cad_env

Then, in each user’s .cdsinit file, put:

EDG_CDS_ENV =getShellEnvVar( "EDG_CDS_ENV" )
loadi(strcat(EDG_CDS_ENV "/env/cdsinit"));
DENSITY_PERCENT=t

This will load the cdsinit file in /net/sw/cad_env/env/cdsinit. In this env directory are a bunch of .il files that setup the keybindings that we want to use. IHP provided a lot of other stuff as well, but I deleted everything but the keybindings because it appeared that most of the other stuff was more geared to the IHP libraries.

Now that I’ve actually read the Cadence instructions, the site initialization file in _cds_install_dir_/local/.cdsinit should set all the defaults for the site. For us, this would be /net/sw/cad.rh/ic/ic5141/tools/dfII/local/.cdsinit. To set this up, simply copy the _cds_install_dir_/samples/local to _cds_install_dir_/local and rename cdsinit to .cdsinit. That’s it.

When configuring the ic5141 package from Cadence, it asks if you would like to enter an LDV installation directory. We did not get an LDV package to install from Cadence. I’m guessing that this is because they changed the name of the package or incorporated it into another package. When I selected to add another package, it asked for the path as provided by the ncroot command. So I searched the entire cad.rh directory for ncroot and found it in the IUS package. I tried to use the ius directory, but it failed. I think this is because I hadn’t yet configured the ius package.

After configuring the ius package, I could go back and configure again the ic package. Now, when it asks for and LDV path, I added /net/sw/cad.rh/ius/ius55 and it accepted it. I could then also compile all the libraries included in the ic package.

On the HP, here are the environment variables that are currently set:


# Cadence
export CDS_INST_DIR=/net/sw/cad/ic/ic5141
export CDS_LIC_FILE=5280@mentor
export CDSDOC_PROJECT=/net/sw/cad
export LD_LIBRARY_PATH=/net/sw/cad/ic/ic5141:/net/sw/cad/ic/ic5141/tools/lib:$LD_LIBRARY_PATH
export SHLIB_PATH=$LD_LIBRARY_PATH
export CDSHOME=/net/sw/cad/ic/ic5141
#export LDVHOME=/net/sw/cad/ldv51
export ICCHOME=/net/sw/cad/icc/icc11241
export ICHOME=/net/sw/cad/ic/ic5141
export SOCHOME=/net/sw/cad/soc/soc42
export SPRHOME=/net/sw/cad/spr/spr50
export ASSURAHOME=/net/sw/cad/assura/assura314

In the user’s .tcshrc file, the following are set:

# For Cadence
setenv AMSHOME /net/sw/cad/ldv51
setenv CDSHOME /net/sw/cad/ic5141
setenv LD_LIBRARY_PATH ${AMSHOME}/tools/lib:${CDSHOME}/tools/lib
#setenv MANPATH ${MANPATH}:${CDSHOME}/tools/dfII/man

setenv CDS_TEXT_EDITOR dtpad
setenv CDS_Netlisting_Mode “Analog”

Some of these settings need to change for linux, like the text editor and directory locations. I need to come up with a way to generate files that can be sourced which setup these variables for each Cadence package.

Now installing all the Cadence software on our sw disk partition. Since I’m not sure exactly which programs Tang is using right now, I’m installing everything. Hopefully, I’ll be able to set everything up so that it works as it does on the HPs. I have changed all users shells to tcsh because that works better with Cadence than bash.

Software is located in: /net/sw/cad.rh According to the Cadence website, I should have been able to install packages with the same name in the same directories. But, I seem to recall trying that a while back and it didn’t work properly. I decided that I’d just make a new directory for the RedHat files. Then, when we finish with the HPs, I can just delete the old /net/sw/cad directory and not affect the RedHat stuff at all.

We currently use the bash shell for just about everyone. But when calling Cadence for help, they are only able to give help with tcsh. So, find tcsh for HP-UX and install it to the hps. Also make sure that the new linux machines have tcsh installed.

Tcshrc also required libiconv, which I also downloaded from the HPUX Porting Centre.

Picked ic5141 as first Cadence package to install on linux. First I installed IScape and then used the old control file from Cadence to pick the packages. None of the packages listed are specifically for RHEL3, but ic5141 is for RHEL2.1, which I figure is close enough.

After installation, I started the program. I got one error message, but it looks like it’s running ok.

Environment variables in /etc/profile:
export CDS_INST_DIR=/sw/cad
export CDS_LIC_FILE=5280@mentor
export CDSDOC_PROJECT=/sw/cad
export LD_LIBRARY_PATH=/sw/cad
export SHLIB_PATH=$LD_LIBRARY_PATH
export CDSHOME=/sw/cad
export ICHOME=/sw/cad

Added to PATH:
/sw/cad/tools/bin:/sw/cad/tools/dfII/bin