Newsletter Issue #62, March 2001

 ICAP/4Windows 8.x.8 Ships

The latest ICAP release represents the most significant improvements to the electronic design analysis software in over a decade. ICAP/4Windows features SpiceNet, an integrated schematic capture program; IsSpice4, the only Spice simulation engine with true interactive features; Spice-Mod, extensive model libraries, and IntuScope5 wave form analyzer.

The new 8.x.8 version offers many new features and enhancements including a Windows-based data sheet modeling program, a new Library Manager, and a completely redesigned waveform analyzer.

SpiceMod is a simple program designed to help engineers produce accurate SPICE models for thousands of semiconductors. The program eliminates the need to learn the intricacies of SPICE model parameters and prevents laborious laboratory measurements. With information from the manufacturer’s data sheet and a set of test circuits included in the program, SpiceMod users can characterize and evaluate models, obtaining feedback on their accuracy. Circuits include diodes, zeners, BJTs, power BJTs, Darlington BJTs, JFETs, MOSFETs, Power MOSFETS, Sidacs and Sidactors, SCRs, GTOs, Triacs, and IGBTs.

The SpiceMod program incorporates a new Library Manager, which creates library templates that place new models into test drawings.

Library Manager’s test drawings contain scripts and provide data storage so users can view results and compare them with the SpiceMod data entry. A SpiceMod Software Development kit (SMSDK) is provided with the program, so that users can make their own models. Model tabs were added to SpiceMod so that a custom model DLL can be stored. An example Diac model is provided to guide users through the process. The SMSDK requires Visual C++ Version 6, Service Pack 4.

In This Issue

 The Simulation Template

 The IntuScope Monte Carlo Dialog

  The 30-Second Data Sheet

“Library Manager is significant because it allows a SpiceMod user to make, modify, store and compare revised models with archived model files,” said Larry Meares, founder and president of Intusoft, San Pedro-based designer of circuit simulation and test software. “The program also allows you to create a test circuit for each model you develop and link it to that model. This provides incredible flexibility for the end user.”

When user changes are made, the parameters and pins affected are shown, and the program automatically finds and consistently modifies each subcircuit throughout the model code. Users can also maintain notes to document their model changes thanks to built-in help files in .RTF format.

In addition to the new Library Manager, SpiceMod has been converted from DOS to Windows, and its modeling accuracy has been improved. The SCR model now takes temperature as a parameter and allows you to see how temperature affects key parameters within a spreadsheet.

Another important ingredient in the 8.x.8 ICAP/4 release is the new IntuScope5 waveform analyzer.

The software features a new calculator menu which now includes the ability to calculate and scale Bode plots, with gain and phase margin, group delay, and Nyquist curve functions with a single keystroke.

These specific features and functions are new to IntuScope5:

  • Write your own specialized scripts and assign hot keys to them to eliminate repetitive design tasks.
  • Write equations in the Command window of the Calculator. The same equations can be used to define measurements in the SpiceNet database.
  • Alter and construct graphs using the Calculator’s Build submenu.
  • Perform Fast Fourier Transform (FFT) (time to real and imaginary), Inverse Fast Fourier Transform (real and imaginary to time), Rectangular to Polar (real and imaginary to magnitude and phase) and Polar to Rectangular (magnitude and phase to real and imaginary) conversions.
  • Perform wavelet transformations, removing values with magnitude at rates more effective than Fourier.
  • Take advantage of new filter, polynomial, and PWL constructs within the functions submenu of the Calculator.

The Intuscope5 program gives you enhanced waveform selection, manipulation, scaling, viewing, and math operations. IntuScope also expanded its menu of features for advanced users. Powerful interactive features, which require communication with the SPICE simulator and the SpiceNet schematic capture program, have also been added. The new IntuScope5 version is Windows 2000 compatible.

The IsSpice engine now incorporates the latest BSIM4 submicron level model. A new EPLF-EKV model was added. This scalable and compact MOSFET model is dedicated to the design and simulation of low voltage, low-current analog, and mixed analog-digital circuits using submicron CMOS technologies.

