王 锐,朱 润,饶 卿,闫胜刚
(中国船舶重工集团公司第七二四研究所,南京 211153)
雷达内嵌式侦测信号高速数据存储系统设计实现
王 锐,朱 润,饶 卿,闫胜刚
(中国船舶重工集团公司第七二四研究所,南京 211153)
介绍了一种通过SerialRapidIO(SRIO)总线实现高速雷达侦测信号传输与存储的方法,并在VPX架构下利用标准模块实现了侦测雷达信号的高速传输、存储与读取。
雷达;侦测信号;数据存储;VPX标准;SerialRapidIO
随着雷达侦测技术的不断发展,其瞬时处理带宽的增大导致需要传输和处理的信息量也越来越大,对信息存储速度与存储容量的要求也不断提高。传统侦测信号处理系统一般只作实时流水处理,而无包含专用存储设备或者只配有存储量较小且读取速度较慢的存储器来记录简单的中间信息。也有系统配置常用的外接数据采集存储设备,但该存储设备便捷性又较差。这些都已不能满足雷达系统数据信息在线在系统实时存储后续分析调试的实际需要。基于VPX 规范的通用数据存储模块具备高速信号采集、大容量数据存储的能力且通过SRIO(Serial RapidIO)总线与其他处理板可以嵌入式无缝连接,这为VPX平台下内嵌式信息采集与存储带来了新的开发思路。本文在VPX处理平台中,通过FPGA处理模块利用SRIO总线将需要存储的数据进行高速传输,通过高速背板实时存入数据存储模块,实现了侦测雷达信号数据的采集和存取。
侦测雷达信号处理主要对较大瞬时带宽内的信号进行接收和处理,并将处理结果及数字化后的中频数据进行存储[1]。系统流程功能框图如图1所示。模拟前端将接收的射频信号转换为模拟中频信号后,通过A/D模数转换将模拟信号转换为数字信号送入FPGA处理模块。FPGA处理模块将信号处理结果和中频信号通过SRIO协议高速送入数据存储模块进行实时存储,并可通过网络将储存的数据读入计算机进行后续数据分析。
图1 系统流程框图
射频前端将一路主接收通道、二路辅助接收通道接收的信号进行同步变频滤波放大,转换得到三路中频信号。中频信号通过A/D模数转换模块转换为数字中频信号后高速串行送入FPGA信号处理模块。在FPGA处理模块中通过数字信道化、虚假抑制、信号检测、参数测量等信号处理后,将处理得到的辐射源目标的频率、脉宽、幅度等信息进行打包得到脉冲描述字。在FPGA处理模块中将脉冲描述字和一路主通道接收处理后的数字中频信号通过SRIO协议高速传输至1块数据存储模块。同时,将二路辅助通道接收处理后的数字中频信号通过SRIO协议高速传输至1块数据存储模块。数据储存模块实时接收FPGA信号处理模块发送来的数据。为了满足使用需求,系统设计采用2块数据存储模块接收数据。每个数据存储模块例化两个节点分别接收1路200 MB/s的数据。数据存储模块的设计符合VPX标准,支持4x模式3.125 Gbit/s波特率的RapidIO传输方式。最大存储速率为800 MB/s,最大存储容量为3 TB。信号存储结束后,计算机通过网络将数据储存模块中的数据读出,并通过MATLAB软件对数据进行后续处理分析。信号存储流程如图2所示。
图2 信号存储流程框图
2.1 数据发送实现
SRIO的物理层、逻辑层和传输层可以通过Xilinx公司提供的SRIO IPcore例化生成。因此,只需通过对用户接口编程来实现FPGA内部逻辑与SRIO接口之间的高速数据交换,从而实现FPGA处理模块到数据储存模块的高速数据传输[2]。
本系统采用Xilinx公司Virtex6系列的FPGA信号处理芯片XC6VLX550T,实现了多路高速串行数据传输,即利用FPGA芯片内RocketIO模块实现了3.125 Gbps ×4的SRIO高速接口,其最大传输速率1.25 GB/s。当系统设计传输的数据包最大为256字节时,考虑RapidIO典型协议开销需要28字节,因此本系统最大的数据传输速率为1.1 GB/s。
设计时先将4路发送数据分别通过第1级FIFO进行缓存。FIFO的输入位宽为16位,输出位宽为16位,深度为4096,时钟速率为100 MHz。FIFO起到数据缓存的作用。当脉冲描述字或中频信号到来且FIFO不满时,把数据写入FIFO缓存起来。当每路数据存满时分别将缓存数据送入SRIO IPcore的信号输入端口,并送入开始写有效信号。当数据包结束时,送入结束写有效信号。送入的四路数据对应送入IPcore内的第2级FIFO进行缓存,同时例化4个不同的地址节点号后再通过一个选择状态机将数据选择输出至不同的对应节点。数据包的最大长度为256个字节。每路数据的最大速率为200 MB/s,4路数据的最大速率为800 MB/s小于系统的最大数据传输速率。每路最大速率为200 MB/s的4路数据同时送入2块数据存储模块,每2路送入1块数据存储模块。每个数据存储模块例化2个节点进行数据的接收。每个数据存储模块最大数据接收速率为400 MB/s小于数据存储模块的最大存储速率。发送数据流程如图3所示。
图3 发送数据流程图
2.2 数据储存模块节点配置实现
系统上电后,RapidIO总线构成的网络首先需要指定网络中的某一节点作为主机。主机首先探测网络中交换模块、PPC数据处理模块、数据存储模块等所有网络节点的个数、种类、连接关系、分配网络ID号完成整个网络拓扑结构的构造[3]。在完成RapidIO网络探测后主机将获得所有节点的个数、种类和各模块间的连接关系。主机根据探测得到的网络拓扑图完成路由路径的最优化,并将结果设置到网络中的各个路由器,最终完成整个网络的建立。
上述过程中,如果需要临时变化数据存储模块数目,系统中原有的网络拓扑关系会发生变化从而导致数据存储产生错误。因为RapidIO数据交换是通过RapidIO包来传递系统数据和控制信息的,RapidIO包在产生的时候就将网络中目的ID和源ID封装在包头中[4]。如果变化数据存储模块数目,会导致原有终端节点网络ID号发生变化,使得数据发送的目的地址改变而无法正确收发数据。
为了解决交换模块、数据存储模块或PPC数据处理模块数目变化导致系统网络ID号发生变化的问题,本系统采用的方法为系统在变化数据存储模块等相关模块首次上电后由系统中主节点进行自动链路扫描与配置,并将配置后的结果(包含路由信息与终端设备ID号)保存成配置文件。根据原有应用程序对各个终端设备ID号的定义,对配置文件进行修改保存。此步骤流程图如图4所示。
图4 系统首次上电生成与修改配置文件
完成配置文件生成与修改后系统之后每次上电为各终端设备分配网络ID号的流程为:主机节点首先判断系统内交换模块、数据存储模块、PPC数据处理模块等设备的数目,未发生变化时则按原有的规则为各终端设备分配网络ID号。若发现发生变化,则根据保存的修改配置文件为各终端设备分配网络ID号。系统启动后为各设备分配网络ID号的流程如图5所示。
图5 修改后的系统网络ID号分配流程
本系统采用一块PPC数据处理模块作为主机节点进行链路扫描与配置。上述方法的相关操作需对BSP(板级支持包)中链路扫描与配置相关函数按修改后的系统网络ID号分配流程进行更新。更新完成后编译成VxWorks操作系统镜像,将其与配置文件一同导入PPC数据处理模块中的存储模块,由PPC数据处理模块上电后进行调用。通过该方法,无须再修改应用程序中原有用于数据交互的网络设备ID号,确保变化数据存储模块与交换模块数量不会对系统中原有的交换模块、数据存储模块、PPC数据处理模块等设备的正常工作产生影响。
2.3 数据储存实现
本系统使用的数据存储模块包含1片FREESCALE的MPC8548E处理器作为主控制器,1片Xilinx的V6 HX系列FPGA芯片作为接口与数据缓存控制芯片,1片PLX的PEX8648作为板内PCIE交换机,1片PMC的PM8001作为SAS存储控制器,4片SAND FORCE的SF2382作为固态盘控制器,32片MICRON的NAND FLASH作为存储颗粒。
数据存储模块接收到数据存储命令后将节点号等参数传递给FPGA芯片。FPGA芯片根据控制命令选择对选定的通道进行数据接收。接收开始后FPGA将接收到的数据存入DDR2进行缓存,当数据量达到指定数量后FPGA发送读取命令通知处理器。处理器收到指令后启动PM8001的DMA控制器,将数据从FPGA写入到固态盘中,完成数据存储的过程。
利用信号源从AD信号采集模块输入3路脉宽5 μs、周期50 μs的脉冲信号。AD采集模块对信号模数转换后传入FPGA处理模块。FPGA处理模块将处理后的3路中频数据和1路脉冲描述字分别每2路高速传输至1块数据存储模块。计算机通过网络运用控制软件控制2块数据存储模块的数据存储。首先通过控制界面的“扫描连接”按钮建立数据链接,两块数据存储模块的节点号IP地址分别定义为192.58.59.65和192.58.59.66。分别建立链接后点击“开始”按钮开始采集数据,其中一块接收2路中频数据的数据存储模块存储数据的过程如图6所示。图6显示了节点号为192.58.59.65的数据存储模块接收2路200 MB/s数据的过程,两路接收通道为SRIO-0和SRIO-1,总的接收速率为400 MB/s。数据存储结束时点击“结束”按钮停止数据采集,采集的数据以文本的形式存在数据存储模块中。
图6 数据存储接收过程
数据存储完毕后可将需要分析的文本数据通过控制软件界面上的“下载”按钮通过网络以40 MB/s的速率下载存入计算机,下载完毕后可运用MATLAB软件对数据分析。图7显示了运用MATLAB软件将下载得到的一路存储数据恢复后的结果。采集存储的信号的脉宽为5 μs,信号的周期为50 μs。
图7 恢复数据结果
随着雷达技术的不断发展对数据传输速率和带宽的要求越来越高,对记录存储数据速率和数据量的要求也越来越大。基于VPX标准的通用数据存储模块很好地适应了上述这种发展趋势,具有集成度高、实时流盘性能强的优点。本文通过VPX平台实现了侦测雷达信号的高速存取,一方面有效地解决了工程调测需求问题,另一方面也为VPX平台下的高速数据存取提供了新的开发思路。
[1] 宋虎,陈建军.被动探测中的信号技术研究[J].雷达与对抗,2005(4).
[2] 许树军,黄镠,牛戴楠,王锐.基于FPGA的Serial RapidIO协议的设计与实现[J].雷达与对抗,2015(4).
[3] 石炜,邓伟.基于RapidIO高速信号处理系统的网络枚举技术[J].电子设计工程,2013,21(4):36-39.
[4] 石海洋.一种RapidIO交换网络配置方法的设计与实现[J].航空计算技术,2012,42(2):132-134.
Design and implementation of high-speed data storage system for embedded radar detection signals
WANG Rui, ZHU Run, RAO Qing, YAN Sheng-gang
(No. 724 Research Institute of CSIC, Nanjing 211153)
A method of using the Serial RapidIO (SRIO) bus to realize the transmission and storage of the high-speed radar detection signals is introduced, and the high-speed transmission, storage and reading of the detection signals are implemented through the standard modules based on the VPX architecture.
radar; detection signal; data storage; VPX standard; Serial RapidIO
2016-05-20;
2016-07-02
王锐(1982-),男,工程师,硕士,研究方向:雷达信号处理;朱润(1984-),男,工程师,硕士,研究方向:雷达信号处理;饶卿(1988-),男,工程师,硕士,研究方向:雷达信号处理;闫胜刚(1986-),男,工程师,硕士,研究方向:雷达信号处理。
TN957.52
A
1009-0401(2016)04-0025-04