Updated PLUME decoding in HLT2
This MR implements a new version of the decoding for PLUME in HLT2 needed since the deployment of the new tell40 firmware.
The decoding version implemented is based on the raw banks Version: 4
(little endian) of the new tell40 firmware. This version of the firmware (and thus of the decoding) will be the standard for PLUME from now on.
Each PLUME channel is encoded by the tell40 output stream in a 32 bit word, e.g. 02F10B08
that is then converted to 080BF102
by the PlumeRawToDigits.cpp
source code. The same code decodes the 32 bit number according to the following convention:
- 1 bit overthreshold
- 19 bit pedestal subtracted ADC count
- 12 bit original ADC count from FEB (not pedestal subtracted)
The 19 bit pedestal subtracted ADC count is an integer number multiplied by 128 in the tell40 firmware to preserve 2 decimal digits precision. This is not strictly needed for HLT2 monitoring, but we used this instead of the original 12 bit since the pedestal subtraction that is performed in the tell40 and it's more precise than the standard one. The numbers, once divided by 128, are then rounded to the nearest integer.
The same format is used for all the PMTs installed in PLUME, irrespective of their job (LUMI
, MON
, PIN
or TIME
).
The LUMI
PMTs are contained in the first 22 channels [0-21] of banks 0x5001
and 0x5002
. The PIN
PMTs are contained in the last 8 channels [24-31] of bank 0x5001
, while the MON
PMTs are contained in channels [24-27] of bank 0x5002
.
This configuration has been adopted to allow all the LUMI
, MON
and PIN
channels to fit in the first two banks.
Finally, the TIME
PMTs are encoded in all the 32 channels [0-31] of banks 0x5003
and 0x5004
. The lines related to the use of coincidences have been removed from PlumeRawToDigits.cpp
as they will not be used anymore for detector operation.
The PlumeDigitMonitor.cpp
script fills some histograms needed for monitoring purposes. The main change with respect to previous versions is the removal of coincidences (no longer used) used as a pre-condition to fill the LUMI
histograms, i.e. now the ADC 1D histograms related to the luminosity measurement contain the ADC counts from the tell40 without any cut. Some other histograms have been added, as for example the pedestal values for each PMT.
The decoding has been tested on a mdf file created with PLUME in local.
Depends on LHCb!4435 (merged), lhcb-datapkg/PRConfig!391 (merged) and MooreOnline!332 (merged)