Configuring & Running a Simulation in Altium Designer

The Analysis Setup & Run region of the Simulation Dashboard panel is used to configure and run the simulation analyses. Once the circuit is verified and prepared for simulation, configure the required analysis type as described in the below sections.

The Analysis Setup & Run region of the Simulation Dashboard panel
The Analysis Setup & Run region of the Simulation Dashboard panel

The following sections describe how to configure the common simulation analyses and additional simulation settings.

Number formats

The numerical fields defined in the Analysis Setup & Run region of the Simulation Dashboard panel can be entered in three parameter formats: normal, engineering, and scientific.

In the normal form, a number is entered explicitly, e.g., '1000000' for one million.

In the engineering form, a number is represented as a mantissa (any real number) and a degree index entered in one or more digits according to the table below. For example, one million in the engineering form can be represented as '1meg'.

Prefix Symbol Name and Value
f femto, 10-15
p pico, 10-12
n nano, 10-9
u micro, 10-6
m milli, 10-3
k kilo, 103
meg Mega, 106
g Giga, 109
t Terra, 1012

The scientific number format allows you to represent the number in two parts: the mantissa and the exponent of the degree of 10. The separation of the mantissa and exponent must be done with the Latin letter 'e' – e.g., '1e6' for one million. The mantissa and exponent are defined as real numbers.

Operating Point Analysis

The Operating Point analysis is used to determine the DC operating point of a circuit, with inductors shorted and capacitors opened. This analysis calculates the values of current and voltage balance points in a steady-state circuit operation, the transfer coefficients in DC mode, as well as calculating the poles and zeros of the AC transfer characteristic that is required in other types of calculations.

The Operating Poing analysis is configured in the Operating Poing region of the Simulation Dashboard panel.

Use the Display on schematic buttons to display the calculated values directly on the schematic:

  • Voltage – display node voltages in relation to the reference node
  • Power – display instant power consumed (positive value) or emitted (negative value)
  • Current – display component output current.

After running the analysis, the computed voltage, power, and/or current values will be shown as labels at corresponding nodes.

  • Labels can be moved on the schematics using the click, hold and drag operation.
  • Calculated values can also be shown on the schematic once an Operating Point analysis has been run.

The simulation result document will include the calculations of the probe placed in the circuit.

Values are automatically calculated for all nodes in the circuit. Additional values can be added to the results table from the Sim Data panel. Learn more about Working with Textual Data.

An example of a configured Operating Point analysis for a circuit and the simulation result document is shown below. Note that the result value labels (for enabled voltage and power calculations) that appear after the simulation run are shown in the schematic sheet. An example of adding another calculated value to the simulation result document is also shown.

Javascript

The Node Set device is used to specify the starting voltage for a node in the circuit during a preliminary pass of the operating point analysis. After this initial pass, the restriction is released and the iterations continue to the true bias solution. To use the Node Set device, place the .NS component from the Simulation Generic Components library and then set the Initial Voltage value of the placed component.

This device is not usually necessary in order to achieve convergence in most circuits. However, it may be a useful aid when performing simulations on bistable or astable circuits.

Transfer Function Analysis

The Transfer Function analysis (DC small signal analysis) calculates the DC input resistance, DC output resistance and DC gain, at each voltage node in the circuit.

To perform the Transfer Function analysis, enable the Transfer Function option in the Operating Point region of the Simulation Dashboard panel. Once the option is enabled, the corresponding analysis options are available:

  • Source Name – the small signal input source used as the input reference for the calculations.
  • Reference Node – the node in the circuit used as a reference for the calculations at each specified voltage node. '0' is the reference node (GND by default).

An example of a configured Transfer Function analysis for a circuit and the simulation result document is shown below. In the simulation result document, select the Transfer Function chart by clicking the tab at the bottom of the design space to access the analysis results.

Note that the chart will not display any data initially. The calculated values can be added to the results table from the Sim Data panel. Learn more about Working with Textual Data.
Javascript

Pole-Zero Analysis

The Pole-Zero analysis enables you to determine the stability of a single input, single output linear system, by calculating the poles and/or zeros in the small-signal AC transfer function for the circuit. The DC operating point of the circuit is found and then linearized, small-signal models for all non-linear devices in the circuit are determined. This circuit is then used to find the poles and zeros that satisfy the nominated transfer function.

Pole-Zero analysis works with resistors, capacitors, inductors, linear-controlled sources, independent sources, diodes, BJTs, MOSFETs and JFETs. Transmission lines are not supported.

