The HCAL Data Concentrator Card (DCC) is
responsible for buffering the data which is transmitted to the central DAQ and
for providing "spy" data over VME to the HCAL system. The libhcalDCC.so library handles the direct VME communication with the DCC using the
CMS Hardware Abstraction Library (HAL). The libhcalDCC.so library provides all functionality required to:
Perform the VME address mapping of the PCI
devices in a DCC
Handle the PCI initialization of the DCC
Prepare the DCC for data-taking over the VME
bus or the S-LINK
Readout the DCC over the VME bus
Access the Link Receiver Boards (LRB) data
directly, i.e. bypassing the logic board
Control the Link
Transmitter Boards (LTB), e.g. it is possible to simulate fake trigger HTRs
using the LTBs
In-system re-programmability of the flash
memory of PCI devices
In-system
re-programmability of PCI devices thru the VME backplane using the JTAG
protocol
Diagnose DCC problems like the RAM test
Analyze and unpack events
Check the
integrity of the DCC data, e.g. CRC, matching of HTR-DCC event numbers, etc.
The list of class in the library and a
short description can be found here.
The library can be used separately from
the HCAL xDAQ by compiling it with the "STANDALONE" preprocessor
flag.
Fernando Varela (Boston University)