坤驰科技高速数据采集卡的脉冲检测功能详细介绍
在高速数据采集卡的不断多样化应用过程中,出现了针对脉冲检测的相关专业版本。北京坤驰科技有限公司今年推出了应用脉冲检测固件(具备数据压缩功能)的一系列高速数据采集卡,该固件的特点如下:
·适用于动态脉冲检测的自适应电平基线处理
·零抑制和最优内存使用的自适应数据记录长度
·适用于多通道系统的多单元同步
·多通道交互的一致性触发
·脉宽和峰值的直方图计算
1 固件介绍 1.1脉冲识别和分析
脉冲检测固件的目的为检测脉冲和采集脉冲有效数据,本固件分两部分,脉冲识别、脉冲分析。如下图所示,脉冲识别功能在脉冲开始和结束时都会最终电平基线。数据记录为零抑制的动态记录长度,即为无用信号被丢弃节省硬盘空间。一致性触发检测几个通道的同步事件。脉冲分析找到峰值和脉冲宽度,采集时也会建立计算峰值和脉宽的直方图,在FPGA内实时运算并节省CPU资源。
图1 脉冲检测和分析
1.2 用于脉冲检测的动态记录和零抑制 最新脉冲检测固件(FWPD)与标准固件(FWDAQ)的不同如下图所示,标准固件(FWDAQ)以每通道相同的长度同步记录所有通道,脉冲检测固件(FWPD)增加了所有通道的独立触发功能和动态记录长度。动态记录长度意为着只有有用的脉冲数据才会记录,这个零抑制的记录方式放松了采集数据率和硬盘空间。
标准固件(FWDAQ):
脉冲检测固件(FWPD):
如下图,脉冲检测固件(FWPD)提供一个动态的触发电平,触发电平为相对于信号动态电压基线的相对值,信号基线电平为最终信号波动的结果。通过设置跟踪基线和触发点的时间,脉冲检测固件应用一个活度检测器,触发条件为dy / dx > z.
图2. 脉冲检测固件(FWPD)应用一个灵活的电平触发(本处举例的采集长度包括预触发长度)
1.3 脉冲特征分析 以下面几种方式识别脉冲:
·不同通道脉冲间的通道一致性的时间,只接受满足特定条件的脉冲。
·用来分析脉冲幅度分布的峰值测量,每个脉冲的峰值都会在直方图记录和显示。
·用于分析脉冲分布宽度的脉宽测量,每个脉冲的宽度都会在直方图记录和显示。
这些内置分析降低了向主机传输的数据速率需求,以及CPU的负荷。
1.4 结构框图 脉冲检测固件(FWPD)脉冲识别的结构框图,如图3所示,脉冲分析如图3所示。注意每通道所有的模块都是独立的,除了一致性触发模块,需结合所有通道的数据。
图3脉冲检测固件(FWPD)脉冲识别结构图
图4脉冲检测固件(FWPD)脉冲特征分析结构图
2 输入信号调理 2.1 模拟输入
如图3(a),输入模拟信号为单极性,这意味着信号相对于一个DC值基线和一个信号脉冲构建的。信号的DC值不必为0,一些DC耦合的高速数据采集卡,将使得输入信号的直流电平高于0点,如果需要,AC耦合版本,可以移动输入DC电压值。
一个模拟的DC偏置加到信号中,可实现ADC的对称输入范围充分使用。这将使信号基线接近信号范围的上限或下限。峰值波形能覆盖所有信号范围。直流偏置有效的加倍了单极信号的分辨率。如图3(b).直流偏置(DC-offset)电压由软件控制,控制范围为电压上限到下限,但最好留有10%的范围,以适应信号过冲。
2.2 AC或DC耦合选项
AC或DC耦合版本选项为硬件选项,DC耦合版本具有较高的灵敏度,AC耦合版本有较高的ENOB. DC耦合版本时会保留输入信号的任何直流成分。而AC版本会删除信号直流成分,AC和DC耦合版本都会使得信号的高频部分通过,也就是脉冲通过。
2.3 数字基线稳定器,DBS
对于常见的直接信号分析,模拟的直流电平(DC-level)是准确的,然而,为得到非线性阈值操作的最佳性能,基线应该锁定为一个确定值。本处由数字基线稳定器(DBS)实现,其配置在A/D转换器之后。DBS是SP devices的一项专利技术,通过分析数据、找到和调整基线为22位精度的目标值。如图5.
目标值由使用者设定,最好接近模拟增益(DC-offset),如果应用了DC-offset这一功能。DBS应用了模糊识别的方法进行数据处理,DBS是一直激活的,其不断的监视和跟随基线变化,并矫正基线为时不变值。
2.2 移动平均滤波器介绍 经DBS后得到的基线追踪环境的变化速度相对较慢,许多应用中依据由参考DBS计算的当前基线值来取触发电平值是好的解决办法,DBS的更新率为微妙级,但在一些应用中可能不够快。
脉冲检测固件(FWPD)提供了一个移动的平均滤波器,可快速追踪基线变化,例如,由脉冲泄漏导致的变化等。移动平均滤波器的范围为4到100个采样点,这意味着可用更新率为100纳秒。
移动平均滤波器针对的是触发后信号的快速变化,而不是整个信号的变化。DBS与移动平均滤波器结合使用效果更好。
3 触发模块 3.1 简介
图6 触发过程中各模块的关系与效果
3.2 使用DBS进行基线值计算 基线值计算可由DBS直接得到,而不使用移动平均滤波器。假如DBS的基线输出结果为固定值,那么触发电平也为固定值(不具备移动平均滤波器的动态性)。图7显示了是否使用移动平均滤波器的区别。
3.3 时间戳 高速数据采集卡中有个时间戳计数器,时间戳为触发事件匹配时间点数据,时间戳有利于研究测量时脉冲之间的时间,一致性,脉冲密度变化等。
4 一致性模块 4.1 简介
开启一致性触发功能能够检测不同通道的同步事件,组合通道将产生相同的触发,一致性功能由一个定义的一致性时间窗控制。如图8显示了由第一个通道触发启动一个一致性窗,然后第二个通道的触发参照一致性窗后才会接收。
图8 一致性触发介绍
注:如果一致性功能被关闭(默认关闭),所有其他通道独立触发。
4.2 一致性窗 一致性窗是一个通道已经触发后的窗,可与其他通道结合,如图9,通道A触发事件为TriggerA,时间上拉伸为一致性窗长WinA。
图9,通道A的一致性窗
5,脉冲分析
5.1 简介
动态记录支持单个采样过程记录多个脉冲,脉冲由阈值电压确定,阈值电压包括一个触发电平和一个复位电平,一次记录最多可记录16个脉冲,图2,显示了一次记录采集2个脉冲。
峰值和超过阈值时间也会用于直方图的统计分析,板卡建立直方图很大的降低了到主机的数据传输率和CPU负荷。
图10 峰值检测和超阈值时间定义
5.2 脉冲特征数据显示
脉冲特征数据可作为采集的一部分, 特征数据可以用三种方式保存起来。数据的头包含了采集信息,如通道、采集数目、时间戳。脉冲记录段为表示脉冲波形的时域采样序列。
脉冲特征数据由脉冲分析功能模块输出,即峰值和超阈值时间长度。这些信息放在整个记录空间的最后。设置记录长度时,需确定有足够的空间来实现脚注这种记录。
也可以只记录脉冲特征数据,如图11(c),这可以节省向主机传输的数据率和硬盘空间。图11显示了包括三种脉冲特征数据的记录方式。
6 数据传输到主机 6.1 采集传输顺序
数据传输完全按照采集顺序完成,图12(a)一些列触发事件的例子,图12(b)证实了这些数据是如何传到主机的,并附注了一些细节解释。
·A2开始晚于B2,但结束早于B2,因此先传A2.
·B1先于C1结束,因此先传B1.
·单次记录单元结束前,A1有两次触发,这两个脉冲存储到同一个记录空间内。
·记录的D1,D2,D3为同一个通道的尖峰。
·时间戳相对于记录单元的触发位置,但数据传输是在传输单元装载结束时,因此记录单元内不以时间戳的顺序传输。
6.2 数据传输到主机
根据用户手册,可设置为触发数据流模式向主机传输采集数据。
6.3 FIFO 溢出
数据率适动态的并有数据驱动,为了处理不均匀的数据流,在ADQ14上有一个大的FIFO(2GBytes),FIFO可以处理高速脉冲的多个尖峰。如果FIFO装满数据,后面的数据将会丢失。
6.4 记录单元数据头
每次记录都会有数据头存储记录相关信息。
7 多单元同步 7.1 操作 多单元同步可实现单个系统的多个检测器的解决方案。每个ADQ14板卡都有一个同步输出和同步输入,所有的采集卡都需锁相到外部参考时钟,系统才能实现正确同步工作。
当一个来自于数字化仪输出同步信号产生一个共同的时间参考,板卡之间的同步为一个菊链操作,公共的时间参考用于系统内所有同步板卡的时间戳计数器对准。
一旦时间戳同步,采集过程中,单个板卡与其他不同板卡的所有独立通道都会实现内部对齐,同步触发通过相同的信号路径分发。
7.2 USB,MTCA,PXIe连接器 板卡TRIG接口用于同步输入,SYNC用于同步输出,如图13,这些接口都在数据采集卡的前面板。
图13 利用USB,MTCA,PXIe接口连接同步信号 7.3 PCIe连接器 同步输入和输出信号通过PC机箱内部专用连接头传输。如图14.
8 应用举例 8.1 启动 脉冲检测固件(ADQ14-FWPD)装有示例代码和快速开始的启动套件。因为脉冲检测固件(ADQ14-FWPD)是数据驱动的,系统第一次的设置是需要技巧的,输入信号需为系统期望的,所有的触发条件必须正确设置以使得实际采集时得到正确触发。
启动套件包括:
·SMA连接器的衰减器
·SMA连接器的同轴电缆
·软件例程
启动套件的目的是第一次使用脉冲检测固件(ADQ14-FWPD)保证一个可控的开启环境,内部触发生成器用来产生一个已知脉冲,这个脉冲可由前面板的TRIG SMA连接口得到,设置测试通过以下三步:
1, 将衰减器连接到触发输出,以使得信号电平在ADQ14的输入范围内。 2, 连接衰减触发输出到输入通道A的SMA接头,如图15.
3, 运行FWPD_simple_example检测信号
以上配置是为了检测来自触发输出的特殊脉冲,这种方式下,可确保ADQ14板卡硬件和软件安装都是正确的。
下一步是使用例程代码来更改参数,并看更改参数的效果,用实际信号测试脉冲检测固件(ADQ14-FWPD)并最后搭建应用。
图15 脉冲检测固件(ADQ14-FWPD)启动套件 8.2 启动顺序 下表为程序启动的相关顺序操作步骤:
| 描述
| 命令
| 1
| 设置模拟DC偏置并等待40 ms
| SetAdjustableBias
| 2
| 激活DBS
| SetupDBS
| 3
| 设置数据传输
| SetStreamStatus
SetTransferBuffers
| 4
| 设置移动平均滤波器
| PDSetuptiming
| 4
| 设置脉冲检测参数
| PDSetupTiming
PDSetupLevelTrig
PDEnableLevelTrig
| 5
| 配置一致性触发
| PDEnableTriggerCoincidence
PDSetupTriggerCoincidence
| 5
| 配置脉冲特征分析参数
| WriteUserRegister
| 5
| 选择通道
| PDSetupStreaming
| 6
| 配置用户buffers
| Set by user’s OS and
programming language
| 7
| 开启采集
| StartStreaming
| 8
| 数据记录
| GetDataStreaming
| 8
| 得到脉冲特征直方图
| ReadUserRegister
| 9
| 停止采集
| StopStreaming
|
8.3 流盘 软件例程显示了如何设置数据采集的流盘动态采集长度和时间戳信息,更多流盘信息在编号为15-1619应用笔记中看到,示例代码实现了特定硬件环境下1.5 GBytes/s的持续流盘速率。
8.4 过程监测 脉冲采集的数据头带有采集和脉冲的相关信息,ADQ14的数据头也包含FIFO转载程度信息,如果装载程度过高,就有数据溢出和丢失的危险,通过使用FIFO装载因数,可控制溢出和丢失的问题,例如降低脉冲的生成密度。
8.5 失效检测 如果用软件直接检测的脉冲太长或太强时,可能会不能有效的检测信号,当单次数据长度上升到确定值时,可以向数字化仪发行中止指令,系统随后重启。这个停止操作是在用户软件中定义的,故障检测的条件完全为用户控制。
8.6 飞行时间检测 进行粒子飞行时间测量时,从一个阵列到另一个阵列探测器的粒子,只有两个阵列都撞击了的粒子才是研究需要的。一致性触发为粒子区分的第一步,设置一致性开启触发为第一个阵列触发(通道A或B),然后接收第二个阵列触发(通道C或D),如图16,粒子脉冲在通道C或D被存储的前提是该脉冲在通道A或B也被检测到。
通道C和D每个检测到脉冲的时间戳表示了一个粒子在两个检测器阵列之间的飞行时间,为了找到飞行时间,查找通道A或B的对应脉冲,该脉冲带有匹配一致性窗和时间戳。
下表为具体的通道一致性参数设置:
通道 | BIT 3
| BIT 2 | BIT 1 | BIT 0 | 描述
| A | 0 | 0 | 0 | 1 | 接收通道A的所有触发事件
| B | 0 | 0 | 1 | 0 | 接收通道B的所有触发事件
| C | 0 | 0 | 1 | 1 | 接收通道C的所有触发事件,只有该事件已经在A或B已经触发时。
| D | 0 | 0 | 1 | 1 | 接收通道D的所有触发事件,只有该事件已经在A或B已经触发时。
|
|