To perform the Pole-Zero analysis, enable the Pole-Zero Analysis option in the Operating Point region of the Simulation Dashboard panel. Once the option is enabled, the corresponding analysis options are available:

  • Input Node – the positive input node for the circuit.
  • Input Reference Node – the reference node for the input of the circuit.
  • Output Node – the positive output node for the circuit.
  • Output Reference Node – the reference node for the output of the circuit.
  • Analysis Type – allows you to further refine the role of the analysis. Choose to find all poles that satisfy the transfer function for the circuit (Poles Only), all zeros (Zeros Only), or both Poles and Zeros.
  • Transfer Function Type – defines the type of AC small-signal transfer function to be used for the circuit when calculating the poles and/or zeros. There are two types available:
    • V(output)/V(input) – Voltage Gain Transfer Function.
    • V(output)/I(input) – Impedance Transfer Function.
When selecting a node, note that '0' is the reference node (GND by default).

An example of a configured Pole-Zero analysis for a circuit and the simulation result document is shown below. In the simulation result document, select the Pole-Zero Analysis chart by clicking the tab at the bottom of the design space to see the analysis results.

Javascript
The method used in the Pole-Zero analysis is a sub-optimal numerical search. For large circuits, it may take a considerable time or fail to find all poles and zeros. For some circuits, the method becomes "lost" and finds an excessive number of poles or zeros. If there is non-convergence in finding both poles and zeros, refine the analysis to calculate only poles or only zeros.

DC Sweep

The DC Sweep analysis generates output like that of a curve tracer. It performs a series of Operating Point analyses, modifying the values of selected parameters in pre-defined steps, to give a DC transfer curve.

The DC Sweep analysis is configured in the DC Sweep region of the Simulation Dashboard panel.

Click the Add Parameter control to add the parameters to be stepped. It can be the DC value of a voltage or current source, a resistor value, or temperature (Temp). In the FromTo, and Step fields, specify the starting value, the final value, and the incremental value to use over the defined sweep range, respectively.

Multiple parameters may be added to the source, but only the first two parameters in the list that are enabled (using the checkboxes at the left) will be used in calculations.

Use the Output Expressions section to add expressions to be output as waveforms in the simulation result documents (in addition to waveforms for the probes placed in the circuit). Refer to the Adding Output Expressions section to learn more.

An example of a configured DC Sweep analysis for a circuit and the simulation result document is shown below.

Javascript

Transient

The Transient analysis generates output similar to that normally shown on an oscilloscope, computing the transient output variables (voltage or current) as a function of time, over the user-specified time interval or the number of periods. An Operating Point analysis is automatically performed prior to a Transient analysis to determine the DC bias of the circuit, unless the Use Initial Conditions option is enabled.

The Transient analysis is configured in the Transient region of the Simulation Dashboard panel.

Define the time interval / the number of periods for analysis by selecting the required mode and defining corresponding values:

  •  – Interval mode. Define the value for the start and end of the required time interval (in seconds) and the nominal time increment in the FromTo, and Step fields.
  •  – Period mode. Define the value for the start and end of the required time interval (in seconds), the number of periods of a sinusoidal waveform, and the number of data points per sinusoidal waveform period in the FromN Periods, and Points / Period fields.

Use the Output Expressions section to add expressions to be output as waveforms in the simulation result documents (in addition to waveforms for the probes placed in the circuit). Refer to the Adding Output Expressions section to learn more.

Enable the Use Initial Conditions option to use initial conditions to calculate the transient process, bypassing the Operating Point analysis. Use this option when you wish to perform a transient analysis starting from other than the quiescent operating point. The initial condition can be defined for each appropriate component in the schematic (define the value of the corresponding parameter, e.g., Initial Current for an inductor or Initial B-E Voltage or Initial C-E Voltage for a bipolar transistor), or .IC devices can be placed in the circuit (use the Simulate » Place Initial Condition command from the main menus or place the .IC component from the Simulation Generic Components library and then set the Initial Voltage value of the placed component). The IC value of a component overrides an .IC object attached to a net.

An example of a configured Transient analysis for a circuit and the simulation result document is shown below.

Javascript

Fourier Analysis

Fourier analysis of a design is based on the last cycle of transient data captured during a Transient analysis. For example, if the fundamental frequency is 1kHz, then the transient data from the last 1ms cycle would be used for the Fourier analysis.

