[发明专利]一种基于WQE反压的QP的流控方法在审
申请号: | 202110711439.5 | 申请日: | 2021-06-25 |
公开(公告)号: | CN113448896A | 公开(公告)日: | 2021-09-28 |
发明(设计)人: | 陈昌明;陈绪金;李志宏 | 申请(专利权)人: | 上海芯易恒联科技有限公司 |
主分类号: | G06F13/28 | 分类号: | G06F13/28 |
代理公司: | 上海创开专利代理事务所(普通合伙) 31374 | 代理人: | 李兰兰 |
地址: | 200000 上海市闵行*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 wqe qp 方法 | ||
1.一种基于WQE反压的QP的流控方法,包括计时器(1)、QP仲裁模块(2)、QP管理模块(3)、WQE_FIFO储存器(4)、包发送模块(5)、QP寄存器模块(6)、QP2受控寄存器(7)、QP3正常寄存器(8)、SQ2基地址寄存器(9)和SQ3基地址寄存器(10),其流控方法如下:
步骤1、根据QP仲裁模块(2)选定QP,QP管理模块(3)由选定的结果从QP寄存器(6)中读取该QP信息,再从对应的SQ2基地址寄存器(9)中读取待执行的WQE,然后将WQE写入WQE_FIFO储存器(4)中;
步骤2、包发送模块(5)从WQE_FIFO储存器(4)读取SQ2基地址寄存器(9)中的WQE2_1,并根据WQE2_1中指定的数据长度,计算出需要分开发送数据包的总个数n;
步骤3包发送模块(5)再根据QP2受控寄存器(7)预先设置的流量,计算出本次发送数据包的个数m,并将m个数据包发送出去,并且包发送模块(5)触发流控标志;
步骤4、将步骤3中的流控标志发送给WQE_FIFO储存器(4),接收到的流控标志的WQE_FIFO储存器(4)通过自查将QP2受控寄存器(7)的所有WQE2_1和WQE2_2清除,同时将QP3正常寄存器(8)的WQE按原来的顺序置顶;
步骤5、将步骤3中的流控标志发送给QP管理模块(3)后,QP管理模块(3)将包计数值m回写到QP2受控寄存器(7)的WQE当前指针寄存器中进行反压;
步骤6、将步骤3中的流控标志发送给计时器(1)后,计时器(1)根据QP2受控寄存器(7)预先设定的流量,计算出间隔发送m个数据包的时间间隔,并进行计时;
步骤7、在步骤6中计时器(1)开始计时后,包发送模块(5)继续读取WQE3_1和WQE3_2执行QP3正常寄存器(8)的操作;
步骤8、在步骤6中计时器(1)计时完毕后,QP仲裁模块(2)重新选中QP2受控寄存器(7),然后QP管理模块(3)重新将WQE2_1读取出来并写入WQE_FIFO储存器(4);
步骤9、包发送模块(5)读取步骤8中WQE_FIFO储存器(4)内的WQE2_1,并发送m个数据包,同时再一次触发流控标志;
步骤10、重复步骤3到步骤9的操作,每次等间隔的调度WQE2_1并发送m个数据包,直到所有的n个数据包发送完毕为止,并且将QP2受控寄存器(7)的WQE包计数寄存器清零。
2.根据权利要求1所述的一种基于WQE反压的QP的流控方法,其特征在于:所述步骤2中数据包的最大数据长度为4096Byte。
3.根据权利要求1所述的一种基于WQE反压的QP的流控方法,其特征在于:所述QP2受控寄存器(7)需要执行的发送任务WQE2_1、WQE2_2及WQE2_3,所述QP3正常寄存器(8)需要执行的发送任务WQE2_1和WQE2_2。
4.根据权利要求1所述的一种基于WQE反压的QP的流控方法,其特征在于:所述步骤3中发出的m个数据包,其中第一个包标记为First,后续的m-1个包标记为Middle,所述步骤9发出的m个数据包都标记为Middle,所述步骤10中发送的最后一个数据包标记为Last。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海芯易恒联科技有限公司,未经上海芯易恒联科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110711439.5/1.html,转载请声明来源钻瓜专利网。