基于嵌入式万兆网硬协议栈的信号高速采集转发实现方法技术

技术编号:13046553 阅读:72 留言:0更新日期:2016-03-23 14:20
基于嵌入式万兆网硬协议栈的信号高速采集转发实现方法,在高性能FPGA平台上,采用万兆网硬协议栈IP核加万兆网MAC的IP核的方式在一片FPGA上实现信号采集功能和包括应用层、网络层、MAC层、物理层的万兆以太网发送通路与接收通路,实现一种将IRIG格式封装的采集数据通过高速万兆以太网发送到后端信号处理服务器并进一步处理的高速采集转发方法。据此实现的信号采集转发实现方法及信号采集转发系统,可以实现对多路中频信号的采集并将中频采集数据高速转发到由交换机、服务器、存储阵列等节点组成的高速以太网集群中。该采集转发实现方法将信号的采集与处理功能在系统架构上分离,具有系统架构简单、设备小型化、传输速度高、整体功耗低等特点。

【技术实现步骤摘要】

本专利技术涉及基于嵌入式万兆网硬协议栈的信号高速采集转发实现方法,属于嵌入式系统高速网络

技术介绍
信号高速采集转发是将经过射频下变频、A/D量化得到的中频数字信号进行封装或处理,并通过高速以太网转发出去的数据传输技术,是当前测控通信中的重要技术。随着一些高性能的有效载荷(如高分辨率CCD相机)在航天器上的应用,天地通信的数据量和速率大大增加,一些测控设备的数据处理能力超过1Gbps,对万兆级别(10Gbps)通信能力的需求越加急迫。在软解调技术中,需要采用信号采集转发系统来获取中频数字信号。随着对测控站、测控系统的通用性和小型化,对信号高速采集转发实现方法的要求可以归纳为集成化、小型化、功耗低、经济耐用。在采用“商用服务器+高性能并行软件”的软解调技术中,需要将总速率超过2Gbps的前端采集的中频数字信号通过网络发送到后端商业服务器。这就需要采用嵌入式系统方式实现万兆以太网通路。目前业界常用的嵌入式以太网解决方案为在微控制器内移植软件协议栈和在ASIC内置协议栈,但往往都不能同时兼顾传输效率、可集成化和可移植性。常见的嵌入式以太网数据传输实施方案包括:(1)ARM+Linux+网卡;(2)DSP+PHY芯片;(3)FPGA+PHY芯片。方案(1)需要为数据传输加入网卡,并自行编写外设与网络协议驱动,操作复杂,前期设计成本高,维护难度大,ARM中Linux操作系统上运行的软件协议栈最高可以支持千兆网性能,无法达到软解调技术所需要的性能。方案(2)利用专门针对网络应用而开发的LIB库,其中包含的函数实现协议功能。这种方案相比(1)的情况开发难度有所降低,应用也较为成熟。但由于DSP内部CPU仍采取串行调用方式,同样无法满足性能需求。方案(3)中,若采用FPGA片内软核处理器实现网络协议栈则与方案(1)、方案(2)具有同样难以解决的性能问题。在此情况下,需要采用高速IP核来实现网络协议栈。目前能够满足万兆性能的TCP/IP协议栈IP核实现难度大,在国内尚无相关产品出现,需要考虑采用其他网络协议栈IP核以满足要求。
技术实现思路
本专利技术的技术解决问题为:克服现有技术的不足,提出了基于嵌入式万兆网硬协议栈的信号高速采集转发实现方法,解决了微控制器内移植软件协议栈和在ASIC内置协议栈不能同时兼顾传输效率、可集成化和可移植性的问题,提供了一种在一片FPGA上实现包括多通道信号采集、缓冲、并直接通过万兆性能的嵌入式网络进行数据传输的解决方案,可以直接解决软解调技术中前端信号采集传输能力不足的问题。本专利技术的技术解决方案为:一种基于嵌入式万兆网硬协议栈的信号高速采集转发实现方法,步骤如下:(1)将FPGA片外采集的N个通道中频数字信号流数据、时码信息、AGC功率信息输入到FPGA片内,N为正整数,且1≤N≤4;(2)将步骤(1)中所述的N个通道中频数字信号流数据、时码信息、AGC功率信息按照IRIG协议帧格式进行封装,得到N个通道的IRIG协议帧数据;(3)将步骤(2)中所述的N个通道的IRIG协议帧数据采用Round-Robin仲裁方式和时分复用方式按1帧为单位的串行IRIG协议帧数据发送到自定义的采集打包模块数据输出接口;(4)将步骤(3)中所述的串行IRIG协议帧数据输入到FPGA片内的由BlockRAM组成的异步FIFO中进行异步缓冲;(5)将步骤(4)中所述异步FIFO中缓冲后的串行IRIG协议帧数据通过一条AXI-Stream总线,即AXIS总线,发送到FPGA片内的网络模块中的收发引擎的TX引擎M个AXISSlave端口中的1个端口,M为正整数,且1≤M≤3;(6)为步骤(5)中所述发送的AXISSlave端口的IRIG协议帧数据添加AXIS协议流标识,即设置网络模块中的收发引擎的TX引擎2-bit的多路转1路选通信号,TX引擎接收选通的这路IRIG协议帧数据;(7)从TX引擎AXISMaster端口输出的IRIG协议帧数据,通过另一条AXIS总线发送到FPGA片内的万兆网UDP/IP硬协议栈TX端数据端口;(8)在万兆网UDP硬协议栈中,将步骤(7)的IRIG协议帧数据按1帧IRIG协议帧为单位,即8192字节,进行UDP首部封装,得到UDP首部封装的数据包;(9)将步骤(8)完成UDP首部封装的数据包,进行符合IPV4协议的IP首部封装,得到IP首部封装的数据包;(10)对步骤(9)完成IP首部封装的数据包进行校验,在XX中填充校验字段,得到完成UDP/IP协议封装的数据包;(11)将步骤(10)完成UDP/IP协议封装的数据包通过再一条AXIS总线传送到FPGA片内的10GEthernetMAC层模块;(12)在10GEthernetMAC层模块中,对步骤(10)得到的UDP/IP协议封装的数据包进行符合10GEthernetMAC层协议格式的MAC帧封装,得到MAC帧封装的数据包;(13)将步骤(12)完成MAC帧封装的数据包通过10GEthernetMAC层模块的TX端XGMII接口传送到FPGA片内的10GBASE-RPCS/PMA层模块;(14)在10GBASE-RPCS/PMA层模块中,对步骤(12)得到的MAC帧封装的数据包进行物理层封装,并通过TX端连接的FPGA片的引脚发送到FPGA片外“SFP+”光端口模块,再通过LC光纤的发送链路发送出去,(15)循环进行步骤(1)~(14),直至N个通道中频数字信号流数据采集完成,即完成对信号的高速采集转发;在循环进行步骤(1)~(14)的同时,实时通过LC光纤的接收链路接收符合UDP/IP以太网协议的远程命令信息数据包,并依次通过10GBASE-RPCS/PMA层RX端、10GEthernetMAC层RX端、UDP硬协议栈RX模块、收发引擎RX引擎,以依次完成物理层解封装、MAC解封装、IP层协议解封装、UDP层协议解封装、接收数据包地址过滤,获得远程命令信息数据包中的远程命令信息数据,该远程命令信息数据用以实现对基于嵌入式万兆网络硬协议栈的信号高速采集转发的控制,即对得到的远程命令信息数据进行解析,对步骤(6)~步骤(14)描述的过程进行控制,包含对采集打包模块的通道配置、A/D采集的启停、UDP/IP地址的配置和信号采集启停进行控制。经FPGA片外A/D采集的中频数字信号频率为56MHz,最高不高于93.3MH本文档来自技高网
...
基于嵌入式万兆网硬协议栈的信号高速采集转发实现方法