To perform Fourier analysis, enable the Fourier Analysis option in the Transient region of the Simulation Dashboard panel. Once the option is enabled, the corresponding analysis options are available:

  • Fourier Fundamental Frequency – the frequency of the signal that is being approximated by the sum of sinusoidal waveforms.
  • Fourier Number of Harmonics – the number of harmonics to be considered in the analysis. Each harmonic is an integer multiple of the fundamental frequency. Together with the fundamental frequency sinusoid, the harmonics sum to form the real waveform of the signal being analyzed. The more harmonics involved in the sum, the greater the approximation to the signal's waveform (e.g., summing sinusoids to form a square wave).

An example of a configured Fourier analysis for a circuit and the simulation result document is shown below. The first two plots show waveforms from the Transient analysis of the circuit, while the subsequent plots that are presented on a separate Fourier Analysis chart of the simulation result document show the results of Fourier analysis. The square wave, whose fundamental frequency is 1kHz, is broken down into sinusoids with frequencies that are odd multiples of this frequency (odd harmonics), as shown in the third plot (1kHz, 3kHz, 5kHz, 7kHz, etc) and with amplitudes that decrease with each subsequent harmonic.

Javascript ID: Fourier_AD24

Stress Analysis

This feature is in Open Beta and available when the Simulation.StressAnalysis option is enabled in the Advanced Settings dialog.

Stress analysis is used to calculate operating conditions for each individual component, such as maximum voltages, currents, and power dissipations, and check them against limits defined in the stress model of the component.

The stress model of a component is configured on the Stress tab of the Sim Model dialog accessed for the component's simulation model. From here, you can select the required Device Type and define parameter values, and also define pin mapping between the stress model (which pins are predefined) and the simulation model. Refer to the Single Component Editing page to learn more about stress analysis model configuration.

Derating coefficients that reduce the parameter limit values are calculated based on the stress model parameters. Alternatively, the values can be set on the Stress tab of the Advanced Analysis Settings dialog (accessed by clicking the Settings control in the Analysis Setup & Run region of the Simulation Dashboard panel).

To perform stress analysis, enable the Stress Analysis option in the Transient region of the Simulation Dashboard panel. In the simulation result document, select the Stress chart by clicking the tab at the bottom of the design space to access the analysis results.

Javascript ID: Stress
  • Use the controls at the top of the Stress chart to show only stress analysis results of interest:
    • Use the Search field to show only those results which Component or Parameter include the entered string.
    • Use the Hide Invalid Measurement checkbox to hide results considered invalid (and results with no value).
  • If the Stress chart is not in the simulation result document, you can use the Chart » Create/Update Stress Chart command from the main menus of the SimView editor to add the chart and fill it with data based on the calculations from the transient chart and stress parameters of the components on the schematic. If the stress chart already exists in the document, use the command to update the chart with the latest transient analysis results and the current values of the stress parameters of the components in the schematic.

    Note that when the stress chart is created using the command, it will use the default analysis temperature value of 27°C. If the chart exists (the stress analysis has been performed), the actual analysis temperature will be used.

AC Sweep

The AC Sweep analysis generates output that shows the frequency response of the circuit, calculating the small-signal AC output variables as a function of frequency. It first performs an Operating Point analysis to determine the DC bias of the circuit, replacing the signal source with a fixed amplitude sine wave generator, then analyzing the circuit over the specified frequency range. The desired output of an AC Small Signal analysis is usually a transfer function (voltage gain, trans-impedance, etc.).

Before you can perform an AC Sweep analysis, the circuit schematic must contain at least one signal source with a value entered for the AC Magnitude parameter (the optional AC Phase parameter can be used to define the initial phase). It is this source that is replaced with a sine wave generator during the simulation.

The AC Magnitude parameter must be set for the AC Sweep analysis.
The AC Magnitude parameter must be set for the AC Sweep analysis.

The AC Sweep analysis is configured in the AC Sweep region of the Simulation Dashboard panel.

Define the following parameters for the analysis:

  • Start Frequency – the initial frequency for the sine wave generator (in Hz).
  • End Frequency – the final frequency for the sine wave generator (in Hz).
  • No. Points / Points/Dec / Points/Oct – the incremental value for the sweep range, in conjunction with the chosen Type.
  • Type – the type of data point allocation in the frequency spectrum. The following three types are available:
    • Linear – total number of data points evenly spaced on a linear scale.
    • Decade – number of evenly spaced data points per decade of a log10 scale.
    • Octave – number of evenly spaced data points per octave of a log2 scale.

