--
AntonioPellegrino - 2023-03-23
SciFi Run Types & Recipes
Introduction
For the operation of the SciFi detector, several types of calibration runs are carried out, through which a number of fundamental parameters
(FEE thresholds and time phases,
SiPM bias, etc.) are determined and routinely updated. In order to try and categorize systematically the type of
calibration runs
(
scans) that are foreseen for the
SciFi operation, we introduce the concept of
SciFi Run Type. This concept is used internally in the SciFi project
and it is not to be confused with what in the LHCb ECS are called
Activities (and internally in the LHCb Online software
run types).
SciFi Run Types are in use in several applications, among the others:
Run Types
The list of
SciFi Run-Types (see also
Nikhef Redmine SciFi Control Wiki
)) is the following:
- SciFi Run Types
- BEAM_TI_SCAN;
- CHARGE_TH_SCAN;
- LIS_TH_SCAN;
- VTTXBIAS_SCAN;
- FPGA_PRBS_BER_TI_SCAN;
- PACIFIC_BER_TI_SCAN;
- PHYSICS.
Each type of run in the list above will require different SciFi operational parameters.
SciFi-specific variables have been created in the
RunInfo node of the
SFECS for the consumption of the DAQFEE system.
The information is stored in the
SfRunInfo
datapoint type and it contains three DPE's:
-
SF_SfRunInfo.SFRunType
: SciFi Run Type;
-
SF_SfRunInfo.FERecipe
: DAQFEE Recipe Name;
-
SF_SfRunInfo.SFScanConfig
: DAQFEE Scan Name.
This information is filled by the
SFECS Operator through a panel with pop-down menu's.
SciFi Run-Type Selection
When standalone SciFi runs are taken with
SFECS, while the rest of the ECS software follows the usual procedure to determine the
system-specific recipes from the
Activity string,
the DAQFEE control software follows a
custom procedure based on the
SciFi-Specific RunInfo.
The SciFi operator is requested to fill in the
SciFi-Specific RunInfo through a pop-down menu in the SFECS FSM top panel.
N.B.
- The FSM CONFIGURE is sent as usually from the SFECS top node, with the Activity string still passed on to all FSM nodes, even if it is not used to configure the front-ends in stand-alone runs.
- For runs taken in LHCb global mode, the DAQFEE systems will revert back to the usual mechanism based on the Activity string.
At run time, the
SFECS FSM automatically performs the following actions:
- check if the SFScanName input string matches an existing scan name (scan names are created by the Scan Creator,
and check that the SciFi Run Type associated to the selected scan matches
the SFRunType selected in the panel. If either check fails, a pop-up error message appears and no further actions are taken;
- check that the DAQFEE-recipe input string matches an existing recipe (the list of all DAQFEE recipes is in the
SciFiOnlineDataBases#Recipe_Creation_Table[Recipe Creation Table]] in the SciFi Online DB), and
check the SciFi Run Type associated to the selected recipe matches the SFRunType selected in the panel.
If either check fails, a pop-up error message appears and no further actions are taken;
- if the above checks are passed, set the
SF_SfRunInfo.SFRunType
, SF_SfRunInfo.SFScanConfig
and SF_SfRunInfo.FERecipe
DPE values
from the user-input fields in the panel and trigger a RESET of the FE nodes.
Calibration Run Table Update
By
calibration run (a.k.a.
scan) we mean a run which is not of type
PHYSICS, i.e.
SF_SfRunInfo.SFRunType = { BEAM_TI_SCAN, CHARGE_TH_SCAN, LIS_TH_SCAN, VTTXBIAS_SCAN, FPGA_PRBS_BER_TI_SCAN, PACIFIC_BER_TI_SCAN }
. These calibration runs are vital to
maintain optimal values for several parameters of the SciFi FE Electronics. Given their importance, every time that a standalone run of this type is started by the
SF ECS Operator, a set of
real-time information concerning the run is automatically saved into a dedicated
Calibration-Run Table in the
SciFi Online DB:
Time Stamp, SciFi Run Type, DAQFEE Recipe Name, SiPM Over-Voltage, SiPM Temperature
.
By
automatically we mean that it is the SFECS FSM that performs the writing into the
Calibration-Run Table.
Specifications for Karol/Ton:
- the writing should be done when
Time Stamp, SciFi Run Type, DAQFEE Recipe Name, SiPM Over-Voltage, SiPM Temperature
are actually settled down
(when run is ACTIVE?)
-
SciFi Run Type
and DAQFEE Recipe Name
should be taken from the SciFi-Specific RunInfo;
-
SiPM Over-Voltage
and SiPM Temperature
should be taken from one-valued data points. Preema should have created them already, in any case I strongly recommend that
you check that the last update of these data points is not too long ago (?);
- the DB writing should be non-blocking, i.e. FSM actions and state changes should continue while the DB writing happens in the background;
- print a meaningful log message that the DB entry creation succeeded.