【技术保护点】
基于嵌入式万兆网硬协议栈的信号高速采集转发实现方法,其特征在于包括下列步骤:(1)将FPGA片外采集的N个通道中频数字信号流数据、时码信息、AGC功率信息输入到FPGA片内,N为正整数,且1≤N≤4;(2)将步骤(1)中所述的N个通道中频数字信号流数据、时码信息、AGC功率信息按照IRIG协议帧格式进行封装,得到N个通道的IRIG协议帧数据;(3)将步骤(2)中所述的N个通道的IRIG协议帧数据采用Round‑Robin仲裁方式和时分复用方式按1帧为单位的串行IRIG协议帧数据发送到自定义的采集打包模块数据输出接口;(4)将步骤(3)中所述的串行IRIG协议帧数据输入到FPGA片内的由Block RAM组成的异步FIFO中进行异步缓冲;(5)将步骤(4)中所述异步FIFO中缓冲后的串行IRIG协议帧数据通过一条AXI‑Stream总线,即AXIS总线,发送到FPGA片内的网络模块中的收发引擎的TX引擎M个AXIS Slave端口中的1个端口,M为正整数,且1≤M≤3;(6)为步骤(5)中所述发送的AXIS Slave端口的IRIG协议帧数据添加AXIS协议流标识,即设置网络模块中的收发引擎的TX引擎2‑bit的多路转1路选通信号,TX引擎接收选通的这路IRIG协议帧数据;(7)从TX引擎AXIS Master端口输出的IRIG协议帧数据,通过另一条AXIS总线发送到FPGA片内的万兆网UDP/IP硬协议栈TX端数据端口;(8)在万兆网UDP硬协议栈中,将步骤(7)的IRIG协议帧数据按1帧IRIG协议帧为单位,即8192字节,进行UDP首部封装,得到UDP首部封装的数据包;(9)将步骤(8)完成UDP首部封装的数据包,进行符合IPV4协议的IP首部封装,得到IP首部封装的数据包;(10)对步骤(9)完成IP首部封装的数据包进行校验,在XX中填充校验字段,得到完成UDP/IP协议封装的数据包;(11)将步骤(10)完成UDP/IP协议封装的数据包通过再一条AXIS总线传送到FPGA片内的10G Ethernet MAC层模块;(12)在10G Ethernet MAC层模块中,对步骤(10)得到的UDP/IP协议封装的数据包进行符合10G Ethernet MAC层协议格式的MAC帧封装,得到MAC帧封装的数据包;(13)将步骤(12)完成MAC帧封装的数据包通过10G Ethernet MAC层模块的TX端XGMII接口传送到FPGA片内的10G BASE‑R PCS/PMA层模块;(14)在10G BASE‑R PCS/PMA层模块中,对步骤(12)得到的MAC帧封装的数据包进行物理层封装,并通过TX端连接的FPGA片的引脚发送到FPGA片外“SFP+”光端口模块,再通过LC光纤的发送链路发送出去;(15)循环进行步骤(1)~(14),直至N个通道中频数字信号流数据采集完成,即完成对信号的高速采集转发。...

