System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 数据传输方法、装置、电子装置和存储介质制造方法及图纸_技高网

数据传输方法、装置、电子装置和存储介质制造方法及图纸

技术编号:41063644 阅读:4 留言:0更新日期:2024-04-24 11:16
本申请涉及一种数据传输方法、装置、电子装置和存储介质,其中,数据传输方法应用于包括多个通信端口的数据传输系统,多个通信端口分布在至少一个数据发布端以及至少一个数据订阅端中,该数据传输方法包括:每一数据发布端基于待传输数据的物理地址生成待传输数据包,并将待传输数据包分配至相应的数据订阅端对应的循环队列中;相应的数据订阅端基于待传输数据包的传输类型从对应的循环队列中获取待传输数据包,并基于待传输数据包中的物理地址从共享内存中获取待传输数据。通过本申请,解决了相关技术中存在通信中间件的数据传输方式无法实现异构核间的数据传输的问题,实现了异构核间的数据传输,降低了对数据本身的传输带来的负载消耗。

【技术实现步骤摘要】

本申请涉及通信传输,特别是涉及一种数据传输方法、装置、电子装置和存储介质


技术介绍

1、随着人工智能技术的迅速发展,自动驾驶成为人工智能
的热门行业,其软件平台集精准定位、高清地图、环境感知、决策规划及控制等技术,需对复杂多变的道路环境及场景及时做出响应,故而要求感知功能具备多场景变化的冗余备份能力,其依赖于摄像头、毫米波雷达、激光雷达及超声波雷达等感知设备采集的信息进行数据融合及规划决策控制,故而对于通讯数据传递较为苛刻,需同时满足大带宽、低延时性、稳定性以及分布式等要求。

2、目前,自动驾驶
方案大都是基于ros、dds及iceorxy等通信中间件部署的,而这些通信中间件均为实现一种支持分布式环境下的通信和数据交换的机制,使不同的组件或应用程序能够进行相互通信和数据传输,且具有高性能的特性,致力于提供低延迟、高吞吐量的通信,以满足实时和响应性要求;提供可靠的通信机制,确保数据的可靠交付和一致性,提供了故障恢复、错误处理和数据传输的保证。

3、但对于目前通信中间件而言,虽然存在支持零拷贝data-share数据通信方式,但仅仅局限于在同构芯片架构下的进程间进行零拷贝数据通信,无法直接在异构核间进行零拷贝通信,而在异构芯片架构下,通常外设感知数据及图像算法数据均需要进行异构核间的数据传输,而现有的通信中间件的数据传输方式无法实现异构核间的数据传输。

4、针对相关技术中存在通信中间件的数据传输方式无法实现异构核间的数据传输的问题,目前还没有提出有效的解决方案。


>技术实现思路

1、在本实施例中提供了一种数据传输方法、装置、电子装置和存储介质,以解决相关技术中存在通信中间件的数据传输方式无法实现异构核间的数据传输的问题。

2、第一个方面,在本实施例中提供了一种数据传输方法,数据传输方法应用于包括多个通信端口的数据传输系统,多个所述通信端口为同构核和/或异构核间的通信端口,数据传输系统将多个通信端口进行封装,多个通信端口通过封装后的通信接口进行数据传输,多个通信端口分布在至少一个数据发布端以及至少一个数据订阅端,数据传输方法包括:

3、每一数据发布端基于待传输数据的物理地址生成待传输数据包,并将待传输数据包分配至相应的数据订阅端对应的循环队列中,其中,待传输数据存储在数据传输系统的共享内存中;

4、相应的数据订阅端基于待传输数据包的传输类型从对应的循环队列中获取待传输数据包,并基于待传输数据包中的物理地址从共享内存中获取待传输数据。

5、在其中的一些实施例中,在相应的数据订阅端基于待传输数据包的传输类型从对应的循环队列中获取待传输数据包之前,还包括:

6、每一数据发布端基于待传输数据的时效性确定待传输数据包的传输类型,传输类型包括事件型触发或周期性触发;

7、每一数据发布端基于待传输数据包的传输类型生成数据接收指令;

8、每一数据发布端将数据接收指令传输至相应的数据订阅端;

9、相应的数据订阅端基于数据接收指令确定待传输数据包的传输类型。

10、在其中的一些实施例中,基于待传输数据的时效性确定待传输数据包的传输类型,包括:

11、数据发布端周期性地获取数据订阅端的当前负载信息;

12、数据发布端基于当前负载信息、当前数据流量以及待传输数据的时效性,确定数据订阅端的数据处理能力值;

13、数据发布端基于数据处理能力值以及预设处理能力阈值,确定待传输数据包的传输类型。

14、在其中的一些实施例中,数据发布端为一个,数据订阅端为多个时,将待传输数据包分配至相应的数据订阅端对应的循环队列中,包括:

15、数据发布端将对应的待传输数据包分配至每一数据订阅端对应消息队列中;

16、每一数据订阅端基于待传输数据包的传输类型从对应的循环队列中获取待传输数据包。

17、在其中的一些实施例中,数据发布端为多个,数据订阅端为一个时,将待传输数据包分配至相应的数据订阅端对应的循环队列中,包括:

18、每一数据发布端将对应的待传输数据包都分配至数据订阅端对应的循环队列中;

19、数据订阅端基于每一待传输数据包的传输类型从对应的循环队列中获取每一待传输数据包。

20、在其中的一些实施例中,基于待传输数据包中的物理地址从共享内存中获取待传输数据之后,方法还包括:

21、每一数据订阅端向数据发布端传输数据引用完成指令;

22、数据发布端基于所有数据订阅端的引用完成指令清空共享内存中的待传输数据,清空后的共享内存用于存储下一待传输数据。