Library Manager is included with the Test Designer, ICAP/4 Professional, Power Supply Designer and Magnetics Designer packages. SpiceMod is provided with Test Designer, ICAP/4 Professional, and the Deluxe packages. If you are a current customer with up-to-date maintenance, you will receive Library Manager and/or SpiceMod as a standard maintenance upgrade.

 IntuScope5 Waveform Analyzer

Release 8.x.9 is in Progress

Intusoft is now developing feature enhancements for our early Fall release. Already in beta are Simulation Templates and supporting ICAP/4 upgrades to allow Sweeps, Monte Carle and Optimization. These beta features should be available for users to try out in early May. We plan on doing several Optimizer templates because optimizer performance depends on the problem space. These three new features will replace the older methods so that Scope4 will no longer be delivered or supported with the release of versions 8.x.9. The Monte Carlo capabilities are highlighted in the article on page 9. We plan to ship several power electronic template circuits that make use of the optimizer to trim stabilization components.

Two-Port Network Characteristics

ICAP/4 can be used to extract parameters that describe two-port network behavior using a standard test drawing in combination with our new Library Manager. The sidebar on pages 6 and 7 shows the schematics of the circuits used for measuring these parameters.

An <IcapsDir>\Circuits\Networks\TwoPort.dwg drawing was created to enable testing of Two-Port networks. There is also a library file in TwoPort.lib called TwoPort. In order to use this feature, you must first make a drawing that has the circuit that is to be characterized. Then you create a subdrawing naming the input terminal pair InHi and InLo and the output terminal pair OutHi and OutLo.

To create a subdrawing; first make a new configuration that has any test stimulus removed and name it TwoPort. Then select the file menu <Subdrawings\Make Subdrawing item>.

After making the subdrawing, select <export> from the file menu and <SubCkt> from the list box and press <OK>. The library manager will come up. You need to select a library for your subckt. TwoPort.lib has been provided to hold these temporary subcircuit files. Next press the <Dwg> button and enter the path to the test circuit (Circuits\Network\TwoPort.dwg). Close the drawing in SpiceNet and save your changes in the library manager, and then press the <Test> button in the library manager. The test drawing will appear in SpiceNet with the update cache dialog opened so that you can load the subcircuit to be tested into the schematic.

After that, open the simulation control dialog and pick the test configuration for the parameters you wish calculated and run the simulation. The parameters will be in the output file. Currently, TwoPort.dwg calculates Y, Z, H, G and S parameters.

Note: Library manager is not available with the Rx or standard ICAP/4 edition. For those versions, you will have to perform the library entries manually and open <IcapsDir>\Circuits\Networks\TwoPort.dwg in the usual manner.

Two-Port Test Circuits

TwoPort.dwg and TwoPort.lib are available for download in where there is also a tutorial movie and installation instructions.

Summary: The test drawing contains a subcircuit representation of the Device Under Test (DUT) called TwoPort. When you change the TwoPort subcircuit in the TwoPort library to be the circuit you want to evaluate; SpiceNet recognizes the change and performs an Update Cache operation that brings the changes into the schematic. The schematic then runs the desired simulations to calculate your circuit’s two-port parameters. This all connects together because the TwoPort model used in the library has the same name as the one used in the drawing.

New Monte Carlo Analysis
Uses Interactive Command Language (ICL)

Intusoft has built a comprehensive ICL from the basic script language that began with UC Berkeley Spice3. This ICL has been extended to enable many user defined analysis types, including Worst Case, RSS, etc. The ICL is mostly common to both IsSpice and IntuScope so that many ICL scripts can be run in either software program. This feature has eliminated the need to use IntuScope as a data reduction program for making measurements. In this article, we will develop an ICL script for Monte Carlo analysis that will return pre-defined measurement to the SpiceNet database and also provide for interactive post processing using IntuScope. To begin with, we will run the ICL as a Simulation Template. That means that the script will reside in the script folder; making it accessible from the ICAP/4 Simulation Control Panel. Details about the ICL and Simulation Template syntax are in

