RDMA设计19:RoCE v2 发送及接收模块设计

本博文主要交流设计思路,在本博客已给出相关博文约150篇,希望对初学者有用。注意这里只是抛砖引玉,切莫认为参考这就可以完成商用IP设计。若有NVME或RDMA 产品及项目需求,请看B站视频后联系。

RoCE v2 发送及接收模块负责将用户指令组装为 RoCE v2 数据包或从 RoCE v2数据包中解析出远程主机信息及数据。RoCE v2 发送及接收模块的结构和数据转移方式如图1所示。RoCE v2 发送及接收模块均由五个单元组成,分别为 SEND 单元、READ 单元、WRITE 单元、ACK 单元和 REP 单元。其中 SEND 单元、READ 单元及WRITE 单元负责组装或解析这三种类型的请求包,而 ACK 单元与 REP 单元则负责组装或解析这两种类型的回复包。

图1 RoCE v2 发送及接收模块结构及数据转移图

在 RoCE v2 协议中,SEND 指令为双边语义,发送及接收均需要远程主机 CPU 参与,数据交换速率相对较慢、延迟相对较高。因此在RoCE v2 发送及接收模块中,SEND 单元只用于进行主机间的信息参数交换,不直接涉及大批量的数据传输操作,可以在一定程度上降低传输延迟、增加数据吞吐量。而DMA 控制器在其中负责数据交换,即把 AXI4 总线接口的数据和 AXI-Stream 总线接口的数据进行相互转换,分别与直接涉及到数据操作的 WRITE 单元和 REP 单元相连接。接下来将分别对 RoCE v2 发送和接收模块的结构设计和工作流程进行具体分析。

B站已给出相关性能的视频,如想进一步了解,请搜索B站用户:专注与守望

https://www.bilibili.com/video/BV1mPV5eCE8z/?spm_id_from=333.337.search-card.all.click\&vd_source=c355545d27a44fe96188b7caefeda6e7

相关推荐
xixixi777773 天前
RDMA(远程直接内存访问——允许外部设备直接访问主机的主存,绕过CPU,从而提高数据传输效率
服务器·网络·php·内存·数据中心·数据传输·rdma
雨洛lhw19 天前
FPGA电路设计1——芯片原理图和封装制作流程
ad·fpga设计·fpga芯片原理图封装
tiantianuser24 天前
RDMA设计15:连接管理模块设计2
网络协议·fpga开发·rdma·高速传输·cmac
李洛克071 个月前
RDMA 编程完整学习路线图
学习·rdma·路线
tiantianuser1 个月前
RDMA设计13:融合以太网协议栈设计2
fpga开发·rdma·高速传输·cmac·roce v2
brave and determined2 个月前
可编程逻辑器件学习(day22):“让ARM穿上FPGA的马甲“:赛灵思Zynq的命名哲学与技术革命
arm开发·嵌入式硬件·fpga开发·zynq·fpga设计·嵌入式设计·fpga开发流程
9527华安2 个月前
全国产化方案实现NVMe over 100G RDMA,解决智算超算中“存算”不匹配问题
fpga开发·nvme·rdma
bandaoyu2 个月前
【RDMA】mlx5dev mlx5dv_devx 接口
rdma·mlx5
tiantianuser3 个月前
NVMe高速传输之摆脱XDMA设计52: 上板资源占用率分析
fpga开发·nvme·pcie·xdma·高性能nvme