一种航天器嵌入式运行程序加快上行方法技术

技术编号:7474153 阅读:229 留言:0更新日期:2012-07-03 05:40
一种航天器嵌入式运行程序加快上行方法,步骤:(1)设计实现维护软件;(2)设计实现上行注入的运行软件,即新的飞行软件,新的飞行软件链接时,代码段、数据段均定位于RAM中,代码段的起始地址为RAM中的地址A,RAM的最低端到地址A满足上行注入数据存储,地址A到RAM顶端地址间满足新飞行软件的代码段、数据段以及运行空间足够;(3)对步骤(2)中新的飞行软件进行处理,使得地面系统上行注入数据减少、过程加快;(4)按照维护软件制定的数据包格式,对步骤(3.5)生成的可执行代码进行处理,生成地面测控系统可上行的数据包,上行上述数据包,使新的飞行软件得以运行。

【技术实现步骤摘要】

本专利技术涉及空间电子领域,尤其涉及航天器总体设计以及空间信息处理系统、方法。
技术介绍
目前,国内航天器的飞行软件均固化于PROM中,一旦软件中发现错误将不能对 PROM中的数据进行修改,只能利用RAM中的空间对飞行软件进行维护,修改部分程序或全部程序。利用航天器设备在工作时长期加电,RAM中数据可长期维持、不丢失的特点,保证被放置于RAM中的程序可长期运行。其中,有一种飞行软件维护的系统构架如图1所示嵌入式计算机的CPU配备两个PROM区,其中PROMl固化飞行软件,当飞行软件出现错误时,地面系统可发送指令将CPU的程序存储区切换到PR0M2,PR0M2中固化的为一个小型的维护软件,可以接收地面上行注入的修正过的或具有新功能的软件程序数据包,并转存入RAM中, 等到软件程序数据包上行完毕后,地面利用指令将程序跳转入RAM中运行。利用此方法,相当于废除掉了 PROMl中固化的飞行软件,转而运行RAM中新注入的软件,达到了软件维护的目的。遥控指令是控制航天器正常运行的重要手段,一般由地面测控系统负责加工,通过测控信道将电信号发送至航天器,控制各分系统的运行状态。早期的航天器遥控指令非常简洁,只包括3-20字节长度的指令码或数据,航天器对指令进行校验、译码并执行,仅限于设置开关和数据。但随着计算机技术和软件技术的发展,具有高度自治性和灵活性的实时嵌入式系统在国内的航天器中得到了广泛的应用。因此,遥控指令可控制、管理的范围急剧扩大,不仅仅可以控制硬件设备的运行,而且可以通过协议与航天器软件形成互动,共同完成各种类型的飞行任务。目前,我国的测控数据的传输速率为1K-2K bps,而完成上述的软件维护需要上行传输的数据量可以达到300K-500K Bytes0由于我国地面测控系统的限制,这些数据不能连续不间断传输,必须分割成限定长度的数据包,进行多次上行,这样,很大的数据量再加上多次上行过程中需要比对、确认等原因造成的时间损耗,完成300K-500K Bytes数据的传输需要5-6个小时的时间。这是一个非常长的时间段。尽量缩短这一过程所占用的时间已成为当务之急,尤其是对于那些非静止轨道的航天器来说,测控可见时间段是有限的,减少大数据量遥控指令上行传输时间更是至关重要。
技术实现思路
本专利技术的技术解决问题是克服现有技术的不足,提供,在现行地面测控体制下,可提高数据上行效率,缩短大数据量上行传输时间。本专利技术的技术解决方案是,包括下列步骤(1)设计实现维护软件,维护软件与航天器嵌入式飞行软件的关系要求维护软件运行时,飞行软件不运行,此时内存空间全部由维护软件控制;所述维护软件存储在RAM的高地址端;(2)设计实现上行注入的运行软件,即新的飞行软件,新的飞行软件链接时,代码段、数据段均定位于MM中,代码段的起始地址为RAM中的地址A,RAM的最低端到地址A满足上行注入数据存储,地址A到RAM顶端地址间满足新飞行软件的代码段、数据段以及运行空间足够;(3)对步骤O)中新的飞行软件进行处理,使得地面系统上行注入数据减少、过程加快;具体步骤(3. 1)将步骤( 生成的新飞行软件形成可执行代码;(3. 2)对步骤(3. 1)形成的可执行代码进行压缩,保存为数据文件,压缩后的数据在该文件中以数组的形式存在;(3. 3)编辑一个辅助的软件代码文件,该软件需要对(3. 2)形成的数据文件进行解压缩,解压缩后的数据存放于步骤O)中所述的地址A到RAM最高端的区域,并从地址A 依次向高端地址存储;解压缩完成后,跳转到地址A运行;(3. 4)将(3. 3)的软件代码文件与(3. 2)形成的数据文件进行编译、链接;链接时,代码段的起始地址应定位于内存的起始地址;(3. 5)将步骤(3. 4)链接后的软件程序生成可执行代码;(4)按照维护软件制定的数据包格式,对步骤(3. 5)生成的可执行代码进行处理, 生成地面测控系统可上行的数据包;具体包括以下步骤(4. 1)根据地面测控系统上传数据的能力,将步骤(3. 5)生成的可执行代码分割成数据包;(4. 2)地面发送遥控指令,将航天器切换到维护软件运行;(4. 3)依次向航天器上行注入步骤(4. 1)分割形成的数据包,并从航天器遥测确认数据包被航天器维护软件正确处理;(4. 4)步骤(4. 1)生成的所有数据包上行注入完成后,地面系统再上行命令,使维护软件跳转入内存空间最低端地址,自解压程序开始运行,将新的飞行软件代码自动解压缩,解压缩后的代码即存储于RAM地址A开始的空间,并跳转到地址A运行,即新的飞行软件得以运行。本专利技术与现有技术相比有益效果为(1)本专利技术在图1所示的航天器飞行软件维护的系统构架下,PR0M2中维护软件使用RAM地址高端的一段空间,在地面注入数据包完毕后,程序从维护软件跳转到RAM中的自解压执行,原来维护软件所使用的地址高端的空间可以被释放,重新被注入的新程序利用, RAM空间得到了充分的利用。如果维护软件使用RAM地址低端空间,则实现释放并重新利用是非常困难的。(2)上行注入的新的软件程序对RAM空间利用的设计。目前,在我国的航天器上, RAM空间容量已不再成为限制技术应用的瓶颈。本专利技术巧妙应用了 RAM的分段使用,使得解压缩程序和被注入的新程序成为两个不同的执行体,并在控制下得到顺次执行。使航天器上数据自解压的目标得到了实现。(3)对上行注入的新的软件程序实施压缩和自解压的方法,达到运行程序加快上行的目的。对于航天器的大量上行数据,在地面进行压缩,在航天器上实现自解压,在我国测控数据传输速率低的现实情况下,传输时间为不进行数据压缩时的1/3 1/2,大大提高了数据传输效率。附图说明图1为一种飞行软件维护的系统构架图,本专利技术是基于这样的系统构架下产生的;图2为本专利技术对RAM的分配使用图;图3为本专利技术实施例方法流程具体实施例方式下面结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。为使本专利技术技术方案的优点更加清楚,下面结合附图和实施例对本专利技术做出详细说明。如图3所示,本方法专利技术的实施步骤如下101、设计、实现维护软件。图1为一种飞行软件维护的系统构架图,航天器嵌入式 CPU配备了两个程序区PROMl和PR0M2,分别固化了飞行软件和维护软件。在航天器发射时,运行飞行软件。在发现飞行软件严重错误不能完成在轨任务或用户需求变化需要进行较大调整时,可在地面控制下,切换到维护软件运行。实现本专利技术实施例首先应对图1中所示的维护软件进行合理设计,维护软件运行时,飞行软件不运行,释放了所使用的全部内存空间,内存空间则全部由维护软件控制,内存空间的使用策略对本专利技术是至关重要的。维护软件具体包括以下要素101a、制定上行注入数据包格式,地面测控系统需按照此格式生成上行数据包,维护软件需按照此格式接收来自地面的数据。例如一种上行注入数据包格式如下表权利要求1. ,其特征在于包括下列步骤(1)设计实现维护软件,维护软件与航天器嵌入式飞行软件的关系要求维护软件运行时,飞行软件不运行,此时内存本文档来自技高网
...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:唐自新陶利民翟君武李林
申请(专利权)人:北京空间飞行器总体设计部
类型:发明
国别省市:

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

1
相关领域技术