一种卫星星载软件的启动方法技术

技术编号:15329220 阅读:155 留言:0更新日期:2017-05-16 12:56
一种卫星星载软件的启动方法,地面压缩软件对星载软件的目标码进行多重无损压缩后存储在可编程只读存储器(PROM)中,星载计算机上电或复位后,启动程序将可编程只读存储器中存储的星载软件压缩数据解压还原至静态随机存储器(SRAM)并运行。本发明专利技术有效提高了PROM的存储效率,实现了在PROM中固化正常的飞行程序和启动程序,节省了冗余备份带来的空间成本和维护成本,极大提高了卫星的安全性,PROM不会被单粒子打翻,无需依赖EEPROM,大大减少了后期在轨维护,增强了卫星星载计算机运行的容错能力。

Method for starting satellite satellite borne software

A startup method of satellite software, ground software to load compression software star target code for multiple lossless compression stored in the programmable read-only memory (PROM), on-board computer power on or reset, start the program will be compressed data decompression to static random memory programmable read only memory in the stars load and run software (SRAM). The invention effectively improves the storage efficiency of the PROM, the curing normal flight procedures and start the program in PROM, save the space cost caused by redundant backup and maintenance costs, greatly improves the safety of the satellite, PROM does not need to rely on the particle sheet over, EEPROM, greatly reducing late on orbit maintenance, enhanced fault tolerance of satellite computer operation.

