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

一种基于RMAP协议实现星载数据备份的装置及方法与流程

2022-02-22 17:30:25 来源:中国专利 TAG:

一种基于rmap协议实现星载数据备份的装置及方法
技术领域
1.本发明属于星载数据存储技术领域,具体涉及一种基于rmap协议实现星载数据备份的装置,特别适用于卫星在轨运行期间进行星载数据的备份存储与回放。


背景技术:

2.航天器在外太空工作时深受高能带电粒子和空间射线的影响,星载设备突然短时间或者长时间失效的情况不可避免地发生。这类操作造成设备内部星载数据的丢失,为航天器运行造成了不可知的隐患。因此,对设备内部产生的关键数据进行备份来保证数据连续性是非常有必要的。
3.当前数据备份操作针对记录系统运行状态信息的备份数据。在卫星传统设计中,一般采用各个设备独立设置自身系统内的掉电非易失存储体来存储本设备的备份数据,具体如图7所示。掉电非易失存储体例如eeprom读写方便,支持随机地址修改,但容量有限,只有几百kb大小。随着卫星技术向智能化、多样化发展,在航天器上搭载的设备越来越多,设备对备份数据的定义不再局限于备份数据,数据量需求持续增加,传统单独存储的数据备份方式已经不能满足星上数据管理系统的要求。
4.spacewire总线作为新一代星内高速数据传输主干网络,其为星内数据远程备份提供了网络支持。而rmap(remote memory access protocol)协议是一种基于spacewire总线对远程内存访问的协议,其可以实现远程存储设备的读写操作。国内研究单位正积极探索rmap协议与其他总线的融合,例如北京航空航天大学发明了一种应用rmap协议实现can总线设备即插即用的装置(专利号:201510320758.8)。


技术实现要素:

