Troubleshooting State-Space Issues

State-space models can exhibit passivity violations and causality violations. These stability issues may be present in the original S-parameter data or introduced by the numerical fitting methods. The following figure illustrates the process for diagnosing these two sources of error.

Flow Chart for Identifying Causality and Passivity Issues

Identifying Causality Problems

Causality violations can lead to errors during the calculation of the rational fit to the S-parameter data. The final error indicates the magnitude of the fitting error.

Before starting transient simulation, Nexxim calculates a causal macromodel that approximates the original data in the frequency domain. If the original data is noncausal, the approximation by the macromodel may not be accurate. The more severe the noncausality, the higher is the fitting error of the approximation. If the fitting error is greater than 10%, transient analysis does not even begin. Even when transient runs, a fitting error greater than 1% can give results that are inaccurate, often to a degree that is unacceptable.

See Causality Checking and Enforcement for further information.

Identifying Passivity Problems

Passivity violations can be detected in the original S-parameter data and rejected if they are serious. Mild passivity errors in the data may persist in the state-space realization, and more serious passivity errors may be introduced by the fitting algorithms. State-space passivity violations may result in errors during Transient analysis such as exponential growth of the voltages at the ports of the S-parameter block or timesteps below minimum.

See Passivity Checking and Enforcement for details

Passivity Issues with SPICE Format S-Parameter Macromodels

A SPICE format S-parameter macromodel can be generated by broadband export from HFSS or SIwave analysis data, or from another tool such as Twin Builder. The macromodel can be placed as an S-parameter element in the schematic. If transient simulation of the circuit fails to converge, while issuing one of the following errors:

Starting stepper failed. Unable to proceed.

Main stepper failed. Unable to proceed.

A likely reason for this failure is a passivity violation in the SPICE format macromodel. However, the solver cannot automatically enforce passivity using the SPICE format. To remedy the situation, you should re-export the SPICE model with passivity enforcement activated , then replace the SPICE format sub-circuit.

Generally, the Touchstone format is the recommended format for passing an S-element to the circuit solver.

See Passivity Checking and Enforcement for more details.