[发明专利]基于1394总线事件消息响应机制的处理方法有效
申请号: | 201711283734.5 | 申请日: | 2017-12-06 |
公开(公告)号: | CN108255770B | 公开(公告)日: | 2020-09-22 |
发明(设计)人: | 王宣明;田泽;魏艳艳;牛少平;魏美荣;郑斐 | 申请(专利权)人: | 中国航空工业集团公司西安航空计算技术研究所 |
主分类号: | G06F13/42 | 分类号: | G06F13/42 |
代理公司: | 中国航空专利中心 11008 | 代理人: | 王迪 |
地址: | 710000 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 1394 总线 事件 消息 响应 机制 处理 方法 | ||
本发明属于计算机硬件技术,涉及一种基于1394总线事件消息响应机制的处理方法。本文提供了一种基于1394总线事件消息响应机制的处理方法,可按照系统配置,接收方对指定的关键1394总线事件消息立即应答,提高了接收消息的可靠性;发送方在下个STOF周期的偏移时刻间隔重试发送,不改变本节点预先分配的带宽,保证了总线通讯的确定性。
技术领域
本发明属于计算机硬件技术,涉及一种基于1394总线事件消息响应机制的处理方法。
背景技术
1394总线在航空领域应用中,主要采用异步流包传输网络数据。但是异步流消息是不需要应答的,这对于发送出去的关键事件消息,不能确认接收方是否接收到。在IEEE1394系列协议中,没有定义对这种关键异步流消息的响应机制应如何处理。
发明内容
本发明的目的:本发明提出一种基于1394总线事件消息响应机制的处理方法,解决关键事件消息的可靠接收问题。
本发明的技术方案:本发明提供一种基于1394总线事件消息响应机制的处理方法,具体可分为发送方处理步骤,和接收方处理步骤。
发送方处理步骤如下:
步骤1:通信配置表中给总线上每条消息分配其帧开始(Start Of Frame,STOF)发送偏移时间,并标识需要应答的关键消息,为每条需要应答的消息设计重试次数计数器,加载初始值为系统设置的最大重试次数;
步骤2:驱动接口将需要发送的信息封装,并根据消息属性(是否需要应答)和当前消息的发送情况填充到主存中为空或即将为空的待发送缓冲区中,并在完成数据封装填充后,通知硬件逻辑电路该数据具备发送条件;
步骤3:硬件逻辑电路检查此消息的重试情况,如发送已完成(已被应答)或重试超时,则本消息需搬移,将当前需发送的消息搬移到片内发送缓冲内;如重试未完成,则片内发送缓冲仍保留上次数据,等待重试发送;
步骤4:在当前配置表调度发送消息的发送偏移时间到来时,本条消息已搬移到片内发送缓冲内,则在发送偏移时刻,逻辑将数据打包并发送到1394总线上,完成本条消息的发送;
步骤5:根据配置表调度得到的该消息是否需要应答,如果需要应答,则设置对应的应答标志位,暂不更新对应消息缓冲指针;
步骤6:如果在超时周期内(下条需发送数据包发送之前)收到应答消息,完成应答消息的发送,将本条消息重试计数值清“0”,指示该消息已发送完成;
步骤7:如果在超时周期内(下条需发送数据包发送之前)未收到应答消息,则判断重试次数计数值:
——如果重试计数值不等于“0”,则减1,并转入后续消息发送,重试消息将在下个发送周期内发送;
——如果重试计数值等于“0”,指示该消息已重试超时,上报中断到主机,并转入后续消息发送。
接收方处理步骤如下:
步骤1:数据包发送完后,将本节点的工作模式设置为接收模式;
步骤2:本节点接收到消息后,如循环冗余校验CRC正确,则提交到接收调度逻辑;否则直接丢弃;
步骤3:硬件逻辑电路提取接收到消息的通道号,判断与配置表中保存的期望接收消息通道号是否相同;
步骤4:如果不相同,则直接丢弃;
步骤5:如果相同,则根据调度配置表得到的接收消息控制字,判断消息是否需要应答,如果需要应答,则将本消息的ID写入应答消息负载,并立即启动发送;
步骤6:将接收到的消息存入片内接收缓冲区内,并将片内接收缓冲区内保存的数据搬移至主存缓冲区,完成本条消息接收。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国航空工业集团公司西安航空计算技术研究所,未经中国航空工业集团公司西安航空计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711283734.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种AXI-PLB桥
- 下一篇:一种贸易用智能工作机