RDMA设计10:指令控制单元设计? 本文主要交流设计思路,希望对初学者有用。注意这里只是抛砖引玉,切莫认为参考这就可以完成商用IP设计。
指令控制单元负责控制数据传输及 DMA 数据读写。该单元简化了数据传输及DMA 操作,使得用户可以更简便的控制数据传输事务。指令控制单元的功能由指令控制寄存器组和指令状态寄存器组成。
指令控制寄存器组由操作码寄存器、长度寄存器、源地址寄存器、目的地址寄存器、远程操作密钥寄存器、远程 IP 寄存器、远程 MAC 寄存器、队列号寄存器组成,用以提供数据传输时的必要信息。其中:操作码寄存器定义了数据传输类型,包括RDMA 单边/双边语义,如:SEND、WRITE、READ 等;长度寄存器定义了 DMA 操作的长度(以字节为单位);源地址寄存器和目的地址寄存器则分别定义了 DMA 操作请求数据的起始地址和存放数据的起始地址;远程操作密钥寄存器、远程 IP 寄存器、和远程 MAC 寄存器为可选寄存器,适用于一对多情况下的指令校验,其作用是避免因为用户的错误操作引起数据传输错误;队列号寄存器制定指令将发送到对应的队列中。指令控制寄存器组的定义如表 1 所示。
表1 指令控制寄存器组定义

指令状态寄存器用于反映指令的正确与否及指令的完成状态。指令控制操作可能因为用户参数错误或对方主机拒绝而出现错误。为此,指令状态寄存器将从融合以太网协议栈读取队列操作信息,实时反馈错误代码。指令状态寄存器的定义如表 2 所示。
表2 指令状态寄存器定义

B站已给出相关性能的视频,如想进一步了解,请搜索B站用户:专注与守望
https://www.bilibili.com/video/BV1mPV5eCE8z/?spm_id_from=333.337.search-card.all.click&vd_source=c355545d27a44fe96188b7caefeda6e7
审核编辑 黄宇
全部0条评论
快来发表一下你的评论吧 !