首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种基于HINOC协议的拆帧重排序队列的动态缓存控制方法及系统 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:西安电子科技大学

摘要:本发明属于HINOC系统拆帧技术领域,公开了一种基于HINOC协议的拆帧重排序队列的动态缓存控制方法及系统,采用状态机上线拆帧的设备号;根据配置信息生成拆帧已上线设备的缓存地址链表信息;当HB接收到来自不同HM的HIMAC帧时,根据收到的帧序号计算该帧在重排序队列中的位置x_s_ph_mod,并根据计算出的队列位置信息得到BDG偏移地址bdg_base_addr以及在BDG内部的缓存描述符BD偏移地址bd_offset_addr;预拆帧模块将检测重排序好的HIMAC队列,每检测到拥有HIMAC帧尾的分片时,向拆帧逻辑发送拆帧指令。本发明提高缓存利用率,保障在调制格式差异更大信道上两端设备的服务质量。

主权项:1.一种基于HINOC协议的拆帧重排序队列的动态缓存控制方法,其特征在于,所述基于HINOC协议的拆帧重排序队列的动态缓存控制方法包括以下步骤:步骤一,采用状态机上线拆帧的设备,包括设备号、优先级个数以及分配的缓存描述符组BDG个数;步骤二,根据配置信息生成拆帧已上线设备的缓存地址链表信息,供预拆帧模块查询;步骤三,当HB接收到来自不同HM的HIMAC帧时,根据收到的帧序号计算该帧在重排序队列中的位置x_s_ph_mod,并根据计算出的队列位置信息,读取链表信息中不同跳数对应的地址,得到BDG偏移地址bdg_base_addr;根据队位置信息,计算出在BDG内部的缓存描述符BD偏移地址bd_offset_addr;步骤四,预拆帧模块将检测重排序好的HIMAC队列,每当检测到一个拥有HIMAC帧尾的分片时,向拆逻辑模块发送拆帧指令,其中包括BDG偏移地址和BD偏移地址,供拆逻辑模块顺序读出HIMAC帧;所述步骤三中的当HB接收到来自不同HM的HIMAC帧时,根据收到的帧序号计算该帧在重排序队列中的位置x_s_ph_mod,并根据计算出的队列位置信息,读取链表信息中不同跳数对应的地址,得到BDG偏移地址bdg_base_addr;根据队列位置信息,计算出在BDG内部的缓存描述符BD偏移地址bd_offset_addr包括:通过预拆帧模块计算重排序地址:重排序队列的长度为L,新收到的帧序号为X,重排序队列队首的帧序号为S,重排序队列中存储的指针为Ph;当收到新的HIMAC帧时,计算得到所述HIMAC帧在重排序队列中应该存储的位置x_s_ph,即新的指针值;所述新的指针值来源于帧序号X减去队首的帧序号S,再加上队列的指针Ph,计算式为X-S+Ph;当新来的帧序号X小于队首帧序号S时,该帧存储的位置变为X+MAX_X-S+Ph;在HINOC系统中,最大的帧序号MAX_X为8192;根据计算得到的x_s_ph指针值,得到应该申请的BDG基地址bdg_base_adder和BDG内BD的偏移地址bd_base_adder;其中,所述计算应该申请的BDG基地址bdg_base_adder包括:判断指针指向的地址在队长的第几个BDG中;当指针数值小于1个BDG的深度时,读取该队列分配到的第1个BDG基地址,并将该HIMAC帧存储到第1个BDG内部;当指针数值大于1个BDG深度但小于2个BDG的深度时,读取该队列分配到的第2个BDG基地址,并将该HIMAC帧存储到第2个BDG内部,以此类推;计算HIMAC帧在BDG内部的BD偏移地址bd_base_adder包括:判断指针指向的地址在队长的第几个BDG中;一个BD存储1个HIMAC帧,且一个HIMAC帧的深度为14,故当指针数值小于1个BDG的深度时,BD的偏移地址为指针x_s_ph*14;当指针数值大于1个BDG深度但小于2个BDG的深度时,BD的偏移地址为指针x_s_ph-1个BDG深度*14,以此类推;所述步骤四中的预拆帧模块将检测重排序好的HIMAC队列,每当检测到一个拥有HIMAC帧尾的分片时,向拆帧逻辑模块发送拆帧指令,其中包括BDG偏移地址和BD偏移地址,供拆逻辑模块顺序读出HIMAC帧包括:预拆帧模块向逻辑拆帧模块发送拆帧指令,包括拆帧总信息指令与拆帧BDG信息指令;还包括拆帧逻辑模块解析拆帧指令,从对应地址搬移重排序好的HIMAC帧内容,并给出搬移完的反馈,清空对应队列寄存的信息;其中,拆帧总信息指令信息包括设备号、优先级、HIMAC帧数、队头位置、是否从头开始标志以及前次是否超时标志;是否从头开始标志,用于判断上次拆帧时是否留下部分头分片,如果有部分头分片,则从拆帧碎片RAM中取出,与新来的HIMAC帧重新组成以太网数据帧;如果上次拆帧没有留下部分以太网数据分片,则直接从新来的HIMAC帧中拆出以太网数据帧;前次是否超时标志,如果之前的HIMAC帧超时,则拆帧模块碎片RAM记录的之前的头碎片无用,删除,并从新的HIMAC帧中找出以太网帧头位置重新拆帧;拆帧BDG信息指令包括队长信息L,拆帧BD数目split_instruct_bd_num,拆帧BDG数目split_instruct_bdg_num,拆帧BDG的起始地址bdg_start,BD起始偏移地址split_instruct_bd_offset_adder,本次拆帧BDG的基地址split_instruct_bdg_base_adder,基地1,基地址2,……,基地址9和是否是一个新的拆帧指令这些信息;拆帧逻辑模块拿到拆帧BDG信息指令后,开始解析其中的内容;根据解析出来的内容,从HIMAC重排序队列中读出HIMAC帧进行拆帧,并存储HIMAC拆帧后的碎片;解析是否是一个新的拆帧指令;若是新的拆帧指令,则将从拆帧BDG信息指令中的本次拆帧BDG的基地址+BD起始偏移地址开始搬移,即split_instruct_bdg_base_adder+split_instruct_bd_offset_adder;若拆帧指令来自同一批次的拆帧指令,则根据解析出来的BDG偏移和BD偏移来确定地址;当BD数偏移小于一个BDG的深度时,表明该HIMAC帧还在与上一个帧相同的BDG块内,只需在上一次的读地址上继续累加;当BD数偏移大于1个BDG的深度时,根据BDG的偏移地址来读取;若BDG偏移为1时,从基地址2开始读取重排序的HIMAC帧;若BDG偏移为2时,从基地址3开始读取重排序的HIMAC帧,以此类推;若BDG偏移为9时,从基地址1开始读取重排序的HIMAC帧,循环利用重排序队列的存储空间;当拆帧逻辑模块读取完重排序后的HIMAC帧后,反馈一个清空重排序队列RQRankingQueue,排序队列信息的指令,排队的数据将不再占用下次拆帧的资源;预拆帧模块和拆帧逻辑模块通过指令信息的传递,将基于HINOC协议的帧有序的还原为以太网数据帧。

全文数据:

权利要求:

百度查询: 西安电子科技大学 一种基于HINOC协议的拆帧重排序队列的动态缓存控制方法及系统

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。