Product Documentation
Virtuoso Studio Licensing and Configuration User Guide
Product Version IC23.1, September 2023

2


Setting Up Virtuoso Studio

Each time the application software runs, the application loads variables in the following order:

  1. Resources in the resource database.
    The resources are taken directly from the .Xdefaults.
  2. Variables in the <app>_defaults file, where app is the application or group name.
  3. Variables set by the application
  4. Variables set by the <your_install_dir>/tools.<plat>/<app_dir>/local/.cdsenv file
    • <your_install_dir> is the directory that contains the software
    • <app_dir> is the directory containing the Cadence® application files
  5. Environment variables
  6. Program loads all .cdsenv files in the following order if the CDS_LOAD_ENV environment variable is not set:
    • <your_install_dir>/tools.<plat>/dfII/etc/tools/application/.cdsenv
    • <your_install_dir>/tools.<plat>/dfII/local/.cdsenv
    • $HOME/.cdsenv
  7. Program searches the following locations in order and loads variables from the first .cdsinit file encountered:
    • <your_install_dir>/tools.<plat>/dfII/local
    • current working directory: .
    • your home directory

Individual user settings override the variables set by the application and any group customization. You can copy the .cdsenv site file to your local directory and customize it or choose Options –  Save Defaults in the Command Interpreter Window (CIW) to save variable settings to a .cdsenv file.

Related Topics

Saving New Default Values

Quick Start: Linux and Unix Environments

This section outlines the quick start procedure for Linux and Unix environments running X Windows graphics software.

You may need to use a root login to modify files or change permissions.

  1. Set up a user account.
  2. Modify and apply your search path as follows:
    set path = (  <your_install_path>/bin/<app> $path )
  3. Start the software by typing:
    executable &
    where executable is the command you want to run (for example, virtuoso).
    The CIW appears after a short initialization period. You must set up plotters before you can plot a design.

Related Topics

Setting Up a User Account

Virtuoso Studio Design Environment Executables

Plotter Configuration User Guide

Quick Start Guide to Setting Up a Plotter

Configuration and Startup Procedures

The tasks below provide a guide to the full configuration and startup procedure for your software. This document assumes you have copies of the default initialization files from <your_install_dir>/tools.<plat>/dfII/cdsuser/.* in a local directory and that you are logging in through dtlogin (perhaps from /usr/dt/bin).

Setting the Installation Path for Cadence Tools

Cadence tools do not require any environment variable to specify their installation directory.

Below we only provide example using some variables for tools that require environment variable to specify the  installation directory. You can select any name you want for these variables in your environment.

Cadence tools are typically installed in their own directory hierarchy. You should use different UNIX environment variables to represent each release hierarchy. The following example shows how to set installation paths in a .cshrc file (you must modify these paths to match your installation).

For information regarding setting environment variables for specific tools, refer to the documentation for that particular tool.

#*********************************************************************#
# Set path to DFII install directory
set ICHOME = /cdsIntall/cds/IC231
#
# Set path to ICC install directory
setenv ICCHOME /cdsInstall/cds/iccraft112
#
# # Set path to Innovus install directory setenv INVSHOME /dsmInstall/INVS191 # #*********************************************************************# # # Set paths to Cadence executables #(In this example, variable names are assigned for each tool path, # then set in the set path statement) # set dfiiPath = ( $ICHOME/bin ) set iccPath = ( $ICCHOME/bin ) set invsPath = ( $INVSHOME/bin ) # set path=( ~/bin \ /usr/bin /bin $dfiiPath \ $iccPath \ $assuraPath \ $invsPath \    )
#*********************************************************************#
# Set paths to license files
setenv CDS_LIC_FILE $CDSHOME/cdsbin/lmtools/license.dat/license.dat
setenv CDS_LIC_ONLY 1
#This makes license check faster both for Cadence and non-Cadence tools to segregate Cadence server in the CDS_LIC_FILE and keep only the non-cadence servers in the LM_LICENSE_FILE.
#*********************************************************************#
# END of the .cshrc file
#*********************************************************************#

Setting Up a User Account

To set up accounts for new users, you must already have created a login and home directory for each user. The <your_install_dir>/tools.<plat>/dfII/cdsuser directory contains sample home directory environment setup files.

Next, follow the steps outlined in Copying Sample Files to Your Home Directory.

Once you have set up a user account, you can modify your search path and run the software as described in Quick Start: Linux and Unix Environments.