Use the Output Expressions section to add expressions to be output as waveforms in the simulation result documents (in addition to waveforms for the probes placed in the circuit). Refer to the Adding Output Expressions section to learn more.

When configuring an output expression for an AC Sweep analysis, note that you can select from a range of Complex Functions in the Add Output Expression dialog.

Configure an output expression using complex functions for an AC Sweep analysis
Configure an output expression using complex functions for an AC Sweep analysis

Function Description
Magnitude Returns the magnitude of the wave.
Magnitude (dB) Returns the magnitude of the wave expressed in Decibels.
Real Returns the real component of a complex waveform.
Imaginary Returns the imaginary component of a complex waveform.
Phase (Deg) Returns the phase of the wave expressed in degrees.
Phase (Rad) Returns the phase of the wave expressed in radians.
Group Delay Returns the group delay for the wave.

An example of a configured AC Sweep analysis for a circuit and the simulation result document is shown below.

Javascript

Output voltage, power and current are supported in AC Analysis, including for the following components:

VCVS VCCS CCVS CCCS
VCVS_Table VCCS_Table CCVS_Table CCCS_Table
VCVS_Poly VCCS_Poly CCVS_Poly CCCS_Poly
VCVS_Expr VCCS_Expr CCVS_Expr CCCS_Expr

Noise Analysis

The Noise analysis measures the noise contributions of resistors and semiconductor devices by plotting the Noise Spectral Density, which is the noise measured in Volts squared per Hertz (V2/Hz). Capacitors, inductors, and controlled sources are treated as noise free.

To perform the Noise analysis, enable the Noise Analysis option in the AC Sweep region of the Simulation Dashboard panel. Once the option is enabled, the corresponding analysis options are available:

  • Noise Source – an independent voltage source in the circuit which is to be used as an input reference for the noise calculations.
  • Output Node – the node in the circuit at which the total output noise is to be measured.
  • Ref Node – the node in the circuit used as a reference for calculating the total output noise at the desired Output Node. By default, this parameter is set to '0' (the reference node, GND by default). If set to any other node, the total output noise is calculated as V(Output Node) - V(Reference Node).
  • Points Per Summary – allows you to control which noise measurement is performed. Setting this parameter to 0 will cause input and output noise to be measured only. Setting to a 1 will measure the noise contribution of each component in the circuit.

An example of a configured Noise analysis for a circuit and the simulation result document is shown below.

In the simulation result document, select the Noise Spectral Density chart by clicking the tab at the bottom of the design space and add the required waves to the current plot by selecting the corresponding entry in the Source Data list in the Sim Data panel and clicking the Add Wave to Plot button. The inoise_spectrum waveform (red) shows the total output noise measured at the specified output node, in this case Output. The inoise_spectrum waveform (blue) shows the amount of noise that would have to be injected at the input to obtain the measured output noise at this node.

Similarly, select the Integrated Noise chart by clicking the tab at the bottom of the design space and add the required calculated values to the results table by selecting the corresponding entry in the Source Data list in the Sim Data panel and clicking the Add Wave to Plot button.

Javascript
If the Points Per Summary parameter had been set to 1 instead of 0, the output noise contribution of each applicable component in the circuit would have been measured and the corresponding waveforms for each made available in the Sim Data panel.

S-Parameters Analysis

This feature is in Open Beta and available when the Simulation.SParametersAnalysis option is enabled in the Advanced Settings dialog.

S-parameters (scattering parameters) facilitate an approach for describing networks based on the ratio of incident and reflected microwaves (for a device under test, how much power passes from one port to another and how much power is reflected back). These ratios can be subsequently used to calculate properties of a circuit including input impedance, frequency response and isolation. While analysis of S-parameters is primarily for RF circuits and components, it is equally of use to any circuit with at least two sources (ports).

To perform the S-parameters analysis, enable the S-Parameters Analysis option in the AC Sweep region of the Simulation Dashboard panel. Once the option is enabled, the corresponding analysis options are available. Define the ports (sources) involved and set an impedance for each (default is 50 ohms). If a device has more than two ports, these can be added (using the Add control) and defined accordingly, which will result in more S-parameters involved in the resulting ‘S-matrix.’

The simulation engine also calculates Y-parameters (admittance) and Z-parameters (impedance), which can be added to plots in the chart as desired.

