报文发送方法技术

技术编号:39738283 阅读:10 留言:0更新日期:2023-12-17 23:40
本申请提供一种报文发送方法

【技术实现步骤摘要】
报文发送方法、装置、电子设备及存储介质


[0001]本申请涉及总线通信领域,具体涉及报文发送方法

装置

电子设备及存储介质


技术介绍

[0002]总线
(Bus)
是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束,竞争性总线允许总线上的任何一个节点都有机会取得总线的控制权并向外发送数据

如果在同一时刻有2个或2个以上的节点要求发送数据,就会产生总线冲突,总线能够实时检测这些冲突并对其进行仲裁,从而使具有高优先级的数据不受任何损坏地传输,而低优先级的数据被仲裁,等待总线空闲再发送

[0003]在多个节点同时发送数据报文时,仲裁机制保证了高优先级的数据优先传输,会导致低优先级报文实时性得不到保证,对于周期型报文,一旦形成竞争现象,则竞争现象会持续周期性的出现,对网络和报文实时性影响较大


技术实现思路

[0004]鉴于以上问题,本申请提供一种报文发送方法

装置

电子设备及存储介质,其能够根据当前报文的仲裁信息,动态调整下一报文的发送周期,降低总线竞争的频率,提高报文的实时性

[0005]本申请实施例是采用以下技术方案来实现的:
[0006]第一方面,本申请提供一种报文发送方法,应用于总线连接的目标节点,方法包括:若所述目标节点当前发送的当前报文对应有仲裁信息,获取所述目标节点上当前报文的仲裁信息,所述仲裁信息是在所述目标节点与所述总线连接的其他节点发送的报文发生冲突时生成;基于所述目标节点上当前报文的仲裁信息,得到当前报文的仲裁周期,所述仲裁周期用于表征所述目标节点上当前报文因为仲裁导致的延迟时间;基于所述仲裁周期,得到所述当前报文的下一报文的目标发送周期;基于所述目标发送周期向所述总线发送所述下一报文

[0007]第二方面,本申请提供一种报文发送装置,装置包括:获取模块,用于若所述目标节点当前发送的当前报文对应有仲裁信息,获取所述目标节点上当前报文的仲裁信息,所述仲裁信息是在所述目标节点与所述总线连接的其他节点发送的报文发生冲突时生成;仲裁周期计算模块,用于基于所述目标节点上当前报文的仲裁信息,得到当前报文的仲裁周期,所述仲裁周期用于表征所述目标节点上当前报文因为仲裁导致的延迟时间;目标发送周期计算模块,用于基于所述仲裁周期,得到所述当前报文的下一报文的目标发送周期;发送模块,用于基于所述目标发送周期向所述总线发送所述下一报文

[0008]在一些实施方式中,仲裁周期计算模块包括采集单元和计算单元,采集单元用于从目标节点上当前报文的仲裁信息中获取仲裁失败次数;计算单元用于若仲裁失败次数小于预设仲裁次数时,基于当前报文的仲裁信息中首次仲裁失败的时刻与仲裁成功的时刻,得到当前报文的仲裁周期;此时,目标发送周期计算模块还用于基于仲裁周期与当前报文
对应的预设报文发送周期,得到当前报文的下一报文的目标发送周期

[0009]在另一些实施方式中,计算单元还用于若仲裁失败的次数大于预设仲裁次数时,取消当前报文的发送,将预设恢复时间作为当前报文的仲裁周期,预设恢复时间为目标节点取消当前报文的发送后重新恢复发送的等待时间;此时,目标发送周期计算模块还用于将仲裁周期作为当前报文的下一报文的目标发送周期

[0010]在一些方式中,报文发送装置还包括发送时刻确认模块;发送时刻确认模块用于获取总线基于指定时刻

预设转发时长以及各节点上报文的优先级信息确定的总线上各节点的初始报文发送时刻;指定时刻为预先设置的准备向总线发送首个报文的时刻,预设转发时长为总线连续转发两个报文的间隔时间;此时,发送模块还用于确定目标节点中的首个报文为当前报文,并在目标节点对应的初始报文发送时刻向总线发送当前报文

[0011]在一些实施方式中,发送模块还用于若目标节点当前发送的当前报文不存在对应的仲裁信息,基于当前报文对应的预设报文发送周期向总线发送当前报文的下一报文

