基于7VX690T FPGA实现万兆TCP/IP资源和性能测试

项目简要架构

当前项目主要利用10G万兆以太网与上位机进行数据传输。TCP传输逻辑是当FPGA与TCP建立连接之后,FPGA板卡将数据发送到上位机上,当前阶段为了测试方便,FPGA内部发送有规则的累加数据到上位机。其简要结构如图所示,例化了2个TCP/IP模块,实现TCP/UDP协议栈,每个TCP/IP协议栈最多支持256个TCP连接,当前实际支持的个数为<4个。根据需求可配置。

资源性能对比说明 :

|----------------|-------|-----|----------|--------------------|
| 版本 | 缓存大小 | 端口数 | TCP/IP速率 | 690t中BLOCK_RAM使用情况 |
| PCIE404_TCP_01 | 128KB | 1端口 | 3.3Gbps | 162 |
| PCIE404_TCP_02 | 128KB | 2端口 | 6.6Gbps | 226 |
| PCIE404_TCP_04 | 256KB | 1端口 | 8.4Gbps | 298 |
| PCIE404_TCP_05 | 256KB | 2端口 | 9.7Gbps | 426 |
| PCIE404_TCP_07 | 512KB | 1端口 | 9.3Gbps | 570 |
| PCIE404_TCP_08 | 512KB | 2端口 | 9.7Gbps | 826 |

TCP/IP测试速率如下(9.6Gbps/s):

详细资源使用情况

PCIE404_TCP_01

PCIE404_TCP_05

当前TestNet配置如下:

  1. 需指定当前电脑为服务端
  2. IP为FPGA板卡的IP地址
  3. PORT为FPGA板卡设置的PORT
  4. 需要勾选TCP协议的支持

完成以上配置后,完成初始化后,即可显示TCP报文收包情况。

仿真补充

  1. 接口数据结构

为方便仿真及抓信号是数据分析,补充接口的数据结构

ARP数据结构

TCP数据结构

以上在优数科技的UD PCIe-404上测试验证。

UD PCIe-404全国产化信号处理模块为标准PCIe全高的结构,对外支持PCIe3.0×8通信,也可以采用千兆以太网(RJ45连接器)、万兆以太网(或RapidIO、Aurora,QSFP+连接器)接口进行通信,支持多板级联。模块为100%国产化设计(同时也兼容进口器件)。FPGA芯片可选JFM7VX690T、SMQ7VX690T、BQR7VX690T等,两组DDR3的存储容量分别可配置为2~4GByte。板载有1个FMC+(兼容FMC子板)全互联的接口,满足VITA57.1和VITA57.4规范,可以适配大多数ADC/DAC/光纤 FMC或FMC+子卡。全部器件选择工业级和以上质量等级元器件。

相关推荐
txinyu的博客几秒前
HTTP服务实现用户级窗口限流
开发语言·c++·分布式·网络协议·http
蜂蜜黄油呀土豆34 分钟前
计算机网络中的常见网络场景与问题排查
tcp/ip·计算机网络·网络安全·http请求与响应
stars-he1 小时前
FPGA学习笔记-图书馆存包柜,乒乓球游戏电路设计
笔记·学习·fpga开发
掘根1 小时前
【仿Muduo库项目】HTTP模块1——Util子模块
网络·网络协议·http
从此不归路1 小时前
FPGA 结构与 CAD 设计(第3章)下
ide·fpga开发
YprgDay3 小时前
Vivado单独综合某一模块查看资源消耗
fpga开发·vivado
CCPC不拿奖不改名3 小时前
网络与API:从HTTP协议视角理解网络分层原理+面试习题
开发语言·网络·python·网络协议·学习·http·面试
liulilittle3 小时前
OPENPPP2 网络驱动模式
开发语言·网络·c++·网络协议·信息与通信·通信
Joshua-a3 小时前
高云FPGA在线调试/逻辑分析仪简要使用流程
嵌入式硬件·fpga开发·高云
tzy2333 小时前
分享一个 HTTP(S) 代理&抓包工具,拦截和Mock Web客户端请求和服务端响应
前端·网络协议·http