首页> 中国专利> 一种航天器嵌入式软件在轨维护方法

一种航天器嵌入式软件在轨维护方法

摘要

一种航天器嵌入式软件在轨维护方法,首先约定在轨维护航天器嵌入式软件设计规则,并依据该规则设计原版软件;然后在功能需求变化时设计新版软件,将原版嵌入式软件机器码划分为多个机器码未改变区、机器码变化识别区,并进行判断对比后得到新版软件的机器码未改变区、机器码变化识别区、机器码增加区,进而得到新版软件的微增量机器码与软件链表维护信息,进行校验和上注,完成多版本软件的在轨维护;最后根据直接指令切换航天器执行的某一版本的软件,满足功能需求变化。本发明方法与现有技术方法相比,在轨维护受原版软件限制小,上注量小,并且在维护过程中保证总有软件可在轨正常使用,提高了在轨维护的可靠性。

著录项

  • 公开/公告号CN104820586A

    专利类型发明专利

  • 公开/公告日2015-08-05

    原文格式PDF

  • 申请/专利权人 北京空间机电研究所;

    申请/专利号CN201510164376.0

  • 申请日2015-04-09

  • 分类号G06F9/44(20060101);G06F9/445(20060101);

  • 代理机构11009 中国航天科技专利中心;

  • 代理人陈鹏

  • 地址 100076 北京市丰台区南大红门路1号9201信箱5分箱

  • 入库时间 2023-12-18 10:16:50

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-05-22

    授权

    授权

  • 2015-09-02

    实质审查的生效 IPC(主分类):G06F9/44 申请日:20150409

    实质审查的生效

  • 2015-08-05

    公开

    公开

说明书

技术领域

本发明属于航天器嵌入式软件应用领域,特别是一种航天器嵌入式软件在 轨维护方法。

背景技术

为了避免强辐射、单粒子效应等太空工作环境产生的影响,在轨的航天器 软件基本上是将运行的软件代码固化在不容易发生改变的程序存储器PROM 中,在抗干扰能力及可靠性提高的同时,也失去了软件后期维护的功能。为了 消除地面未能测试出的软件故障和实现由于硬件性能衰退、硬件故障等所带来 的软件升级以及航天器产品在轨应用功能需求的改变,很多航天器软件都已经 提出了软件在轨维护的功能需求。近几年,相关的研究和探索工作已经开展, 但由于可靠性、上注效率以及工程可行性等多方面的原因,软件在轨维护还没 有真正进入到广泛应用阶段。目前,用于航天器嵌入式软件在轨维护的方法主 要有以下三种:

(1)将功能或参数修改后的新版软件整版上注,然后根据遥控指令切换运 行新版软件或原版本软件实现软件在轨维护功能;(2)通过修改函数入口地址 即软件调用关系的变化实现软件功能的更改,达到软件维护的目的;(3)通过 比较功能更新后的新版二进制文件和在轨运行软件的二进制文件生成增量文 件,将增量文件上注,然后通过在轨运行比较算法完成新版软件重组并执行, 实现对嵌入式软件的在轨维护。

上述三种方法尽管都实现了软件在轨维护功能,但都有其局限性,第(1) 种方法的软件上注代码量非常大,上注时间较长,对软件容错机制、软件存储 空间和上注效率的要求都非常高。第(2)种方法则局限于对软件局部功能的修 改,软件的可修改性完全取决于原来函数入口地址是否具备以及预留的空白空 间、空函数等是否可供使用。第(3)种方法尽管提出了增量上注的概念,但由 于软件功能更改的不确定性,其增量代码的获取方法并不能保证其增量代码很 小,甚至与整版上注文件相比没有任何优势,上注量依然较大。如果为保证其 上注量减小则软件的可更改性则大大降低,而且在轨运行比较算法进行软件重 组和加载,对于软件执行效率、可靠性等方面的需求也非常高,因此现有嵌入 式软件在轨维护技术都有代码上注量大或功能修改受限或执行效率降低等工程 可行性不高的缺点。

发明内容

本发明解决的技术问题是:克服现有技术的不足,提供了一种在轨维护受 原版嵌入式软件限制小并能够在原版嵌入式软件的任意位置进行修改的航天器 嵌入式软件在轨维护方法。

本发明的技术解决方案是:一种航天器嵌入式软件在轨维护方法,包括如 下步骤:

