基于CBM-TOF探测器无触发数据获取系统的压缩算法研究

2016-10-13 17:28邓文迪黄光明
核技术 2016年6期
关键词:压缩算法原始数据数据流

邓文迪 黄光明



基于CBM-TOF探测器无触发数据获取系统的压缩算法研究

邓文迪 黄光明

(华中师范大学 物理科学与技术学院 武汉 430079)

针对CBM-TOF (Compression Baryon Material experiment - Time of flight detector)探测器采用的无触发数据获取系统所产生的数据流,本文提出一套完整的数据压缩算法,该算法通过提取数据流中与粒子信息相关的数据,并将数据配对成脉冲信号做进一步的数据筛选来完成。算法通过三个步骤完成对数据的压缩处理,分别是有效性验证、排序及脉宽筛选。有效性验证将初步筛选数据,保留粒子到来的时刻信息(绝对时间/相对时间),再通过后面两个步骤将符合行为的脉冲提取出来。通过压缩来自COSY的束流测试的数据,算法的正确性和有效性得到了验证,数据的压缩率达到94.5%以上,并且完整地保留了有用的数据信息。本算法减轻了无触发数据获取系统链路上数据流的压力,高效快速地将原始数据中有价值的信息提取出来,基本完成了针对CBM-TOF数据预处理的工作要求,对TOF探测器的数据重组有重要的意义。

飞行时间探测器,无触发数据获取系统,数据压缩

粒子在通过不同的探测器时所表现出来的行为都不相同,人们难以找到一个通用的方法去定量识别不同能量等级下的粒子。到目前为止,成百的粒子已经被人们找到,但是其中只有少数粒子可以被探测器直接探测并识别出来,例如g、和。在能够识别这些少数粒子后,人们可以通过测量事件中的关键参数来进行事件重建,进而找出其他的粒子。通过研究发现[1],我们可以通过测量粒子的质量来有效区分这些粒子(例如、、和)。如今人们对这些粒子的质量已经非常了解,所以通过建造探测器测量这些粒子的质量来完成对这些粒子的识别已成为可能。从原则上讲,想要直接测量出粒子的质量是不可能实现的。但是我们可以通过测量粒子的两个动力学参数(其中至少有一个动力学参数与粒子质量相关)最终完成对粒子的识别。通常所测量的粒子的动力学参数为速度、能量或者动量。在高能物理领域有很多方法能够测量粒子的速度,而飞行时间探测技术(Time of Flight, TOF)就是其中的一种。

飞行时间探测器对粒子的识别可以通过直接测量粒子的飞行时间、粒子来自跟踪探测器的动量以及粒子的飞行距离来完成。在飞行时间探测器中,粒子的飞行时间和粒子质量的关系如下:

式中:=L/。我们知道,具有相同动量的不同类型的粒子飞行相同距离所需要的时间取决于它们的粒子质量。在飞行时间探测器中,为了能够有效地探测粒子,需要测量以下三个参数[2]:1) 粒子打击在飞行时间探测器上的位置;2) 粒子到达飞行时间探测器的时刻;3) 碰撞产生粒子的时刻。

我们用第一个参数来算出粒子的飞行距离。而粒子的速度可以利用后面两个参数计算出来。当给定的已知的情况下,可以计算出粒子的质量,从而去识别这些粒子。

将式(1)两边求偏导后整理得到式(2),从式(2)中发现飞行时间探测器能探测到的粒子质量的精度与其系统的整体时间分辨率有关。在高能物理实验中要想区分出各种粒子,探测器就必须提高对粒子质量探测的精度。换句话说就是要对系统的整体时间分辨率有较高的要求。

系统的整体时间分辨率主要由前端探测器的时间分辨率和数据获取系统的时间分辨率共同决定。对于数据获取系统而言,无触发的数据获取系统相较有触发的数据获取系统在时间分辨率上有着明显的优势。在传统的带触发的数据获取系统中,需要通过硬件或者软件方式在系统外部产生触发信号,在将触发信号与获取的数据进行逐一的比对选择出需要的数据。这个过程需要消耗大量的时间,严重影响了系统的时间分辨率。而在无触发的数据获取系统中,由于没有触发信号系统处于自由取数的状态。只要有信号到来就会转换成数据并存储下来,这样整个系统的死区时间只和模拟电路数字电路本身的死区时间有关。所以在当今,随着对时间分辨率要求的提高,更多的数据获取系统都采用了无触发的形式,如PANDA实验中的数据获取系统[2]。而无触发的数据获取系统唯一的缺陷就是会引进大量的时间刻度数据和噪声数据,系统需要提高数据的传输带宽并将获取到的数据逐级地传送到PC端进行分析处理。另外无触发的数据获取系统需要质量较高的时钟系统进行驱动,以确保所有模块的时间同步。

