基于PCIe总线的专用高速信号采集卡设计
2015-11-09林连雷易宇
林连雷++易宇
摘 要: 在某些雷达对抗试验中,为了精确地评估试验效果,设计了一个高速信号采集系统,该系统具有最高为500 MS/s的采样率,板上缓存为1 GB,同时提供与高速存储系统的数据传输接口以供外扩存储容量。该系统提供了示波器工作模式和连续采集工作模式两种工作模式,用户可根据需求使用不同的工作模式对采集到的数据进行处理,同时该系统具有完善的触发功能,以方便用户对数据进行分析。
关键词: PCI Express; 高速数据采集; 模拟信号; 同步脉冲信号
中图分类号: TN911.7?34 文献标识码: A 文章编号: 1004?373X(2015)21?0052?04
Design of dedicated high?speed signal acquisition card based on PCIe bus
LIN Lianlei, YI Yu
(Department of Automatic Test and Control, Harbin Institute of Technology, Harbin 150001, China)
Abstract: In some radar countermeasure tests, a high?speed signal acquisition system was designed to assess the test results accurately. This system has the maximum sampling rate of 500 MS/s, in which the cache in the card is 1 GB, and can provide data transmission interface of high?speed storage system to expand the storage capacity. Two operation modes of the scope operating mode and the continuous acquisition mode are offered in this system, and users can use the different operating modes according to the requirements to process the collected data. This system has perfect trigger function, and is convenience for the users to analyze the data.
Keywords: PCI Express; high?speed data acquisition; analog signal; synchronous pulse signal
0 引 言
在某些雷达对抗试验中,为了精确地评估试验效果,需要对雷达接收机产生的回波信号、同步脉冲信号等进行采集,通过对这些信号的分析得出试验结果,基于此目的,需要设计一个具有高速采集能力的系统,用于采集雷达接收机产生的回波信号、同步脉冲信号;同时该系统需要具备大容量存储能力,用于实时存储采集到的数据,为雷达对抗试验后续的数据分析提供数据来源;为了更好地捕捉雷达对抗试验中的关键信号,该系统应该具备完善的触发功能。
本文设计了一个基于PCIe总线的专用高速信号采集卡,该模块提供了2路模拟信号采集通道用于采集雷达回波信号,6路脉冲信号采集通道用于采集同步脉冲信号和波门信号,另外提供2路通道用于给系统的触发功能提供外触发源。该数据采集卡具有最高为500 MS/s的数据采样率,板上提供1 GB的高速缓存,并提供高速存储单元接口,用于外扩高速存储系统。
1 系统总体设计
高速数据采集卡的整体方案如图1所示。该模块具有高速数据采集功能并提供高速数据缓存以及与高速存储单元进行数据交换的接口。模块提供两种工作模式,其中示波器模式通过将采集到的数据存储到FPGA内部的双端口RAM,之后通过示波器功能软件进行数据处理及显示等。由于FPGA内部的双端口RAM容量有限,因此不能进行长时间的连续采集和数据存储,而双端口RAM具有读写可以同时进行的优点,因此在示波器软件的配合下可以实时观察信号的变化或者配合触发方式捕捉一段有用的信号进行数据分析;而连续采集模式将采集到的数据存储到板卡高速缓存中,由于板卡中设计的DDR3高速缓存电路容量有限,因此在连续采集模式下需要配合外部高速存储系统实现数据的连续采集。本文设计的高速采集模块提供了与高速存储系统进行数据传输的PCIe接口,因此外扩的高速存储系统只需要具有PCIe通信能力即能与本文设计的板卡进行数据传输。
2 硬件设计
2.1 硬件电路设计
数据采集模块硬件电路设计如图2所示,电路中主控制器采用Altera公司的cyclone V芯片,该芯片内部具有专用的LVDS信号接收器以接收A/D输出的数据信号,同时内置PCIe 硬核可以实现与PCIe 接口电路的连接,可通过DDR3硬核控制器实现与DDR3 SDRAM的连接。A/D芯片选用TI公司的ADS5407,该芯片具有2个模拟输入通道,其采样率可以达到500 MSPS,数据输出方式为LVDS信号,使用该信号进行数据传输可以提高信号的抗噪声能力。此部分电路PCB布线技术对系统SNR影响很大,所以在布线时要采取降噪声、抗干扰技术[1]。
本系统设计中硬件电路主要由以下几个部分组成:
(1) 模拟信号调理电路,用于调节输入的模拟信号,使其能在后端A/D芯片的正常处理范围之内;
(2) 同步脉冲/触发信号调理电路,用于将6路脉冲信号和2路外触发信号经过整形等相关处理之后送至FPGA中进行数据处理;
(3) A/D转换电路,在FPGA输入的控制信号的控制下将2路差分信号转换成2通道12 b的LVDS信号输出到FPGA中,同时输出同步时钟到FPGA中;
(4) 时钟电路,在FPGA输入的控制信号下向A/D转换电路输出高速差分时钟,该电路选用了Micrel公司的SY89430V芯片,该芯片可输出50~950 MHz的时钟频率;
(5) DDR3存储电路,主要用于将连续采集模式下采集到的数据进行缓存;
(6) PCIe接口电路,用于将数据采集卡与上位机软件和高速存储系统进行通信。
下面详细介绍高速数据采集模块的硬件电路中关键电路的设计。
2.1.1 PCIe接口电路设计
本模块设计中的高速数据传输关键部分在于PCIe总线的数据传输速率。设计中选用了Altera公司的GXFC7C6F23I7款芯片,该芯片具有PCI Express硬核,采用该IP核设计了PCI Express通信接口,本设计中选用的是PCI Express的X4链路宽度,同时由于FPGA中的PCI Express发送器和接收器采用高速低压差分信号(LVDS)传输,根据其电气规范,高速差分信号的发送端需要串接一个电容,以进行AC耦合,因此在PCIe接口电路设计中,每一个数据通路(Lane)的发送端(TX)串接一个0.1 μF的电容[2]。
系统采用PCIe进行背板提供的100 MHz时钟为本模块的参考时钟,为了提高系统稳定性,采用了IDT公司的ICS874003?02芯片对机箱的背板时钟进行去抖处理。该芯片是一款专门为PCI Express系统设计的高性能的差分转LVDS抖动衰减器,采用了IDT公司的第三代FemtoClock技术来实现最低的相位噪声[3]。
2.1.2 模拟信号调理电路设计
模拟信号调理电路是高速数据采集系统的一个设计重点,该部分电路信号质量的好坏直接影响本系统是否能达到雷达对抗试验中数据采集的相关指标。该部分电路设计了阻抗切换电路,用来实现示波器模式下的50 Ω和1 MΩ阻抗的切换,之后利用电阻分压的方法实现电路的1[∶]1和6[∶]1衰减比例选择,进而使得模块能够提供±0.5 V和±2.5 V两档输入电压范围,经过衰减之后的波形通过RC滤波电路进行抗混叠滤波,同时滤除电源系统等引入的高频干扰,设计中RC电路的带宽需要达到100 MHz以满足雷达信号采集要求。本设计中选用的A/D芯片输入信号为差分信号,因此滤波之后的信号需要通过差分转换芯片转换成差分信号以供A/D芯片接收。
2.2 固件设计
数据采集系统的固件设计包括数据接收逻辑、触发选择逻辑、采集卡工作模式选择逻辑、数据采集控制逻辑和PCIe接口逻辑五个部分,如图3所示。其中数据接收逻辑完成将A/D输入的LVDS信号转换成单端信号,经过Quartus自带的ALTLVDS将DDR数据转换成SDR数据,并对数据进行重新排序等功能;数据采集控制逻辑完成对时钟芯片的控制以实现控制时钟芯片输出用户需求的时钟,同时完成对A/D芯片的配置使得芯片能够根据需求正常工作;触发选择逻辑可以用于产生内触发、软触发,并对内触发、软触发和2路外触发进行触发源的选择,同时进行触发沿的选择;工作模式选择逻辑用于根据用户需求进行示波器工作模式和连续采集工作模式的选择;PCIe接口逻辑可实现PCI Express协议,完成数据的传输功能。
下面详细介绍高速数据采集模块的固件设计中几个关键逻辑的设计。
2.2.1 触发选择逻辑设计
示波器不仅要有完整的采集系统,同时还要有完善的触发系统。示波器的触发功能可以在输入信号的一个固定电平点处同步水平扫描,可以将信号清晰地显示到屏幕上,触发控制可以稳定重复波形,采集单脉冲波形[4]。
本系统提供外触发、内触发和软件触发3大类触发方式:外触发直接利用外部输入的触发信号作为触发源;内触发是利用采集卡的2路模拟信号作为触发源;软件触发是通过上位机软件控制触发信号的产生。其中内触发是通过将采集卡采集到的模拟信号与用户设定的触发电平进行比较而得到的数字脉冲信号作为触发方式,当模拟信号的电平大于等于用户设定的比较电平时,输出为逻辑1,当模拟信号的电平值小于用户设定的比较电平时,输出为逻辑0。通过将采集到的模拟信号调理为数字脉冲信号之后,就可以将内触发同其他触发一样进行边沿触发方式处理。
2.2.2 示波器工作模式控制逻辑设计
示波器工作模式控制逻辑主要用来实现数据采集系统的示波器功能。当用户选择示波器工作模式时,该模式下的触发控制逻辑根据用户需求,当触发到来时使能RAM写信号,并根据用户参数提供是否使能预触发,而地址发生器则根据用户提供的参数(触发深度、后续触发深度)提供写RAM地址,以实现示波器常用的预触发和后触发功能。如图4所示。
当采集卡使能预存储时,在触发信号未到来之前,控制电路通过触发地址发生器使能信号使能触发地址发生器,使得触发到来前的数据不断地存入板上存储器的存储深度地址区间内。当触发信号到来时,继续存储后续触发深度的采集数据,然后并记下此时地址。通过存储深度、后续触发深度和触发停止地址,便可以很容易地获得触发点前后的数据,从而实现前触发、后触发和中间触发。具体地,上位机将根据触发方式读取板上存储器的内容,如为前触发方式,则上位机只读取触发后地址所覆盖地址空间的数据。如为预触发方式,则上位机首先得到触发停止的地址,然后根据此地址及后续触发深度所覆盖地址空间读出触发信号到来后一段时间内的采样数据。读完该段数据后,上位机利用与前触发读取数据相同的方法读出地址发生器所覆盖地址空间的数据。如为后触发,则上位机只需读出触发前一段时间内的采样数据。
2.2.3 连续采集工作模式控制逻辑设计
连续采集工作模式控制逻辑主要用来实现数据采集系统的连续采集功能,如图5所示。该模式下用户可根据需求采用两种方式:第一种为短时间连续采集,该方式采集卡将采集到的数据通过FIFO存入DDR3 SDRAM中,该方式的特点是速度快,但是存储容量有限;第二种方式为长时间连续采集,该方式下采集卡将采集到的数据经FIFO通过PCIe总线的DMA数据传输方式将数据导入外部高速存储系统中,该方式的特点是存储容量大,但是数据传输速率最高达到740 MB/s。当用户选择连续采集工作模式时,该模式下的触发控制逻辑产生写FIFO信号,之后根据用户选择的存储方式通过FIFO判断逻辑将FIFO中的数据通过DDR3控制器写入DDR3 SDRAM中,然后通过DMA方式将DDR3 SDRAM中的数据写到高速存储系统中;或者将FIFO中的数据直接通过DMA方式写入高速存储系统中。
3 主要性能指标测试
3.1 精度测量
系统测试时,通过输入直流电压测试数据采集系统的精度,采样率为200 MHz。本系统具有两种输入电压范围,当衰减网络为1[∶]1时,输入电压范围为[1 Vpp,]其测量结果如表1所示;当衰减网络为6[∶]1时,系统的输入电压范围为[5 Vpp,]对应的测量结果如表2所示。
3.2 信噪比及有效位测试
将数据采集卡采集到的数据传至上位机通过进行处理,通过频域波形计算出实际的信噪比,其计算方法如公式(1)所示:
其中:[N]为采集卡的有效位数;[fs]为采样时钟频率;[fa]为模拟信号带宽。将式(1)得到的SNR代入式(2)可得到有效位[N]为8.297。该测试表明系统模拟通道有效位在8位以上。
4 结 语
本文介绍了一种基于PCIe总线的专用高速信号采集系统的设计方法。该系统针对雷达信号的特点提供了模拟信号和同步脉冲信号采集通道,同时为了便于用户对雷达关键信号进行分析,提供了强大的触发功能,为了满足用户对雷达信号进行不同的数据处理提供了示波器模式和连续采集模式两种工作模式。实际的测试表明,系统满足设计要求。
参考文献
[1] 董强,倪健,刘云,等.PCB的布线设计及抗干扰技术[J].舰船科学技术,2006,28(2):57?59.
[2] PXI Systems Alliance. PXI?5 PXI express hardware specification revision 1.0 [R]. US: PXI Systems Alliance, 2005.
[3] 王连忠.基于端到端的PCIe数据采集及存储系统研制[D].哈尔滨:哈尔滨工业大学,2014.
[4] 张晓东.6 GSPS数字示波器关键技术研究[D].成都:电子科技大学,2009.
[5] 张云鹏,周军,黄春明.激光雷达的高速数据采集系统设计[J].计算机测量与控制,2006,14(2):265?267.
[6] 麻志滨,廖雯,刘芳.基于FPGA的高速数据采集分析系统的设计[J].现代电子技术,2014,37(16):135?137.