Cadence Virtuoso setup: Difference between revisions

From ift
mNo edit summary
No edit summary
Line 81: Line 81:
Include these lines at the bottom
Include these lines at the bottom
  setenv AMS_DIR /path/to/amslib
  setenv AMS_DIR /path/to/amslib
setenv TSMC_DIR /path/to/tsmc
  setenv PATH "${PATH}:${AMS_DIR}/cds/bin"
  setenv PATH "${PATH}:${AMS_DIR}/cds/bin"
  setenv CDS_BIND_TMP_DD true
  setenv CDS_BIND_TMP_DD true
  setenv IUSDIR $CDS_INCV
  setenv IUSDIR $CDS_INCV
  alias ams_cds_start 'ams_cds -tech c35b4 -nologo'
  alias ams_cds_start 'setenv AMS;ams_cds -tech c35b4 -nologo'
alias tsmc_cds_start 'unsetenv AMS;virtuoso &'


 
Save file as cadence_ic_20xx_uib.csh and add/update the symlink
Save file as cadence_ic_20xx_uib.csh
  csh
  csh
  chmod +x /prog/cadence/cadence_ic_20xx_uib.csh
  chmod +x /prog/cadence/cadence_ic_20xx_uib.csh
  source /prog/cadence/cadence_ic_20xx_uib.csh
ln -s /prog/cadence/cadence_ic_20xx_uib.csh /prog/cadence/cadence_init.csh
  source /prog/cadence/cadence_init.csh
Run lmstat to check that it is possible to connect to the license server
Run lmstat to check that it is possible to connect to the license server
  lmstat -c 5280@<your licenceserver>
  lmstat -c 5280@<your licenceserver>
Line 130: Line 132:
</source>
</source>
Then check the version in the aforementioned folder and the text file inside it.
Then check the version in the aforementioned folder and the text file inside it.
Copy the .cdsinit script below to the folder /prog/cadence/IC_6.X.X.X/tools/dfII/local


== Scripts ==
== Scripts ==
Line 153: Line 157:
#$CDS_ET $CDS_ETS $CDS_MMSIM $incisiv_dir $CDS_VIPCAT $CTOS_ROOT )
#$CDS_ET $CDS_ETS $CDS_MMSIM $incisiv_dir $CDS_VIPCAT $CTOS_ROOT )
#2013
#2013
cds_paths=( $ALTOSHOME $CDS_ASSURA $CDS_IC $CDS_ICC $CDS_PVE $CDS_CONFORMAL $CDS_RC $CDS_EDI $CDS_ET $CDS_ETS $CDS_MMSIM $CDS_INCV $CDS_VIPCAT $CTOS_ROOT)
cds_paths=( $ALTOSHOME $CDS_ASSURA $CDS_IC $CDS_ICC $CDS_PVE $CDS_CONFORMAL $CDS_RC $CDS_EDI $CDS_ET  
$CDS_ETS $CDS_MMSIM $CDS_INCV $CDS_VIPCAT $CTOS_ROOT)
# CTOS_ROOT doesn't seem to have a checksysconf
# CTOS_ROOT doesn't seem to have a checksysconf


Line 212: Line 217:
   cat ./problems.txt | grep FAIL
   cat ./problems.txt | grep FAIL