【技术实现步骤摘要】
一种卫星星载软件的启动方法
本专利技术涉及一种卫星星载软件的启动方法。
技术介绍
空间飞行器中电子器件常受单粒子效应的影响,造成性能退化甚至失效。单粒子翻转(SingleEventUpset,SEU)主要发生在两极和南大西洋异常区,严重影响航天器的安全,是造成卫星单机失效的一个主要原因。星载计算机是卫星上核心的电子设备,目前考虑到调试及固化程序的影响,通用的做法是选用EEPROM(电可擦除只读存储器)作为程序存储器固化正常飞行程序,而PROM(可编程只读存储器)只固化引导程序和应急程序。星载软件目标码存放至EEPROM,星载计算机上电或复位后,星载软件的启动程序(bootloader)从EEPROM中取代码进行三取二诊断后,将EEPROM区的目标码拷贝至SRAM(静态随机存储器)运行。由于空间环境影响,星载计算机EEPROM极易发生单粒子翻转,有可能导致软件启动加载失败,对卫星的整星安全造成危害,而且目前星载软件在星载计算机EEPROM中采用三份冗余备份方式,增加了EEPROM储存空间成本以及冗余诊断维护成本。
技术实现思路
本专利技术提供一种卫星星载软件的启动方法,有效提高了PROM的存储效率,实现了在PROM中固化正常的飞行程序和启动程序,节省了冗余备份带来的空间成本和维护成本,极大提高了卫星的安全性,PROM不会被单粒子打翻,无需依赖EEPROM,大大减少了后期在轨维护,增强了卫星星载计算机运行的容错能力。为了达到上述目的,本专利技术提供一种卫星星载软件的启动方法,地面压缩软件对星载软件的目标码进行多重无损压缩后存储在可编程只读存储器中,星载计算机上电或复位后,启动程序将可编程只读存储器中存储的星载软件压缩数据解压还原至静态随机存储器并运行。所述的对星载软件的目标码进行多重无损压缩的方法包含以下步骤:步骤S1、一级压缩:地面压缩软件将星载软件目标码文件分段压缩生成txt文本文件;步骤S2、二级压缩:地面压缩软件将txt文本文件进行格式转换压缩生成二进制数据文件;步骤S3、三级压缩:地面压缩软件采用LZW压缩算法对二进制数据文件进行压缩;步骤S4、烧写器将最终获得的星载软件压缩数据烧写至可编程只读存储器的多重压缩区。所述的将星载软件压缩数据解压还原并运行的方法包含以下步骤:步骤S1、解压还原:启动程序读取可编程只读存储器中的星载软件压缩数据,采用LZW解压算法对星载软件压缩数据中的三级压缩文件进行解压还原,将还原后的数据拷贝至对应的静态随机存储器地址;步骤S2、运行程序:启动程序跳转至星载软件的首地址运行软件;步骤S3、状态监测:采用数据采集及遥测终端软件对星上软件运行状态进行数据采集与显示,对运行状态是否正确进行判断。本专利技术的优点和有益效果是:1、安全性高:PROM只需存储一份经过多重压缩后的目标码,实现了在PROM中固化正常的飞行程序和引导程序,极大提高了卫星的安全性。2、节省成本:PROM价格昂贵,在不增加硬件成本的基础上,对代码进行多重压缩后,大大减少了存储空间,有效提高了存储效率,同时减少了EEPROM储存空间成本,节省了冗余备份带来的空间成本和维护成本,提高了经济效益。3、功能优化:星载软件仅需要正常的飞行程序和启动程序,无需应急程序,大大减少了软件的工作量。4、可靠性高:无需依赖EEPROM,PROM不会被单粒子打翻,大大减少了后期在轨维护,增强了卫星星载计算机运行的容错能力,具有较高的可靠性。附图说明图1是本专利技术的功能原理框图。图2是本专利技术的流程图。图3是多重无损压缩方法的流程图。图4是将压缩后的星载软件目标码解压还原并运行的方法流程图。图5是本专利技术的一级压缩中索引区和数据区格式说明;图6是本专利技术的二级压缩流程图;图7是本专利技术的三级压缩中LZW算法流程图。具体实施方式以下根据图1~图7,具体说明本专利技术的较佳实施例。如图1和图2所示,本专利技术提供一种卫星星载软件的启动方法,地面压缩软件对星载软件的目标码进行多重无损压缩后存储在可编程只读存储器(PROM)中,星载计算机上电或复位后,启动程序(bootloader)将可编程只读存储器中存储的星载软件压缩数据解压还原至静态随机存储器(SRAM)并运行。如图3所示,所述的对星载软件的目标码进行多重无损压缩的方法包含以下步骤:步骤S1、一级压缩:地面压缩软件将星载软件目标码文件分段压缩生成txt文本文件;星载软件目标码文件采用标准格式的IntelHex文件(ASCII文本文件),地面压缩软件解析星载软件编译连接后生成的IntelHex文件,根据Hex文件格式,按照地址和长度进行分段压缩,最终生成文本文件A.txt;步骤S2、二级压缩:地面压缩软件将txt文本文件进行格式转换压缩生成二进制数据文件;将txt文本文件A.txt进行格式转换压缩,生成二进制数据文件A.dat;步骤S3、三级压缩:地面压缩软件采用LZW压缩算法(串表压缩算法)对二进制数据文件进行压缩;将二进制数据文件A.dat转换成LZW_A.dat文件;步骤S4、烧写器将最终获得的星载软件压缩数据烧写至可编程只读存储器(PROM)的多重压缩区。地面压缩软件通过多重压缩技术,改变了原星载软件目标码的大小,有效提高了存储效率,PROM只需存储一份经过多重压缩后的目标码,实现了在PROM中固化正常的飞行程序和启动程序,节省了冗余备份带来的空间成本和维护成本,极大提高了卫星的安全性。如图4所示,所述的将星载软件压缩数据解压还原并运行的方法包含以下步骤:步骤S1、解压还原:启动程序(bootloader)读取可编程只读存储器(PROM)中的星载软件压缩数据,采用LZW解压算法对星载软件压缩数据中的三级压缩文件进行解压还原,将还原后的数据拷贝至对应的静态随机存储器(SRAM)地址;步骤S2、运行程序:启动程序(bootloader)跳转至星载软件的首地址运行软件;步骤S3、状态监测:采用数据采集及遥测终端软件对星上软件运行状态进行数据采集与显示,对运行状态是否正确进行判断。可编程只读存储器(PROM)不会被单粒子打翻,无需依赖EEPROM,大大减少了后期在轨维护,增强了卫星星载计算机运行的容错能力。如图5所示,是本专利技术的一级压缩中索引区和数据区格式说明。星载软件目标码文件采用标准格式的Hex文件,IntelHex文件是记录文本行的ASCII文件,由一条或多条记录组成,每条记录都由一个冒号“:”开头,格式如下::CCAAAARR(DD)ZZ其中,CC:本条记录字节长度;AAAA:本条记录中的数据在存储区中的起始地址;RR:本条记录类型(00:数据记录01:结束记录02:扩展段地址记录03:开始段地址记录04:扩展线性地址记录05:开始线性地址记录);DD:信息或数据域(根据记录类型含有0个或偶数个16进制码的信息或数据);ZZ:校验和(CC~(DD)单字节累加和的低8位码)。一级压缩为解析目标码A.Hex文件,生成中间文件A.txt的过程。一级压缩过程即为按照图5定义的索引区和数据区格式对目标码进行一一解析。A.txt文件分为两部分:索引区和数据区。其中索引区为可变长度,根据索引表数据总块数N的值确定。如图6所示,是二级压缩流程图。文本文件A.txt为ASCII文件,如果用烧写器对该文件进行烧写,信本文档来自技高网...
一种卫星星载软件的启动方法

【技术保护点】
一种卫星星载软件的启动方法,其特征在于,地面压缩软件对星载软件的目标码进行多重无损压缩后存储在可编程只读存储器中,星载计算机上电或复位后,启动程序将可编程只读存储器中存储的星载软件压缩数据解压还原至静态随机存储器并运行。

【技术特征摘要】
1.一种卫星星载软件的启动方法,其特征在于,地面压缩软件对星载软件的目标码进行多重无损压缩后存储在可编程只读存储器中,星载计算机上电或复位后,启动程序将可编程只读存储器中存储的星载软件压缩数据解压还原至静态随机存储器并运行。2.如权利要求1所述的卫星星载软件的启动方法,其特征在于,所述的对星载软件的目标码进行多重无损压缩的方法包含以下步骤:步骤S1、一级压缩:地面压缩软件将星载软件目标码文件分段压缩生成txt文本文件;步骤S2、二级压缩:地面压缩软件将txt文本文件进行格式转换压缩生成二进制数据文件;步骤S3、三级压缩:地面压缩软件采用LZW压缩算法对二进制数...

【专利技术属性】
技术研发人员:钟金凤贾艳胜郭思岩高四宏陈撼
申请(专利权)人:上海航天控制技术研究所
类型:发明
国别省市:上海,31

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

1