How does Back-annotation Work?

The initial condition file specifies the value of initial conditions for each device that requires them. This information must then be applied to each schematic instance in an appropriate manner. Two basic approaches are used to apply the initial condition values depending on the device:

  • Specialised method
  • Generic method.

In the specialised method, a special script is called which edits one or more properties of the schematic instance. For example, with a capacitor, the VALUE property is edited so that the IC parameter is specified or modified. Something similar is done for inductors. This action is done using a special script specified by the INIT_SCRIPT property. In the case of the capacitor, the ic_reactive script is called.

  • The advantage of the specialised method is that the device can be modified in a manner that is consistent with its existing user interface. Capacitors already have user-editable initial conditions and the application of back-annotated initial conditions is compatible with this.
  • The disadvantage of the specialised method is that a method of applying the back-annotated value needs to be developed for every different type of device. This would not be acceptable for most users who develop their own symbols. The generic method overcomes this difficulty.

The generic method modifies the properties so that additional netlist lines are created containing the .INIT simulator command that defines the initial conditions. To achieve this, the SIMPLIS_TEMPLATE property needs to be modified and as long as this isn’t protected , the generic method will always work.