Copying Sample Files to Your Home Directory

  1. Copy the sample files to your home directory.
    You can use commands similar to the following:
    cd
    cp <your_install_dir>/tools.<plat>/dfII/samples/.??* .
    cp <your_install_dir>/tools.<plat>/dfII/cdsuser/.??* .

    The copy command (cp) will overwrite any existing files of the same name in your directory.
  2. Go through each section of the sample files and customize them for your site. Be sure to replace /cdsdir with <your_install_dir>.

Setting the Focus Correctly

On KDE, Red Hat Enterprise Linux, and Gnome, a newly opened window might pop up under a window or on the desktop and is not immediately visible. You can correct this as follows.

In the KDE window manager:

  1. Open KDE Control Center or type /usr/bin/kcontrol on LINUX command prompt to start the KDE Control Center.
  2. Select DesktopWindow Behavior.
  3. Select the Advanced tab.
  4. Set Focus stealing prevention level to None or Low.

On LINUX:

  1. Open the System Settings form by running the following command:
    LINUX> /usr/bin/systemsettings
  2. Click the General tab and then Window Behavior.
  3. Set Focus stealing prevention level to None or Low.

On Gnome:

  1. Open the Gnome Configuration Editor window by entering the gconf-editor command at the terminal.
  2. Navigate to appsmetacitygeneral.
  3. Select new_windows_always_on_top.
  4. Set the focus_new_window variable to strict.
    The default value of Single-click to open files and folders causes double-click actions to be invoked with a single click.

For information about setting the font options, see Viewing the Font List in the Virtuoso  Studio Design Environment User Guide.

Specifying Cadence Environment Variables

You can specify any number of the following environment variables.

Cadence Environment Variables
Variable What You Can Specify

CDS_DEFAULT_BROWSER

Sets the initial value of the ui .cdsenv variable webBrowser to this value. If set, this is overridden by the value of ui.webBrowser in the .cdsenv file.

CDS_LOG_PATH

A colon-separated path of directories (ordered by preference) in which to put the log file. If none of these directories exist or they are all not writable, the default $HOME directory is used.

CDS_LOAD_ENV

A customized search order for .cdsenv using one of the following keywords:

  • False loads neither ~/.cdsenv or CWD/.cdsenv
  • CWD loads only /.cdsenv from the current directory
  • addCWD loads ~/.cdsenv and then loads CWD/.cdsenv
  • CWDElseHome loads CWD/.cdsenv if it exists, or ~/.cdsenv, if it exists
  • CSF uses the Cadence Setup Search File mechanism to find the .cdsenv files to load

For more information, see “Specifying a Search Order for .cdsenv” in the Virtuoso Studio Design Environment User Guide.

CDS_LOG_TIMESTAMPS

Set to 1, True, Yes, t, or y for default timestamp logging This is same as the command line option -logtime.

Set to 2 or rel or relative for relative timestamp logging. This is same as the command line option -logtimerel.

The options are case insensitive.

CDS_USE_LOCAL_TIMESTAMP

If local timestamp is defined and the value does not start with 0, f, or n, all timestamps in the CDS.log file will use local time instead of Universal Time (UTC) (also known as GMT).

The options are case insensitive.

CDS_FILTER_CDSENV_WARNINGS

If defined and the value starts with t or y, warnings for unregistered and type mismatched variables will not be thrown while loading values from the.cdsenv file.

CDS_PROMPT_CKOUT

Whether the Auto Checkout form automatically appears when you open data files using a product that has a graphical user interface (GUI) and automatic check-out capability using one of the following keywords:

all prompts for all autocheckout requests and is the default. Causes all tools that have a GUI and perform autocheckout operations to prompt you to check out data before performing an autocheckout. A prompt is issued regardless of the values of the other variables controlling check in/out behavior. This action lets you set up an environment that prompts for checkout wherever possible. Tools that cannot prompt cannot automatically check out data unless you also set the CDS_AUTO_CKOUT variable.

  • none does not prompt for any autocheckout requests.
  • views prompts for autocheckout requests of cellview data.
  • files prompts for autocheckout requests of non-cellview data.

CDS_AUTO_CKOUT

Whether the software automatically checks out a file when you open it with a product using one of the following keywords:

  • all checks out all autocheckout requests and is the default.
  • none does not check out any autocheckout requests.
  • views checks out autocheckout requests of cellview data.
  • files checks out autocheckout requests of non-cellview data.

If a tool has a GUI and CDS_PROMPT_CKOUT is set to all, CDS_AUTO_CKOUT has no effect. Otherwise, when set to all, it causes all tools that have an autocheckout capability to automatically check out a file as needed.

CDS_PROMPT_CKIN

Whether the Auto Checkin form appears when you close properties or files that were automatically checked out. Or if you try to exit a session without closing properties or files that were automatically checked out, while using a Cadence product that has both a GUI and automatic check-in capability using one of the following keywords:

  • files prompts you before performing an autocheckin of non-cellview data (default). It overrides CDS_AUTO_CKIN and applies to interactive tools only.

