一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于SPACEWIRE总线的星载异构系统数据共享装置、系统及方法与流程

2022-09-03 14:29:55 来源:中国专利 TAG:

基于spacewire总线的星载异构系统数据共享装置、系统及方法
技术领域
1.本发明属于电子信息技术应用领域,涉及一种基于spacewire总线的星载异构系统数据共享装置、系统及方法。


背景技术:

2.spacewire总线是一种高速的点对点全双工的串行总线网络,通过对串行总线可靠性、功耗等方面的改进更好地满足航空航天应用,其具有数据率高、便于扩展、方便重复利用的特点,有利于航天器、卫星快速整合总装,这为航天器和卫星载荷的设计带来极大方便,从而成为一种专门用于空间高速数据传输的总线标准。
3.为了在航天领域更好得发挥spacewire总线的作用,急需为spacewire总线集成多重数据协议,通过协议开发挖掘spacewire总线的使用方法。


技术实现要素:

4.本发明的目的在于解决现有技术中的问题,提供一种基于spacewire总线的星载异构系统数据共享装置、系统及方法,能够将节点间计算数据集中管理,节点间数据传递改为共享存储器内部的数据传递,提高异构间数据调度效率。同时为多节点提供统一数据收发接口,简化异构系统应用开发难度,提升开发效率。
5.为达到上述目的,本发明采用以下技术方案予以实现:
6.基于spacewire总线的星载异构系统数据共享装置,包括:计算节点、中心节点、spacewire路由网络和公共存储器;
7.spacewire路由网络连接中心节点与若干个计算节点,公共存储器连接spacewire路由网络;中心节点和每个计算节点通过spacewire路由网络共同访问公共存储器。
8.本发明的进一步改进在于:
9.中心节点用于通过spacewire路由网络传递数据给计算节点,并通过spacewire路由网络接收计算结果;
10.计算节点用于计算中心节点所发送的数据;
11.公共存储器用于数据收发的缓存区域,公共存储器包括中心节点发送缓冲区、计算节点接收缓冲区和计算节点发送缓冲区;中心节点发送缓冲区用于存储发送数据;计算节点接收缓冲区用于接收中心节点发送缓冲区存储的发送数据;计算节点发送缓冲区域用于存储计算节点所得到的计算结果;
12.每个计算节点对应一个计算节点接收缓冲区和计算节点发送缓冲区;
13.若干个计算节点包括首位计算节点、中间计算节点和末位计算节点;
14.中心节点通过spacewire路由网络将数据安置在公共存储器的中心节点发送缓冲区,spacewire路由网络将数据搬运至首位计算节点接收缓冲区,首位计算节点计算中心节点所发送的数据,并将计算结果返回给首位计算节点的发送缓冲区;
15.中心节点继续通过spacewire路由网络将数据搬运至首位计算节点接收缓冲区,同时将首位计算节点的发送缓冲区的计算结果向中间计算节点的发送缓冲区,中间计算节点对所接收的数据进行计算,计算结果存储至中间计算节点的发送缓冲区;
16.中心节点通过spacewire路由网络控制每一中间计算节点的接收缓冲区接收来自上一计算节点的发送缓冲区的计算结果,每一中间计算节点对所接收到的数据进行计算,将计算结果存储到自身对应的发送缓冲区中,重复上述步骤,直到末位计算节点,完成多节点数据调度。
17.基于spacewire总线的星载异构系统数据共享系统,包括:基于spacewire的两重通讯帧协议和异构系统共享存储管理模块;基于spacewire的两重通讯帧协议用于实现异构系统的数据交互;异构系统共享存储管理模块用于集中管理异构系统的存储空间和数据搬运,实现异构系统数据共享。
18.基于spacewire的两重通讯帧协议包括:串行通讯协议和远程访问协议;串行通讯协议为面向信息通讯接口,用于点对点之间的信息与数据交互;远程访问协议用于在spacewire通讯帧中直接对公共存储器数据空间进行读写管理。
19.串行通讯协议帧和远程访问协议帧为spacewire基本帧格式拓展而来;
20.spacewire基本帧格式为将目标地址、数据、结束标志封装为一帧数据;
21.串行通讯协议帧和远程访问协议帧使用帧标识区分数据内容套用的协议:若帧标识为串行通讯协议,数据内容为节点间通讯数据;若帧标识为远程访问协议,数据内容包含存储器访问信息。
22.存储器访问信息包括:命令编号、写地址、写长度和数据信息。
23.异构系统共享存储管理模块包括:空间管理软件和平台调度软件;空间管理软件管理公共存储器的地址空间;平台调度软件优化计算调度流程;
24.公共存储器是独立设备,空间管理软件对公共存储器进行静态划分,存储空间的地址定义全局透明,每个计算节点访问相应空间进行数据吞吐。
25.公共存储器的静态划分具体为:根据计算节点和中心节点的数量为每个节点划分独立空间,每个计算节点与中心节点的数据交互在各自的独立空间中完成;根据节点私有空间大小,开辟多级数据吞吐缓存,确保高速数据交互中计算请求数据的调度与返回顺利完成。
26.一种基于spacewire总线的星载异构系统数据共享方法,包括:
27.中心节点通过spacewire路由网络将数据安置在公共存储器的中心节点发送缓冲区,spacewire路由网络将数据搬运至首位计算节点接收缓冲区,首位计算节点计算中心节点所发送的数据,并将计算结果返回给首位计算节点的发送缓冲区;
28.中心节点继续通过spacewire路由网络将数据搬运至首位计算节点接收缓冲区,同时将首位计算节点的发送缓冲区的计算结果向中间计算节点的发送缓冲区,中间计算节点对所接收的数据进行计算,计算结果存储至中间计算节点的发送缓冲区;
29.中心节点通过spacewire路由网络控制每一中间计算节点的接收缓冲区接收来自上一计算节点的发送缓冲区的计算结果,每一中间计算节点对所接收到的数据进行计算,将计算结果存储到自身对应的发送缓冲区中,重复上述步骤,直到末位计算节点,完成多节点数据调度。
30.与现有技术相比,本发明具有以下有益效果:
31.本发明通过spacewire路由网络连接中心节点与若干个计算节点,公共存储器连接spacewire路由网络,中心节点与若干个计算节点通过spacewire路由网络访问公共存储区,本发明能够将节点间计算数据集中管理,节点间数据传递改为共享存储器内部的数据传递,提高异构间数据调度效率。同时为多节点提供统一数据收发接口,简化异构系统应用开发难度,提升开发效率。
附图说明
32.为了更清楚的说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
33.图1为本发明实施例的基于spacewire总线的星载异构系统数据共享装置的结构图;
34.图2为本发明实施例的spacewire帧格式结构图;其中(a)为spacewire基本帧;(b)为串行通讯协议帧;(c)为远程访问协议帧;
35.图3为本发明实施例的异构系统共享存储管理技术的流程图;、
36.图4为单节点数据流示意图;
37.图5为原流水调度过程示意图;
38.图6为本发明的流水调度过程示意图;
39.图7为本发明的异构计算示意图;
40.图8为本发明的模拟运行结果图。
具体实施方式
41.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
42.因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
43.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
44.在本发明实施例的描述中,需要说明的是,若出现术语“上”、“下”、“水平”、“内”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
45.此外,若出现术语“水平”,并不表示要求部件绝对水平,而是可以稍微倾斜。如“水平”仅仅是指其方向相对“竖直”而言更加水平,并不是表示该结构一定要完全水平,而是可以稍微倾斜。
46.在本发明实施例的描述中,还需要说明的是,除非另有明确的规定和限定,若出现术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
47.下面结合附图对本发明做进一步详细描述:
48.参见图1,本发明公布了一种基于spacewire总线的星载异构系统数据共享装置,包括:
49.计算节点、中心节点、spacewire路由网络和公共存储器;
50.spacewire路由网络连接中心节点与若干个计算节点,公共存储器连接spacewire路由网络;中心节点和每个计算节点通过spacewire路由网络共同访问公共存储器。
51.中心节点通过spacewire路由网络传递数据给计算节点,并通过spacewire路由网络接收计算结果;
52.计算节点用于计算中心节点所发送的数据;
53.公共存储器用于数据收发的缓存区域,公共存储器包括中心节点发送缓冲区、计算节点接收缓冲区和计算节点发送缓冲区;中心节点发送缓冲区用于存储发送数据;计算节点接收缓冲区用于接收中心节点发送缓冲区存储的发送数据;计算节点发送缓冲区域用于存储计算节点所得到的计算结果;
54.每个计算节点对应一个计算节点接收缓冲区和计算节点发送缓冲区;
55.若干个计算节点包括首位计算节点、中间计算节点和末位计算节点;
56.中心节点通过spacewire路由网络将数据安置在公共存储器的中心节点发送缓冲区,spacewire路由网络将数据搬运至首位计算节点接收缓冲区,首位计算节点计算中心节点所发送的数据,并将计算结果返回给首位计算节点的发送缓冲区;
57.中心节点继续通过spacewire路由网络将数据搬运至首位计算节点接收缓冲区,同时将首位计算节点的发送缓冲区的计算结果向中间计算节点的发送缓冲区,中间计算节点对所接收的数据进行计算,计算结果存储至中间计算节点的发送缓冲区;
58.中心节点通过spacewire路由网络控制每一中间计算节点的接收缓冲区接收来自上一计算节点的发送缓冲区的计算结果,每一中间计算节点对所接收到的数据进行计算,将计算结果存储到自身对应的发送缓冲区中,重复上述步骤,直到末位计算节点,完成多节点数据调度。
59.基于spacewire总线的星载异构系统数据共享系统,包括:基于spacewire的两重通讯帧协议和异构系统共享存储管理模块,基于spacewire的两重通讯帧协议用于实现异构系统的数据交互;异构系统共享存储管理模块用于集中管理异构系统的存储空间和数据搬运,实现异构系统数据共享。
60.基于spacewire的两重通讯帧协议包括:串行通讯协议和远程访问协议;串行通讯协议为面向信息通讯接口,用于点对点之间的信息与数据交互;远程访问协议用于在
spacewire通讯帧中直接对公共存储器数据空间进行读写管理。
61.串行通讯协议帧和远程访问协议帧为spacewire基本帧格式拓展而来;
62.参见图2(a)、图2(b)和图2(c),spacewire基本帧格式为将目标地址、数据、结束标志封装为一帧数据;其中,图2(a)、图2(b)和图2(c)中的adr为目标地址,eop为结束标志;图2(b)和图2(c)中的pid为帧标识,两者的帧标识不相同;图2(c)中wa为写地址,dl为写长度。
63.串行通讯协议帧和远程访问协议帧使用帧标识区分数据内容套用的协议:若帧标识为串行通讯协议,数据内容为节点间通讯数据;若帧标识为远程访问协议,数据内容包含存储器访问信息。
64.存储器访问信息包括:命令编号、写地址、写长度和数据信息。
65.参见图3,异构系统共享存储管理模块包括:空间管理软件和平台调度软件;空间管理软件管理公共存储器的地址空间;平台调度软件优化计算调度流程。
66.公共存储器是独立设备,空间管理软件对公共存储器进行静态划分,存储空间的地址定义全局透明,每个计算节点访问相应空间进行数据吞吐。
67.公共存储器的静态划分具体为:根据计算节点和中心节点的数量为每个节点划分独立空间,每个计算节点与中心节点的数据交互在各自的独立空间中完成;根据节点私有空间大小,开辟多级数据吞吐缓存,确保高速数据交互中计算请求数据的调度与返回顺利完成。
68.一种基于spacewire总线的星载异构系统数据共享方法,包括:
69.中心节点通过spacewire路由网络将数据安置在公共存储器的中心节点发送缓冲区,spacewire路由网络将数据搬运至首位计算节点接收缓冲区,首位计算节点计算中心节点所发送的数据,并将计算结果返回给首位计算节点的发送缓冲区;
70.中心节点继续通过spacewire路由网络将数据搬运至首位计算节点接收缓冲区,同时将首位计算节点的发送缓冲区的计算结果向中间计算节点的发送缓冲区,中间计算节点对所接收的数据进行计算,计算结果存储至中间计算节点的发送缓冲区;
71.中心节点通过spacewire路由网络控制每一中间计算节点的接收缓冲区接收来自上一计算节点的发送缓冲区的计算结果,每一中间计算节点对所接收到的数据进行计算,将计算结果存储到自身对应的发送缓冲区中,重复上述步骤,直到末位计算节点,完成多节点数据调度。
72.首位计算节点为计算节点1,中间计算节点为计算节点2到计算节点n-1中的任一个;末位计算节点为计算节点n;
73.计算节点1的接收缓冲区接收中心节点发送缓冲区存储的发送数据,计算节点1对所接收的数据进行计算,计算结果存储至计算节点1的发送缓冲区;
74.计算节点1的接收缓冲区继续接收中心节点发送缓冲区存储的发送数据,同时中心节点通过spacewire路由网络控制计算节点1的计算结果转运至计算节点2的接收缓冲区;计算节点1对所接收的数据进行计算,同时计算节点2对所接收的数据进行计算;计算节点1的计算结果继续存储至计算节点1的发送缓冲区;计算节点2的计算结果继续存储至计算节点2的发送缓冲区;
75.计算节点1的接收缓冲区继续接收中心节点发送缓冲区存储的发送数据,同时中心节点通过spacewire路由网络控制计算节点1的计算结果转运至计算节点2的接收缓冲
区;控制计算节点2的计算结果转运至计算节点3的接收缓冲区;计算节点1对所接收的数据进行计算,计算节点2对所接收的数据进行计算;同时计算节点3对所接收的数据进行计算;计算节点1的计算结果继续存储至计算节点1的发送缓冲区;计算节点2的计算结果继续存储至计算节点2的发送缓冲区;计算节点3的计算结果继续存储至计算节点3的发送缓冲区;不断进行重复上述步骤,最终完成多节点数据调度。
76.参见图4,在传统异构系统计算调度中,单节点加速计算的计算流程,中心节点发送数据至计算节点1,计算节点1对数据进行计算,得到计算结果,计算节点1将计算结果返回给中心节点。每个节点被调度都会进行参数发送与结果返回,每次数据计算会进行两次数据流搬运。
77.参见图5,完成多级流水计算,需要进行步骤1到6的各节点间数据通讯,
78.步骤1为中心节点进行调度参数,计算节点1接收中心节点调度参数,并对中心节点调度参数进行计算,步骤2为计算节点1将计算结果返回给中心节点;步骤3为中心节点再次进行参数调度,计算节点2接收中心节点调度参数,并对中心节点调度参数进行计算,步骤4为计算节点2将计算结果返回给中心节点;步骤5为中心节点又一次进行参数调度,计算节点3接收中心节点调度参数,并对中心节点调度参数进行计算,步骤6为计算节点3将计算结果返回给中心节点。多节点调度时间轴会被大量的数据搬运过程占用。
79.参见图6,调度过程中两次调度之间的数据流转,可以通过spacewire路由网络完成数据从结果缓冲区搬运至下一次计算过程的发送缓冲区,在高速异构计算流水作业时,节省了计算中的数据结果通过链路发送至中心节点再调度数据至下个计算发送缓冲区的流程步骤,释放了通讯链路上的负载。
80.图6中1-4步骤的通讯过程即可完成多级流水的数据调度,步骤1为中心节点进行调度参数,计算节点1接收中心节点调度参数,并对中心节点调度参数进行计算,步骤2为中心节点调度计算节点1的计算结果至输入参数,计算节点2接收中心节点调度参数;并对中心节点调度参数进行计算,步骤3为中心节点调度计算节点2的计算结果至输入参数,计算节点3接收中心节点调度参数,并对中心节点调度参数进行计算。步骤4为将计算结果返回给中心节点。计算节点2和计算节点3通过使用共享存储器简化了数据调度流程,减少了通讯负载,简化了开发流程,提升了运算效率。
81.参见图7,本发明应用于异构计算的硬件平台之上,使用共享的存储设备,通过集中调度简化数据搬运流程,实现了效率提升与开发过程的简化。发明的核心内容有三部分:
82.1)共享存储器,一个所有节点都可访问的共享存储器可以提供系统平台集中化的数据管理,共享存储器的数据通过spacewire控制器管理也可以省去数据搬运过程对节点处理器资源的占用。
83.2)应用开发接口,节点间统一的数据流管理接口简化了多节点协同计算的开发,方便用户开发出使用共享存储器的数据管理过程。
84.3)并行多节点计算,本发明应用与异构并行计算框架中能够有效提升资源有限环境下系统平台的计算能力。
85.参见图8,本发明基于异构并行计算平台同步开发,已完成共享数据管理相关应用,并且在模拟平台上完成验证。
86.窗口1:中心节点模拟,管理平台运行;
87.窗口2:计算节点模拟,使用共享存储进行数据吞吐,并完成计算任务;
88.窗口3:应用界面,用户程序通过使用共享存储请求异构节点加速计算过程。
89.以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献