Document

Device software interface to the
RunControl
Nicolas Lurkin
School of Physics and Astronomy, University of Birmingham
TDAQ Meeting – CERN, 04/06/2014
Outline




Description (Note NA62-14-02)
Library
Status
Links
TDAQ Meeting – 04-06-2014
2
Description
Generally good description in the note NA62-14-02.
 Modelling the device as a finite state machine
 Spontaneous transitions to ERROR
 Transitions to other states when RunControl issues commands
TDAQ Meeting – 04-06-2014
3
Description
 Communication between RunControl and device through DIM.
 Standard commands interface (RC -> Device):
• dimServerName/Command : command from RC
• dimServerName/FileContent : configuration file path
• dimServerName/RequestConfig : request for configuration
 Standard services interface (Device -> RC)
• dimServerName/State : report FSM state
• dimServerName/Info : transmit output to operator
• dimServerName/Logging : logging to database
• dimServerName/Config : file path to the current
configuration
TDAQ Meeting – 04-06-2014
4
Description
 Configuration procedure:
1. RC issues command to device
Command [arg1 [arg2] […]]
2. After receiving command, the device can wait for a
configuration file. If no configuration file is expected, move
to point 4.
3. After receiving the configuration file, it is decoded and
applied.
4. The devices executes the actions required to move to the
next state and update the State service to inform the
RunControl.
TDAQ Meeting – 04-06-2014
5
Description
 Configuration procedure:
1. RC issues command to device
Command [arg1 [arg2] […]]
2. After receiving command, the device can wait for a
configuration file. If no configuration file is expected, move
to point 4.
3. After receiving the configuration file, it is decoded and
applied.
4. The devices executes the actions required to move to the
next state and update the State service to inform the
RunControl.
Some differences here compared to the Note (next slide)
TDAQ Meeting – 04-06-2014
6
Description
Changes from note:
 FileContent command:
RunControl gets the configuration file from database, transmits the
content through DIM, writes it on a common nfs space and transmits the
path through DIM.
 Config command:
When requested the device generates a file (using the same format as
the input configuration file) containing the current configuration and
transmits the content of this file through DIM, writes the file on a
common nfs space and transmits the path through DIM.
The common nfs space is mounted on lkrpn0:/home/RCconfig
TDAQ Meeting – 04-06-2014
7
Library
A library has been developed to cover most of this procedure. As a
user you just have to extend the library to cover the features specific
to your device.
• Available in C and C++
• Implements the FSM, DIM commands and services (default
behaviour).
 Extend the library to modify default command behaviour and/or
complement it
 Extend the library to implement config file handling: decoding file
(using XMLconfig[1]?) and applying configuration
 Extend the library to generate the configuration report.
[1] V. Cerny, XMLconfig: A Scheme for NA62 configuration files, NA62 Note NA62-13-11.
TDAQ Meeting – 04-06-2014
8
Status




Implementation for TALK board : use as example
Implementation for TEL62 : to be tested
Implementation for LKr: ongoing, to be tested
Implementation for L0TP : started discussion with Torino
 Others (GigaTracker, Straw) : Nothing?
Anything beyond the standard interface is welcome but requires work
on the RunControl side -> interact with me early enough to give me
enough time to implement it.
TDAQ Meeting – 04-06-2014
9
Links
Note :
https://na62.web.cern.ch/NA62/restricted/NotesDoc/NA6214-02.pdf
Library twiki page:
https://twiki.cern.ch/twiki/bin/view/NA62/RunControlNote
Library documentation:
https://nlurkin.web.cern.ch/nlurkin/NA62DimServer/
TDAQ Meeting – 04-06-2014
10