"wr-unipz" is a component of the MIL-based UNILAC 'Pulszentrale' (UNIPZ). As a field-bus, it does not use the MIL 'Event' bus but a White Rabbit network. Logically, wr-unipz
is identical and on the same level as the seven 'Pulszentralen' (PZ) of the UNILAC timing system. As for the other PZ, data supply and 50 Hz synchronization are provided through the 'Super Pulszentrale' (SPZ) of the UNILAC timing system. For technical and conceptual reasons, the UNILAC timing system and the GSI/FAIR General Machine Timing system (GMT) must use two distinct White Rabbit networks.
- Users at UNILAC
- identical interface as for the FAIR timing system
- same timing receivers (SCU, Pexaria...)
- same drivers, Etherbone tools, saftlib
- timing messages have a 'UNILAC dialect', see here
- there are just UNILAC events and no such thing as CMD_SEQ_START ...
Integration of White Rabbit Pulszentrale into UNILAC Pulszentrale. Shown are the existing components Settings Management
(grey box), Super Pulszentrale
(light green box), Pulszentralen 1..7 (green boxes) and the new White Rabbit Pulszentrale
(blue box). As well shown are MIL event bus
lines (green arrows), a White Rabbit network
(blue arrows) as well as connections from Super Pulszentrale to PZs (black arrows). Details see text.
Today (2020) the UNILAC is still operated using the 'old GSI control system' Device Access
. The timing system is based on a so-called MIL Event Bus
with a Pulszentrale
(PZ) as master. UNILAC has seven timing areas with one PZ each. Thus, there are seven distinct MIL cables, one for each PZ. The seven PZs are coordinated via the Super Pulszentrale
(SPZ), which has two tasks.
- It supplies the PZs with data. The data contain information for up to 16 independent virtual accelerators (VACC). For each VACC there are two distinct sets of data (called 'Kanäle'), one for normal operation and one for low intensity operation ('verkürzt', 'Profilgitterschutz'). In total the SPZ needs to provide 7 * 16 * 2 = 224 event sequences. Each sequence is a list of event data and a time offset relative to the beginning of a UNILAC cycle. SPZ transmits the data to the PZs using Device Access via the standard ACC network.
- SPZ and the PZs are interconnected via an internal MIL event bus. SPZ uses this internal bus for various purposes:
- announce event: announces the virtual accelerator number that must be played for a specific PZ during the next cycle; there may be up to seven of these events per cycle (one for each PZ)
- cycle start event: starts the next UNILAC cycle. Each cycle has a length of ~20ms (50 Hz); there is one event per cycle starting the event sequences at (up to) seven PZs simultaneously
- service event: service events are played after the event sequence (at a PZ) has been completed, there is one event for each service event to be sent
- synch data event: if new data have been supplied via Device Access, they will become active during the next cycle; this event is processed by all PZs
The White Rabbit PZ
just behaves like the seven PZ. It is supplied via Device Access and is connected to the internal MIL Event Bus to receive the events from SPZ. There are two main difference to the seven PZs.
- there is only one White Rabbit network for all seven timing areas at UNILAC
- White Rabbit PZ uses the concept of an alarm based timing system unlike the seven PZs, that are event based