Use the Output Expressions section to add expressions to be output as waveforms in the simulation result documents in the form of s_<m>_<n>y_<m>_<n>, or z_<m>_<n>, for example, s_1_1 or y_1_2.

Once the AC sweep analysis is run, the S-parameters data will be available on the S-parameters Analysis chart in the simulation result document.

An example of a configured S-parameters analysis for a circuit and the simulation result document are shown below.

Javascript ID: SParametersAnalysis

Additional Analyses

A number of additional analysis types are available. The principle of additional calculations is based on going through the values of the parameters within the selected range and executing a series of calculations for each value of the parameters.

Temperature Sweep

The Temperature Sweep feature is used to analyze the circuit at each temperature in a specified range, producing a series of curves, one for each temperature setting.

To perform the Temperature Sweep analysis, enable the Temp. Sweep option at the bottom of the Analysis Setup & Run region of the Simulation Dashboard panel. Click Settings to configure the analysis in the Temperature region on the General tab of the Advanced Analysis Settings dialog that opens using the following parameters:

  • From – the initial temperature of the required sweep range (in Degrees C).
  • To – the final temperature of the required sweep range (in Degrees C).
  • Step – the incremental step to be used in determining the sweep values across the defined sweep range.

An example of a configured AC Sweep analysis for a circuit in conjunction with the Temperature Sweep feature and the simulation result document is shown below.

Javascript

Parameter Sweep

The Parameter Sweep feature allows you to sweep the values of devices, sources and/or temperature in defined increments, over a specified range.

The Parameter Sweep can vary basic components and models – subcircuit data is not varied during the analysis.

To perform the Parameter Sweep analysis, enable the Sweep option at the bottom of the Analysis Setup & Run region of the Simulation Dashboard panel. Click Settings to configure the analysis in the Sweep Parameter region on the General tab of the Advanced Analysis Settings dialog that opens. Click the Add Parameter control to add a parameter to be stepped and select the parameter in the drop-down menu. Select the type of stepped parameter distribution and the fields below to set distribution parameters:

  • Linear – specify the starting value, the final value, and the incremental value to use over the defined sweep range in the FromTo, and Step fields, respectively.
  • Decade – specify the starting value, the final value, and the number of data points by a tenfold order of parameter value change in the FromTo, and Points/Dec fields, respectively.
  • Octave – specify the starting value, the final value, and the number of data points by a double order of parameter value change in the FromTo, and Points/Oct fields, respectively.
  • List – specify a list of required parameter values (separated by space) in the Values field.

Add and configure as many parameters to be stepped as needed.

An example of a configured Transient analysis for a circuit in conjunction with the Parameter Sweep feature and the simulation result document is shown below.

Javascript

Monte Carlo

Monte Carlo analysis allows you to perform multiple simulation runs with component values randomly varied across specified tolerances.

  • The Monte Carlo analysis can vary basic components and models – subcircuit data is not varied during the analysis.
  • Each component is randomly varied independent of other components. For example, if a circuit has two 10K resistors, and the default tolerance is set to 10%, then during the first pass of the simulation, one resistor might have a value of 953Ω, and the other one could be 1022Ω. The program uses a separate and independent random number to generate the value for each component.