5.有鉴于此,本发明的目的是提供一种基于rmap协议实现星载数据备份的装置及方法,可以应对逐渐增大的数据备份存储要求,在硬件层面上提供一种支持spacewire网络数据交换的数据远程备份装置。
6.一种基于rmap协议实现星载数据备份的装置,包括flash非易失存储器、spacewire接口模块、arinc659接口模块,数据路由模块、flash存储管理模块;
7.所述flash非易失存储器分为多个分区,其中一个分区用于存储本装置的备份数据,其它每个分区只存储一个星载设备的备份数据;
8.spacewire接口模块用于接收来自spacewire总线的备份数据和回放数据指令,并输出给数据路由模块;接收来自数据路由模块的回放数据,并输出到spacewire总线;spacewire接口模块对备份数据和回放数据指令的正确性进行检查,对输出到spacewire总线的回放数据均进行rmap协议封装;其中,备份数据帧在其外部封装rmap写入操作协议包;回放数据指令为rmap写入操作协议包,或者为rmap读取-回放包格式;
9.arinc659接口模块用于接收来自arinc659总线的备份数据和回放数据指令,并输出给数据路由模块;接收来自数据路由模块的回放数据,并输出到arinc659总线;
10.数据路由模块包含多个数据存储缓冲区和一个数据回放缓冲区;每个数据存储缓存区存储一个星载设备的备份数据;对于目标节点地址为arinc659总线上的回放数据,转发回放数据包到arinc659接口模块;对于目标节点地址为arinc659总线上的回放数据,转发回放数据包到spacewire接口模块;对于目标节点为本装置的备份数据,存储到备份数据所属的星载设备对应的数据缓存区中;
11.flash存储管理模块在收到任一个数据存储缓存区所对应的新数据通知后,通过新数据的源节点逻辑地址,确定flash非易失存储器的存储分区后进行存储操作;当其在收到回放数据指令后,则读取最新一次的完整备份数据回放给数据路由模块的数据回放缓冲区。
12.较佳的,flash非易失存储器的每个分区里面包含2个子分区,数据在两个子分区中交替存储。
13.进一步的,还包括mram管理模块和mram磁电存储器;所述mram管理模块用于控制mram磁电存储器的数据读写操作;
14.mram磁电存储器,用于存储flash存储分区的地址指针信息,包括各个子分区存储指针回放指针,对应的源节点逻辑地址,最新一次备份数据的相关地址信息。
15.一种基于rmap协议实现星载数据备份的装置的方法,所述flash存储管理模块控制存储操作法包括:
16.当收到备份数据的起始帧,flash存储管理模块首先获取最近一次存储的子分区号,然后根据乒乓存储方式,将目标子分区号更新为另一个子分区号;随后,flash存储管理模块更新分区状态寄存器使能分区存储状态;然后,flash存储管理模块提取目标子分区的存储指针存入目标子分区的备份数据新一次存储的起始地址缓存寄存器中。
17.较佳的,所述flash存储管理模块控制存储操作方法包括:
18.当收到备份数据的中间帧时,flash存储管理模块读取分区状态寄存器,在当前目标分区存储状态使能的情况下,读取目标子分区号,存储新数据帧到目标子分区号对应的存储区域中,目标子分区的存储指针实时更新,并同步存储为目标子分区的备份数据最新一次存储的结束地址。
19.较佳的,所述flash存储管理模块控制存储操作方法包括:
20.当收到备份数据的结束帧时,flash存储管理模块首先将分区数据缓存中的剩余数据帧存储到目标子分区号对应的存储区域中,目标子分区的存储指针实时更新,并同步存储为目标子分区的备份数据最新一次存储的结束地址;然后,flash存储管理模块修改分区状态寄存器禁止目标分区存储,同时将目标子分区号更新为最近一次存储子分区号。
21.较佳的,所述flash存储管理模块收到回放数据指令后,则读取最新一次的完整备份数据回放给数据路由模块的数据回放缓冲区,具体方法为:
22.步骤1)当收到回放数据指令帧后,flash存储管理模块首先读取最近一次存储子分区号作为本次回放的目标子分区号;然后进入步骤2),来锁定最新一次完整的备份数据在存储体中的地址区间;
23.步骤2)flash存储管理模块首先读取目标子分区的备份数据最新一次存储的起始地址作为本次回放的起始地址,然后读取目标子分区的备份数据最新一次存储的结束地址作为本次回放的结束地址,然后,从起始地址开始进行回放操作。
24.较佳的,执行完步骤2),即存储器单次回放操作结束后,回放指针实时更新,当回放指针不等于本次回放的结束地址时,则视外部接口交互情况继续回放数据,如果回放指针等于本次回放的结束地址时,则本次回放操作结束。
25.本发明具有如下有益效果:
26.本发明的一种基于rmap协议实现星载数据备份的装置,是一种兼容spacewire网络的数据备份装置,其在硬件架构中使用rmap协议进行数据转换,可以适配spacewire接口,arinc659接口等多个卫星常用总线接口,实现数据备份装置的即插即用,节省设计时间和成本,同时提高数据备份装置的可靠性与实时性;
27.本发明提出一种基于spacewire网络的星载数据分布式备份存储架构,实现在卫星硬件架构零修改的条件下,大幅度增加备份数据的存储空间,从传统设备内部几百kb的掉电非易失存储体扩充到卫星数据管理系统中超过几百mb的大容量存储体,解决了伴随设备功能复杂化而带来的备份数据量的高需求;
28.本发明通过rmap协议可将arinc659总线接入spacewire网络,加强了arinc659总线和spacewire总线的适用范围,实现对不同类型航天设备的兼容性和通用性;
29.本发明同时支持多个星上设备的远程数据备份操作,为多设备卫星平台的智能化数据管理提供技术支持。
附图说明
30.图1为基于rmap协议实现的一种星载数据备份的装置的原理框图。
31.图2为rmap协议写入操作命令包格式。
32.图3为rmap协议读出操作命令包格式。
33.图4为rmap协议读出操作答复包格式。
34.图5为flash存储管理模块中的备份数据存储流程图。
35.图6为flash存储管理模块中的备份数据回放流程图。
36.图7为本发明实施例中的备份数据存储回放与传统方式下的备份数据存储回放示意图。
37.图8为本发明实施例中基于rmap协议的备份数据存储回放管理示意图。
具体实施方式
38.下面结合附图并举实施例,对本发明进行详细描述。
39.本发明的技术解决方案是基于rmap协议实现一种星载数据备份装置,该装置一端连接spacewire总线,一端连接arinc659总线。其中spacewire总线负责网络上其他节点设备的备份数据传输,arinc659总线负责本设备内部的备份数据传输。该装置内部包含spacewire接口模块、arinc659接口模块,数据路由模块、flash存储管理模块、flash非易失存储器,mram管理模块和mram磁电存储器,具体如图1所示。其中:
40.星上多个设备的备份数据按照预定的分区存储于flash非易失存储器中,所述预定分区为:flash存储器分为n个分区,每个分区只存储一个星载设备的备份数据。每个分区里面包含2个子分区,子分区a和子分区b。每个子分区均支持存储空间内循环存储数据。备份数据在两个子分区中交替存储。
41.spacewire接口模块一端连接外部spacewire总线,一端连接数据路由模块,其负责spacewire总线接口时序转换以及数据正确性校验。其处理数据类型涉及来自spacewire总线的备份数据帧和回放数据指令帧,以及本发明产生的回放数据回复帧等,其中备份数据帧在其外部封装rmap写入操作协议包,其格式如图2所示。其他数据帧格式可以为rmap写入操作协议包,也可以为rmap读取-回放包格式,具体如图3,图4所示。spacewire接口模块使用crc校验机制对接收到的数据包的正确性进行检查,对输出到spacewire总线的回放数据均进行协议封装。
42.arinc659接口模块一端连接外部arinc659总线,一端连接数据路由模块,负责arinc659总线接口时序转换以及数据正确性校验。其数据协议处理方式与spacewire接口相同。rmap协议与spacewire的接口协议格式相兼容,同时可以作为封装后的数据在arinc659总线上面通信,做到与外部接口无缝交互。
43.数据路由模块一端连接spacewire接口模块和arinc659接口模块,一端连接flash存储管理模块。其根据rmap数据包中目标节点逻辑地址进行数据存储和转发的路由操作。对于arinc659总线上的目标节点地址,数据路由模块转发rmap数据包到arinc659接口模块。对于目标节点为本装置的数据帧,则视为需要存储的数据帧,通过包头中的源节点逻辑地址确定备份数据的存储分区,将数据帧存储到相应的数据缓存区中。
44.所述数据路由模块包含m个数据存储缓冲区,其中m≤n,和一个数据回放缓冲区。每个数据存储缓存区只存储一个固定设备的备份数据。
45.数据路由模块通过rmap包头中的授权域,确定当前数据帧属性,具体包括备份数据的起始帧、备份数据的结束帧、备份数据的中间帧以及回放数据指令帧等。每个数据存储缓冲区通过起始帧开启使用,并与备份数据的源节点逻辑地址绑定,通过结束帧关闭使用并解除绑定。数据回放缓冲区与回放数据指令帧的源节点逻辑地址绑定,将接收到备份数据封装为rmap回复包发送到spacewire接口模块或者arinc659接口模块。
46.根据应用场景不同,所述数据路由模块中回放数据指令帧与rmap回复包可以为满足rmap协议中读取-回复包格式,具体如图3,图4所示,也可以为rmap写入操作协议包,如图2所示。
47.flash存储管理模块一端连接数据路由模块,一端连接flash非易失存储器。其在收到任一个数据存储缓存区所对应的新数据通知后,通过新数据的源节点逻辑地址,确定flash中的存储地址后进行存储操作。其在收到回放数据指令帧后,则读取最新一次的完整备份数据回放给数据路由模块。
48.所述flash存储管理模块的存储缓存区输入的起始帧,中间帧以及结束帧,进行不同的以分区为单位存储地址指针和状态信息管理操作,地址指针和状态信息配合数据存储操作的进行实时更新,从而保证在回放时索引到最新一次完整的备份数据进行回放,其具体操作如图5所示。
49.1)当收到起始帧,flash存储管理模块首先获取最近一次存储子分区号,然后根据乒乓存储方式,将目标子分区号更新为另一个子分区号,例如最近一次存储子分区号为子分区a,则设置目标子分区号为子分区b。随后,存储模块更新分区状态寄存器使能分区存储状态。然后,存储模块提取目标子分区的存储指针存入目标子分区的备份数据新一次存储的起始地址缓存寄存器中;
50.2)当收到中间帧时,存储模块读取分区状态寄存器,在当前目标分区存储状态使能的情况下,读取目标子分区号,存储新数据帧到目标子分区号对应的存储区域中,目标子分区的存储指针实时更新,并同步存储为目标子分区的备份数据最新一次存储的结束地址。
51.3)当收到结束帧时,存储模块首先将分区数据缓存中的剩余数据帧存储到目标子分区号对应的存储区域中,目标子分区的存储指针实时更新,并同步存储为目标子分区的备份数据最新一次存储的结束地址。然后,存储模块修改分区状态寄存器禁止目标分区存储,同时将目标子分区号更新为最近一次存储子分区号。例如目标子分区号为子分区b,则最近一次存储子分区号更新为子分区b。最后,存储模块读取目标子分区的备份数据新一次存储的起始地址缓存寄存器,将寄存器中的地址更新为目标子分区的备份数据最新一次存储的起始地址。
52.所述本发明中flash存储管理模块收到回放数据指令帧后,根据当前分区内存储地址指针和状态信息进行回放操作,从而保证在回放时索引到最新一次完整的备份数据进行回放,其具体回放操作如图6所示。
53.1)当收到回放数据指令帧后,flash存储管理模块首先读取最近一次存储子分区号作为本次回放的目标子分区号。然后进入步骤2),来锁定最新一次完整的备份数据在存储体中的地址区间。
54.2)存储模块首先读取目标子分区的备份数据最新一次存储的起始地址作为本次回放的起始地址,然后读取目标子分区的备份数据最新一次存储的结束地址作为本次回放的结束地址。然后,从起始地址开始进行回放操作,进入步骤3)。
55.3)存储器单次回放操作结束后,回放指针实时更新,当回放指针不等于本次回放的结束地址时,则视外部接口交互情况继续回放数据,如果回放指针等于本次回放的结束地址时,则本次回放操作结束。
56.mram管理模块,负责mram磁电存储器的数据读写操作;
57.mram磁电存储器,用于存储flash存储分区的地址指针信息,包括各个子分区存储指针回放指针,对应的源节点逻辑地址,最新一次备份数据的相关地址信息等。
58.实施例:
59.本发明需要确认星载设备与星载数据管理系统的数据通信网络,可以为spacewire网络也可以为arinc659总线网络,保证需要备份数据的设备与本发明之间有链路连接,可以实现数据交互。星载各设备根据数据备份装置的缓存分配情况,定时启动存储过程,实现对缓存的分时复用。每次备份数据封装在rmap协议的数据区。备份数据分解为一系列数据帧进行传输,其基本单元可以为vcdu。根据数据帧的次序,分别在首帧,中间帧和尾帧的rmap包头的授权域中写入起始帧,中间帧以及结束帧的标志码。然后依次发送所有备份数据帧。其中标志码支持支持用户自定义。定时重复发送操作,保证数据存储同步。在星载数据管理系统存储单元的存储体中,设置针对特定节点逻辑地址的备份数据存储分区,分区内部包含两个子分区。子分区支持循环更新数据。保证备份数据的数据帧完整在存储体中乒乓存储,同时支持相应回放请求,回放最新一次的完整数据。
60.本发明支持两种备份数据存储方式,实施例具体如图7所示:
61.远程存储方式:取消本设备的掉电非易失存储体,所有备份数据远程存储到本发
明中,设备运行状态受第三方监控。由第三方向星载数据管理系统发送回放设备对应的备份数据,此方法适用于非关键星载设备,通过增加集成度来减少设备硬件规模和能耗。
62.双冗余存储方式:提出关键备份数据的概念,将与系统关键的工作状态信息提取出来作为关键备份数据,优先存储于本设备的掉电非易失存储体。同时将整体备份数据远程存储于本发明中。当设备默认优先从设备的掉电非易失存储体读取关键备份数据,然后读取远程存储的普通备份数据,提高设备运行的可靠性。
63.本发明可以卫星数据管理系统中实现即插即用,实施例如图8所示,卫星数据管理系统中的基于rmap协议的数据备份装置以存储与复接fpga为载体进行实现。其系统外部的bm3803处理器cpu的数据备份方式为双冗余存储方式,其关键备份数据存储于cpu模块中的eeprom中,全部备份数据存储于存储模块中nand flash存储器的分区0中,创建子分区0-a和子分区0-b作为分区0两个子分区。系统外部的载荷单元1的数据备份方式为远程存储方式,其全部数据备份存储于存储模块中nand flash存储器的分区1中,创建子分区1-a和子分区1-b作为分区1两个子分区。系统外部的载荷单元2的存储方式和载荷单元1相同,其在flash中所属分区2,创建子分区2-a和子分区2-b。所有子分区均支持在子分区区域内循环存储数据。备份数据的地址和状态信息存储与mram存储器中,掉电不消失。
64.在本实例中,bm3803处理器cpu通过arinc659总线与数据备份装置实现数据交互。而载荷单元通过spacewire总线与数据备份装置相连接,因此分别设置4个节点的逻辑地址,即数据备份装置的逻辑地址为28h,cpu的逻辑地址为22h,载荷单元1的逻辑地址为44h,载荷单元2的逻辑地址为45h。备份数据被分解打包为一系列rmap写入指令包。在包头的授权域中设置存储起始指令帧为55h,存储结束指令帧为aah,中间数据帧为33h。将备份数据以vcdu的格式填充在rmap写入命令包的数据区中。flash中的存储分区通过在rmap包头中的源目标节点逻辑地址来定义。
65.存储与复接fpga中设置2个存储缓冲区和一个回放缓冲区。两个载荷设备通过分时复用一个存储缓冲区。bm3803处理器cpu和载荷单元的备份数据的具体存储步骤相似,区别在于硬件接口不同,存储分区不同,故以cpu系统备份数据存储过程为例进行阐述:
66.1)cpu发送备份数据起始帧,存储与复接fpga在arinc659接口模块检验crc正确后,将rmap包输入到数据路由模块。数据路由模块读取rmap包头中的授权域为55h,源逻辑地址为22h之后,使能cpu备份数据存储缓存区并存储数据帧。
67.2)flash存储管理模块读取存储缓存区中的数据,判断其为起始帧,提取vcdu存入内部缓存区,然后根据包头中的源逻辑地址向mram管理模块发送逻辑地址为22h的设备最近一次存储子分区号请求;在接收mram管理模块反馈的最近一次存储子分区号后,采用乒乓策略,重新目标子分区号,如果为子分区0-a,则设定目标子分区号为子分区0-b;如果为子分区0-b,则设定目标子分区号为子分区0-a。然后将该子分区号发送给mram管理模块,同时使能分区0的存储。
68.3)cpu持续发送备份数据中间帧,数据路由模块解析rmap协议,存储数据帧到逻辑地址为22h的设备的存储缓存区。flash存储管理模块读取存储缓存区中的数据,判断其为中间帧,提取vcdu存入内部缓存区,每存储满4kb,向mram管理模块发送写数据请求;mram管理模块收到写数据请求之后,反馈目标子分区对应的最新存储指针至flash管理模块;flash管理模块收到指针后,将数据存入指针为首地址的存储空间里,存储完成后,反馈目
标子分区的最新存储指针地址到mram管理模块,同时更新mram中存储的目标子分区的最新一次存储结束指针;
69.4)cpu发送备份数据结束帧,存储与复接fpga解析rmap数据,存储数据帧到逻辑地址为22h的设备的存储缓存区。flash管理模块,读取存储缓存区中的数据,判断其为结束帧,其给mram管理模块的最近一次存储子分区号存储地址发送目标子分区号;同时,提取vcdu存入内部缓存区,通过填充空闲帧凑足4kb后,将最后一帧数据存储到目标子分区的存储指针对应的地址中,反馈目标子分区的最新存储指针地址给mram管理模块,同时更新mram中存储的目标子分区的最新一次存储结束指针;最后,存储与复接fpga读取目标子分区的备份数据新一次存储的起始地址缓存寄存器,将寄存器中的地址更新为目标子分区的备份数据最新一次存储的起始地址并存储于mram中。
70.在本实例中,bm3803处理器cpu和载荷单元的备份数据的回放方式不同。cpu自行读取采用rmap读取指令-回复方式读取存储与复接fpga中存储的备份数据。载荷单元受cpu和地面的监控,cpu将向存储与复接fpga发送指令来实现载荷设备备份数据的回放操作。下面分别介绍两类回放过程。
71.bm3803处理器cpu备份数据回放请求通过cpu发送从分区0中读取数据帧到arinc659接口的指令和从分区0中读取下一帧到arinc659接口指令来实现。两个指令在rmap包头中的授权域填充对应的特征码来实现。备份数据帧则以rmap读取回复包的格式从arinc659接口回放给cpu,其中备份数据以vcdu帧格式填充rmap读取回复包的数据区。其具体处理步骤为:
72.1)cpu发送起始回放备份数据帧到arinc659接口的指令,存储与复接fpga解析特征码和源目标节点逻辑地址后,确认为目标节点逻辑地址为cpu的备份数据的回放操作。flash管理模块向mram管理模块发送分区0最近一次存储子分区号请求;接收mram管理模块反馈的最近一次存储子分区号作为回放子分区号。存储与复接fpga读取mram存储器回放子分区号的备份数据最新一次存储的起始地址作为本次回放的起始地址,然后读取回放子分区号的备份数据最新一次存储的结束地址作为本次回放的结束地址。
73.2)flash管理模块读取回放地址,如果新的回放地址等于本次回放的结束地址,停止操作,返回结束信号。如果新的回放地址不等于本次回放的结束地址,则进行flash读取操作。在flash存储器读取操作完成后,回放地址更新并返回读取数据缓存中的第一帧备份数据帧到arin659接口。
74.3)cpu在接收到备份数据帧后,向存储与复接fpga发送读取下一帧到arinc659接口指令,数据路由模块确认为备份数据的继续回放操作之后,输入当前回放缓存中的下一帧数据给cpu,如果缓存中数据回放完毕则更新回放地址后向flash管理模块发送读取数据请求,进入步骤2)。
75.载荷单元的备份数据回放操作通过cpu发送回放备份数据到spacewire接口的回放数据帧来实现。该指令为rmap包写入-不回复模式,其rmap包用户数据中包含载荷单元在spacewire网络中的逻辑地址。备份数据帧则以rmap写入指令包的格式从spacewire接口回放给载荷单元,其中载荷单元逻辑地址作为rmap包的目标逻辑地址,备份数据以vcdu帧格式填充rmap包的数据区。其具体处理步骤为:
76.1)cpu发送回放数据到spacewire接口的指令,flash管理模块解析指令,确认其回
放操作的目标逻辑地址为44h之后,向mram管理模块发送逻辑地址为44h的备份数据最近一次存储子分区号请求;接收mram管理模块反馈的最近一次存储子分区号作为回放子分区号。flash管理模块读取mram存储器回放子分区号的备份数据最新一次存储的起始地址作为本次回放的起始地址,然后读取回放子分区号的备份数据最新一次存储的结束地址作为本次回放的结束地址,进入步骤2)。
77.2)flash管理模块根据回放地址启动读取操作,如果新的回放地址等于本次回放的结束地址,停止操作,返回结束信号。如果新的回放地址不等于本次回放的结束地址,则进行flash读取操作。在flash存储器读取操作完成后,回放地址更新并返回进入步骤3)。
78.3)数据路由模块将缓存中数据填充到rmap包回放到spacewire接口,回放完毕则继续flash管理模块发送读取数据请求并获取新的回放地址后,进入步骤2)。
79.综上所述,本发明提供了一种基于rmap协议实现星载数据备份的装置。rmap协议适用于各类硬件链路。本发明通过rmap协议实现spacewire网络和arinc659总线的数据交互,从而利用卫星数据管理系统和其他星载设备的硬件架构实现备份数据的远程存储方式和双冗余存储方式,为星载设备的备份数据提供充足的存储空间,大幅度提高设备运行的可靠度。多分区独立灵活的存储方式支持多个星载设备的并行数据存储,其灵活的回放方式保证同一spacewire网络下的多台星载设备的分布式备份,为跨型号跨平台的通用化实现提供技术基础,所以,本发明有效克服了现有技术中的种种缺点,突破卫星总体设计变化的壁垒而具有高度产业利用价值。
80.综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

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

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

相关文献