Execution rates

Overview of how execution rates are handled within Typhoon HIL Control Center software

Signal Processing components currently support only discrete time execution rates.

The execution rate is defined on a per-component basis. A component with an inherited execution rate will be assigned a sample time based on the sample times of the components it is connected to. Execution rate inheritance is done in two steps:
  • Forward propagation: sample time is inherited from the components connected to the input terminals. Always performed first.
  • Backward propagation: sample time is inherited from the components connected to the output terminals. Performed in cases when the execution rate could not be resolved using the forward propagation method.

Models can contain components with different execution rates. All execution rates have to be integer multiples of the fastest execution rate. The fastest component execution rate can be specified arbitrarily.

In real time simulation, if the specified fastest execution rate is not an integer multiple of the HIL device clock, it will be rounded to the nearest integer multiple of the HIL device clock. All other execution rates will be adjusted accordingly. More information about analog and digital IO voltage levels of different HIL devices can be found in their respective documentation pages in the Hardware Manual.

The maximum number of execution rates is limited to 4.

Note: For real time simulation, System CPU models run at two discrete execution rates and their default values are 100 µs and 50 ms. Those values can be modified from the Schematic Editor -> Schematic Settings panel.

When the model is executed in real time, it is required that all execution-rate-related computations are completed within the defined simulation step. In case that the model takes longer to compute, an overrun condition will occur resulting in inaccurate simulation results. To detect such a situation, the workload on every execution rate is monitored by dedicated hardware logic. Time-slot-utilization information is visualized in the HIL SCADA application. Computing interval overrun conditions are explicitly signaled using the dedicated CIO flag. For more information, please refer to the HIL SCADA Status Bar documentation.

Setting execution rates for individual components

Type in the desired signal processing execution rate. This value must be compatible with other signal processing components of the same circuit: the value must be a multiple of the fastest execution rate in the circuit. There can be up to four different execution rates. To specify the execution rate, you can use either decimal (e.g. 0.001) or exponential values (e.g. 1e-3) in seconds. Alternatively, you can type in ‘inherit’ in which case the component will be assigned execution rate based on the execution rate of the components it is receiving input from.