Abstract

This paper presents a compression system optimized for the reduction of data from pulse digitizing electronics. Such systems are widely used in High Energy Physics experiments for the collection of signals from calorimeters, Time Projection Chambers and in general all detectors that produce a signal amplified and/or shaped to a linear pulse. The Time Projection Chamber of the ALICE experiment will be used as an illustration of our method, which we believe is widely adaptable to other data acquisition chains in High Energy Physics. To go beyond what can be achieved by conventional lossless compression schemes, which are ultimately limited by the intrinsic entropy of the incoming data, the proposed compression method makes use of a new scheme where instead of handling the data from the ADC as individual uncorrelated samples, an entire vector of samples is compressed. Our method works by first approximating the incoming vectors formed by the digitization of the shaped pulses with a set of digitized reference vectors stored in a memory and retaining only the differences between these vectors using Huffman compression. In standard data compression language, this corresponds to a vector quantization combined with Huffman coding. The performance of the described compression method was first evaluated by modeling the algorithm in Matlab using input data measured from the TPC in the ALICE experiment. A compression of 49% has been achieved. It has to be noted that the entropy computed on these same 10 bit original data was only 6.2 bit/symbol thus allowing a maximum compression factor of 38% only. The compression method was subsequently modeled in Verilog and synthesized to be combined with the other logic in the actual Read-out Control Unit of the ALICE TPC. First tests with actual hardware were performed using a Virtex-4 development board running at 80 MHz. The results showing the efficiency of the implementation using cosmic ray data are presented. The algorithm is executed in this hardware with a latency of around 24 clock cycles at 40 MHz and takes about 2000 logic slices to be implemented.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.