all prompts for all autocheckin requests. Causes all tools that have a GUI and perform check in operations to prompt you whether or not to check in data before performing an autocheckin. Tools that do not have a GUI are not affected by this variable.

  • none does not prompt for any autocheckin requests.
  • views prompts for autocheckin requests of cellview data.

CDS_AUTO_CKIN

Whether the software automatically checks in data files when you close properties or files that were automatically checked out or when you exit a session without closing properties or files that were automatically checked out using one of the following keywords:

  • files file is autocheckin if it was automatically checked out during this session and is the default.
  • all checks in all autocheckin requests.
  • none does not check in any autocheckin requests.
  • views checks in autocheckin requests of cellview data.

If the tool has a GUI and CDS_PROMPT_CKIN is set to all, CDS_AUTO_CKIN has no effect. When this variable is set to all, all tools automatically check in any file they automatically checked out.

CDS_IBM_FULLDUMP

Whether to dump the core with full traceback and data sections (IBM only). When an IBM workstation dumps its core, the core contains a full traceback section but no data section. Debugging typically requires the data section.

CDS_LICENSE_DIR

Alternate SoftShare license directory used.

CDS_LOG_VERSION

Naming convention for preserving multiple log files using one of the following keywords:

  • sequential adds a sequential number to the name of the log file, such as CDS.log.1 or CDS.log.2.
  • pid adds the number of the UNIX process to the name of the log file, such as CDS.log.1719 or CDS.log.2250.
If you do not specify CDS_LOG_VERSION, each session overwrites the log file from the previous one.

CDS_SHM_ADDR

The address to use for shared memory.

Set this variable only when you do not have shared memory.

Setting this variable turns off VO fasttime. If you set CDS_SHM_ADDR to a non-zero hex number, the software uses that address instead of the default address for shared memory.

CDS_AUTO_64BIT

Which applications to run using the 64-bit version

All IC* products are 64-bit.

Enable Access to Remote Hosts

Work with your IT team to have the right setup working following all security guidelines.

Modifying the .Xdefaults or Equivalent File

The <your_install_dir>/tools.<plat>/dfII/cdsuser directory contains a .Xdefaults file. The X Window System normally uses the resources in the X resources database that is loaded upon login from your local .Xdefaults file.

You can copy the Cadence-provided .Xdefaults file to your local directory and modify it to contain the settings you want.

  1. Copy Cadence .Xdefaults file to your local directory. For example:
    cd
    cp <your_install_dir>/tools.<plat>/dfII/cdsuser/.Xdefaults .
  2. Modify the settings you want and save the file.

The software reads in X resources when you start your application. If you make changes to your .Xdefaults file after the software is running, these changes do not take effect until you read the resources into the X server and restart your application. You must force the server and window manager to see the file changes.

  1. Read in the .Xdefaults file.
    xrdb -merge .Xdefaults

    The -merge option prevents deleting desired settings that are not in the .Xdefaults file.
  2. Log out and login again.

The following table identifies some of the resources that you can modify in your local .Xdefaults file. You can find examples of these resource settings in <your_install_dir>/tools.<plat>/dfII/cdsuser/.Xdefaults.

These resources use tight bindings with a period (.) instead of the usual loose bindings with an asterisk (*). The period cannot be replaced by an asterisk. Wildcard resources produce unpredictable effects on dialog boxes and menus. Cadence recommends that you restrict your resources to the list shown in the resource list above to prevent X resources from clashing with SKILL descriptions for forms and menus.

Resource Description

Opus.activeBannerColor

Background color of the window number label displayed at the bottom-left corner of the current window.

Opus.beepDialog

Beeps when warning or dialog boxes appear.

Opus.formPlacement

Location of form (top, bottom, left, right, or center).

Opus.formRelativeTo

Location of form relative to screen, window (currentWindow), or CIW.

Opus.geometry

Location and size of CIW (overrides Opus.x, Opus.y, Opus.height, and opus.width).

Opus.height

Height of CIW (Opus.geometry overrides this setting).

Opus.optionFormPlacement

Placement of option form (top, bottom, left, right, or center).

Opus.optionFormRelativeTo

Placement of option form relative to screen, current window (currentWindow), or CIW.

Opus.showScrollBars

Sets the initial value of the ui cdsenv variable showScrollBars. If set, this will be overridden by the value of ui.showScrollBars in the .cdsenv file. The value should be set to True or False. The default is False.

Opus.width

Width of the CIW (Opus.geometry overrides this setting).

Opus.x

