2026/1/12 5:00:49
网站建设
项目流程
淘宝做的网站会不会过期,好用的浏览器,域名注册后网站建设,邢台网站建设联系电话本博文主要交流设计思路#xff0c;在本博客已给出相关博文约140篇#xff0c;希望对初学者有用。注意这里只是抛砖引玉#xff0c;切莫认为参考这就可以完成商用IP设计。若有NVME或RDMA 产品及项目需求#xff0c;请看B站视频后联系。
队列管理模块采用管理与存储分离的结…本博文主要交流设计思路在本博客已给出相关博文约140篇希望对初学者有用。注意这里只是抛砖引玉切莫认为参考这就可以完成商用IP设计。若有NVME或RDMA 产品及项目需求请看B站视频后联系。队列管理模块采用管理与存储分离的结构进行设计由发送队列存储、发送队列管理、接收队列管理、完成条目解析、异常完成条目处理和 Round-Robin 仲裁组成。队列管理模块的结构如图 1所示。图1 队列管理模块的结构图1发送队列发送队列的管理由发送队列管理单元和发送队列存储共同实现。其中发送队列存储为所有发送队列共用的存储空间根据用户环境和开发板环境不同可由 BRAM、URAM 或 LUTRAM 实现。发送队列管理单元则负责管理这个存储空间并处理用户指令和发送队列读取请求。在发送队列管理单元中存在一个 SQ1 表单和若干用户 SQ表单来管理发送队列每个表单中存储发送队列的信息包括队列 ID、队列深度、会话 ID、远程主机 IP 地址、MAC 地址、远程访问密钥、远程主机数据包序列号、本地主机数据包序列号、远程主机内存起始地址和远程主机内存地址大小等。当收到系统控制模块中的队列控制单元发送过来的创建队列请求时发送队列管理单元首先判断队列 ID 和会话 ID 是否已存在。当队列管理模块可以接受请求时其会启用一个用户请求队列表单并根据接收到的信息创建用户发送队列还会同步通知接收队列管理单元启用一个用户接收队列表单并创建接收队列并且通知连接管理模块进入创建连接流程。如果队列 ID 或会话 ID 已存在则请求失败并返回错误信息。类似的当收到删除队列请求时同样判断队列 ID 和会话 ID如果二者均存在则删除对应的用户请求队列表单并同步通知接收队列管理单元删除对应用户接收队列表单并通知连接管理模块进入断开连接流程。当接收到系统控制模块中的指令控制单元发送过来的用户请求时发送队列管理单元首先根据用户请求中的信息判断对应队列是否存在。如果存在则再次判断远程主机 IP 地址、MAC 地址、远程访问密钥等信息是否正确如果均校验通过则根据对应用户发送队列表单中的起始偏移地址、队列深度计算出当次用户请求的写地址将发送队列条目写入该地址。同样的当接收到读发送队列请求时其根据请求的地址获取其对应的用户请求队列中的表单信息生成发送队列读地址并从该地址读取发送队列条目。通过上述的发送队列管理方式使得发送队列可在系统工作过程中动态配置用户可以通过修改表单信息的方式简便地修改队列深度、队列数量。在实际应用中用户即可根据不同的数据环境灵活控制队列深度和数量以此来优化系统的性能发挥和功耗表现。B站已给出相关性能的视频如想进一步了解请搜索B站用户专注与守望https://www.bilibili.com/video/BV1mPV5eCE8z/?spm_id_from333.337.search-card.all.clickvd_sourcec355545d27a44fe96188b7caefeda6e7