在德国重离子研究中心主导的高能物理实验重子物质压缩实验(Compression Baryon Material experiment, CBM),为了能从高能量高相互作用的粒子碰撞中识别出各种质子、介子等粒子。其选取了TOF作为实验的其中一个子探测器,并为TOF探测器搭建了一套无触发的数据获取系统。本文主要介绍在CBM-TOF上无触发数据获取系统中对原始数据的初步筛选与压缩工作。

1 CBM-TOF探测器及其数据获取链路

CBM-TOF探测器主要目的是通过探测具有高能量的强子相互碰撞后的粒子飞行时间来对各种粒子进行定量的识别。图1为CBM探测器的总体原型,可以看出TOF探测器安装在相对粒子撞击点靠后的位置,这样粒子就会有一定的飞行距离。通过记录粒子的飞行时间即可得到其质量,从而识别各种粒子。在整个实验中我们认为撞击后所有粒子几乎同时从撞击点出发,那么整个实验的起始时间就可以被认定为撞击的瞬间。从撞击的瞬间开始TOF探测器的数据获取系统启动工作并开始计时为1,当粒子经过飞行后撞击到TOF墙后数据获取系统记录其到来时刻为2,那么粒子的飞行时间即为2−1。

需要注意的是整个的CBM-TOF的数据获取系统是无触发的,所以系统从开始工作后就一直输出固定的时间刻度(时间戳)用来记录绝对时间[3],这样整个时间谱就可以被描述如图2所示。从图2中也可以得到粒子到来的时间与撞击开始时间差,即为粒子飞行时间。

图3 CBM-TOF探测器数据获取系统简要框图Fig.3 Simplified block diagram of CBM-TOF data acquisition system.

整个系统产生的数据流形式如图4所示。首先,当系统启动工作后,GET4芯片根据自身的时间轴每隔26.2144ms产生一个时间戳数据(Epoch_data);其次,在每个时间戳内经过GET4-TDC转换的时间沿数据(Edge_data)会被写入到对应的时间戳数据后面;再次,系统会实时地产生监视信息,并穿插在时间戳数据和时间沿数据组成的数据流中。

图4 系统数据流形式Fig.4 Data flow form of system.

图5 原始数据流格式Fig.5 Format of Raw_data.

2 压缩算法的目标

针对CBM-TOF探测器系统的数据流的形式,本文压缩算法的具体目标有下述三个方面的内容:

首先,过滤掉系统产生的描述和监测系统状态的信息(System_message)。这是由于此类型的数据仅被用于辅助、监测和调整整个读出电子学系统的工作状态,而压缩算法需要得到的结果是被探测器系统所探测到的粒子的相关信息(脉冲的到来时刻和宽度),所以这些消息对分析粒子特性没有贡献可以剔除掉[4]。

其次,筛选掉空的时间戳数据。前面提到过,由于整个电子学读出系统采用无触发的数据读出机制,那么当系统启动工作之后就会定时地送出时间戳数据,以此标量整个系统的绝对时间轴[5]。所以在整个工作时间段内探测器会有相当长的时间里没有探测到粒子,从而在几个或几十个时间戳内没有时间沿数据,这样在得到的原始数据流中会出现时间戳的堆叠,也就是说相邻两个时间戳数据之间并没有时间沿数据。我们将数据流中没有时间沿数据跟随的时间戳称为空的时间戳数据。像这样空的时间戳数据只包含系统绝对时间信息,而不包含粒子信息,所以可以被剔除。这样被保留下来的时间戳数据必然是其后跟随有时间沿数据的少数时间戳,这样的时间戳用来记录粒子脉冲到来的绝对时刻。

最后,压缩算法需要对沿数据进行排序和配对建立脉冲数据,并剔除掉无效的沿数据和脉冲数据。由于CBM-TOF读出电子学系统的TDC芯片GET4采用其独有的Taking_raining[6]时间沿读出方式,使得在同一个时间戳内部的时间沿数据(Edge_data)并不完全按照其相对时刻的顺序被送入FIFO中存储,这样被按照FIFO位置顺序取出而生成的原始数据(Raw_data)流中的时间沿数据的位置顺序会出现与时刻点不一致的情况,所以需要利用快速有效的排序将时间沿数据的位置顺序按照相对时刻纠正到正确。排序完成后,时间沿需要按照上升沿和下降沿组合配对成脉冲数据,此时落单的时间沿被剔除掉。数据组成脉冲后还需要按照脉冲宽度的大小进一步进行数据筛选,这是因为前面提到的粒子撞击形成的脉冲的宽度有一定的范围(1−10 ns)[7],在脉冲宽度范围之外的脉冲数据被视为系统的噪声干扰和探测器放电产生的流光脉冲[8]。