【技术特征摘要】
1.基于嵌入式万兆网硬协议栈的信号高速采集转发实现方法,其特征在于包括下列步骤:
(1)将FPGA片外采集的N个通道中频数字信号流数据、时码信息、AGC功率信息输入到FPGA片内,N为正整数,且1≤N≤4;
(2)将步骤(1)中所述的N个通道中频数字信号流数据、时码信息、AGC功率信息按照IRIG协议帧格式进行封装,得到N个通道的IRIG协议帧数据;
(3)将步骤(2)中所述的N个通道的IRIG协议帧数据采用Round-Robin仲裁方式和时分复用方式按1帧为单位的串行IRIG协议帧数据发送到自定义的采集打包模块数据输出接口;
(4)将步骤(3)中所述的串行IRIG协议帧数据输入到FPGA片内的由BlockRAM组成的异步FIFO中进行异步缓冲;
(5)将步骤(4)中所述异步FIFO中缓冲后的串行IRIG协议帧数据通过一条AXI-Stream总线,即AXIS总线,发送到FPGA片内的网络模块中的收发引擎的TX引擎M个AXISSlave端口中的1个端口,M为正整数,且1≤M≤3;
(6)为步骤(5)中所述发送的AXISSlave端口的IRIG协议帧数据添加AXIS协议流标识,即设置网络模块中的收发引擎的TX引擎2-bit的多路转1路选通信号,TX引擎接收选通的这路IRIG协议帧数据;
(7)从TX引擎AXISMaster端口输出的IRIG协议帧数据,通过另一条AXIS总线发送到FPGA片内的万兆网UDP/IP硬协议栈TX端数据端口;
(8)在万兆网UDP硬协议栈中,将步骤(7)的IRIG协议帧数据按1帧IRIG协议帧为单位,即8192字节,进行UDP首部封装,得到UDP首部封装的数据包;
(9)将步骤(8)完成UDP首部封装的数据包,进行符合IPV4协议的IP首部封装,得到IP首部封装的数据包;
(10)对步骤(9)完成IP首部封装的数据包进行校验,在XX中填充校验字段,得到完成UDP/IP协议封装的数据包;
(11)将步骤(10)完成UDP/IP协议封装的数据包通过再一条AXIS总线传送到FPGA片内的10GEthernetMAC层模块;
(12)在10GEthernetMAC层模块中,对步骤(10)得到的UDP/IP协议封装的数据包进行符合10GEthernetMAC层协议格式的MAC帧封装,得到MAC帧封装的数据包;
(13)将步骤(12)完成MAC帧封装的数据包通过10GEthernetMAC层模块的TX端XGM...

【专利技术属性】
技术研发人员:张博为卢士鹏朱颖苏丽
申请(专利权)人:北京遥测技术研究所航天长征火箭技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1