(1)按照软件功能需求设计原版嵌入式软件,将原版嵌入式软件对应的机 器码按照数据段、代码段、堆和栈的顺序依次排布,并在代码段后预留第一设 定阈值长度的空间作为机器码增加区,然后将原版嵌入式软件固化落焊在航天 器PROM中运行;

(2)在原版嵌入式软件运行过程中,根据在轨嵌入式软件功能需求变化设 计t版嵌入式软件,并比较t版嵌入式软件源代码与原版嵌入式软件源代码,得 到t版嵌入式软件需要改变的源代码位置和内容,进而得到原版嵌入式软件机 器码需要改变的机器码地址及长度,然后将原版嵌入式软件机器码划分为多个 机器码未改变区、机器码变化识别区,并对各个机器码变化识别区对应的t版 嵌入式软件的源代码进行编译得到其机器码并依次判断;所述的机器码未改变 区为原版嵌入式软件机器码未改变的区域;所述的机器码变化识别区为原版嵌 入式软件机器码改变的区域,t的初值为1且为正整数;

(3)如果原版嵌入式软件机器码变化识别区对应的t版嵌入式软件机器码 长度等于当前机器码变化识别区机器码长度,则将当前机器码变化识别区对应 t版嵌入式软件机器码直接替换当前机器码变化识别区机器码;

如果变化识别区对应的t版嵌入式软件机器码长度大于当前机器码变化识 别区机器码长度,则将当前机器码变化识别区对应的t版嵌入式软件机器码放 入当前机器码变化识别区与机器码增加区,并在当前机器码变化识别区末位置 添加跳转至机器码增加区中t版嵌入式软件机器码首位置的无条件长跳转指令, 在机器码增加区中t版嵌入式软件机器码末位置添加跳转至与当前机器码变化 识别区末位置相邻机器码的无条件长跳转指令;

如果变化识别区对应的t版嵌入式软件机器码长度小于当前机器码变化识 别区机器码长度,则将变化识别区对应的t版嵌入式软件机器码放入当前变化 识别区,并使用空操作指令填补使当前机器码长度等于变化识别区机器码长度; 得到t版嵌入式软件源代码机器码;

(4)对比原版嵌入式软件机器码、t版嵌入式软件机器码得到变化的机器 码地址和长度后与步骤(2)中寻找到的需要改变的机器码地址及长度对比并判 断,如果两者相同,则转入步骤(5),否则重复步骤(2)-步骤(3);

(5)根据变化的机器码地址和长度得到t版嵌入式软件对应的微增量机器 码,分别获取t版嵌入式软件中各个机器码变化识别区与机器码增加区中机器 码在航天器EEPROM的存放地址长度、t版嵌入式软件中各个机器码未改变区 中机器码在航天器PROM中的存放地址长度并形成其对应的链节信息,并将下 一链节的存放地址放入上一链节信息中,得到t版嵌入式软件中各个机器码变 化识别区、机器码增加区与机器码未改变区对应的链节信息后组合得到t版嵌 入式软件对应的链条,进而得到t版嵌入式软件对应的软件链表维护信息,其 中,各个机器码未改变区、机器码变化识别区、机器码增加区均对应一个链节 信息;所述微增量机器码为t版嵌入式软件中各个机器码变化识别区、机器码 增加区中变化的机器码,其中,各个机器码变化识别区、机器码增加区均对应 一段微增量机器码;所述链条开始地址为当前版本嵌入式软件中第一个链节信 息的存放地址;所述软件链表维护信息包括链条开始地址、链节数、软件校验 和、微增量机器码及其在航天器EEPRM中的存放地址长度、当前嵌入式软件 版本号、链节信息;

(6)发送上注控制字指令至航天器并控制航天器接收数据,然后对微增量 机器码与软件链表维护信息以第二设定阈值长度进行分帧后得到多个数据包, 依次将数据包上注至航天器EEPROM,计算每个上注完成的数据包的累加和并 与其对应的校验和进行对比,如果两者相等,则该数据包上注完成,否则发送 指令控制地面重复上注该数据包直至数据包的累加和与其对应的校验和相等, 在所有数据包上注结束时重复发送上注控制字指令来控制航天器结束接收数 据,其中,在对微增量机器码与软件链表维护信息以第二设定阈值长度进行分 帧时,如果最后一帧数据长度小于设阈值,则通过填零使最后一帧数据长度为 设定阈值长度,数据包包括该数据包的校验和;所述上注控制字指令包括微增 量机器码与软件链表维护信息在航天器EEPROM的存放开始地址、数据长度 及校验和;

(7)等待下次在轨嵌入式软件功能需求变化,并监测地面发送的直接指令, 当在轨嵌入式软件功能需求变化时,使t=t+1,并重复步骤(2)-步骤(6)完 成新的在轨维护,然后等待下次在轨嵌入式软件功能需求变化,并监测地面发 送的直接指令,当地面发送直接指令时,转入步骤(8);

(8)根据直接指令使用搬移程序搬移原版嵌入式软件机器码或k版嵌入式 软件机器码并搬至航天器SRAM中,然后计算航天器SRAM中k版嵌入式软 件机器码累加和并与其校验和对比,如果两者不相等,则重复步骤(8)直至两 者相等,如果两者相等,则执行k版嵌入式软件,并转入步骤(7),其中,k=1, 2,3,,,t。

所述的步骤(1)第一设定阈值长度的取值范围为代码段长度的10%。

所述的步骤(1)中将t版嵌入式软件对应的机器码按照数据段、代码段、 堆和栈的顺序依次排布为通过修改编译器的链接脚本文件实现。

所述的步骤(4)对比原版嵌入式软件机器码、t版嵌入式软件机器码可以 使用Beyond Compare软件。

所述的步骤(5)中的根据变化的机器码地址和长度得到t版嵌入式软件对 应的微增量机器码的方位为以二进制码流的形式读取t版软件机器码中指定地 址长度的内容,然后得到对应的微增量机器码。

所述的步骤(6)中的第二设定阈值长度为30个字。

本发明与现有技术相比的优点在于:

(1)本发明方法与现有技术方法相比,使嵌入式软件在轨维护功能受原版 嵌入式软件的限制非常小,能够在原版嵌入式软件的任意位置进行任意数量的 修改;

(2)本发明方法与现有技术方法相比,使各版本在轨嵌入式软件机器码的 变化区域非常明显且便于识别剥离,另外在正常功能需求变化的基础上减小了 机器码的增量变化,使在线维护的上注量、上注次数和存储空间需求尽量小;

(3)本发明方法与现有技术方法相比,避免了在轨进行机器码比对和复杂 运算的过程,通过遍历链节信息即可实现嵌入式软件重组与加载,实现效率高, 同时还保留了航天器在轨运行的需要的多套功能需求软件,可以根据功能需求 变化随时切换;

(4)本发明方法在嵌入式软件在轨维护过程中,保证总有一版本的嵌入式 软件在轨正常使用,不会因为在轨维护时软件上注或加载失败而使航天器系统 崩溃,提高了在轨维护的可靠性。

附图说明

图1为本发明的嵌入式软件在轨维护方法流程图;

图2为本发明的嵌入式软件设计规则约定的软件机器码组成结构图;

图3为本发明的机器码增量变化规则与实现原理图;

图4为本发明的EEPROM存储使用规则图;

图5为本发明的链表维护信息存放格式图;

图6为本发明的基于查找链表维护信息的软件加载流程。

具体实施方式

本发明提出一种航天器嵌入式软件在轨维护方法,下面结合附图和实施例 进行详细说明,如图1所示,本发明的实施步骤如下:

(1)按照“在轨维护嵌入式软件设计规则”设计航天器发射时固化落焊在 PROM中的原版嵌入式软件:嵌入式软件设计规则首先要求软件对应的机器码 必须按照数据段、代码段、堆和栈的顺序依次排布,如图2所示。其次是在代 码段的后面需要预留软件代码增加区的空间。

原版软件必须遵循此设计规则进行软件设计,确保软件可在轨维护。实现 机器码按照图2所示的顺序排布的方法是通过修改编译器的链接脚本文件实现 的,尽管不同的嵌入式软件开发平台不同,但其方法是相通的,以基于SPARC V8指令集的软件开发平台Sparc Developer suite开发软件为例,修改机器码 段顺序的方法可通过修改链接脚本文件linksparc.ld来实现,在脚本文件中首先 写data段,然后是BSS段、代码段,最后是堆栈段,实现机器码段交换的链 接脚本如下所示:

(2)根据在轨软件功能需求变化设计新版软件,新版软件设计仍然遵循维 护软件设计规则,比较新版与原版软件源代码,确定新版软件需要改变的软件 代码位置和内容,然后将原版嵌入式软件对应的机器码划分为多个“机器码未 改变区”、“机器码变化识别区”,区域划分需依据软件源代码进行。所述的“机 器码未改变区”为初始嵌入式软件对应的机器码未改变的区域;所述的“机器 码变化识别区”为初始嵌入式软件对应的机器码改变的区域;各区段的划分如 图3中原版软件的机器码分布图所示。尽管此刻由于“机器码变化识别区”代 码长度的变化会使“机器码未改变区”的内容由于引用指针的变化进而使对应 的机器码发生变化,但即使有这些变化也应该将此类代码划分为“机器码未改 变区”,因为这些变化可以通过后续介绍的可控编译技术进行消除。

(3)应用可控编译技术调整新版软件源代码,识别获取微增量机器码。可 控编译技术是保证“机器码未改变区”不受“机器码变化识别区”内容改变而 影响的一种有效手段,也是软件实现在轨维护最小量上注的一种有效方法。由 于软件代码经常因为修改一个软件指令源代码而导致整个软件代码段发生较大 的变化。这是因为软件修改后,软件大小发生了变化,和未更改之前相比,软 件对应机器码的存放相对位置发生了变化,软件中涉及跳转指令接口地址的所 有代码段都相应发生了变化。因此,要实现软件代码的微增量变化,软件设计 除遵守本发明提出的设计规则外,还应使用可控编译技术和机器码比对技术, 这些技术的核心思想是保证软件代码未发生变化部分对应的机器码的相对位置 不发生改变,从而使软件中未发生变化且涉及跳转指令接口地址的所有代码都 不会发生变化,具体实现原理与机器码增量变化规则如图3所示:

首先找到软件代码(源代码)发生变化的位置和内容,然后在原版软件对 应的机器码中找到发生变化的位置和机器码长度,即将嵌入式软件的机器码分 为若干个“机器码未改变区”,若干个“机器码变化识别区”,随后根据这段变 化的机器码长度,设计新版软件软件代码,如果新版软件代码编译后对应的机 器码长度与之相等则直接获得“机器码等长代码替换区”的机器码,如果对应 的机器码长度变小则通过添加空操作指令使其获得“机器码等长代码替换区” 的机器码,如果对应的机器码长度变长则通过无条件长跳转指令和一定的空操 作指令获得“机器码等长代码替换区”,并将增加的机器码通过编译器放置在原 版软件机器码的“代码段”的末尾进行增加,即获得“机器码增加区”的机器 码,机器码增加完毕再通过无条件长跳转指令和一定的空操作指令跳回“机器 码等长代码替换区”的末尾,保持新版软件机器码的连续性。

以Sparc Developer suite软件开发平台为例,原版软件是将32bit的 test_data的数据最低8位左移位操作变成最高8位,然后将sjzrWord数组的 第6个字的最低16位加和至test_data的中间16位;新版软件是将test_data 的数据最低8位左移位操作变成最高8位,然后将sjzrWord数组的第6个字的 最低16位乘以2后再加和至test_data的中间16位,功能变化虽不多,但生 成的机器码若不使用可控编译技术将发生很大的变化,若使用可控编译技术, 则能保证机器码变化仅发生在“机器码变化识别区”和软件代码段末尾的“机 器码增加区”,具体实现方法如下:

第一步,识别原版软件中发生变化的源代码对应的机器码及空间:

源码:test_data=(test_data<<24)+((sjzrWord[5]&0xffff)<<8);

机器码:400037c8:31 10 00 01 sethi%hi(0x40000400),%i0

…………………………

40003800:f0 26 c0 00 st%i0,[%i3]

第二步,等长代码变换(用第二步的源码替换第一步的源码):

源码:asm("b zengliang");asm("nop");……//(共13个占位nop)

asm("dengchang:nop");

机器码:400037c8:10 80 0c 63 b 40006954<zengliang>

400037cc:01 00 00 00 nop

…………………

40003800<dengchang>:asm("dengchang:nop");

第三步,编写增量代码:

源码:asm("zengliang:nop");

test_data=(test_data<<24)+(((sjzrWord[5]&0xffff)*2)<< 8);

asm("b dengchang");

asm("nop");

机器码:40006954<zengliang>:

40006954:01 00 00 00 nop

…………………

400069c8:10 bf f3 8e b 40003800<dengchang>

400069cc:01 00 00 00 nop

按照上述方法设计新版软件以后,将增加的软件代码放置在最后一个链接 的.O文件(如main.o)对应的.C文件(main.c)的末尾,然后重新编译链接生成 机器码。

(4)使用机器码比对技术,分析校正可控编译技术生成的新版机器码文件 是否符合要求。通过机器码比对软件Beyond Compare比对原来的机器码和功 能变化后的新版软件的机器码,就可识别微增量变化的机器码地址和长度,微 增量变化的机器码也就是“机器码等长代码替换区”和“机器码增加区”的内 容。比较Beyond Compare获得的“机器码等长代码替换区”的地址和长度是 否和步骤(2)所述的“机器码变化识别区”相同,同时也比较两个“机器码未 改变区”的地址和长度是否相同,若相同则进行下一个步骤,若不同,重新进 行步骤(2)~步骤(4)的操作。

(5)按照航天器EEPROM的使用规则生成微增量机器码文件。此规则是 指EEPROM前面10KB存储空间用于存放链表维护信息,其后存放用于组成 不同版本软件维护的微增量机器码,每个版本软件的微增量机器码使用一段连 续的存储区域。EEPROM存储使用规则图如图4所示。然后将步骤(4)识别 出的新版软件相对原版软件的微增量变化机器码从新版软件机器码中逐一分 离,分离方法可以使用UltraEdit软件辅助Microsoft word查找替换功能以及记 事本复制粘贴的方式实现,也可以编写专用软件代码分离程序以二进制码流的 形式读取原版软件机器码中指定地址和长度的内容,然后生成新的微增量码二 进制文件。最后按EEPROM约定的使用规则,将微增量代码规划好的EEPROM 存放首地址信息写在微增量码文件的前4个字节处。

(6)按照链表维护信息规则生成链表维护信息文件:链表维护信息是用于 描述软件组成及存放信息的,它以约定的形式存放于航天器的可擦写软件存储 器中,如EEPROM。它首先将一个软件机器码的组成信息(包括机器码未改变 段或软件上注的机器码等长替换段或机器码增加段等多个机器码段的地址、长 度信息)以链节的形式记录下来,每个链节都包含下一个链节的存放地址,多 个有序链节形成链条用于寻址整版软件。然后将软件版本信息、软件组成信息、 软件链条信息和维护bootloader程序以约定的格式在存放在EEPROM中进行 管理,这些按规定格式存储的数据我们称之为链表维护信息,软件的链表维护 信息如图5所示。由图可见,所谓的链表维护信息就是存放于EEPROM中的 地址为0x10000000~0x1000287F地址中的数据内容。软件版本信息包含航天 器嵌入式系统平台目前所拥有的软件总版数和当前运行的软件版本号;软件组 成信息包含一套软件机器码组成段的个数(即链节个数)和第一个软件机器码 段(第一个链节)在航天器EEPROM中的存储绝对位置、软件校验和以及软 件微增量机器码的存放起始地址等;软件链节信息通过后续的每个机器码组成 段在航天器EEPROM中的存储绝对位置和下一个链节的存放地址获得。每次 链表信息维护时不需要整个改变这个区域的内容,仅需更改当前对应的软件版 本信息、软件信息和链节信息,甚至可以按存放字节进行修改维护。

(7)将步骤(5)生成的微增量机器码文件和步骤(6)生成的软件链表 维护信息文件按照天地各航天器通讯链路中的协议上注至航天器,然后根据上 注微增量机器码文件和软件链表维护信息文件中的存放地址将上注文件中的数 据内容写至指定的EEPROM位置。在SRAM中运行的原版和新版软件均有内 容下泄功能,可以根据内存下泄指令随时下传EEPROM中的内容进行正确性 判断,如果判断为错误则重复步骤(7)重新进行上注。

软件上注决定着软件在轨维护的功能是否能可靠实现,因此其通讯协议起 着至关重要的作用。软件上注主要分成三步,第一步是先发送上注控制字命令, 用于确定一个软件上注开始、航天器设备存放上注代码的开始地址和上注数据 的大小,然后是按照通讯协议上注软件维护数据内容(微增量机器码和链表维 护信息),上注数据完成后,再次发送上注控制字命令,结束一个软件上注。软 件上注控制字的指令格式及各项内容含义详见

表1和表2,软件上注数据字的格式如表3所示。为了可靠的实现软件 上注,每次上注都会产生对应的遥测状态进行判断此次上注是否成功,上注状 态遥测及其各项内容含义如表4和表5所示。

表1软件上注控制字指令格式

  B0…………………………B7 B8……………………………B15 数据字0 启停信息(HB) 启停信息(LB) 数据字1 开始地址(HW HB) 开始地址(HW LB) 数据字2 开始地址(LW HB) 开始地址(LW LB) 数据字3 注入数据长度(HB) 注入数据长度(LB) 数据字4 校验和(HB) 校验和(LB)

表2软件上注控制字各项内容含义

表3软件上注数据字格式

数据字从存储于模拟地面控制设备中的文件读出,当文件长度大于30个 字时,自动分成多帧向上传输,当前发送的帧数(第几帧)作为帧序号向上传 输,帧序号从1开始,当数据长度不满足30个字时,“数据内容”用填零处理 (校验和除外)。

表4软件上注状态遥测

表5软件上注状态遥测各项含义

校验和是否正确:“0”,表示不正确,1表示正确。注入状态:1表示正在注 入,0表示空闲,1状态只能发送停止控制信息,0状态才可以发开始注入控制 信息。由于内存下泄的方法与相关通讯协议较为通用,一般的航天器用于内存 下泄的协议基本能够满足需求,故不作赘述。

(8)应用基于查找链表的高可靠软件加载与重组技术实现新版软件的加载 运行。所述“基于查找链表的高可靠软件加载与重组技术”是指软件上注完成 后,设备接收航天器“直接指令”切换至软件维护加载状态,然后设备重启, 软件跳转至维护Bootloader继续运行,维护Bootloader程序依据当前运行软 件版本号确定使用哪套软件,然后选择对应的软件维护链条信息,进行整个链 条依序索引的机器码累加和校验,如果校验结果等于链表维护信息中的软件校 验和信息,则使用维护Bootloader程序按照该版软件的链条信息搬移软件代码 并加载至航天器SRAM中,否则重复步骤(8)继续等待接收“直接指令”切 换至原版软件加载状态或重新索引链条信息直至校验正确,与此同时设备将加 载是否成功状态生成直接遥测下传。软件机器码搬移完成后设备运行SRAM中 软件,至此完成整个嵌入式软件的在轨维护功能。

基于链表维护信息的软件加载技术是以特定的Bootloader程序按照链表维 护信息的格式进行搬移、加载的方法。软件加载与实现流程如图6所示,首先 通过直接指令预置软件选择端口状态,然后系统上电,通过零地址的PROM中 Bootloader软件选择加载PROM中的软件还是EEPROM中的软件,若为加 载PROM中的软件,则直接搬移PROM中后续的软件机器码进行原版软件加 载。当确定为维护加载状态,软件跳转至EEPROM首地址执行,维护Bootloader 程序将依据0x10000401H的当前软件版本号确定使用第几版软件,若为第一 版本软件则从0x10000402H开始读取第一版本软件的第一个链节的开始地址 和链节数,然后按照规则从0x10000480H地址指向的内容读取第一个链节指 向的软件机器码内容,读取完第一个链节指向的机器码后,根据第一个链节的 尾指针获取第二个链节的位置,然后链节数自加并判断是否完成整个软件的读 取,若未完成则继续读取第二个链节指向的软件代码内容,依此类推完成整个 软件机器码的读取,然后进行机器码累加和校验判断软件校验是否正确,若正 确则按照上述方法搬移软件机器码至SRAM中并运行。若不正确自动跳转回 PROM中的Bootloader软件,继续依据直接指令选择加载状态,切换回原版软 件运行或直至校验正确为止。每次累加和校验完成,都将会生成加载是否成功 的直接状态遥测来判断软件加载状态,从而实现多版软件的选择与加载。

为提高系统可靠性,上电后PC指针指向零地址PROM区,直接指令加 载选择默认状态为Bootloader加载PROM中的软件进行工作,使航天器嵌入 式系统在任何时刻断电重启后都可以切回至固化在PROM中的软件,确保航天 器在轨始终有一版本软件可以正常工作,避免因软件上注失败、空间单粒子效 应以及EEPROM的可更改性而使新注入EEPROM中的软件不能正常工作而 失效。

本发明说明书中未作详细描述的内容属本领域技术人员的公知技术。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号