[0012]第三方面,本申请提供一种电子设备,包括一个或多个处理器;存储器;一个或多个程序,其中所述一个或多个程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述的方法

[0013]第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质存储有程序代码,所述程序代码可被处理器调用执行上述的方法

[0014]本申请实施例提供的报文发送方法

装置

电子设备及存储介质,在目标节点的当前报文对应有仲裁信息时,通过仲裁信息确定当前报文的仲裁周期,通过当前报文的仲裁周期确定下一报文的目标发送周期,从而以目标发送周期发送下一报文;通过采用本申请提供的报文发送方法,根据当前报文的仲裁周期动态调整下一报文的目标发送周期,对于原本会出现的且与当前报文具有相同仲裁周期的周期性报文,由于下一报文的发送周期的改变,使周期性报文的实际发送时间也发生改变,即周期性报文的实际发送时间可以跳过其仲裁周期,从而减少周期性报文的仲裁次数甚至避免周期性报文的仲裁,进而降低总线竞争发生的频率,有效避免周期性报文因为频繁的总线竞争导致周期延迟,提高报文的实时性

[0015]本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂

附图说明
[0016]为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图

[0017]图1是总线传输的原理示意图

[0018]图2是本申请实施例提供的报文发送方法的流程示意图

[0019]图3是本申请实施例提供的图2中步骤
S120
的流程示意图

[0020]图4是本申请实施例中目标节点的结构示意图

[0021]图5是本申请实施例提供的报文发送方法的又一流程示意图

[0022]图6是本申请实施例提供的报文发送示意图

[0023]图7是本申请实施例提供的报文发送装置的示意图

[0024]图8是本申请实施例提供的电子设备的示意图

具体实施方式
[0025]下面详细描述本申请的实施方式,实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件

下面通过参考附图描述的实施方式是示例性的,仅用于解释本申请,而不能理解为对本申请的限制

[0026]为了使本技本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种报文发送方法,应用于总线连接的目标节点,其特征在于,包括:若所述目标节点当前发送的当前报文对应有仲裁信息,获取所述目标节点上当前报文的仲裁信息,所述仲裁信息是在所述目标节点与所述总线连接的其他节点发送的报文发生冲突时生成;基于所述目标节点上当前报文的仲裁信息,得到当前报文的仲裁周期,所述仲裁周期用于表征所述目标节点上当前报文因为仲裁导致的延迟时间;基于所述仲裁周期,得到所述当前报文的下一报文的目标发送周期;基于所述目标发送周期向所述总线发送所述下一报文
。2.
根据权利要求1所述的方法,其特征在于,所述基于所述目标节点上当前报文的仲裁信息,得到当前报文的仲裁周期,包括:从所述目标节点上当前报文的仲裁信息中获取仲裁失败次数;若所述仲裁失败次数小于预设仲裁次数时,基于所述当前报文的仲裁信息中首次仲裁失败的时刻与仲裁成功的时刻,得到当前报文的仲裁周期
。3.
根据权利要求2所述的方法,其特征在于,所述基于所述仲裁周期,得到所述当前报文的下一报文的目标发送周期,包括:基于所述仲裁周期与所述当前报文对应的预设报文发送周期,得到所述当前报文的下一报文的目标发送周期
。4.
根据权利要求2所述的方法,其特征在于,所述基于所述目标节点上当前报文的仲裁信息,得到当前报文的仲裁周期,包括:若所述仲裁失败的次数大于预设仲裁次数时,取消所述当前报文的发送,将预设恢复时间作为当前报文的仲裁周期,所述预设恢复时间为所述目标节点取消当前报文的发送后重新恢复发送的等待时间
。5.
根据权利要求4所述的方法,其特征在于,所述基于所述仲裁周期,得到所述当前报文的下一报文的目标发送周期,包括:将所述仲裁周期作为所述当前报文的下一报文的目标发送周期
。6.
根据权利要求1所述的方法,其特征在于,所述若所述目标节点当前发送的当前报文对应有仲裁信息,获取所述目标节点上当前报文的仲裁信息之前...

【专利技术属性】
技术研发人员:李冠佳姚昂何烈炎黄光健梁其辉郭永杰
申请(专利权)人:广州汽车集团股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1