fi
fi
</source>
===.cdsinit===
<source lang="tcsh">
; AMS runs a script before starting virtuoso which creates a local .cdsinit in the current folder
; load the local .cdsinit if the program was started with the variable AMS set else load TSMC settings
if(getShellEnvVar("AMS") then
  loadi("./.cdsinit")
else
;if( ddIsId( ddGetObj( "tsmc13rf" ) ) then
  printf("********************************************\n")
  printf("        Starting TSMC 130nm                \n")
  printf("********************************************\n")
  ddCreateLib( "tsmc13rf" strcat(getShellEnvVar("TSMC_DIR") "/tsmc13rf"))
  loadi(strcat(getShellEnvVar("TSMC_DIR") "/tsmc13rf/libInit.il"))
)
</source>
</source>



Revision as of 10:25, 16 October 2014

Update install manager

Always update install manager if a newer exists or else installations may fail.

cd /prog/cadence/
mkdir iscape
tar zxvf /prog/download/download.msc.rl.ac.uk/Cadence/2012_2013/ISCAPE/lnx86/iscape_VERSION

Extract downloaded files

cd /prog/cadence/
mkdir download
cd download
find /prog/download/download.msc.rl.ac.uk/Cadence/ -name '*.tar' | xargs -l tar xvf

Run install manager

/prog/cadence/iscape/iscape/bin/iscape.sh&

configure install manager

preferences -> directories
Set default install directory to
/prog/cadence

install/update program with install manager

For new installs, follow the install instructions provided by europractice in addition to the tips from this guide. Correct directory naming reduces the amount of editing of the settings file later.

  • Press the icon which has the text "local directory/media install"
  • Select browse and navigate to the directory containing the install files and select the CDROM1 folder. *Check that there isn't a slash at the end of the path. The program doesn't search recursively.

fex: /prog/cadence/unpacked/ASSURA04.12.020-5141_lnx86.Hotfix/CDROM1

  • You don't need to install all updates recursively, select only the latest hotfix and the install will ask for the path to the base install when it is needed. If there are no hotfixes, install the base install.
  • Select the correct path to install to, keep the existing naming convention.
  • If a window opens with "Welcome to OpenAccess.....", just press enter and then 'n' and then enter again.
  • If a window opens which asks about configuring the license server, press n.
  • When the install is finished and you are back in the result list, you need to press the small underlined cancel text to change the path.
  • To make make less changes to the environment script later run this command and use the provided paths in the installation. The CDS_INST path will be changed later.
cat /prog/download/download.msc.rl.ac.uk/Cadence/2013_2014/cadence_ic_2013.csh | grep CDS_INST


Package specifics

INCISIVE

When doing a full install, INCISIVE needs to be installed first as it is required by IC. Press cancel when the ARM license file dialog shows.

ASSURA

There are two versions ASSURA*-615 and ASSURA*-5141. 5141 is for compability with IC5 (CDB). 61 is for use with IC6 (OA).

VIPCAT

Choose UVM as the packet to install for IP verification

Configuration

If a new install, then copy the template script called "cadence_ic_20xx.csh" from the download folder to the /prog/cadence folder.

Line references following will be based on the 2012 release of the file. Check that actual folder names are correct.

  • 24 - Set correct license server at line
  • 27 - Set CDS_INST to /prog/candence
  • 37 - Set ALTOS path to /ALTOS/altos_rel3.2p3
  • 57 - Set ASSURA path to /ASSURA_4.12_CDB if using IC5, /ASSURA_4.12_OA if using IC6
  • 72/74 - Comment/uncomment line according to IC version
  • 83 - Set to correct MVS folder (correct according to install instructions)
  • 110 - Set to correct IC6 folder (correct according to install instructions)
  • 151 - Set to correct ICC folder (correct according to install instructions)
  • 188 - Set PVE path to /PVE_11.12HF106
  • 213 - Set Conformal path to /CONFORMAL_11.10
  • 229 - Set to correct RCL folder (correct according to install instructions)
  • 243 - Set EDI path to /EDI_11.1
  • 258 - Set to correct ET folder (correct according to install instructions)
  • 274 - Set to correct ETS folder (correct according to install instructions)
  • 293 - Set MMSIM path to /MMSIM_11.10
  • 315 - Set INCISIVE path to /INCISIVE_12.1
  • 387 - Set VIPCAT path to /VIPCAT_11.3.014
  • 411 - Set CTOS path to /CTOS_12.1

If you correctly set the directories like specified above you can skip editing the paths to the specific programs and only change the one for CDS_INT.

Include these lines at the bottom

setenv AMS_DIR /path/to/amslib
setenv TSMC_DIR /path/to/tsmc
setenv PATH "${PATH}:${AMS_DIR}/cds/bin"
setenv CDS_BIND_TMP_DD true
setenv IUSDIR $CDS_INCV
alias ams_cds_start 'setenv AMS;ams_cds -tech c35b4 -nologo'
alias tsmc_cds_start 'unsetenv AMS;virtuoso &'

Save file as cadence_ic_20xx_uib.csh and add/update the symlink

csh
chmod +x /prog/cadence/cadence_ic_20xx_uib.csh
ln -s /prog/cadence/cadence_ic_20xx_uib.csh /prog/cadence/cadence_init.csh
source /prog/cadence/cadence_init.csh

Run lmstat to check that it is possible to connect to the license server

lmstat -c 5280@<your licenceserver>

Both cdslmd and altosda should be listed as up.

Run the checksys.sh script listed below to check for any missing dependencies and to set up any missing tools links. In case the scipt gives an error like

 

Configuration checks failed, status is: FAIL

checkSysConf cannot reliably parse your systems /etc/redhat-release file
It would appear that the file is non-standard and does not contain release
information in the standard readable format.

The contents of your /etc/redhat-release is listed below between
<RELEASE_FILE> tags.
A 'correct' release file should have only one line of content, containing
version information in a standard format.

<RELEASE_FILE>
Red Hat Enterprise Linux Server release 5.9 (Tikanga)
</RELEASE_FILE>

Please check/correct your /etc/redhat-release file and try again.
There is no OEM datafile for -r for the Linux platform.

Valid OEM images are :
foreach: No match.

then the OS is probably newer than checkSysConf used, copy a newer version from another program folder. If you then get

This operating system version '5.0WS' is not supported

If you believe you are running a supported OS then check that
the OS version directory exists in the data directory:
/<path to cadence>/ICC_11.2.41/share/patchData/Linux/x86_64

Then check the version in the aforementioned folder and the text file inside it.

Copy the .cdsinit script below to the folder /prog/cadence/IC_6.X.X.X/tools/dfII/local

Scripts

Checksys.sh

Usefull for setting up missing tools folders and checking that all dependencies are installed

#!/bin/bash
#
# Script for setting up tools folders and checking dependencies
# By Arild Velure 2014
#

if ( [ -z "$CDS_INST" ] && [ -z "$CDS_TOP" ] )
then
  echo "Please run environment script first"
  exit 1
fi

# Add new modules if needed
#2012
#cds_paths=( $CDS_ASSURA $CDS_MVS $CDS_IC $CDS_ICC $CDS_PVE $CDS_CONFORMAL $RC_PATH $CDS_SOCE
#$CDS_ET $CDS_ETS $CDS_MMSIM $incisiv_dir $CDS_VIPCAT $CTOS_ROOT )
#2013
cds_paths=( $ALTOSHOME $CDS_ASSURA $CDS_IC $CDS_ICC $CDS_PVE $CDS_CONFORMAL $CDS_RC $CDS_EDI $CDS_ET 
$CDS_ETS $CDS_MMSIM $CDS_INCV $CDS_VIPCAT $CTOS_ROOT)
# CTOS_ROOT doesn't seem to have a checksysconf

if [ -e ./problems.txt ]
  then
  rm ./problems.txt
fi

# Some installers forget to link the tools folder to the tools.lnx86
# Creat links so we don't need to edit and check settings file
for i in "${cds_paths[@]}"
do
  if [ ! -e $i ]
    then
    echo "Can't find path $i is it installed?"
    continue
  fi
  if [ ! -e $i/tools ]
  then
    if [ -e $i/tools.lnx86 ]
    then
      ln -s tools.lnx86 $i/tools
    fi
  fi
  # Run checksys to check that system is properly installed
  echo "Checking $i"
  if [ ! -e $i/tools/bin/checkSysConf ]
  then
    echo "checkSysConf not found"
    continue
  fi
  # You need to specifically mention the name of the release to test for.
  # Next line parses the output and grabs all lines which starts with a space and contains
  # some characters, which should only be release names, and puts them in an array
  proglist=($($i/tools/bin/checkSysConf -r | egrep '^ +\w'))
  # If it returns empty it propably didn't find a supported OS version
  if [ ${#proglist[@]} = 0 ]
  then
    $i/tools/bin/checkSysConf -r >> problems.txt
    echo "FAIL, couldn't find releasename"
  fi
  for a in "${proglist[@]}"
  do
    echo "Prog version $a"
    result=$($i/tools/bin/checkSysConf $a -q)
    echo "$result"
    if [ "$result" = "FAIL" ]
    then
      #Something failed, run again with verbosity
      $i/tools/bin/checkSysConf $a >> problems.txt
    fi
  done
done

if [ -e ./problems.txt ]
  then
  echo "Missing modules:"
  cat ./problems.txt | grep FAIL
fi

.cdsinit

; AMS runs a script before starting virtuoso which creates a local .cdsinit in the current folder
; load the local .cdsinit if the program was started with the variable AMS set else load TSMC settings
if(getShellEnvVar("AMS") then
  loadi("./.cdsinit")
else
;if( ddIsId( ddGetObj( "tsmc13rf" ) ) then
  printf("********************************************\n")
  printf("         Starting TSMC 130nm                \n")
  printf("********************************************\n")
  ddCreateLib( "tsmc13rf" strcat(getShellEnvVar("TSMC_DIR") "/tsmc13rf"))
  loadi(strcat(getShellEnvVar("TSMC_DIR") "/tsmc13rf/libInit.il"))
)

Linux packages that might be required

  • openmotif22
  • libXp
  • compat-readline43
  • tk
  • ksh