To perform the Monte Carlo analysis, enable the Monte Carlo option at the bottom of the Analysis Setup & Run region of the Simulation Dashboard panel. Click Settings to configure the analysis in the Monte Carlo region on the General tab of the Advanced Analysis Settings dialog that opens using the following parameters:

  • Number of Runs – the number of simulation runs you want the simulator to perform. Different device values will be used for each run, within the specified tolerance range. (Default = 5).
  • Distribution – this parameter defines the distribution of values obtained during random number generation. Three distribution types are available:
    • Uniform (Default) – this is a flat distribution. Values are uniformly distributed over the specified tolerance range. For example, for a 1K resistor with a tolerance of 10%, there is an equal chance of the randomly generated value being anywhere between 900Ω and 1100Ω.
    • Gaussian – values are distributed according to a Gaussian (bell-shaped) curve, with the center at the nominal value and the specified tolerance at +/- 3 standard deviations. For a resistor with a value of 1K +/- 10%, the center of the distribution would be at 1000Ω, +3 standard deviations is 1100Ω and -3 standard deviations is 990Ω. With this type of distribution, there is a higher probability that the randomly generated value will be closer to the specified value.
    • Worst Case – this is the same as the Uniform distribution, but only the end points (worst case) of the range are used. For a 1K +/- 10% resistor, the value used would be randomly chosen from the two worst case values of 990Ω and 1100Ω. On any one simulation run there is an equal chance that the high-end worst case value (1100Ω) or low-end worst case value (990 Ω) will be used.
  • Seed – this value is used by the simulator to generate random numbers for the various runs of the analysis. If you want to run a simulation with a different series of random numbers, this value must be changed to another number. (Default = -1).
  • Group Tolerances:
    • Resistor – the tolerance to be observed for resistors. The value is entered as a percentage (Default = 10%).
    • Capacitor – the tolerance to be observed for capacitors. The value is entered as a percentage (Default = 10%).
    • Inductor – the tolerance to be observed for inductors. The value is entered as a percentage (Default = 10%).
    • Transistor – the tolerance to be observed for transistors (beta forward). The value is entered as a percentage (Default = 10%).
    • DC Source – the tolerance to be observed for DC Sources. The value is entered as a percentage (Default = 10%).
    • Digital Tp – the tolerance to be observed for Digital Tp (propagation delay for digital devices). The value is entered as a percentage (Default = 10%). The tolerance is used to determine the allowable range of values that can be generated by the random number generator for a device. For a device with nominal value ValNom, the range can be expressed as ValNom - (Tolerance * ValNom) ... ValNom + (Tolerance * ValNom)

An example of a configured Transient analysis for a circuit in conjunction with the Monte Carlo analysis feature and the simulation result document is shown below.

Javascript

Sensitivity Analysis

The Sensitivity Analysis provides a way of determining which circuit components or factors have the most influence on the output characteristics of a circuit. With this information, you can reduce the influence of negative characteristics, or alternatively, enhance the circuit performance based on positive characteristics. Sensitivity Analysis calculates sensitivities as numeric values of given measurements related to components/model parameters of circuit components, as well as sensitivity to temperature/global parameters. The result of the analysis is a table of the ranged values of sensitivities for each measurement type.

If you choose to calculate the Sensitivity, the Temperature Sweep, Parameter Sweep and Monte Carlo analyses will not be available.

To perform a sensitivity analysis there must be a suitable measurement configured. In the example shown below, the AC Sweep analysis has an output expression set up, dB(v(OUT)), and this output has two measurements configured: BW (BandWidth) and MAX (maximum amplitude). The sensitivity can be calculated for either of these measurements.

To perform the sensitivity analysis, enable the Sensitivity option at the bottom of the Analysis Setup & Run region of the Simulation Dashboard panel. Click Settings to configure the analysis on the Sensitivity tab of the Advanced Analysis Settings dialog that opens. Use the Group Deviations region to define the relative tolerance applied to the component value, for components of that type. Use the Custom Deviations region to analyze the sensitivity of any object with a parametric value that supports sensitivity analysis calculations. All sensitivity settings have a default of 1m, and allow a range of values of 1u to 0.1.

After running the analysis, switch to the Measurements tab of the Sim Data panel in the result document, select the required set of measurement results and click the Sensitivity button to switch to the Sensitivity chart. The sensitivity results are displayed in a table so you can quickly identify the component that has the greatest sensitivity to variations in its value.

Javascript

Finding the Balance between Accuracy and Performance

An important part of the simulation setup is setting the correct values for the ranges used for the simulation.

For example, the defaults may not match the required simulation time needed based on the circuit’s characteristics. As an example, consider a transient characteristic configured with a From - To time interval from 0 to 1u, as shown below.

The Transient time interval has been configured from 0 to 1u.
The Transient time interval has been configured from 0 to 1u.

In this circuit, the source has been configured to have a Period of 1uS, as shown below.

The period of the source is 1u.
The period of the source is 1u.

This Transient range will not allow the circuit to properly simulate given the characteristics of the circuit’s operation, as shown below.

The Transient time range is too short for the Period configured in the source.

Similarly, when the range is wide (for example 0 - 100u), it will also be difficult to analyze the plot, and the time required for the analysis also increases.

The Transient time range is too wide.
The Transient time range is too wide.

Instead, choose a range value greater than the signal period value, for example, 5 periods (0 - 5u). This should be sufficient for the circuit to become stable, but not excessive for this type of calculation.

A suitable time range for a Transient analysis of this circuit.
A suitable time range for a Transient analysis of this circuit.

It is also important to consider selecting a proportional step of values for the calculation or the number of points displayed on the plot. If you select an excessive number of points, the calculation will be slower, and an insufficient number of points will result in inaccurate calculations.

