NCSU CDK Setup Files

Note: $cdk_dir == toplevel directory of NCSU CDK

Most of the CDK setup files are contained in the $cdk_dir/cdssetup directory. Whenever possible we load setup files in the following order:

  1. site
  2. current directory
  3. $HOME directory
  4. $CLASS_LOCKER directory

In the NCSU environment, the $CLASS_LOCKER environment variable is set by some classes that use the Cadence tools when the class locker (common disk space) is mounted. This order allows users to customize their Cadence environment, but for class setups to take precedence over user preferences.

Information on some of the standard setup files is in the ``Complete Startup Procedures'' chapter of the ``Design Framework II Configuration Guide'' section in OpenBook.

  1. setup.loc

    This file controls the default setup search locations and is only found in the following locations:

    The first one found is read, so the environment variable $CDS_SITE needs to be set to $cdk_dir to use the NCSU CDK setup.loc file.

  2. cdsinit

    When Cadence starts, it automatically reads in the file $CDS_ROOT/tools/dfII/local/.cdsinit. When installing the CDK, the install program should either automatically link $CDS_ROOT/tools/dfII/local/ to $cdk_dir or modify your existing cdsinit file to read the CDK cdsinit file when the environment variable $USE_NCSU_CDK is set.

    Note that $cdk_dir/.cdsinit is actually a link to $cdk_dir/cdssetup/cdsinit. For 9504 and later (4.4) the library path is no longer in this file. The actions performed by the CDK cdsinit file are:

    1. define prependNCSUCDKInstallPath() SKILL function
    2. verify environment variable $CDS_SITE is set (it should be set to $cdk_dir)
    3. optionally use ``xmesg'' to print file newusermesg
    4. load $cdk_dir/cdssetup/cdsenv
    5. load ~/.cdsenv
    6. load config files
    7. load bindkey definitions ($cdk_dir/cdssetup/common_bindkeys.il)
    8. set SKILL path
    9. load CDK SKILL routines
    10. load ~/.cdsinit
    11. load $cwd/.cdsinit
    12. load $CLASS_LOCKER/.cdsinit
    13. launch Library Manager unless $SKIP_CDSLIB_MANAGER is set

    We provide a template file for users: $cdk_dir/cdssetup/user.cdsinit.

  3. cdsenv

    When Cadence starts, it automatically reads in the file $CDS_ROOT/tools/dfII/local/.cdsenv. When installing the CDK, the install program can automatically link $CDS_ROOT/tools/dfII/local/ to $cdk_dir. If you choose not to make this link, e.g., because you already have a local/ directory, the CDK cdsinit file will load the CDK cdsenv file.

    The CDK's cdsenv file is located at $cdk_dir/.cdsenv. This file contains environment variables that control the tools' default behavior. The user file ($HOME/.cdsenv) is automatically read after the site file is read.

    Note that $cdk_dir/.cdsenv is actually a link to $cdk_dir/cdssetup/cdsenv.

  4. cds.lib

    This file determines which libraries appear in the Library Manager. The search pattern for locating the cds.lib file is set by setup.loc. The first one found is used. The site file is last in setup.loc so it acts as the default if no others are found.

    The site file includes other .lib files for specific groups of libraries. They all use relative paths so moving them to a new release should not require editing. The files are:

  5. simrc

    The site simulation resource file ($cdk_dir/.simrc) is read when a run directory is created. Again, this is actually a link to $cdk_dir/cdssetup/simrc. See the Open Simulation System (OSS) manual for more on the simrc file. The site file loads the user simrc files in the order described above.

  6. cdsplotinit

    This is the printer control file. It defines the printers available to the Cadence tools much like the /etc/printcap file. The file $CDS_DIR/tools/plot/.cdsplotinit (linked to this file) is read at the start of each print operation.

  7. display.drf

    The location of the site display resource file is set in the cdsenv file. The CDK install program will modify this file to use an absolute path based on your value of $cdk_dir.

    graphic drfPath string "/afs/eos/dist/cadence/local/cdssetup/display.drf"

    The display file defines all the display devices, for the screen and plotting, such as display, psc, and psb. Also, users may have their own customized display.drf. The load order is:

    Different technologies may define different display layers, stipples, colors, etc. In order to incorporate these they must be merged into one display file. Cadence provides a way to accomplish this, but it creates a jumbled display file in the end. The Perl script $cdk_dir/cdssetup/merge_display.pl allows a more orderly incorporation. This script takes the new display file (display.drf.new) you want to merge into the existing one (display.drf) and finds the differences between the two. It puts these into a the file display.drf.diff. The differences can then be pasted into the existing file.

  8. newusermesg

    This is the message optionally posted by $cdk_dir/bin/xmesg during startup, which is called by the CDK's .cdsinit file. To avoid having this message appear, the user should set the environment variable SKIP_CDS_DIALOG before staring Cadence.

    This mechanism should be used to display important messages at Cadence startup.


Return to index