23、在其中的一些实施例中,待传输数据包还包括数据发布端对待传输数据的发布端校验信息,基于待传输数据包中的物理地址从共享内存中获取待传输数据之后,还包括:

24、数据订阅端对获取的待传输数据进行校验,生成订阅端校验信息;

25、基于发布端校验信息以及订阅端校验信息确定获取的待传输数据的准确性。

26、第二个方面,在本实施例中提供了一种数据传输装置,数据传输装置应用于包括多个通信端口的数据传输系统,多个所述通信端口为同构核和/或异构核间的通信端口,数据传输系统将多个通信端口进行封装,多个通信端口通过封装后的通信接口进行数据传输,多个通信端口分布在至少一个数据发布端以及至少一个数据订阅端,数据传输装置包括:

27、数据包生成模块,用于每一数据发布端基于待传输数据的物理地址生成待传输数据包,并将待传输数据包分配至相应的数据订阅端对应的循环队列中,其中,待传输数据存储在数据传输系统的共享内存中;

28、数据包接收模块,用于相应的数据订阅端基于待传输数据包的传输类型从对应的循环队列中获取待传输数据包,并基于待传输数据包中的物理地址从共享内存中获取待传输数据。

29、第三个方面,在本实施例中提供了一种电子装置,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述第一个方面的数据传输方法。

30、第四个方面,在本实施例中提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一个方面的数据传输方法。

31、与相关技术相比,在本实施例中提供的数据传输方法,通过将多个通信端口进行封装,多个通信端口通过封装后的接口进行数据传输,从而屏蔽芯片通信端口的差异性,进而使本申请的数据传输方法不受限于芯片平台系统,不仅可应用在高算力同构芯片平台中,同时也能支持低算力异构芯片平台的数据传输。并且,在数据发布端发送数据时,仅根据待传输数据的物理地址生成数据包,并使数据订阅端根据物理地址从共享内存中获取待传输数据,从而在数据传输时,不直接传输数据本身,有效地降低了对数据本身的传输带来的负载消耗,实现了数据本身的零拷贝,能够适用于高频大容量的数据传输。

32、本申请的一个或多个实本文档来自技高网...

【技术保护点】

1.一种数据传输方法,其特征在于,所述数据传输方法应用于包括多个通信端口的数据传输系统,多个所述通信端口为同构核和/或异构核间的通信端口,所述数据传输系统将多个通信端口进行封装,所述多个通信端口通过封装后的通信接口进行数据传输,所述多个通信端口分布在至少一个数据发布端以及至少一个数据订阅端中,所述数据传输方法包括:

2.根据权利要求1所述的数据传输方法,其特征在于,在所述相应的数据订阅端基于所述待传输数据包的传输类型从对应的循环队列中获取所述待传输数据包之前,还包括:

3.根据权利要求2所述的数据传输方法,其特征在于,所述基于待传输数据的时效性确定所述待传输数据包的传输类型,包括:

4.根据权利要求1所述的数据传输方法,其特征在于,所述数据发布端为一个,所述数据订阅端为多个时,所述将所述待传输数据包分配至相应的数据订阅端对应的循环队列中,包括:

5.根据权利要求1所述的数据传输方法,其特征在于,所述数据发布端为多个,所述数据订阅端为一个时,所述将所述待传输数据包分配至相应的数据订阅端对应的循环队列中,包括:

6.根据权利要求1所述的数据传输方法,其特征在于,所述基于所述待传输数据包中的物理地址从所述共享内存中获取所述待传输数据之后,所述方法还包括:

7.根据权利要求1所述的数据传输方法,其特征在于,所述待传输数据包还包括数据发布端对所述待传输数据的发布端校验信息,所述基于所述待传输数据包中的物理地址从所述共享内存中获取所述待传输数据之后,还包括:

8.一种数据传输装置,其特征在于,所述数据传输装置应用于包括多个通信端口的数据传输系统,多个所述通信端口为同构核和/或异构核间的通信端口,所述数据传输系统将多个通信端口进行封装,所述多个通信端口通过封装后的通信接口进行数据传输,所述多个通信端口分布在至少一个数据发布端以及至少一个数据订阅端中,所述数据传输装置包括:

9.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至7中任一项所述的数据传输方法。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的数据传输方法的步骤。

...

【技术特征摘要】

1.一种数据传输方法,其特征在于,所述数据传输方法应用于包括多个通信端口的数据传输系统,多个所述通信端口为同构核和/或异构核间的通信端口,所述数据传输系统将多个通信端口进行封装,所述多个通信端口通过封装后的通信接口进行数据传输,所述多个通信端口分布在至少一个数据发布端以及至少一个数据订阅端中,所述数据传输方法包括:

2.根据权利要求1所述的数据传输方法,其特征在于,在所述相应的数据订阅端基于所述待传输数据包的传输类型从对应的循环队列中获取所述待传输数据包之前,还包括:

3.根据权利要求2所述的数据传输方法,其特征在于,所述基于待传输数据的时效性确定所述待传输数据包的传输类型,包括:

4.根据权利要求1所述的数据传输方法,其特征在于,所述数据发布端为一个,所述数据订阅端为多个时,所述将所述待传输数据包分配至相应的数据订阅端对应的循环队列中,包括:

5.根据权利要求1所述的数据传输方法,其特征在于,所述数据发布端为多个,所述数据订阅端为一个时,所述将所述待传输数据包分配至相应的数据订阅端对应的循环队列中,包括:

6.根据权利要求1所...

【专利技术属性】
技术研发人员:刘祚鑫王凯郑书万李迪
申请(专利权)人:福思杭州智能科技有限公司
类型:发明
国别省市:

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

1