CN108255770B - 基于1394总线事件消息响应机制的处理方法 - Google Patents
基于1394总线事件消息响应机制的处理方法 Download PDFInfo
- Publication number
- CN108255770B CN108255770B CN201711283734.5A CN201711283734A CN108255770B CN 108255770 B CN108255770 B CN 108255770B CN 201711283734 A CN201711283734 A CN 201711283734A CN 108255770 B CN108255770 B CN 108255770B
- Authority
- CN
- China
- Prior art keywords
- message
- retry
- transmission
- sending
- responded
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4286—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a handshaking protocol, e.g. RS232C link
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0012—High speed serial bus, e.g. IEEE P1394
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明属于计算机硬件技术,涉及一种基于1394总线事件消息响应机制的处理方法。本文提供了一种基于1394总线事件消息响应机制的处理方法,可按照系统配置,接收方对指定的关键1394总线事件消息立即应答,提高了接收消息的可靠性;发送方在下个STOF周期的偏移时刻间隔重试发送,不改变本节点预先分配的带宽,保证了总线通讯的确定性。
Description
技术领域
本发明属于计算机硬件技术,涉及一种基于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:将接收到的消息存入片内接收缓冲区内,并将片内接收缓冲区内保存的数据搬移至主存缓冲区,完成本条消息接收。
本发明具有的优点效果:本发明可按照系统配置,接收方对指定的关键1394总线事件消息立即应答,提高了接收消息的可靠性;发送方在下个发送周期的偏移时刻间隔重试发送,不改变本节点预先分配的带宽,保证了总线通讯的确定性。
附图说明
图1是本发明的方法流程图。
具体实施方式
下面结合附图和具体实施例,对本发明的技术方案进行清楚、完整地表述。显然,所表述的实施例仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提所获得的所有其他实施例,都属于本发明的保护范围。
一种基于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:将接收到的消息存入片内接收缓冲区内,并将片内接收缓冲区内保存的数据搬移至主存缓冲区,完成本条消息接收。
最后应说明的是,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (1)
1.一种基于1394总线事件消息响应机制的处理方法,其特征在于,包括发送方处理步骤和接收方处理步骤,
发送方处理步骤如下:
步骤1:通信配置表中给总线上每条消息分配发送偏移时间,并标识需要应答的关键消息,为每条需要应答的消息设计重试次数计数器,加载初始值为系统设置的最大重试次数;
步骤2:驱动接口将需要发送的信息封装,并根据消息属性和当前消息的发送情况填充到主存中为空或即将为空的待发送缓冲区中,并在完成数据封装填充后,通知硬件逻辑电路该数据具备发送条件;
步骤3:硬件逻辑电路检查此消息的重试情况,如已被应答或重试超时,则本消息需搬移,将当前需发送的消息搬移到片内发送缓冲内;如重试未完成,则片内发送缓冲仍保留上次数据,等待重试发送;
步骤4:在当前配置表调度发送消息的发送偏移时间到来时,本条消息已搬移到片内发送缓冲内,则在发送偏移时刻,逻辑将数据打包并发送到1394总线上,完成本条消息的发送;
步骤5:根据配置表调度得到的该消息是否需要应答,如果需要应答,则设置对应的应答标志位,暂不更新对应消息缓冲指针;
步骤6:如果在超时周期内收到应答消息,完成应答消息的发送,将本条消息重试计数值清“0”,指示该消息已发送完成;
步骤7:如果在超时周期内未收到应答消息,则判断重试次数计数值:
如果重试计数值不等于“0”,则减1,并转入后续消息发送,重试消息将在下个发送周期内发送;
如果重试计数值等于“0”,指示该消息已重试超时,上报中断到主机,并转入后续消息发送;
接收方处理步骤如下:
步骤1:数据包发送完后,将本节点的工作模式设置为接收模式;
步骤2:本节点接收到消息后,如循环冗余校验CRC正确,则提交到接收调度逻辑;否则直接丢弃;
步骤3:硬件逻辑电路提取接收到消息的通道号,判断与配置表中保存的期望接收消息通道号是否相同;
步骤4:如果不相同,则直接丢弃;
步骤5:如果相同,则根据调度配置表得到的接收消息控制字,判断消息是否需要应答,如果需要应答,则将本消息的ID写入应答消息负载,并立即启动发送;
步骤6:将接收到的消息存入片内接收缓冲区内,并将片内接收缓冲区内保存的数据搬移至主存缓冲区,完成本条消息接收。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711283734.5A CN108255770B (zh) | 2017-12-06 | 2017-12-06 | 基于1394总线事件消息响应机制的处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711283734.5A CN108255770B (zh) | 2017-12-06 | 2017-12-06 | 基于1394总线事件消息响应机制的处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108255770A CN108255770A (zh) | 2018-07-06 |
CN108255770B true CN108255770B (zh) | 2020-09-22 |
Family
ID=62720946
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711283734.5A Active CN108255770B (zh) | 2017-12-06 | 2017-12-06 | 基于1394总线事件消息响应机制的处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108255770B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101900772A (zh) * | 2010-06-18 | 2010-12-01 | 中国航天科技集团公司第五研究院第五一三研究所 | 一种插箱等效器 |
CN102761466A (zh) * | 2011-04-25 | 2012-10-31 | 中国科学院空间科学与应用研究中心 | 一种ieee 1394 总线数据记录处理系统和方法 |
CN105391643A (zh) * | 2015-12-09 | 2016-03-09 | 中国航空工业集团公司西安航空计算技术研究所 | 基于IEEE_std 1394-2008协议链路层等时级联包流量控制电路及方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4631599B2 (ja) * | 2005-08-19 | 2011-02-16 | 船井電機株式会社 | Ieee1394シリアルバスに接続されるディジタルテレビジョン受像機、及びieee1394シリアルバスに接続されるターゲット機器 |
-
2017
- 2017-12-06 CN CN201711283734.5A patent/CN108255770B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101900772A (zh) * | 2010-06-18 | 2010-12-01 | 中国航天科技集团公司第五研究院第五一三研究所 | 一种插箱等效器 |
CN102761466A (zh) * | 2011-04-25 | 2012-10-31 | 中国科学院空间科学与应用研究中心 | 一种ieee 1394 总线数据记录处理系统和方法 |
CN105391643A (zh) * | 2015-12-09 | 2016-03-09 | 中国航空工业集团公司西安航空计算技术研究所 | 基于IEEE_std 1394-2008协议链路层等时级联包流量控制电路及方法 |
Non-Patent Citations (2)
Title |
---|
Test Methodology for Characterizing the SEE Response of a Commercial IEEE 1394 Serial Bus (FireWire);C. Seidleck;《IEEE TRANSACTIONS ON NUCLEAR SCIENCE》;20021231;3129-3134页 * |
一种 1394 总线监控器数据包处理关键技术研究;魏美荣;《计算机技术与发展》;20140430;6-11页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108255770A (zh) | 2018-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3716546B1 (en) | Data transmission method and first device | |
Di Natale et al. | Understanding and using the controller area network communication protocol: theory and practice | |
EP0525985B1 (en) | High speed duplex data link interface | |
CN101322357A (zh) | 千兆比特/10千兆比特以太网系统中的显式流控制 | |
CN108966046B (zh) | 一种基于fpga的两种通信接口融合mac控制器 | |
US10567194B2 (en) | User station for a bus system and method for increasing the transmission capacity in a bus system | |
KR19990067626A (ko) | 패킷송수신장치및패킷수신장치 | |
CN103957155A (zh) | 报文传输方法、装置及互联接口 | |
US6741566B1 (en) | Remote management ethernet network and device | |
CN113572582B (zh) | 数据发送、重传控制方法及系统、存储介质及电子设备 | |
US20170134299A1 (en) | Method and apparatus for controlling message over heterogeneous network | |
EP3490293A1 (en) | Data transmission method, data receiving device, and data sending device | |
CN113079074A (zh) | 一种基于can总线的协议栈通信方法、装置和存储介质 | |
CN108255770B (zh) | 基于1394总线事件消息响应机制的处理方法 | |
CN108427894B (zh) | 一种数据通信方法及装置 | |
JP2003198572A (ja) | 確定的フィールドバス及びその種のバスの管理方法 | |
KR101188210B1 (ko) | 선점형 우선순위 기반의 이더넷 데이타 스케줄링 방법 및 이를 이용한 시스템 | |
CN113541874A (zh) | 一种数据传输方法及网络设备 | |
WO2019015487A1 (zh) | 一种数据重传处理方法、rlc实体和mac实体 | |
CN115344405A (zh) | 一种数据处理方法、网络接口卡、电子设备及存储介质 | |
CN111722940B (zh) | 基于异步串口的消息传输方法、终端设备及传输系统 | |
CN110928828B (zh) | 处理器间业务处理系统 | |
CN110765044B (zh) | 数据包传输装置及系统 | |
KR102474800B1 (ko) | 게이트웨이 및 게이트웨이 제어방법 | |
CN118214522B (zh) | 一种基于以太网链路的无错传输方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221010 Address after: Room S303, Innovation Building, No. 25, Gaoxin 1st Road, Xi'an, Shaanxi 710075 Patentee after: XI'AN XIANGTENG MICROELECTRONICS TECHNOLOGY Co.,Ltd. Address before: 710000 No. 15, Jinye Second Road, Xi'an, Shaanxi Patentee before: AVIC XI''AN AERONAUTICS COMPUTING TECHNIQUE RESEARCH INSTITUTE |
|
TR01 | Transfer of patent right |