用户指南
User’s Manual Digital Gamma Finder (DGF) PIXIE-16 Version 1.40, October 2009
Pixie-16 User Manual Version 3.00 August 21, 2018
重要
Pixie-16 专为单个指数衰减信号而设计。
可以通过特定的参数设置来匹配步进脉冲(step pulses)或短的非指数脉冲(short non-exponential pulses)。
来自复位前置放大器(reset preamplifiers)的楼梯类型(staircase type)信号通常需要先进行交流耦合(AC coupled)处理。
危险
如果安装了50欧姆输入端接跳线并且未使用1:4衰减,则建议探测器输出信号的幅度不要超过 +/-3.5V。
不要热插拔!
为避免人身伤害和/或损坏 DGF-Pixie-16,在从机箱中取出 DGF-Pixie-16之前,请务必关闭机箱电源!
![../_images/pixie16.jpg](../_images/pixie16.jpg)
DGF Pixie-16 是一款基于 CompactPCI/PXI 标准的 16 通道全数字波形采集和谱仪卡,可快速读取主机数据。 它将波形数字化的谱学和在线脉冲形状分析功能相结合。 Pixie-16 几乎可以接收来自任何辐射探测器的信号。 输入信号将被 12/14/16位 100/250/500 MSPS ADC 数字化。 每个通道最高可以将长度 163.8 μs 的波形存储在FIFO中。
波形可用于板载脉冲形状分析,也可通过向核心处理软件中定制添加用户功能。 主机系统可以读出波形,时间戳和脉冲形状分析的结果,以进行进一步的离线处理。 脉冲高度计算为 16 位精度,在线最多可以记录分组为 32K bin 的能谱。 Pixie-16支持符合测量,可以实现复杂的触发模式。
通过 CompactPCI/PXI 背板到主机的数据读出速率最高可达 109 Mbyte/s。标准 PXI 背板以及其它定制背板连接用于在几个 Pixie-16 模块之间分配时钟和触发信号,以进行组操作。 通过将 Pixie-16 模块与市售的 CompactPCI/PXI 处理器,控制器或 I/O 模块组合在同一机箱中,可以构建完整的数据采集和处理系统。
Pixie-16 是一种用于伽马射线或其它辐射探测器阵列的波形采集和 MCA 直方图的仪器:
- 100 MSPS
高纯锗探测器/分块的高纯锗探测器
闪烁体/PMT组合:NaI,CsI,BGO 和许多其它组合
气体探测器
大面积硅探测器/硅条探测器
- 250 MSPS
闪烁体
溴化镧
- 500 MSPS
闪烁体
溴化镧
Pixie-16 模块必须在定制的 6U CompactPCI/PXI 机箱中运行,在 CompactPCI/PXI 标准 1 中未包含在特定电压下提供高电流。 目前 XIA 提供 14 插槽机箱。 将主机(或远程 PXI 控制器)放入机箱的系统插槽(插槽1)中。 在机箱断电下将 Pixie-16 模块放入任何可用的插槽(插槽 2-14)。 安装模块后,打开机箱电源(Pixie-16 模块不支持热插拔)。 如果使用远程控制,请务必在打开机箱电源后再启动电脑主机。
数据结构
如果开启了波形记录,则波形数据将紧跟在事件头的最后。 由于原始 ADC 数据点是 12/14/16 位数,因此将两个 12/14/16 位数字打包成一个 32 位字。 由于事件头具有可变长度(4,6,8,10,12,14,16 或 18 个字),具体取决于各种输出数据选项的选择,事件长度,事件长度和波形长度记录在事件头的前 4 个字(words)来引导输出数据流。
CAEN 插件在采集波形时,一个插件所有通道每个事件波形采集长度只能设置成相同的。
XIA 插件可以每个通道单独设置数据长度。例如:ch-0 设置采3000个点,ch-1 设置采2000个点,ch-2 设置采5000个点,ch-3 设置成不采集波形……。另外,还可每个通道选择是否记录baseline sum、QDC、external timestamps。
XIA还可设置对pile up事件的处理。例如pile up事件记录波形,其它事件则不记录波形。意味着一个channel 不同事件其数据长度也不一定相等。
在读取数据时候,CAEN 插件每次拿到的数据都是完整事件的数据。 而 XIA 插件 FIFO 的读指针、写指针是独立的、同时进行的,所以每次我们要取数据时候都需要先查询下当前 FIFO 有多少数据,然后再指定该次读取多少数据。因为FIFO读、写是独立的,因而查询到的数据量是该时刻拥有的数据量,这个数据量基本都不是完整事件的数据量(还有部分是当前事件正在写入的)。每个事件除了有 4 words 的 header 及后面紧跟着的数据外并没有事件标记符,当然这样设计最大的好处就是速度快。
基于以上事实,两个公司的产品对用户写时时监视获取率、在线监视程序等的实现方式存在较大差异。
CAEN: 由于 CAEN 一个插件上每个通道的采样数相同,因而他们每个事件的长度是一致的。在拿到数据时即可存文件或者 decode 出每个事件的信息用来统计时时获取速率,也可将数据发送到在线程序。
XIA: 由于其上每个通道数据长度可单独设置,这是 XIA 插件的灵活性。又 FIFO 查询到的数据量是当前时刻的数据量,这样每次取到的数据都不是完整事件的数据。
对于多个插件的系统,获取时候一直循环读取每一个插件上的数据,如果将所有插件的数据存在同一个文件内,将造成数据的错乱。如果每个插件的数据单独存在一个文件内,那么下一次读取的该插件的数据中开头的不完整事件的数据刚好接上一次最后一个不完整事件的数据,可解决这个问题。
由于每次拿到的不是完整数据,因此也不好 decode 当前数据来获得每个事件的信息(从获取开始就 decode 记录每次数据的不完整事件的情况也可解决该问题,但是这样 decode 需要额外的时间)。但是 XIA 内部 DSP 上统计着信号输入量、获取接收量、活时等信息。可频繁调用函数读取 DSP 上的统计信息来监视时时获取速率。但是频繁调用该函数会对获取的 I/O 有一点影响。几秒钟调用一次该函数,这个影响基本可以忽略。
下面给出一些困难的解决思路: 牺牲 XIA 插件的灵活性,对一个插件设置成每个通道采集波形长度相同(这样就与 CAEN 一样了),因为每个通道的每个事件数据的长度相等,读取数据时候查询到当前的数据量之后,然后只读取事件长度整数倍的最大数据,这样每次拿到的都是完整的事件数据了,可参照 CAEN DAQ 的实现方式。
对采波形时候,可采用“伪”在线监视获取情况,即获取文件每隔一段时间保存一次,用上一轮的数据作为“在线”数据。