Horizontal position (X axis) of the CIW (Opus.geometry overrides this setting).

Opus.y

Vertical position (Y axis) of the CIW (Opus.geometry overrides this setting).

Modifying the .cdsinit File

Before you set up users, decide whether you want them to use the same .cdsinit file. The program uses the first .cdsinit file that it finds in the following order:

  1. <your_install_dir>/tools.<plat>/dfII/local/.cdsinit
  2. Current directory (.)
  3. Your home directory (~)

You can customize the .cdsinit file after you copy it into the current directory or the user home directory. Use the following guidelines when modifying the .cdsinit file:

You can find a sample .cdsinit file at <your_install_dir>/tools.<plat>/dfII/samples/local/cdsinit.

To create a site-specific file, follow these steps:

  1. Copy the default file to another directory.
    Type the following to copy the default file to a local directory:
    cp <your_install_dir>/tools.<plat>/dfII/cdsuser/.cdsinit <your_install_dir>/tools.<plat>/dfII/local
  2. Edit the last line of the (system) .cdsinit file to read.
    if(isFile("./.cdsinit")
    then load("./.cdsinit")
    else when(isFile("~/.cdsinit")
             load("~/.cdsinit)
         )
    )
  3. Save and close the file.

This allows you to customize their own .cdsinit files. Some customizations may include the following:

Related Topics

hiSetFilterOptions

Verifying Your System Configuration

The system configuration checker (<your_install_dir>/tools.<plat>/bin/checkSysConf) verifies that the operating system level, system configuration, and patch level of your machines match Cadence software requirements. To run the system configuration checker, do the following:

  1. In an xterm window, type the following command to get a list of valid release names:
    checkSysConf -r
    Valid release names appear on your screen.
  2. Run the system configuration checker using a valid release name as follows:
    checkSysConf validReleaseName
    For example,
    checkSysConf <current_release> | more

The system configuration checker reports system information (such as Host Name and Hostid) and verifies whether system requirements are met (such as MEMORY, SWAP, DISPLAY, PACKAGE, and PATCH requirements). Any failures to comply with system requirements for the specified release stream appear at the end of the report. For example, you might need to find out which products require a missing patch by running checkSysConf with the -p option:

checkSysConf <current_release>  -p patch

For more information about the system configuration checker, refer to the Cadence Online Support web site: http://support.cadence.com/docs/files/releases/sys_conf_check/welcome.html.

Distributing the User Files

Do not overwrite existing user files.

Configuring Remote Displays

Normally, only specified workstations can access the X server, but you can change the access by typing one of the following commands:

Contact your system administrator before using this command as it overrides more stringent security schemes.

Command Description

xhost +

All hosts can access the X server.

xhost + hostname

Add hostname to access list.

xhost - hostname

Remove hostname from access list.

xhost -

Only those workstations listed in the access list, /etc/X*.hosts, can access the X server.

Library and Tool Issues

You might want to also consider the following library and tool issues:

dbAccess Command-Line Executable

dbAccess is a non-graphical UNIX command-line executable for using the core SKILL functionality and accessing DFII OpenAccess design and technology file data. You can also use this executable to debug Pcells and verify that they run in other environments and have no dependencies on product packages or licenses. dbAccess supports db, dd, rod, and tech functions. Since it does not have a graphical user interface, it does not support hi and ge functions.

Main Command Options

dbAccess <[-load <file-name>] [-cdslib fileName]>

Description

-load

Loads and executes the specified SKILL file.

-cdslib fileName

Reads the specfied filename for library definitions. By default dbAccess reads the cds.lib file in the current working directory.

If you do not provide a command-line option, dbAccess switches to interactive mode and accepts commands from the keyboard or stdin.

In addition, dbAccess accepts the Virtuoso command-line options, such as: 0

-V

Displays Cadence release version.

-W

Displays Cadence release subversion.

However, it ignores options that require a graphical user interface.

Example

Suppose you have a SKILL file, listLibs.il, which includes commands to display the libraries specified in the cds.lib file. If a cds.lib file is not present, the default cds.lib from the installation directory is used.

The file contents are as follows:

foreach(lib ddGetLibList() printf("%s\n" lib~>name))

Now, if you run the dbAccess command and loads this SKILL file, the following output is displayed on a terminal window:

dbAccess -load listLibs.il
Virtuoso Framework License (111) was checked out successfully. Total checkout
time was 0.64s.
cdsDefTechLib
basic
US_8ths
rfLib
rfExamples
ahdlLib
analogLib
functional

The above output is generated using the default cds.lib from the installation directory.

Related Topics

Command-Line Options For Cadence Applications


Return to top
 ⠀
X