综上所述,依据这些目标设计算法可以有效地提取出原始数据流中的有用粒子信息,极大程度压缩数据流的数据量,统计出粒子的基本参数,为后续的物理分析提供便利。

3 压缩算法的实现

算法的总体流程如图6所示,共分三个部分完成。首先,原始数据被按照相应的数据格式逐条读出,对读出的数据做有效性的检验(Validity checking),保留时间戳数据和时间沿数据,并将这两类的数据按照一定的规则分段保存在顺序编号的文件中完成算法第一步;其次,对每个分段内的时间沿数据进行排序,并将空的时间戳数据删除;然后将排列有序的时间沿数据进行配对组合成脉冲数据,并删除落单的时间沿数据;最后,对成形的脉冲数据按照脉冲宽度进行检验,并保留有效宽度内的脉冲数据。另外,在整个算法过程中会植入一些统计,对数据流的数据以及算法的结果进行统计,主要统计时间戳、时间沿个数以及脉冲个数和其脉冲宽度的分布,以便计算出算法的压缩效率。

图6 压缩算法流程总框图Fig.6 Block diagram of compression algorithm.

3.1 数据读入及有效性验证

有效性验证的程序流程图如图7所示。程序通过读取原始数据文件逐条地接收原始数据的信息,然后过滤掉系统的信息数据,并将原始数据中的时间戳数据和时间沿数据按照每5个时间戳为一个时间单位分别放入不同的文件中存储,此时会将非同步的时间戳数据和其后跟随的时间沿数据删除掉,这样当系统因为某些故障导致同步出现问题时不会对这些数据进行处理和保留。在这个过程中得到了按照顺序编号的多个文件,这些文件用来存放属于其时间段内的时间沿数据。当某时间段内没有时间沿数据时,文件就是空文件,也就是上文中提到的连续多个空时间戳内,探测器系统没有探测到粒子的打靶和没有产生时间沿的数据。

图7有效性验证程序流程图Fig.7 Procedure of validity checking.

3.2 排序单元设计

排序程序比较简单,设计思路是按照顺序对步骤1(有效性验证)中整理接收到的文件中的时间沿进行排序。也就是说排序的工作是按照数据流中的时间戳进行分段处理。按照每5个时间戳为一个时间单位,将这个时间单位内部的时间沿数据进行排序。所以在设计时唯一需要考虑的就是排序数组元素的个数order需要大于等于5个时间戳内一个GET4-TDC芯片产生的最大的时间沿数量5−EpochEdge。这里估算方式按照每个通道内最大的粒子打击率为r=250 kHz来计算可得一个时间戳内GET4-TDC芯片产生的最大时间沿数量为:

式中:ep为一个时间戳的时间,26.214 4ms;chn=4,为GET4-TDC数据通道;ed=2,表示一个脉冲产生两个沿数据;考虑到设计余量这里粒子打击率r取300 kHz。由此5个时间戳的沿数据总数最大值可算出为5−EpochEdge=5×1−EpochEdge=315,所以排序数组的长度order取315即可满足数据率的要求。在实际的算法中考虑到数据的余量,将排序数组的大小设置为500,以保证不会出现数据丢失的情况。

3.3 脉冲成型

时间沿数据经过排序后就可以。图8为建立脉冲的程序流程图。建立脉冲的机制是遍历时间段内所有的时间沿,将本时间沿与其相邻的下一个时间沿进行配对,如果两个时间沿满足脉冲的配对关系就将两个时间沿组合成为一个脉冲数据。其中脉冲的配对关系为一个上升沿加上一个下降沿。完成脉冲建立后,脉冲数据所包含的时间信息为脉冲到来时刻(Start_time)和脉冲宽度(Time over threshold, TOT)。在建立脉冲的过程中会出现两种情况:第一种是上升沿和下降沿都在同一个处理时间段内,也就是说两个沿数据在一个文件中;第二种情况是两个时间沿分别在两个处理时间段内,也就是说上升沿在文件中而下降沿在文件+1中。在建立脉冲时两种情况都要考虑,特别是第二种情况,防止出现有效的脉冲信号(横跨两个时间段的脉冲)没有进行匹配而出现丢失数据的情况。

