These pages is a very brief description of the DAQ, which is used to control and readout the AHCAL technological prototype. Details are in the sub-pages.
There are currently 2 generations of DAQ interfaces, that differ in the FPGA type used on the DIF (Detector InterFace board). Despite some differences in the power control, the older generation of DAQ interface is still compatible with the latest software. However the timing is different, therefore it is not easy to mix both generation of DAQ modules in single setup.
The DAQ is at the moment supporting SPIROC readout chips in generations: SPIROC 2B, (2D) and 2E. It is possible to mix different generation of SPIROCs in a single setup.
The AHCAL module / layer can be controlled through 2 interfaces: directly via USB cable or via HDMI cable and dedicated DAQ hardware. Both interface can be even used together, but only one interface can be active at the time. The DIF automatically recognize the last interface, from which it received commands last time and uses this interface for answers.
Older generation (DIF1) uses full-size USB connector, newer generation uses mini-hdmi connector. The USB interface is hosted by a FTDI chip on the DIF board.
Communication is done via Labview under Windows and a single layer only. The output is TXT file (TODO maybe still DAT format available?).
Running multiple layers with USB interfaces is very difficult. In 2014 and before, a multi-USB labview was used to readout multiple layers via USB, but it was quite delicate to keep running and HDMI cables with more DAQ hardware components (LDA, CCC) had to be used to distribute the trigger, clock and start acquisition signal (level). Running multiple layers with USB is highly discouraged.
For DIF1 there is a possibility to use a lemo TTL input as a trigger validation in addition to the trigger validation sent over the HDMI cable. The DIF2 doesn't have a dedicated trigger input.
The HDMI setup requires additional component for proper operation: CCC and LDA (either mini-LDA or wing-LDA versions). This setup ensures, that
- all AHCAL modules are running the same 40 MHz clock
- all modules start the acquisition at the same clock edge
- triggers are distributed to all connected AHCAL modules
- if one module fills its memory cell, all other modules are stopped
- Acquisition is gated with the spill signal (if needed)
5 pairs of the HDMI connector are used for controlling and readout. The protocol is proprietary: 10 MBit/s serial + level signals.
The HDMI DAQ components communicate via Ethernet and TCP/IP protocol. Currently, we have only Labview control program, that can directly talk to the LDA and CCC. The Labview then works as a data proxy for EUDAQ software. The Labview can be used to store data to the TXT file with limited number of controlled SPIROCs in the system (256). EUDAQ can dump the raw data, and process the data to slcio events.
HDMI connector pinout
purpose LDA <=>CCC
CCC -> DIF
data + fast commands
CCC -> DIF
DIF -> CCC
DIF -> LDA
CCC -> DIF
AHCAL uses EUDAQ as a central DAQ, which can combine the data from more detectors. The EUDAQ does a simple event building, which ensures that everything from a same time frame (4 us typically) is put into a single event. Though the EUDAQ compiles on Windows, Linux compilation is much more stable and therefore recommended.
Data quality monitoring
Primary data quality monitoring tool is DQM4HEP, however direct streaming of the data from EUDAQ is not yet implemented. It provides basic observables and hitmaps, but uses uncalibrated dat.
Addition raw tools are available.
- AHCAL: Analogue Hadron Calorimeter
- DIF: Detector Interface
- LDA: Link Data Aggregator: main AHCAL data concentrator
- CCC: Clock and control card
- SPIROC: Silicon PM Integrated Read Out Chip - a low-power readout chip designed by Omega group
- FPGA: Field-programmable gate array:
- HDMI: high-definition multimedia interface: a standard for connector and communication protocol. Only the mechanical connectors are used in AHCAL
- DL2D: Data LDA 2 DIF
- DD2L: Data DIF 2 LDA
- SPD2L: Spare DIF 2 LDA
- SPL2D: Spare LDA 2 DIF