Reviewing the Pieces that Make Simulation Templates Work

A Simulation Template is an ICL script that has embedded instructions telling the netlist program where to insert information and which options are to be provided. It is used to expand SPICE beyond the traditional limitations of the basic AC, DC, and Transient analyses by allowing parameter variations and multiple analysis passes to be run under one analysis umbrella.

1. Net List Formation: A Simulation Template has several parts. First there are directives to the net list builder, SpiceNet for ICAP/4, that are prefixed using the # symbol. These directives control the netlist format. For example, #tolerance tells the net list builder to include component tolerances. #simulation tells the netlist builder to insert the SPICE simulation the user selected in the Simulation Setup Dialog. This allows the same template to be used for different analysis (AC, DC, TRAN, etc).

2. Data Reduction: During a simulation, Spice3 compatible simulators, including IsSpice4, organize simulation results into plots, one for each simulation that is run. The plots contain vectors (i.e. simulation waveforms and other results). Once a simulation or group of simulations have been run; it is necessary to get to the results so that measurements can be made. The ICL uses nextplot and nextvector to enumerate all plots and vectors so that you can analyze the results without knowing specifically what was saved or how many simulations were run.

3. Data Output: SpiceNet reads measurements back into its database from the IsSpice output file. The measurements wizard takes care of defining and formatting these measurements. We use the #mprint template to print results to the output file or to save results as plot vectors. “set printmode = save/print” distinguishes the direction; save or print. Importantly, the save direction is not limited by the spice output digits setting because it gets data directly from the simulator in the double precision format. There are several additional ICL commands to allow formatting of printed output so that you can get a human readable report in the output file. Going one step further, you can open IntuScope and run ICL scripts to get additional data that you hadn’t anticipated before running the simulation.

Monte Carlo Strategy:

Monte Carlo analysis was performed one simulation at a time in the past. Now, using Simulation Templates, we can run all of the lots and cases within a single simulation. That means that upon completion, all of the data will be available within the IsSpice plots and vectors. We allow the user to make measurements either before or after running the simulations.

A new dialog in IntuScope can be activated after running a Monte Carlo analysis by pressing the <Monte> button in the <Add Waveforms> dialog. To plot the statistical results, you must have saved measurements in the “prob” plot. You can add to the ones there using the <Monte Carlo> dialog. Selecting vectors and functions from the appropriate lists does this; then press the <Add Function to Plot> button. Incidentially, you can plot all cases of each vector by selecting a vector's x and y axis and pressing the <Plot all Cases> button.

The really neat stuff happens when you select a measurement from the “prob” plot and press the plot group buttons. You get histograms or cumulative probability plots scaled to your data set. Cumulative probability warps the x axis into “sigmas” based on a normal distribution. For small sample sizes, it is much easier to visualize the distribution. We also plot the best fit of a straight line through these data points. If the data is normally distributed, it will lay along this straight line. The slope of the line, or first polynomial coefficient is an estimate of the standard deviation. The rms error is shown, and if it’s small compared to the standard deviation, you are probably looking at a normal distribution.

Next we added a feature to isolate the data set that created each data point. Simply place cursor 0 on a data point and press the report button. It tells you which simulation produced the data and shows each parameter's value and its sigma deviation. Using this feature, you can get an approximate separation of class members for cases that have bi-modal distributions. Then you can separate class members into several groups for more detailed investigation.

Finally, you can substitute the values associated with one of the simulations back into the schematic to evaluate a “worst case” or re-center the design.

The Simulation Template:

The simulation template for Monte Carlo can be viewed in There are two main loops, the first loop collects the statistical data and the second one fills the “prob” plot with the measurement results. New ICL command and templates are:

#setmonte: Makes SpiceNet set the lots, cases and distribution in variable called maxlots, maxcases and distribution.

monte: Tells the simulator the lot and case number in order to initialize the pseudo random number generators.