图8建立脉冲程序流程图Fig.8 Procedure of hit building.

4 算法测试与分析

算法的代码是用C语言在Linux系统下的GCC编译器环境下完成的,通过GCC编译器将代码转换成可执行的文件,然后编写控制脚本通过脚本分批地读取原始数据并输入到算法中做压缩,而后得到算法结果。

表1为对原始数据流进行算法后的统计结果。统计的内容包括数据流中总的时间戳数据(Epoch_data)、时间沿数据(Edge_data)以及经过压缩之后得到的有效脉冲数(Hit_data)。其中压缩率的计算为总的时间沿和时间戳数据减去算法保留的脉冲数量与时间沿和时间戳总数的比值,而数据丢失率为有效脉冲数量与总脉冲数量的比值。本次测试的原始数据来源为GSI对CBM-TOF数据系统做的束流测试(Beam_test)数据,数据来源真实可靠。从表1中可以看出,数据的压缩率比较高,算法丢弃掉了大量无用的时间沿数据和时间戳数据。另一方面,对经过压缩算法之后得到的脉冲数据和统计软件给出的有效脉冲的数量做了对比,给出了压缩算法的数据丢失率。可以看出压缩算法对数据流中有效数据信息的丢失率几乎为零,其完整地筛选出了数据流中有用的脉冲信息。

表1 压缩算法结果统计
Table 1 Result of data with compression algorithm.

时间戳数据

Epoch data

时间沿数据
Edge data

总脉冲数据
Total hit

有效脉冲数
Valid hit

数据丢失率

Lost rate

数据压缩率
Compression ratio

181 765

38 897

11 372

11 386

0.123%

94.85%

333 474

5 567

2 576

2 579

0.116%

99.24%

另外,对Hit的脉冲宽度分布做了一个统计,如图9所示。图9横坐标为脉冲宽度的时间,纵坐标为脉冲数量。从图9中可以看出,大部分有效的脉冲宽度都集中在1−5 ns范围内,脉冲宽度达到10ns以上基本少见。根据测试用的MPRC的输出脉冲特点[1],这种脉冲宽度的分布规律符合探测器本身的粒子性能,从侧面反映了压缩算法的正确性。

图9 脉冲宽度的分布图Fig.9 Distribution of pulse witch.

5 结语

根据测试的结果可以看出,本算法基本完成了预期的压缩目标,筛选出了数据流中有用的粒子信息,数据的压缩率达到了94.5%以上。同时,算法统计出了数据流中探测器探测到的粒子脉冲宽度的分布和其他的信息,为以后的物理分析做铺垫。目前算法是在PC机上编写软件实现的对数据的离线处理,日后会移植并放置到可编程逻辑阵列中,实现对数据的在线处理,用于减轻整个数据获取系统传输链路的传输带宽的压力。

1 仇九子. 一台用于重核素测量的能量-飞行时间探测系统[J]. 核电子学与探测技术, 2013, 33(4): 458−461. DOI: 10.3969/j.issn.0258-0934.2013.04.015
QIU Jiuzi. A detector system of energy-time of flight for heavy nuclide[J]. Nuclear Electronics & Detection Technology, 2013, 33(4): 458−461. DOI: 10.3969/j.issn. 0258-0934.2013.04.015

2 Kavatsyuk M, Bremer D, Drexler P,. Trigger-less readout of the PANDA electromagnetic calorimeter[J]. Nuclear Science Symposium and Medical Imaging Conference (NSS/MIC), 2011, 32(4): 43−47. DOI: 10. 1109/NSSMIC.2012.6551420

3 The CBM Collaboration. Technical design report for the CBM[R/OL]. 2015-11-1. http://www.gsi.de/document/ tof-tdr-final.pdf

4 李亮, 邵明, 陈宏芳, 等. MRPC-TOF时间性能和刻度方法的研究[J]. 高能物理与核物理, 2007, 31(6): 576−580. DOI: 10.3321/j.issn:0254-3052.2007.06.012
LI Liang, SHAO Ming, CHEN Hongfang,. Study on MPRC-TOF timing properties and calibration method[J]. High Energy Physics and Nuclear Physics, 2007, 31(6): 576−580. DOI: 10.3321/j.issn:0254-3052.2007.06.012

