Link the IC-CAP Modeling Tool to External Simulators

Blog Post created by rajsodhi Employee on Feb 13, 2018

ICCAP - External Simulator interface


IC-CAP is a tool that enables modeling engineers to extract device model parameters using the simulator of their choice. For each model parameter extraction, measured data is compared against simulated data, and parameters are optimized to achieve the closest fit to the measured data. Because different simulators may use different syntax or "templates," adding a new simulator that is not supported requires its output to be adapted to one of these templates.


For example LTSpiceIV uses a syntax that is very similar to spice3. IC-CAP supports the following simulator links:

Built-in Simulators included with IC-CAP
  • spice2
  • spice3
  • hpspice
Supported links to external Simulators:
  • Eldo
  • spicemodeads
  • SmartSpice
  • spmodeads
  • spectre443
  • Saber
  • hpeesofsim (native ADS* syntax)
  • spmodeads (ADS spectre compatibility mode)
  • hspicemodeads (ADS hspice compatibility mode)

hspice **

hpspice -C   (link to hspice in client/server mode for better performance)  

saber **

spectre *** (use spectre template)

spectre in spice compatibility mode  (use spectre443 template)

afs_spectre ***  (link to AFS in spectre compatibility mode – * AFS available on linux only)

pspice ***

eldo ****

smartspice *****


Unsupported simulators but should work to some degree:

xyce      (try using spice3 or pspice template)

LTspiceIV    (try using spice3 template)


Vendor information key: 

* ADS - Keysight

** Hspice, Saber – Synopsys

*** Spectre, AFS, pspice – Cadence

**** Eldo – Mentor

***** Smartspice – Silvaco


To make a link between IC-CAP and some external simulator, one must edit the config file $ICCAP_ROOT/iccap/lib/usersimulators.



In this config file, every line represents instructions on how to connect a different simulator to IC-CAP. The format is presented as follows:

simulator_name template_name path_name host_name pipe_capability

If the hostname is blank (or ""), then we assume the simulation will run on the same computer as IC-CAP. Some example entries are shown in the usersimulators file below.

usersimulators example file

Note: Lines with leading # sign are comments.


To link to an external simulator, the steps are as follows:

  1. Install the simulator program, making note of where the binary executable file resides. Also, verify that you have a valid license.
  2. Append or edit the entry in the $ICCAP_ROOT/iccap/lib/usersimulators config file for the external simulator in question.
  3. Re-start IC-CAP.
  4. In the model file where the simulator is to be used, specify the SIMULATOR variable to that simulator's name defined in the usersimulators file.



Should you encounter any problem, please try the following procedure, as it will usually allow you to figure out the problem. If that doesn't work, simply collect information from the steps in this procedure, as well as any pop-up error messages, and send it to the IC-CAP support team.

  1. Turn on IC-CAP's Status window, and check to see if any warning or error message appears.
    Illustration on how to bring up status window.

  2. Further, turn on the Simulation Debugger window. Check the netlist created by IC-CAP and the simulator's output files.
    how to get simulation debugger from IC-CAP

Note: Once the problem is addressed, it's recommended that you close the Simulation Debugger window. Leaving it open will slow down the overall simulation speed due to additional input/output interaction.


Using this process, you can quickly and easily link IC-CAP to a supported external simulator.