The “prob” plot contains vectors for each measurement. The data in each vector corresponds to the simulation that created it. For cumulative probability, the data is sorted and plotted against a sigma vector. IntuScope back tracks the data by identifying which cell in the corresponding “prob” vector has the same value.

The IntuScope Monte Carlo Dialog

IntuScope recognizes the existence of a Monte Carlo data set when a plot named “prob” is present in the IsSpice data. The dialog shown below becomes accessible by pressing the <Monte> button in the <Add Waveforms> dialog.

 Plotting the histogram and probability yields these graphs:

The best straight line id shown below and the error is small compared with the standard deviation so we are lead to believe it’s a normal distribution.

Polynomial Regression of prob(trise(v(vpd)))

+ 15.701127N, 331.19626P,

rms(previous-current) = 50.2290P unknown

Data from the point at the extreme left was identified as belonging to the pot “tran28” and a portion of the results are shown below.

parameters from plot tran28 trise(v(vpd))




 c8  6.86P -1.19
r19 999 -202M
 r18 101 1.76
 r17 4.98K -590M
 r16 10.00K -22.1M
 c3  10.1N  432M

These data were taken for 30 cases, below is a summary of data from 6,30 and 150 simulations

 No. of Simulations



 6  15.87N 235P  66.1P
30 15.70N 331P 50.2P
150 15.55N 304P 36.5P
nominal 15.52N



These data were taken for 30 cases, below is a summary of data from 6, 30 and 150 simulations

You can see the statistical mean is approaching the mean found by running the nominal case. Moreover, the result from only 6 simulations, used with our prior knowledge of the true mean gives a not too bad result for the tolerance if we add 3*error to the stdev and set the tolerance at 5 sigma or Tol = (235p + 3*66.1p)*5 = 2.16n. This yields a conservative estimate without waiting for the longer simulation to run. Why 5-sigma you may wonder when part tolerances are taken as 3 sigma. The answer is that we have many such measurements that must pass for us to sell our product. If we used 3-sigma limits we would loose 1 in 384 products for each measurement or about 1 in 40 for a product that had to pass about 10 measurements. Therefore, we need to widen the test tolerance in order to get acceptable product rejection rate. Now if the test tolerance falls outside your performance specification you can try more cases, re-design the product or change the specification.

The 30-Second Data Sheet

Stuck without the numbers you need to create an accurate SPICE model from SpiceMod? Here are a few tips on finding manufacturer’s data sheets. Sounds simple, but your best bet is to go right to the search engine and type in the part number.

Let’s enter high-speed switching diode 1N4148 into the search engine and see what we get.

Fairchild’s site comes up first offering the diode datasheet by E-mail or in .pdf format.

Vishay semiconductor also offers a tabular datasheet complete with all the electrical characteristics needed to produce your SPICE model.

NPX(formerly Philips) provides the most comprehensive datasheet information for 1n4148, including graphs describing forward current and temperature parameters. Phillips also offers a cross reference tool where any manufacturers part number can be entered to receive Philips compatible parts.

When a part number search fails to yield good results, going directly to a major manufacturer is your next best bet.
Check out Intusoft's SPICE links page for a list of 20 IC manufacturers with SPICE models. Ranging from Infineon(formerly International Rectifier) to ON Semiconductor, these rich sites feature models for every kind of device, including op-amps, precision instrumentation amps, buffers, isolation amps, video mux, switched input integrator, photodiode w/amplifier, voltage-controlled amplifiers, diodes, amplifiers, comparators, analog switches, power management, thermal management, battery management, Mux, gates, inverters and more.

Searchable parts libraries, like on the Internet can also help design engineers find modeling information. is a soup-to-nuts repository of detailed product information. The site allows users to enter exacting part parameters to instantly access specifications and drawings organized by supplier name. Users can visit each company’s showroom, contact the supplier directly via an e-mail hotlink, or browse each supplier’s current catalog. Unlike logging on to an on-line catalog, the user doesn’t have to know which company’s web site to visit. browsers can zero in on multiple products from different vendors simultaneously, including sensors and instrumentation, motion controls, mechanical and electronic components.