FPGA solver basics

This section describes the FPGA solver basics, including Standard Processing Cores, signal generators, LUT (Look-up-table), machine solver and PWM modulator.

FPGA solver computational elements are depicted in Figure 1. Other functional elements are omitted for simplicity. The architecture is scalable and is used on all Typhoon HIL devices where it is available in a number of different configurations in order to make the best use of available FPGA resources. Configurations are tailored for specific application domains and they differ in number and size of computational elements.

Figure 1: FPGA solver processing resources

SPC

SPC (Standard Processing Core) is a basic building block of the circuit solver. It is in charge of simulating electrical circuits consisting of:

  • linear passive elements - both constant and time varying[1],
  • converter blocks consisting of ideal switches,
  • contactors based on ideal and non-ideal switches[2],

SPC blocks are interconnected through dedicated communication lines which allows them to exchange variables with a single simulation step delay.

[1] Time varying elements support is optional and may not exist in all configurations

[2] Non-ideal switch support is optional and may not exist in all configurations

Signal generator

Signal generator block is in charge of generating arbitrary waveforms at the full simulation rate. It is mainly used for independent voltage and current sources. It employs linear interpolation in cases when waveform sample rate is lower that the simulation rate. The number of signal generator channels depends on the solver configuration.

LUT

Look-up-table unit is used to simulate behavior of nonlinear elements such as the PV panel, battery and saturable transformer. A number of LUT channels depends on the solver configuration.

Machine solver

Machine solver emulates a single electrical machine model including its electromagnetic part, mechanical part and speed measurement devices such as an encoder and resolver. A number of machine solvers depends on the solver configuration.

PWM modulator

The multi-channel triangular PWM modulator can be used both internally, to drive internal converter models, and externally, through digital outputs. It runs on FPGA internal clock (typically 150 MHz) and features a built-in dead time generator. The number of PWM channels depends on the solver configuration.