Vendor Support
Each CAD vendor from whom we buy licences and receive technical support provides its customers with a list of supported operating systems (OS). Here are lists of supported operating systems from five of our CAD vendors and two OS vendors:
- Ansys: https://www.ansys.com/it-solutions/platform-support
- Cadence: https://www.cadence.com/en_US/home/support/computing-platform-support.html
- Keysight: https://www.keysight.com/us/en/lib/resources/miscellaneous/software-versions-computer-platforms-and-operating-systems-1486421.html
- Siemens (Mentor Graphics) Calibre: https://calibre.mentorcloudservices.com/docs/Calibre_OS_Roadmap.htm
- Synopsys: https://www.synopsys.com/support/licensing-installation-computeplatforms/compute-platforms/compute-platforms-roadmap.html
- Rocky Linux: https://docs.rockylinux.org/
- Red Hat Enterprise Linux: https://access.redhat.com/products/red-hat-enterprise-linux
- Other – ESD Alliance OS Roadmap: https://www.semi.org/en/communities/esda/OSRoadmap
Linking to Our Supported Technology Configuration (STC) Disk
CMC Microsystems technical staff members update and maintain a master Linux disk on which all Linux-based CAD software may be installed, tested and released to any partnering institution across Canada.
Sustainable Technology Configuration (STC)
STC Server Network
STC Administrators
CMC technical staff members also link the installed software on this master disk to a secondary disk in our VCAD Cloud environment. Because the directory structure on these two disks is similar, copying from the master disk is simplified.
CMC Directory Tree for CAD Software and Shell Scripts
Top of directory tree | Vendor | Release | Subdirectories | |
CMC/ | tools/ | ansys/ cadence/ keysight/ mentor/ synopsys/ | <tool name and version number>/ | bin/, share/, doc/, other directories; depends on vendor. |
scripts/ | All *.csh C shell scripts written and tested to start each CAD tool. Some scripts call other scripts, especially those running process design kits (PDK’s). |
Using CMC Scripts: Each time a CAD tool is installed on our STC disk, then transferred to our Cloud accounts, our CAD IT support staff creates a shell script that includes the /bin directory of the new software in the user’s $PATH. For example, this Keysight ADS 2023 script does the following, in this order:
- Makes the shell environment C shell or csh;
- Sets an environment variable CMC_HOME to be the /CMC directory;
- Sources another C shell script that sets some fundamental environment variables for several CAD tools;
- Adds the ADS/bin directory to the user’s $PATH so the contents of /bin can be seen by the OS; and
- Sets the location of the Keysight licence, depending upon its name (LM_LICENSE_FILE or ADS_LICENSE_FILE)
#!/usr/bin/env csh if( $?CMC_HOME == 0) then setenv CMC_HOME /CMC endif source $CMC_HOME/scripts/cmc.2017.12.csh setenv HPEESOF_DIR ${CMC_HOME}/tools/keysight/ADS2023 setenv PATH ${HPEESOF_DIR}/bin:$PATH if( -f “$CMC_HOME/tools/licenses/ads.csh” ) then source $CMC_HOME/tools/licenses/ads.csh else if( $?LM_LICENSE_FILE == 0 ) then setenv LM_LICENSE_FILE ${CMC_HOME}/tools/licenses/ads.license else setenv LM_LICENSE_FILE ${LM_LICENSE_FILE}:${CMC_HOME}/tools/licenses/ads.license endif setenv ADS_LICENSE_FILE ${CMC_HOME}/tools/licenses/ads.license endif |
Use these scripts in a Terminal window to set up the environment for the CAD tools, then enter the command to run the tools, as shown in Figure 1. Note that these changes only take effect in the terminal that you use.
Figure 1: Setting up CAD Tool Environment Using Terminal
Installing CAD Software for Linux Operating Systems on Your Own Workstation
Our CAD IT group has prepared a CADpass Client that works in certain Linux operating systems.
CADpass for Linux https://www.cmc.ca/qsg-cadpass-client-for-linux/
If you have trouble installing and running our CADpass client in Linux, please write to us for help.
Useful Utilities in Linux
Command line input is represented here by the symbol pair “~$”. Our first useful utility starts in a terminal window:
~$ vim
The utility “Visual Editor” (shortened to vi, then later “vi improved” or vim) was developed to be used inside an Xterminal window, as shown in Figure 2. It can be used in a Linux system where there is no GUI available.
https://github.com/vim/vim
An easy way to learn vim is to type the command:
~$ vimtutor
… and follow the lessons in this file. This tutorial shouldn’t take more than an hour to try.
Figure 2: VIM in Terminal Display
The utility “gedit” is a graphical text editor like Windows’ “Notepad”, included in the GNOME desktop environment for Linux. GNOME is the desktop environment preferred for CMC’s Cloud environment.
https://github.com/GNOME/gedit
~$ gedit
It is unwise to edit a block of text in a Windows-based editor for use in a Linux system. Some Windows keyboard characters that a Linux system cannot recognize may be inserted into the file. It is good practice to use a Linux editor, “vim” or “gedit”, in a Linux system.
File reader “evince” is a portable document format (PDF) utility included in the GNOME desktop. It can be launched from a command prompt by typing its name in lower case letters:
~$ evince
The “Firefox” browser is bundled with the GNOME desktop. It is also launched by typing its name into a command prompt:
~$ firefox
If you add an ampersand “&” after entering a run command such as “firefox” or “evince”, this will tell your Linux system to run your application in the background, and you will recover the use of your terminal. It is also helpful to do this in case you accidentally close your terminal. Your application will keep running.
Useful Commands for File Management
Once again, we want you to improve your command prompt skills.
~$ ls
… will show you a basic file list in your directory where you are working.
~$ ll
… will show you a longer listing for each file in your current directory, including information about permissions, timestamp, all shown in Figure 3.
Figure 3: Linux Terminal Command Display
~$ clear
… will clear away all text in your terminal.
~$ pwd
… will tell you the directory in which you are currently working.
~$ cd
… will allow you to change directories from where you are to where you would like to be. If there is no other text after a “cd” command, then you will be placed into your default location, which is probably your home directory.
~$ mkdir
… will create a directory where you tell the operating system to do so, if you have proper permission. Use the “ll” command to find out if you can add a directory
~$ chmod
… is a powerful command that sets permissions for a file or directory.
https://www.redhat.com/sysadmin/introduction-chmod
~$ cp
… copies a file from one location to another.
~$ rm
… removes a file from a directory or a complete directory.