本博文主要交流设计思路,在本博客已给出相关博文约150篇,希望对初学者有用。注意这里只是抛砖引玉,切莫认为参考这就可以完成商用IP设计。

(1)RoCE v2 发送模块
RoCE v2 发送模块的具体工作为将发送队列及接收队列条目中的信息转换为AXI-Stream 接口形式的网络帧,即 SEND 单元、READ 单元、WRITE 单元(后统称为请求生成单元)将发送队列条目转换为 SEND、READ、WRITE 包;ACK 单元和REP 单元(后称为应答生成单元)将接收队列条目转换为 ACK、REP 包。其中在发送 WRITE 包或 REP 包时,需要与 DMA 控制器进行交互并读取内存中的数据。
由于请求生成单元和应答生成单元并不是所有时刻都需要与 DMA 控制器进行数据交互,所以这里使用两个状态机分别控制请求生成和应答生成流程,以此来提高系统工作效率、降低响应延迟。RoCE v2 发送模块由一个请求状态机、一个应答状态机、一个二选一 MUX、五个生成单元和异常处理单元组成。
B站已给出相关性能的视频,如想进一步了解,请搜索B站用户:专注与守望