MasterFIP - Gateware

Following the evaluation of different implementation solutions, the technical choice for the design was the use of Mock Turtle (also referred to as White Rabbit Node Core).

Mock Turtle is a HDL core of a generic distributed control system node, based on multiple deterministic CPU cores where the users can run any sort of hard real time applications.
The applications can be written in bare metal C, using standard GNU tool set, cross-compiled and loaded into the CPUs. The CPUs can communicate between each other through
a dedicated Shared Memory and with the host through Host Message Queues.The following figure illustrates the SPEC FPGA gateware architecture, spec_masterfip_mt.


Overview of the gateware architecture of the fmc-masterfip on a SPEC carrier*

The top entity consists of two main blocks: the spec_node_template*, which is the Mock Turtle top level for SPEC, and the application-specific fmc-masterFIP_core.
The communication between the two modules is through wishbone.

On one side (red arrows) the fmc_masterfip_core is the interface to the FMC hardware i.e. FielDrive chip, external pulse LEMO, 1-wire DS18B20 chip, LEDs.
On the other side (blue line) it provides a set of wbgen2 -generated control and status registers, to interface through wishbone with the Mock Turtle.

The fmc_masterfip_core core ignores the notion of the WorldFIP frame type (ID_DAT/RT_DAT/..etc), or the macrocycle sequence and macrocycle timing; the sw running on the
Mock Turtle CPUs is responsible for managing these aspects and for providing to this core all the payload bytes (coming from the host) that have to be serializedand or
for enabling the deserializer and then providing to the host the deserialized bytes.

Contact

Evangelia Gousiou