Figure: Building blocks required for a single 'timing event' Bang!. Components of the General Machine Timing (GMT) are shown in blue. Components required to generate settings for the GMT are shown in green. The flow of data from the 'Machine Model' to a 'Timing Receiver' is indicated with red arrows. Other infrastructure (grey boxes) and data flow (black arrows) is important too.

Principle of the GMT
As the GMT is an alarm based system, a timing message is broadcast by the Data Master via the White Rabbit network to all nodes ahead of time. The timing messages contains and event ID and a due time. If a Timing Receiver (TR) is configured for the received event ID, an alarm is set at the TR. On-time, a timing event executes a local action at the TR.

Data Master and Upper Layers
A physical machine model is created for each machine (ion source, linac, ring, transfer line ...) of the accelerator complex. This happens off-line and takes a long time (weeks, months, years). When a beam is requested by applications in the main control room, the settings management system LSA uses the relevant machine model(s) to calculate appropriate settings, which are downloaded to the Front-End Computers (FECs). LSA is an off-line system and settings generation and subsequent data supply typically take a few seconds.

A special FEC is the the one that hosts the Generator of the GMT, which receives so-called patterns from LSA. If the patterns may be executed, the Generator sends the patterns as binary data to the FPGA of the Data Master. If supplied with data, the patterns are executed. Typically, patterns contain distinct alternatives. It is the task of the Beam Scheduling System (BSS) to select alternatives. The BSS decides based on input from control room applications and input from other sources such as the Master Accelerator Status Processor (not shown in the figure above). The BSS alters schedule execution by sending commands to the Data Master via the Generator.

The Data Master executes the schedule in hard real-time by broadcasting timing messages, typically 1ms ahead of their due time.


-- DietrichBeck - 08 Nov 2018

Topic revision: r4 - 13 Nov 2018, DietrichBeck
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback