CN111381982B - 一种适用于火星探测的三计算机数据交互与表决方法 - Google Patents

一种适用于火星探测的三计算机数据交互与表决方法 Download PDF

Info

Publication number
CN111381982B
CN111381982B CN202010144763.9A CN202010144763A CN111381982B CN 111381982 B CN111381982 B CN 111381982B CN 202010144763 A CN202010144763 A CN 202010144763A CN 111381982 B CN111381982 B CN 111381982B
Authority
CN
China
Prior art keywords
computer
information
voting
data
computers
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
Application number
CN202010144763.9A
Other languages
English (en)
Other versions
CN111381982A (zh
Inventor
刘付成
谭晓宇
秦捷
吴梦璇
何峰
操宏磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Aerospace Control Technology Institute
Original Assignee
Shanghai Aerospace Control Technology Institute
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Aerospace Control Technology Institute filed Critical Shanghai Aerospace Control Technology Institute
Priority to CN202010144763.9A priority Critical patent/CN111381982B/zh
Publication of CN111381982A publication Critical patent/CN111381982A/zh
Application granted granted Critical
Publication of CN111381982B publication Critical patent/CN111381982B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种适用于火星探测的三计算机数据交互与表决方法,本发明在星载计算机系统内部单独设置硬件共享内存,各个计算机直接通过CPU芯片与共享内存之间的IO接口访问内存地址获取其他计算机提供的交互信息和写入本机的交互信息;每次写本机的交互信息时同时,按字节依次写入内存三个地址,每次读取其他计算机的交互信息时,按字节从内存三个地址依次读取交互信息,读数结束后再进行3取2的表决,确定最终的交互信息;计算机软件读取到其他计算机软件发送的交互信息后,与本机的信息再进行3取2的表决,按照表决结果更新本机的控制信息,最终完成信息交互,统一三计算机的控制软件运行状态。

Description

一种适用于火星探测的三计算机数据交互与表决方法
技术领域
本发明涉及一种适用于火星探测的三计算机数据交互与表决方法,属于火星探测的星载计算机系统管理技术,特别是一种三计算机数据交互方法。
背景技术
我国将于2020年发射火星探测器,火星探测过程中要求:星载计算机系统的三计算机之间需频繁可靠、快速的交互大量控制信息,已长期保证三计算机运行状态一致,若有权当班机发生故障,星载计算机系统需自主平稳地切换计算机,切换前后控制软件功能维持连续运行。
现有的近地卫星型号一般通过以下两种方式进行计算机交互信息交互:1、有权机和无权机通过1553B总线交互信息,2、有权机和无权机通过通过串口422通道交互信息。此两种信息交互数据交互的速度受硬件接口限制,1553B总线最大不能超过2Mbps,串口422最大不能超过114.2Kbps,而且数据交互涉及的硬件芯片抗单粒子效应较弱,易出现错误数据,可靠性不高。不适合火星探测的高可靠性、快速数据交互要求。因此有必要设计一种适用于火星探测的三计算机数据交互与表决方法,使星载计算机系统内的计算机之间可以可靠、快速的交互信息。
发明内容
本发明的技术解决问题是:克服现有技术的不足,提出了一种适用于火星探测的三计算机数据交互与表决方法,保证三计算机的控制软件运行状态一致,使星载计算机系统内的计算机之间可以可靠、快速的交互信息。
本发明的技术方案是:
一种适用于火星探测的三计算机数据交互与表决方法,包括步骤如下:
1)在火星探测器上设置3台星载计算机,将当前正在执行任务的计算机作为主份计算机,其余计算机作为备份计算机;同一时刻有且仅有一台主份计算机;
2)在每台星载计算机内部单独设置硬件内存作为共享内存,所述共享内存用于使星载计算机之间交互信息,将此共享内存的物理地址空间划分为三等分的物理地址空间,每台星载计算机均可以读取三台星载计算机的所有物理地址空间,但每台星载计算机只能改写本机对应的物理地址空间;
3)将星载计算机每个控制周期需要执行的任务划分为五类子任务,所述五类子任务按执行顺序,依次为:数据采集子任务、数据计算子任务、控制输出子任务、表决信息输出子任务、启动表决子任务;所述数据采集子任务需要三台星载计算机在同一时刻开始运行;
所述启动表决子任务需要三台星载计算机在同一时刻开始运行;
所述数据计算子任务、控制输出子任务、表决信息输出子任务不要求三台星载计算机在同一时刻开始运行。
在每台计算机执行完数据采集子任务后,将数据采集子任务采集得到的数据作为交互信息;
4)各台星载计算机直接通过CPU芯片与共享内存之间的IO接口访问共享内存,读取其他星载计算机提供的交互信息并写入本机的交互信息并作为数据计算子任务的输入信息;
步骤4)所述写入本机的方法,具体为:将需要写入本机的交互信息按字节分别写入本机共享内存的三个物理地址空间;
步骤4)所述读取其他星载计算机提供的交互信息的方法,具体为:
a、每次读取其他星载计算机的交互信息时,按字节分别从三台星载计算机共享内存的三个物理地址空间中读取交互信息,每台星载计算机均有三个物理地址空间,每台星载计算机对应提供三份交互信息;
b、将来自同一台星载计算机的三份交互信息进行初级3取2的表决,获得初级表决结果;
c、重复步骤b三次,获得每台星载计算机对应的初级表决结果,将每台星载计算机对应的初级表决结果进行终极3取2的表决,获得终极表决结果,按照终极表决结果更新本机;将终极表决结果作为数据计算子任务的输入信息。
步骤b所述初级3取2的表决的方法,具体为:
判断由同一星载计算机共享内存的三个物理地址空间读取到的交互信息是否有两份交互信息的数据一致,若有两份交互信息的数据一致,则使用两份数据相同的交互信息作为初级表决结果,若三个物理地址空间读取到的交互信息的数据均不一致,则任意选取一份交互信息作为该台星载计算机的初级表决结果。
步骤c所述终极3取2的表决的方法,具体为:
判断三台星载计算机初级表决结果是否有两份初级表决结果的数据一致,若有两份初级表决结果的数据一致,则使用两份数据相同的初级表决结果作为终级表决结果,若三份初级表决结果的数据均不一致,则任意选取一份初级表决结果的数据作为终极表决结果。
步骤3)所述划分五类子任务的方法,具体为:
将采集火星探测器上安装的敏感器原始数据的任务,划分为数据采集子任务;所述敏感器包括:加速度计、陀螺仪、星敏感器、模拟太阳角计;
将根据敏感器原始数据,解算火星探测器的加速度、角速度、姿态信息的任务,划分为数据计算子任务;
将根据火星探测器的加速度、角速度、姿态信息计算出动量轮转速、喷气脉宽的控制信息,并将控制信息发送给动量轮、推进系统执行的任务,划分为控制输出子任务;
将从火星探测器星载计算机内存中选取若干关键信息,作为表决信息,并将这些表决信息发送给表决器的任务,划分为表决信息输出子任务;
将向表决器发送启动表决的任务,划分为启动表决子任务。
本发明与现有技术相比的有益效果是:
1)本发明在计算机内部单独设置硬件内存作为共享内存,与计算机运行使用的内存隔离开,既保证了交互数据与运行数据相互隔离,互不干扰;又使交互数据时简单快捷,无需通讯协议即可快速交互数据;同时交互数据的速度快,远高于通过1553B总线或串口422交互的速度。
2)本发明对交互的数据进行2次三取二表决,既避免空间环境的单粒子效应,也避免某台计算机故障导致其交互数据出错,最终影响三机运行状态;
附图说明
图1为本发明一实施例星载计算机系统的A机数据交互读写示意图。
具体实施方式
下面结合附图和具体实施方式对本发明做进一步详细的描述。
针对火星探测的特点,火星探测过程中要求,星载计算机系统的三计算机的控制软件之间需频繁可靠、快速的交互大量控制信息,需要长期保证三计算机的控制软件运行状态一致的任务要求,本发明提供一种适用于火星探测的三计算机数据交互与表决方法,主要包括以下内容:
第一步:在星载计算机系统内部单独设置硬件共享内存,将此共享内存划分为三等分物理地址空间,每个计算机可以读取所有物理地址空间,但只能改写本计算机对应的物理地址空间;
第二步:各个计算机直接通过CPU芯片与共享内存之间的IO接口访问内存地址获取其他计算机提供的交互信息和写入本机的交互信息;
第三步:每次写本机的交互信息时同时,按字节依次写入内存三个地址,每次读取其他计算机的交互信息时,按字节从内存三个地址依次读取交互信息,读数结束后再进行3取2的表决,确定最终的交互信息;
第四步:计算机软件读取到其他计算机软件发送的交互信息后,与本机的信息再进行3取2的表决,按照表决结果更新本机的控制信息,最终完成信息交互,统一三计算机的控制软件运行状态。
一种适用于火星探测的三计算机数据交互与表决方法,包括步骤如下:
1)在火星探测器上设置3台星载计算机,将当前正在执行任务的计算机作为主份计算机,其余计算机作为备份计算机;同一时刻有且仅有一台主份计算机;
2)在每台星载计算机内部单独设置硬件内存作为共享内存,所述共享内存用于使星载计算机之间交互信息,将此共享内存的物理地址空间划分为三等分的物理地址空间,每台星载计算机均可以读取三台星载计算机的所有物理地址空间,但每台星载计算机只能改写本机对应的物理地址空间;
3)将星载计算机每个控制周期需要执行的任务划分为五类子任务,所述五类子任务按执行顺序,依次为:数据采集子任务、数据计算子任务、控制输出子任务、表决信息输出子任务、启动表决子任务;所述数据采集子任务需要三台星载计算机在同一时刻开始运行;
所述启动表决子任务需要三台星载计算机在同一时刻开始运行;
所述数据计算子任务、控制输出子任务、表决信息输出子任务不要求三台星载计算机在同一时刻开始运行。
在每台计算机执行完数据采集子任务后,将数据采集子任务采集得到的数据作为交互信息;
4)各台星载计算机直接通过CPU芯片与共享内存之间的IO接口访问共享内存,读取其他星载计算机提供的交互信息并写入本机的交互信息并作为数据计算子任务的输入信息;
步骤4)所述写入本机的方法,具体为:将需要写入本机的交互信息按字节分别写入本机共享内存的三个物理地址空间;
步骤4)所述读取其他星载计算机提供的交互信息的方法,具体为:
a、每次读取其他星载计算机的交互信息时,按字节分别从三台星载计算机共享内存的三个物理地址空间中读取交互信息,每台星载计算机均有三个物理地址空间,每台星载计算机对应提供三份交互信息;
b、将来自同一台星载计算机的三份交互信息进行初级3取2的表决,获得初级表决结果;
c、重复步骤b三次,获得每台星载计算机对应的初级表决结果,将每台星载计算机对应的初级表决结果进行终极3取2的表决,获得终极表决结果,按照终极表决结果更新本机;将终极表决结果作为数据计算子任务的输入信息。
步骤b所述初级3取2的表决的方法,具体为:
判断由同一星载计算机共享内存的三个物理地址空间读取到的交互信息是否有两份交互信息的数据一致,若有两份交互信息的数据一致,则使用两份数据相同的交互信息作为初级表决结果,若三个物理地址空间读取到的交互信息的数据均不一致,则任意选取一份交互信息作为该台星载计算机的初级表决结果。
步骤c所述终极3取2的表决的方法,具体为:
判断三台星载计算机初级表决结果是否有两份初级表决结果的数据一致,若有两份初级表决结果的数据一致,则使用两份数据相同的初级表决结果作为终级表决结果,若三份初级表决结果的数据均不一致,则任意选取一份初级表决结果的数据作为终极表决结果。
步骤3)所述划分五类子任务的方法,具体为:
将采集火星探测器上安装的敏感器原始数据的任务,划分为数据采集子任务;所述敏感器包括:加速度计、陀螺仪、星敏感器、模拟太阳角计等;
将根据敏感器原始数据,解算火星探测器的加速度、角速度、姿态信息的任务,划分为数据计算子任务;
将根据火星探测器的加速度、角速度、姿态信息计算出动量轮转速、喷气脉宽的控制信息,并将这些控制信息发送给动量轮、推进系统执行的任务,划分为控制输出子任务;
将从火星探测器星载计算机内存中选取若干关键信息,作为表决信息,并将这些表决信息发送给表决器的任务,划分为表决信息输出子任务;
将向表决器发送启动表决的任务,划分为启动表决子任务。
实施例
第一步:在星载计算机系统内部设置共享内存,此共享内存共8K×16bit,并可以根据交互信息的增多而不断扩容。将此共享内存划分为三等分物理地址空间,每个计算机可以读取所有内存空间,但只能改写本计算机对应的物理地址空间;
第二步:计算机使用底层指令集,通过CPU芯片与共享内存之间的IO接口访问内存地址获取其他计算机提供的交互信息和写入本机的交互信息。CPU每1ms访问700个IO,每个IO16位,码速率约为11.4Mbps。此速率远超1553B总线的2Mbps和串口422的114.2Kbps,可以满足火星探测过程中要求,星载计算机系统的三计算机的控制软件之间交互信息的速率要求;
第三步:第一步中每个计算机对应的物理地址空间,再平等分为三份。计算机每次写数时同时写入本计算机对应的物理地址空间的三个地方,计算机每次读取其他计算机的交互信息时,从被读计算机对应的物理地址空间的三个地方同时读取交互信息,读数结束后再进行3取2的表决,确定最终的交互信息,由此防止单粒子效应造成数据错误;
第四步:计算机软件读取到其他计算机软件发送的交互信息后,与本机的信息再进行3取2的表决,按照表决结果更新本机的控制信息,最终完成信息交互,统一三计算机的控制软件运行状态。
以星载计算机系统的A机的为例,数据交互的实施方式如图1所示。
本发明说明书中未作详细描述的内容属本领域专业技术人员的公知技术。

Claims (4)

1.一种适用于火星探测的三计算机数据交互与表决方法,其特征在于,包括步骤如下:
1)在火星探测器上设置3台星载计算机,将当前正在执行任务的计算机作为主份计算机,其余计算机作为备份计算机;同一时刻有且仅有一台主份计算机;
2)在每台星载计算机内部单独设置硬件内存作为共享内存,所述共享内存用于使星载计算机之间交互信息,将此共享内存的物理地址空间划分为三等分的物理地址空间,每台星载计算机均能够读取三台星载计算机的所有物理地址空间,但每台星载计算机只能改写本机对应的物理地址空间;
3)将星载计算机每个控制周期需要执行的任务划分为五类子任务,所述五类子任务按执行顺序,依次为:数据采集子任务、数据计算子任务、控制输出子任务、表决信息输出子任务、启动表决子任务;所述数据采集子任务需要三台星载计算机在同一时刻开始运行;
所述启动表决子任务需要三台星载计算机在同一时刻开始运行;
在每台计算机执行完数据采集子任务后,将数据采集子任务采集得到的数据作为交互信息;
4)各台星载计算机通过CPU芯片与共享内存之间的IO接口访问共享内存,读取其他星载计算机提供的交互信息并写入本机的交互信息并作为数据计算子任务的输入信息;
步骤4)所述写入本机的方法,具体为:将需要写入本机的交互信息按字节分别写入本机共享内存的三个物理地址空间;
步骤4)所述读取其他星载计算机提供的交互信息的方法,具体为:
a、每次读取其他星载计算机的交互信息时,按字节分别从三台星载计算机共享内存的三个物理地址空间中读取交互信息,每台星载计算机均有三个物理地址空间,每台星载计算机对应提供三份交互信息;
b、将来自同一台星载计算机的三份交互信息进行初级3取2的表决,获得初级表决结果;
c、重复步骤b三次,获得每台星载计算机对应的初级表决结果,将每台星载计算机对应的初级表决结果进行终极3取2的表决,获得终极表决结果,按照终极表决结果更新本机;将终极表决结果作为数据计算子任务的输入信息。
2.根据权利要求1所述的一种适用于火星探测的三计算机数据交互与表决方法,其特征在于,步骤b所述初级3取2的表决的方法,具体为:
判断由同一星载计算机共享内存的三个物理地址空间读取到的交互信息是否有两份交互信息的数据一致,若有两份交互信息的数据一致,则使用两份数据相同的交互信息作为初级表决结果,若三个物理地址空间读取到的交互信息的数据均不一致,则任意选取一份交互信息作为该台星载计算机的初级表决结果。
3.根据权利要求1所述的一种适用于火星探测的三计算机数据交互与表决方法,其特征在于,步骤c所述终极3取2的表决的方法,具体为:
判断三台星载计算机初级表决结果是否有两份初级表决结果的数据一致,若有两份初级表决结果的数据一致,则使用两份数据相同的初级表决结果作为终级表决结果,若三份初级表决结果的数据均不一致,则任意选取一份初级表决结果的数据作为终极表决结果。
4.根据权利要求1~3任意之一所述的一种适用于火星探测的三计算机数据交互与表决方法,其特征在于,步骤3)划分五类子任务的方法,具体为:
将采集火星探测器上安装的敏感器原始数据的任务,划分为数据采集子任务;所述敏感器包括:加速度计、陀螺仪、星敏感器、模拟太阳角计;
将根据敏感器原始数据,解算火星探测器的加速度、角速度、姿态信息的任务,划分为数据计算子任务;
将根据火星探测器的加速度、角速度、姿态信息计算出动量轮转速、喷气脉宽的控制信息,并将控制信息发送给动量轮、推进系统执行的任务,划分为控制输出子任务;
将从火星探测器星载计算机内存中选取若干关键信息,作为表决信息,并将这些表决信息发送给表决器的任务,划分为表决信息输出子任务;
将向表决器发送启动表决的任务,划分为启动表决子任务。
CN202010144763.9A 2020-03-04 2020-03-04 一种适用于火星探测的三计算机数据交互与表决方法 Active CN111381982B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010144763.9A CN111381982B (zh) 2020-03-04 2020-03-04 一种适用于火星探测的三计算机数据交互与表决方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010144763.9A CN111381982B (zh) 2020-03-04 2020-03-04 一种适用于火星探测的三计算机数据交互与表决方法

Publications (2)

Publication Number Publication Date
CN111381982A CN111381982A (zh) 2020-07-07
CN111381982B true CN111381982B (zh) 2023-05-09

Family

ID=71215224

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010144763.9A Active CN111381982B (zh) 2020-03-04 2020-03-04 一种适用于火星探测的三计算机数据交互与表决方法

Country Status (1)

Country Link
CN (1) CN111381982B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112278328B (zh) * 2020-10-28 2021-07-06 北京和德宇航技术有限公司 卫星姿控软件防护方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1146423A2 (en) * 2000-04-11 2001-10-17 The Boeing Company Voted processing system
WO2012167094A1 (en) * 2011-06-01 2012-12-06 Security First Corp. Systems and methods for secure distributed storage
CN104850530A (zh) * 2015-05-21 2015-08-19 西北工业大学 一种立方星星载计算机
CN109189600A (zh) * 2018-08-17 2019-01-11 四川航天系统工程研究所 一种基于多模冗余嵌入式软件的计算机系统及设计方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1146423A2 (en) * 2000-04-11 2001-10-17 The Boeing Company Voted processing system
WO2012167094A1 (en) * 2011-06-01 2012-12-06 Security First Corp. Systems and methods for secure distributed storage
CN104850530A (zh) * 2015-05-21 2015-08-19 西北工业大学 一种立方星星载计算机
CN109189600A (zh) * 2018-08-17 2019-01-11 四川航天系统工程研究所 一种基于多模冗余嵌入式软件的计算机系统及设计方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
孙兆伟 ; 刘源 ; 徐国栋 ; 叶东 ; .小卫星/小运载可重构多核计算机设计.航空学报.2010,第31卷(第4期),770-777. *
徐帷 ; 武海雷 ; 卢山 ; 刘付成 ; .大椭圆轨道卫星交会高轨目标的高精度视线跟踪控制.空间控制技术与应用.2015,第41卷(第2期),6-11. *

Also Published As

Publication number Publication date
CN111381982A (zh) 2020-07-07

Similar Documents

Publication Publication Date Title
CN101493809B (zh) 一种基于fpga的多核心星载计算机
CN110334075B (zh) 基于消息中间件的数据迁移方法及相关设备
US7552312B2 (en) Identifying messaging completion in a parallel computer by checking for change in message received and transmitted count at each node
CN102057358B (zh) 用于对卷的改变进行跟踪的系统与方法
CN105830040A (zh) 用于访问存储器的存储器装置
CN105511881A (zh) 一种通用机载交互数据的管理方法
Chakravorty et al. Proactive fault tolerance in large systems
CN106855834B (zh) 一种数据备份方法、装置和系统
CN114490036A (zh) 一种可扩展分布式多余度无人机智能飞行控制计算机
CN113835870A (zh) 数据处理方法及系统
CN112131741B (zh) 一种实时双内核单机半实物仿真架构及仿真方法
CN111381982B (zh) 一种适用于火星探测的三计算机数据交互与表决方法
Riesen et al. See applications run and throughput jump: The case for redundant computing in HPC
Davydov et al. SERVICE ROBOTS INTEGRATING SOFTWARE AND REMOTE REPROGRAMMING.
US10437754B1 (en) Diagnostic fault management controller for distributed computing
CN112416856A (zh) 一种面向多核技术的分布式可重构机载容错系统
CN105843706B (zh) 一种基于mpi高性能计算分层回卷恢复协议的动态分组系统
CN112632700B (zh) 用于卫星姿轨控通用综合测试的飞轮信号采集方法及系统
CN115238437A (zh) 一种发动机控制软件仿真平台集成方法及其系统
CN102662774B (zh) 多进程间结构化文档通信方法
US20190026198A1 (en) Method and device for configuring an execution means and for detecting a state of operation thereof
CN111158796B (zh) 一种液压控制软件的数据处理方法
CN111198746B (zh) 在虚拟化集群中基于共享存储的主机间的通信方法及系统
CN112550771B (zh) 姿轨控通用综合测试的控制力矩陀螺信号采集方法及系统
CN103488533A (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