For example, consider the amplitude-frequency characteristics shown below, the first is configured to use 10 points, and the second is configured to use 1000 points. The difference in the number of points used does not make a considerable difference in the calculation time, but significantly increases the accuracy of characteristics.

The analysis results when an insufficient number of points has been used for the calculation.
The analysis results when an insufficient number of points has been used for the calculation.

A suitable number of points has been used for the calculation.
A suitable number of points has been used for the calculation.

To display the analysis data points on the plots, enable the Show Data Points option in the Document Options dialog (Tools » Document Options).

Adding Output Expressions

When configuring some analyses, you can add expressions to be output as waveforms in the simulation result documents (in addition to waveforms for the probes placed in the circuit). To add an expression, click the Add control in the Output Expression section of the required analysis region in the Simulation Dashboard panel. An empty row appears under the currently selected output expression row. Specify the output expression and set the plot number and color. This can be done using the added entry right in the panel, or you can click the  button and select from the list of available Waveforms in the Add Output Expression dialog.

Select the required output expression or define a new function, then configure how that expression is to be plotted.
Select the required output expression or define a new function, then configure how that expression is to be plotted.

The Waveforms region of the dialog provides a list of currently available waveforms and constants. By default, All waveforms are listed. Use the drop-down at the top of the list to apply a filter:

  • Digital – the logical level (0, 1, undefined, high impedance) in a digital node. A node is considered digital if it is connected to a pin of a component with a digital simulation model.
  • Node Voltages – voltages in circuit's nets.
  • Voltages – voltage across components in the circuit.
  • Currents – current through components in the circuit.
  • Powers – powers consumed/emitted by components in the circuit.
  • Charges\Fluxes – charges of capacitors and fluxes of inductivities in the circuit.
  • Conductivities – conductivities of diodes and transistors in the circuit.
  • Constants

You can create mathematical expressions based on any of the source data waveforms using the functions listed below. Note that the functions available will depend on the analysis type run to obtain the waveforms.

The expression can include any combination of available functions and allowed operators. Click a waveform or function entry to add it to the active expression field (Expression X or Expression Y) below. You can also define the expression by typing directly into these fields.

The options at the bottom of the dialog will define how the expression will be plotted in the simulation data file:

  • Name – the name of the output expression.
  • Units – the displayed units of measurement.
  • Plot Number – the sequential number of the plot on which the waveform will be plotted. Select one of the currently defined plots or choose New Plot to create a new plot for the waveform.
  • Axis Number – the sequential number of the Y-axis that the waveform will use. Select one of the currently defined axes or choose New Axis to create a new Y-axis for the waveform.
  • Color – the color of the waveform. If not changed, colors for different waveforms will be assigned automatically in the simulation data file.

The order of output expression lines can be changed using the drag-and-drop technique. Click and hold the left mouse button on the free space of an output expression line to move it up or down in the list.

Available Functions

Configuring and Performing Simulation Measurements

Measurements are a collection of quantities that characterize the behavior and quality of the circuit. The values of the measurements are calculated according to the specified rules by evaluating the characteristics of the waveforms in the circuit. Examples of measurements include bandwidth, gain, rise time, fall time, pulse width, frequency, and period.

Measurements for an output waveform are configured in the Measurements tab of the Add Output Expression dialog. Click the Add Measurement control to add a new measurement and configure it in the entry that appears: measurement's name, type and associated parameters. There are no limits to the number of measurements you can define. Names of added measurements are shown in the entry of the output expression in the Simulation Dashboard panel.

Add required measurements when configuring an output expression.
Add required measurements when configuring an output expression.

Learn more about Adding Output Expressions.

The result data of measurements are displayed on the Measurements tab of the Sim Data panel when exploring the simulation result document. Learn more about Working with Measurement Results.

Global Parameters

Global parameters are used to define the parametric dependence of the electric circuit element's characteristics. As a rule, global parameters are used for the selection of element characteristics before the selection of its final implementation, if the element model allows the use of parametric dependence.

Global parameters are defined in the Global Parameters tab of the Advanced Analysis Settings dialog (accessed by clicking Settings in the Analysis Setup & Run region of the Simulation Dashboard panel). Note that a global parameter can be defined explicitly or using a formula. In the latter case, both parameter value and formula will be shown in the Value column.

Use the Global Parameters tab of the Advanced Analysis Settings dialog to define global parameters for simulation.
Use the Global Parameters tab of the Advanced Analysis Settings dialog to define global parameters for simulation.

