-
HIRFL-CSR[1-3]是一个应用于科学研究的重大科学工程,主要由主环(CSRm)[4]、实验环(CSRe)[5]和将两个环链接在一起的放射性束线(RIBLL2)组成[6-8]。束流在CSRm中积累、冷却、加速,注入到RIBLL2,打靶产生放射性束,经RIBLL2注入CSRe引至外靶终端进行CSR外靶实验。CSR外靶实验装置由塑料闪烁探测器(SC2)、靶区
$\gamma $ 阵列探测器($\gamma $ Array)、若干个多丝漂移室(MWDC)[9]、大型中子墙(NW)[10]探测器、飞行时间墙(TOFW)探测器构成。$\gamma $ 球阵列探测器一期工程由1 024块CsI晶体[11]探测单元组成,它是外靶实验的核心探测器,主要研究放射性束退激产生的$\gamma $ 射线的能量等信息[12]。外靶实验设计了专用于
$\gamma $ 球阵列探测器的读出电子学系统,总体由Front-end Electronics模块、ADC Sampling模块、Data Summary模块、Clock模块、上行子触发系统(Uplink Sub-Trigger System, USTS)、下行子触发系统(Downlink Sub-Trigger System, DSTS)、总触发系统(Global Trigger System, GTS)等七部分构成,如图1所示。整个$\gamma $ 球阵列探测器的读出电子学系统工作模式是:$\gamma $ 球阵列探测器探测的1 024个输出通道分成32组,每组32个输出通道的$\gamma $ 信号经过Front-end Electronics模块完成电压信号的放大,放大后的32路$\gamma $ 电压信号通过线缆给到ADC Sampling模块中完成波形数字化得到触发信号。将32路触发信号通过LEMO同轴线传输到USTS中完成子触发信息的产生(若32路信号为无效粒子的触发信号时,不会产生子触发信息)。子触发信息通过光纤传输到GTS中完成总触发判决,若子触发信息符合总触发判决要求,继续通过光纤将子触发信息传输到DSTS中产生33路100 ns的触发脉冲信号,分别将32路100 ns的触发脉冲信号通过LEMO同轴线反馈到ADC Sampling模块中,告知此时各通道的触发信号是否为真实有效数据,从而完成数据的读出。1路100 ns的触发脉冲通过LEMO同轴线反馈到Data Summary模块中,完成ADC Sampling模块读出的数据通过光纤传输到Data Summary模块中的汇总。其中Clock模块向各个测量系统提供40 MHz的系统同步时钟。由于束流实验过程中产生的次级粒子,除了实验需要的有用粒子,还会有许多无用的次级粒子也会被${\gamma}$ 球阵列探测器探测到,如果实验过程不对有效信息进行判选和辨别,将会对数据获取系统造成极大压力,所以加入${\gamma} $ 球阵列探测器子触发系统的判选是保证实验过程顺利进行的必要条件。$\gamma $ 球阵列探测器触发判选系统设计包含了3个技术特点:1) 采用光纤通信,实现GTS与USTS和DSTS的长距离高质量的数据通信;2) 采用上下行子触发系统设计的方式可以满足较高的触发速度要求和使触发逻辑得到一定简化;3) 采用FPGA完成触发逻辑的运算,用户可以在线修改部分参数达到对应改变触发功能或重新配置FPGA,实现在线重构的灵活性。 -
针对整个
$\gamma $ 球阵列探测器读出电子学的全面升级,各个测量模块的数据传输通道数大量增加,以及逻辑算法变得更为复杂,$\gamma $ 球阵列探测器触发判选系统采用层次化判选结构设计方式,整体为GTS与子触发判选系统(Sub-Trigger System, STS)。为使得触发判选的逻辑算法变得简化,同时能够满足代码移植的方便性,将STS划分为USTS和DSTS来分别处理触发逻辑,且USTS与DSTS的硬件设计是一样的。USTS的硬件主要包括:Xilinx公司7系列FPGA芯片XC7K70T-2FBG676I、光收发器、时钟电路、电源电路、33路LEMO接口。其功能分别是:FPGA实现可重构触发电路,子触发的处理和算法都构建在高密度FPGA设备中;光收发器完成整个$\gamma $ 球阵列探测器触发判选系统间的数据传输;时钟电路提供光模块的80 MHz参考时钟,以及提供整个$\gamma $ 球阵列探测器触发判选系统与所有电子学模块共享的40 MHz时钟同步;电源电路负责为FPGA以及系统其它硬件提供合适的电压;LEMO接口主要是接收和发送触发信息。$\gamma $ 球阵列探测器子触发判选系统硬件结构图与USTS的硬件实物图分别如图2和图3所示。GTS采用Xilinx公司的7系列FPGA芯片XC7A100T2FBG484完成总触发的核心逻辑算法,GTS由中国科学技术大学研制。由于STS与GTS之间需要长距离的数据传输,为了能够避免各类设备产生的电磁干扰,采用光纤传输方式,保证信号高质量传输。考虑到前端32块ADC Sampling模块以40 MHz系统时钟对
$\gamma $ 球阵列探测器的电压信号进行波形数字化后得到的触发信号通过LEMO接口给到USTS,所以在USTS中集成有32路LEMO接口和一个光收发器,用于接收ADC Sampling模块输出的触发信号,根据探测器时间和逻辑信息关系统计来至前端模块每个通道打靶后的次级离子信息,通过光纤传输到GTS中进行逻辑运算,通常采用:“与”、“或”、“非”等逻辑,作出总触发判决信息再通过光纤给到DSTS中,最终产生33路100 ns触发脉冲信号或者200 ns复位脉冲信号,通过LEMO同轴线将32组发送至ADC Sampling模块,1组发送至Data Summary模块。 -
触发判选系统之间的数据交互采用光纤传输方式。选用Finisar公司的FTLF8528P3BCVQL作为光收发器[13],最大串行数据传输速率为8.5 Gpbs。考虑到光信号在光纤中远距离传输时会有一定的损耗,采用8 bit/10 bit[14]编码的光纤数据传输,其数据对齐码(comma 码)选用K28.5,即comma = BC,这使得误码率得到极大的降低。在USTS与DSTS中FPGA内部集成的GTX[15]和GTS中FPGA内部集成的GTP[16]接口成为内部数据与外部光收发器之间的桥梁。图4显示了USTS、GTS和DSTS之间的数据传输,16 bit并行数据经过GTX/GTP control模块送到GTX/GTP接口进行并串转换后通过光纤传输到另一接口,以相反的过程恢复16 bit的并行数据。由于触发判选系统要求以800 Mbps速率进行传输,这使得GTX/GTP接口的参考时钟为80 MHz,数据恢复和用户时钟为40 MHz。
系统上电后,光纤通信模块处于混乱状态,需要通过状态机完成GTX/GTP模块的初始化,通常采取三个步骤才能使其正常运行:
FPGA配置之后,首先对GTX/GTP模块的PLL进行初始化;完成时钟初始化后,分别对TX和RX两个模块进行复位,确保数据能够正常收发;最后给出初始化结束标志脉冲信号,完成初始化。其初始化状态机过程的波形如图5所示。
-
如上述所说,CSR外靶束流实验过程中产生的次级粒子除了有用的次级粒子信息以外,还有大量的无用次级粒子信息。如果不对这些次级粒子信息进行甄别去除,会使得
$\gamma $ 阵列探测器探测到的所有信息给到ADC Sampling模块以及Data Summary模块中,造成对数据的读取以及汇总变得异常困难。通过USTS统计ADC Sampling模块输出的触发信号得到子触发信息。最后,在DSTS中产生100 ns的触发脉冲信号反馈到ADC Sampling模块以及Data Summary模块中,完成有效数据的读出和汇总。根据这些物理特性需求,在USTS中设计出相应的各通道数据处理逻辑模块。USTS对ADC Sampling模块的32路输出触发信号进行统计时,若触发信号有效,则产生子触发信息。由于ADC Sampling模块工作在40 MHz时钟频率下,故在32个通道中,每个触发输出通道为25×T ns(T = 0、1、$2\cdots $ )的脉冲宽度信号。图6给出了USTS对ADC Sampling模块输出触发信号的统计逻辑过程。在触发信号统计模块(Trigger Signal Statistics)中,所包含的各个逻辑算法模块都是工作在80 MHz时钟频率下完成的。32路触发信号首先进入到Count_hit逻辑算法模块中完成32路各通道脉冲宽度T值提取,然后把各路T值给到Count_num算法模块完成除2取整操作。目的有两点:一是排除实验过程中产生的无用粒子信息;二是还原各路触发信号在系统时钟频率为40 MHz所得到的值。最后,在子触发信息产生模块(Subtrigger)完成子触发信息Hitn_sum与发送子触发信息使能信号SubTriggerOut的产生。 Handshake_pulse_sync模块是针对快时钟域到慢时钟域下单脉冲信号处理而设计的握手机制算法,主要完成将80 MHz时钟频率下的SubTriggerOut信号同步到40 MHz时钟频率下的ST_OK信号。通过使能信号ST_OK控制光纤通信模块(GTXCtrl)发送子触发信息Hitin_sum到GTS中。如图7给出了Subtrigger算法模块具体实现由状态机来完成。1 bit的TriggerIn_And信号为ADC Sampling模块32路触发信号的逻辑或运算的结果,状态IDLE进入Wait_End后,在Event_time的时长内完成一次所有通道的有效事列统计。若超过Event_time的时长将不会做任何处理,需要等待下一次事件的到来才会启动统计。其中Event_time时间值是根据HIRFL-CSR 外靶实验不同探测器特征设置为对应不同的值。状态Wait_End进入Trigger_Gen_pre时,将SubTriggerOut信号拉高,以及用位宽为12 bit的TriggerIn_Sum信号寄存器缓存统计32路触发信号的所有T值。在状态Trigger_Gen下,将SubTriggerOut与TriggerIn_Sum信号输出,等待时长为Width_Cnt(Width_Cnt = TriggerIn_Sum)后回到IDLE状态,准备下一次的有效事件统计。其中图8显示了子触发信息Hitin_sum获取的工作时序过程,信号TriggerIn[31:0]代表ADC Sampling模块输出的32路触发信号通过LEMO同轴线给到USTS中。假设ADC Sampling模块的32路触发输出通道其中1路有信号时(记为TriggerIn[31:0]=
$ 32'{\rm{d}}1 $ ),进入到80 MHz时钟域下完成T值提取Count_hit[31:0]=$32'{\rm{d}}2$ ,接着完成除2取整处理Count_num[31:0]=$ 32'{\rm{d}}1 $ ,当检测到Count_num[31:0]信号不为0时,拉高信号TriggerIn_And,并启动等待时间Wait_time[7:0] = Event_time内完成ADC Sampling模块的各输出通道有效触发信号的统计为TriggerIn_Sum[11:0] =$ 12'{\rm{d}}1 $ ,同时产生了子触发信息Hitin_sum[15:0]=$ 16'{\rm{h}}4001 $ ,最后通过使能信号ST_OK控制GTXCtrl发送子触发信息Hitin_sum[15:0]到GTS中。子触发信息Hitin_sum由位宽16 bit的数据组成,其中高4 bit为子触发包头信息,设为
$ 4’{\rm{b0100}} $ ,后12 bit为TriggerIn_Sum,即子触发信息Hitin_sum=$ 4’{\rm{b0100}} $ +TriggerIn_Sum,具体格式如表1所列。15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 子触发信息的包头 ADC Sampling模块的各输出通道
有效触发信号之和GTS对子触发信息作逻辑判断,当子触发信息符合总触发判决时,GTS便产生总触发判决信号GT_OK,同时将Hitin_sum信号通过光纤传输至DSTS中,产生33路100 ns的触发脉冲信号通过LEMO同轴线送至ADC Sampling模块与Data Summary模块中分别进行有效数据的读取和打包,若当判断不符合逻辑关系时,GTS向DSTS一直发送空闲码。除此之外,GTS会对DSTS发送
$ 16’{\rm{hfcfc}} $ 的全局复位码,在DSTS中产生33路200 ns的全局复位脉冲信号,完成整个$ \gamma $ 球阵列探测器读出电子学的各个模块数据同步,至此$\gamma $ 球阵列探测器子触发判选系统一个处理流程结束。 -
为了确认USTS、DSTS和GTS之间光纤通信的有效性和稳定性,误码率至关重要。测试误码率的码流使用伪随机二进制序列(Pseudo Random Binary Sequence, PRBS)[17]。特征多项式为
其中:系数因子
$ {f_i} = 0 $ 时为无连接,$ {f_i} = 1 $ 时为有连接;$ \oplus $ 表示异或运算,电路的输出是周期性的,最多有$ {2^m} $ 个状态,且最大周期序列为$ {2^m} - 1 $ 。图9与图10显示了测试结果,使用Xilinx FPGA为GTX收发器提供的IBERT IP核执行USTS to GTS、GTS to DSTS之间的环路测试。光链路以0.8 Gbps的速率发送PRBS-7。经过24 h连续测试,未观察到任何错误,误码率低于2×10−14,表明稳定性良好。
-
图11显示了实验室测试平台,主要由信号源、示波器、电源、
$\gamma $ 球阵列探测器触发判选系统、以及3台PC机组成。测试使用信号源(AFG3252)模拟ADC Sampling模块输出的触发信号,将示波器连接到DSTS的LEMO接口输出端,通过示波器观察输出的信息,判断触发逻辑正确性。采用信号源以10 MHz的频率产生1路脉宽为25 ns的信号(即ADC Sampling模块输出的33路触发信号中1路有信号),通过LEMO同轴线输入到USTS中,并完成子触发信息
$ 16’{\rm{h4001}} $ 的获取。通过光纤将子触发信息$ 16’{\rm{h4001}} $ 发送到GTS中,并最终产生总触发判决使能信号GT_OK使能光模块发送子触发信息$ 16’{\rm{h4001}} $ 到DSTS,产生33路100 ns的触发脉冲信号。实际测试结果如图12所示,通过示波器测量DSTS的33路LEMO输出接口中任意1路通道,得到正确的100 ns的触发脉冲信号,且示波器窗口中任意1个通道有3个100 ns触发脉冲,代表在0到700 ns时间段内STS完成了3次ADC Sampling模块输出有效触发信号的统计和触发脉冲的产生。 -
针对HIRFL-CSR外靶靶区
$\gamma $ 球阵列探测器的实验需求,本文研究了适应于$\gamma $ 球阵列探测器的读出电子学系统的USTS与DSTS。根据$\gamma $ 球阵列探测器特性设计了USTS与DSTS的电路与逻辑算法两部分,对电路的时钟、电源、可编程的逻辑模块等重要硬件部分和逻辑算法进行了探讨。通过将STS划分为USTS与DSTS的设计思想,采用FPGA完成USTS中子触发信息与DSTS中触发脉冲和全局复位脉冲的产生,这使得将复杂的逻辑算法得到简化,易于系统的进一步扩展。触发判选系统之间的各系统采用基于8 bit/10 bit编码光纤通信的方式,解决了远距离、高速、抗扰的通信传输。最后对$\gamma $ 球阵列探测器子触发判选系统进行了测试,结果表明该触发判选系统运行良好,可以为之后的束流实验提供了良好的技术支持。
Design of $ \gamma $ Ball Array Detector Sub-trigger System for HIRFL-CSR External Target Experiments
doi: 10.11804/NuclPhysRev.40.2022087
- Received Date: 2022-08-09
- Rev Recd Date: 2022-09-15
- Available Online: 2023-12-07
- Publish Date: 2023-09-20
-
Key words:
- $\gamma $ ball array detector sub-trigger system /
- optical transmission /
- FPGA /
- reconfiguration /
- uplink and downlink sub-trigger systems
Abstract: A
Citation: | Xiancai ZHOU, Xianqin LI, Shun LIAO, Honghui ZHANG, Zhen LI, Haibo YANG, Liangrong LI, Chengxin ZHAO. Design of |