Skip to content

Cadence

Drexel University is a Cadence University Program Member. This allows our faculty to use Cadence products for instruction and non-commercial research. There are several courses that use Cadence products, relying on the following bundles: Custom IC, SiP, Digital IC, Verification, and SPB (PCB).

  • ECE-E525 - Digital Integrated Circuits and CMOS Technology
  • ECE-E526 - E526 is a continuation of the methods in ECE-525
  • ECE-E431 - ECE-E431 Microelectronics I
  • ECE-E433 - Advanced Electronics II
  • ECE-L301 - ECE Laboratory I
  • ECE-L304 - ECE Laboratory IV
  • ECE-C471 - Introduction to VLSI Design
  • ECE-C472 - Custom VLSI Design and Analysis I
  • ECE-C473 - Custom VLSI Design and Analysis II
  • ECE-C474 - ASIC Design I
  • ECE-C475 - ASIC Design II

Accessing Cadence Software

Cadence software is available on the Xunil servers. All Cadence packages are installed under /opt/cadence/. Please check with your course instructor to find out which specific applications you should use for a given project.

Shared Library Errors

If you're getting shared library errors while trying to run Cadence software, it's usually caused by the LD_LIBRARY_PATH environment variable not being set. You can build that variable through trial-and-error by going into the root directory of the package you're trying to run and searching for the various shared libraries that the software claims it cannot find.

As an example, let's say that trying to run /opt/cadence/IC618/tools/dfII/bin/64bit/virtuoso gives a symbol lookup error: /opt/cadence/IC618/tools/lib/64bit/libddbase_sh.so error. We can search for libddbase_sh.so by running

$ find /opt/cadence/IC618/ -iname libddbase_sh.so

which will report back that the file is found in /opt/cadence/IC618/tools.lnx86/lib/64bit/

We'll construct our LD_LIBRARY_PATH variable by iteratively setting the variable and try to run the software again until we catch all of the required locations for the shared libraries. Multiple paths are separated by colons. We'll use the export command to set the variable:

$ export LD_LIBRARY_PATH="/opt/cadence/IC618/tools.lnx86/lib/64bit:/opt/cadence/IC618/tools.lnx86/sev/lib/64bit/:/opt/cadence/IC618/tools.lnx86/TPtools/grpc-3.12.2/lib64/:/opt/cadence/IC618/tools.lnx86/TPtools/grpc-3.12.2/lib/:/opt/cadence/IC618/oa_v22.60.061/lib/linux_rhel60_64/opt/:/opt/cadence/IC618/tools.lnx86/Qt/v5/64bit/lib/"

You can save this command in a bash script, and then prior to launching the program, call the script using the source command so the variable is set in the current session context. In this case, we've saved this command already as /opt/cadence/IC618/setLDLibraryPath.sh, which you would call as

$ source /opt/cadence/IC618/setLDLibraryPath.sh

Other Issues

For questions about accessing Cadence software or to report other issues with the software, please contact the CTS team.

Cadence is a registered trademark of Cadence Design Systems, Inc., 2655 Seely Avenue, San Jose, CA 95134. This information was last updated on 11/11/2021.