Add the expression or global parameter name in the parameter values of components in the circuit – when the simulator detects this, it will attempt to evaluate it, first checking the list of global parameters.

Component values reference global parameters.
Component values reference global parameters.

Since the simulator first checks the list of global parameters for the names used in expressions, any user-defined names have higher priority. For example, if there is a global parameter named pi with value 4, then  pi will be replaced with that value everywhere in expressions; the simulator's internal value for pi will not be used in this case.

Advanced Simulation Options

The Advanced tab of the Advanced Analysis Settings dialog (accessed by clicking Settings in the Analysis Setup & Run region of the Simulation Dashboard panel) enables you to define advanced simulation options, including the values of SPICE variables, the integration method used by the simulator and the simulation reference net.

The Advanced tab of the Advanced Analysis Settings dialog
The Advanced tab of the Advanced Analysis Settings dialog

The top part of this tab lists options that give you direct access to SPICE variables, from where you can change iteration limits, error tolerances, etc. The following details each of the SPICE variables contained in the list.

In general, you should not have to change any of the advanced SPICE parameters on this tab of the dialog for accurate simulation. Only change these options if you have a good understanding of SPICE simulation parameters.
  • To return a numerical option to its default value, clear its currently defined value.
  • When troubleshooting Transient analysis failure, try setting:
    • ABSTOL = RELTOL * (lowest current magnitude in the circuit)
    • VNTOL = RELTOL *  (lowest voltage magnitude in the circuit)
  • Raising the value of GMIN may help with convergence, but decreases accuracy.
  • ITL1 may need to be raised as high as 500 for many circuits.
  • ITL2 may need to be raised as high as 200 for some circuits.
  • ITL3 is not implemented in SPICE3. It is provided for compatibility in creating SPICE2 netlists.
  • Raising ITL4 to 100 or more may help to eliminate "timestep too small" errors improving both convergence and speed.
  • ITL5 is not implemented in SPICE3. It is provided for compatibility in creating SPICE2 netlists.
  • Enabling the KEEPOPINFO option is useful if the circuit is large and you do not want to run a redundant Operating Point Analysis.
  • In the numerical pivoting algorithm, the allowed min pivot is determined by:

    EPSREL = AMAX1(PIVREL * MAXVAL, PIVTOL)

    where MAXVAL is the max element in the column where a pivot is sought (partial pivoting).

  • With respect to the RELTOL option, larger values mean faster simulation time, but less accuracy.

You can define the numerical integration method used for simulations in the Integration method field. The Trapezoidal method is relatively fast and accurate, but tends to oscillate under certain conditions. The Gear methods require longer simulation times, but tend to be more stable. Using a higher gear order theoretically leads to more accurate results, but increases simulation time. The default method is Trapezoidal.

When a simulation is run, all data that is collected for all available signals is referenced to a specific net in the circuit. This net is defined in the Spice Reference Net Name field and, by default, is the GND net. To run a transient simulation which references a net other than ground, enter the net name in this field.

The Digital Supply VCC and Digital Supply VDD settings are not used by the simulator in current versions of Altium Designer.

Running the Analyses

Once the required analysis type(s) are configured, click the corresponding Run button at the right of the analysis name to perform the analysis. The analysis results will be presented in a new document named <ProjectName>.sdf that will automatically open as a document tab.

To run all of the analysis types and display them in the same simulation result document, use the Simulate » Run Simulation command from the main menus (shortcut: F9). The results of each analysis type will be presented on its own chart.

  • You can abort the current simulation analysis and waveform generation in the SimData editor by clicking the  button on the SimView Standard toolbar. The simulation will stop. The waveforms for any collected data will be displayed if they are already generated, up to the point of the abort. In some cases, waveforms will be partially displayed, in other cases, no data will be present.
  • Mixed simulation can be configured to use a dedicated thread to improve interface response time during simulation. This is available when the Simulation.Threads option is enabled in the Advanced Settings dialog (ON by default).
If a circuit will not simulate, identify if the problem is in the circuit or the process of simulation. Refer to the Simulation Troubleshooting page to learn more.
Learn more about Working with Simulation Results.
If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.
Note

The features available depend on your Altium product access level. Compare features included in the various levels of Altium Designer Software Subscription and functionality delivered through applications provided by the Altium 365 platform.

If you don’t see a discussed feature in your software, contact Altium Sales to find out more.

Content