问题与挑战
目前,千兆、万兆以太网的应用大多用CPU来实现。面向某些时间敏感型应用,不能满足需要。例如:
嵌入式实时高业务速率;
时间敏感性控制系统;
大容量无线通信系统;
等等。
解决方案
定为公司近期推出了万兆以太网接口全FPGA软件包,来解决上述挑战。
万兆以太网接口全FPGA软件包,含有全并行UDP/IP、ARP、ICMP协议,支持根据需要裁剪大小,能够快速在不同FPGA型号间进行移植使用。
万兆以太网接口全FPGA软件包的结构如图1所示,包含外部接口、用户使用接口:
外部接口使用FPGA中GTX/GTH进行10Gbps业务速率传输。
用户接口包括四个数据通道接口和一个配置通道接口,各个通道通过端口号来区分,单通道最大理论传输速率为10Gbps。用户接口端使用AXI_stream协议进行传输流互传。
图1、总体结构
用户接口简介
数据通道X引脚
表1、表2给出了数据通道X接收和发送引脚的定义。数据通道为4组,采用AXI_stream协议。
表1、用户发送数据通道X引脚定义
表2、用户接收数据通道X引脚定义
IP地址功能引脚
表3、表4给出了用户自定义本机IP地址及目标IP地址的引脚定义。其中本机IP地址引脚用于控制本机的IP、MAC地址和通道的端口号;自定义目标IP地址引脚用于指示目标终端的IP及端口号。
表3、用户自定义本机IP和目的端口引脚
表4、用户自定义本机IP和目的端口引脚
实验与测试
图2为万兆以太网接口全FPGA软件包的硬件板间互联测试结构,使用的测试设备包括有:
USDR2板卡(详情见参考资料[1]);
USDR3板卡(详情见参考资料[2]);
万兆交换机;
QSFP+转SFP线缆若干;
PC机;
千兆网线。
指定目标IP地址后,可稳定实现10Gbps量级数据的万兆以太网协议板间传输。
图2、测试设备连接模型
测试方法
图3为测试设备的实物连接图。在USDR2板卡接收到测试开始命令后,满速率的通过交换机向USDR3发送数据,持续时间为5分钟,发送的以太网数据帧长度为1440字节。
期间使用定为(给出连接网址)的以太网JTAG工具在PC端进行发送及接收数据个数抓取,计算其传输速率及丢包率。传输速率:
传输速率(单位:b/s)=(USDR2发送数据个数* 64)(单位:bit)/运行时间(单位:秒)
图3、实测设备连接图
测试步骤
完成测试板卡连接,开启电源,通过PC机分别对USDR2和USDR3进行测试bit下载;
通过PC机向USDR2发送开始传输万兆以太网测试数据命令,数据开始全速发送;
等待发送数据结束(测试工程中数据发送设定时间为5分钟),通过以太网JTAG工具分别对USDR2板卡的发送数据个数和USDR3板卡的接收数据个数进行数据抓取,并记录。
重复以上流程,进行测试5次,分别记录5次测试数据。
测试结果
根据以上测试环境及方法,分别进行5次传输测试,其测试结果如表5所示。测试结果表明,在该测试环境下,速率9Gbps时,万兆以太网模块无丢失数据现象。
表5、数据测试及结果
主要功能
万兆以太网接口全FPGA软件包主要实现功能包括:
支持ARP动态绑定;
支持多通道数据流互传;
支持以太网ping包操作;
支持修改本机IP地址及MAC地址;
支持用户自定义目标IP地址及端口号。
应用场景
万兆以太网接口全FPGA软件包的主要应用场景包括且不限于:
嵌入式实时高业务速率;
时间敏感性控制系统;
大容量无线通信系统;
数字射频远距离传输。
参考资料
1、网址连接:http://www.dingwave.com/algorithm/product/U2.htm;
2、网址连接:http://www.dingwave.com/algorithm/product/U3.htm;
联系客服