5 王义, 程建平, 李元景, 等. MRPC宇宙线批量测试方法研究[J]. 高能物理与核物理, 2006, 30(7): 655−659. DOI: 10.3321/j.issn:0254-3052.2006.07.015
WANG Yi, CHEN Jianping, LI Yuanjin,. Research on cosmic ray mass test method of MRPC[J]. High Energy Physics and Nuclear Physics, 2006, 30(7): 655−659. DOI: 10.3321/j.issn:0254-3052.2006.07.015

6 The CBM Collaboration. The FEET TDC board[OL]. 2015-11-6. http://www.gsi.de/document/tof-tdr-final.pdf

7 谢波, 王义, 郭宝鸿, 等. 应用于极深地下实验的RPC及其阻抗测试[J]. 核电子学与探测技术, 2015, 35(5): 448−451. DOI: 10.3969/j.issn.0258-0934.2015.05.008
XIE Bo, WANG Yi, GUO Baohong,. A RPC applied for deep underground research and impedance test[J]. Nuclear Electronics & Detection Technology, 2015, 35(5): 448−451. DOI: 10.3969/j.issn.0258-0934.2015.05.008

8 陈天翔. 宇宙线测试平台及高分辨率MRPC技术研 究[D]. 合肥: 中国科学技术大学, 2015
CHEN Tianxiang. The technology research of cosmic rays test system and high resolution muti-gap resistive plate chambers[D]. Hefei: University of Science and Technology of China, 2015

国家自然科学基金(No.11420101004)资助

Support by National Natural Science Foundation of China (No.11420101004)

Design of data compression algorithm based on CBM-TOF Trigger-less data acquisition system

DENG Wendi HUANG Guangming

(College of Physical Science and Technology, Central China Normal University, Wuhan 430079, China)

Background: In order to further study the high baryon number density area in Quantum Chromodynamics Phase Diagram (QCD), compression baryon material experiment (CBM) and the construction of SIS100/300 accelerator had been launched in Antiprotons and Ion Research Center of Germany. As for time of flight (TOF) which was the sub-detector at CBM experiment, a set of data preprocessing algorithm was designed in this paper, which played a significant role in the electronic readout system of the entire TOF detector. Purpose: The research aimed to design a complete set of data compression algorithm specific to data flow generated by trigger-free data acquisition system of CBM-TOF detector so as to extract data related to the particle information from such data flow and then match them into pulse signals for further data screening. Methods: C programming language was adopted to write the main part of such an algorithm and compiled them into executable files. By writing script, the executable files were invoked to read raw data files of TOF detector which were input into the compression algorithm for processing. In the end, results obtained were saved in files and drawn into charts through statistics. The core of this algorithm could be classified into three parts and they were validity checking, time ordering and time over threshold checking respectively. Under the action of scripts, algorithm screening was carried out for a large amount of raw data one by one in accordance with lengths which had been determined in advance; moreover, useful data relevant with blow particles were also extracted. Results: The compressed raw data were derived from beam testing of COSY in November 2011. For this algorithm, raw data volume was compressed to the maximum extent with a compression ratio of 94.5% and above; in addition, the compression algorithm didn’t lose the useful data including blow information of particles. Conclusion: Regarding this algorithm, not only data flow pressures on trigger-free data acquisition system link were relieved, but also valuable information was extracted from the raw data both efficiently and rapidly. Therefore, operational requirements for CBM-TOF data preprocessing were basically satisfied, which had a great significance for data reconstitution of TOF detector.

TOF, Free stream data acquisition system, Data compression

DENG Wendi, male, born in 1990, graduated from Central China Normal University in 2012, master student, focusing on data processing of free-stream data acquisition system

TL99

10.11889/j.0253-3219.2016.hjs.39.060403

邓文迪,男,1990年出生,2012年毕业于华中师范大学,现为硕士研究生,研究领域为CBM-TOF探测器数据处理

2015-12-08,

2016-03-25

猜你喜欢
压缩算法原始数据数据流
GOLDEN OPPORTUNITY FOR CHINA-INDONESIA COOPERATION
受特定变化趋势限制的传感器数据处理方法研究
汽车维修数据流基础(上)
汽车维修数据流基础(下)
基于参数识别的轨道电路监测数据压缩算法研究
全新Mentor DRS360 平台借助集中式原始数据融合及直接实时传感技术实现5 级自动驾驶
一种基于嵌入式实时操作系统Vxworks下的数据压缩技术
基于数据流聚类的多目标跟踪算法
北医三院 数据流疏通就诊量
基于HBASE的大数据压缩算法的研究