CN102880494B - A kind of local code update method for microsatellite system and system thereof - Google Patents

A kind of local code update method for microsatellite system and system thereof Download PDF

Info

Publication number
CN102880494B
CN102880494B CN201210362798.5A CN201210362798A CN102880494B CN 102880494 B CN102880494 B CN 102880494B CN 201210362798 A CN201210362798 A CN 201210362798A CN 102880494 B CN102880494 B CN 102880494B
Authority
CN
China
Prior art keywords
module
call list
executable file
microsatellite
ram
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
CN201210362798.5A
Other languages
Chinese (zh)
Other versions
CN102880494A (en
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.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
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 Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN201210362798.5A priority Critical patent/CN102880494B/en
Publication of CN102880494A publication Critical patent/CN102880494A/en
Application granted granted Critical
Publication of CN102880494B publication Critical patent/CN102880494B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

The invention discloses a kind of local code update method for microsatellite system, comprising: (1) builds module call list; (2) malfunctioning module ID is obtained; (3) corresponding module is found out according to ID from this locality, and to its compiling; (4) executable file compiling and obtain is uploaded; (5) executable file is loaded in RAM; (6) update module call list; The invention also discloses the renewal system realizing said method.The present invention adopts the mode of local updating by building module call list, effectively solve the problem that prior art renewal speed is slow, owing to greatly reducing the size of upload file, therefore greatly improve the utilization factor of link circuit resource between star ground, all the other normal program operation can be ensured simultaneously.

Description

A kind of local code update method for microsatellite system and system thereof
Technical field
The invention belongs to field of computer technology, be specifically related to a kind of local code update method for microsatellite system and system thereof.
Background technology
Due to the rugged surroundings of the outer space, memory device in microsatellite system likely can be damaged, thus subprogram can be caused normally to run, in this case, just likely cause whole satellite normally to run if do not upgrade these programs, serious whole the satellite that may cause is scrapped.
It is satellite in orbit in process that software upgrades in-orbit, after finding task software error or leak, replaces the remedial measures of prototype version with the software redaction of evading it.Therefore software upgrades one of objective requirement being not only satellite system in-orbit, it is also the inevitable evolution tendency of microsatellite composite elctronics technical.
At present, the object granularity that the spaceborne computer software of lot of domestic and international satellite model upgrades in-orbit is comparatively thick, as overall in software or subsystem software configuration item.In the renewal of current satellite system code, need the bootloader program system image that programming is whole again by means of system, power on restart routine, thus complete the renewal of a code.The advantage of this way is: first, and renewal rewards theory is simple.This way does not need on the basis of original task software, introduce the complicated program that dynamically updates support and upgrades in-orbit; Secondly, the overhead of the process for system of renewal is little.
Although this method realizes simple, be easy to operation, this method has following shortcoming:
First, renewal speed is slow, and success ratio is low; Carry out software to upgrade in-orbit must inject the overall or whole configuration item of software on star at every turn.Especially when the code effectively upgraded only accounts for the sub-fraction of update software or configuration item, but still need to upgrade whole application programs or configuration item, low in satellite-ground link communication speed, when the bit error rate is higher, the speed of renewal is slow, and success ratio is low.
Secondly, the resource of link between star ground is wasted; Because the effective velocity communicated between star ground is lower, the limited communications resources between star ground, when the ratio that effectively more fresh code accounts for update software or configuration item is minimum, serious waste and take star ground resource, has influence on other modules to the use that communicates of star ground.
Again, the interruption causing program to be run is upgraded; Because code update is by means of bootloader program, need by programming again and again power on to restart system, system cloud gray model inevitably needs to interrupt.
Summary of the invention
For the above-mentioned technological deficiency existing for prior art, the invention provides a kind of local code update method for microsatellite system, all the other normal program operation can be ensured at no point in the update process, and renewal speed is fast.
For a local code update method for microsatellite system, comprise following process:
(1) in microsatellite system, build module call list, described module call list stores the regional address of each module in Installed System Memory;
(2) obtain the ID of malfunctioning module in microsatellite system, find out the module corresponding with this ID from this locality, and the code compilation of this module is become executable file;
(3) described executable file is uploaded in microsatellite system; According to the load address information in executable file, executable file is loaded on corresponding clear area in Installed System Memory;
(4) according to the regional address of executable file in internal memory, the regional address of malfunctioning module in update module call list.
In described step (2), the process of executable file is become by the code compilation of module to be: first, new definition one piece of region of memory in the CMD file in the system source code engineering catalogue of this locality; Then, according to the address of new definition region of memory, the load address information of update module; Finally, the module compiles after renewal is become executable file.
Preferably, in described step (4), after module call list has upgraded, described module call list and executable file have been saved in the flash storage of system; Under can ensureing that microsatellite system surprisingly restarts situation, still can perform the module after renewal.
Local code for microsatellite system upgrades a system, comprising:
Call list construction unit, for according to the regional address of each module in microsatellite Installed System Memory, builds module call list;
Receiving element, for receiving the ID obtaining malfunctioning module in microsatellite system;
Searching compilation unit, for finding out the module corresponding with described ID from this locality, and the code compilation of this module being become executable file;
Uploading unit, for being uploaded in microsatellite system by described executable file;
Loading unit, for being loaded on corresponding clear area in microsatellite Installed System Memory according to the load address information in executable file by executable file;
Updating block, for according to the regional address of executable file in internal memory, the regional address of malfunctioning module in the module call list described in renewal.
The present invention adopts the mode of local updating by building module call list, effectively solve the problem that prior art renewal speed is slow, owing to greatly reducing the size of upload file, therefore greatly improve the utilization factor of link circuit resource between star ground, all the other normal program operation can be ensured simultaneously.
Accompanying drawing explanation
Fig. 1 is the structural representation of microsatellite system.
Fig. 2 is the mapping schematic diagram in module call list and Installed System Memory district.
Fig. 3 is the mapping schematic diagram of module stores table and memory field and memory block.
Fig. 4 is the flow chart of steps of update method of the present invention.
Embodiment
In order to more specifically describe the present invention, below in conjunction with the drawings and the specific embodiments, technical scheme of the present invention is described in detail.
The present embodiment introduces the application of the inventive method by introducing a general microsatellite system example, Fig. 1 is a structural framing schematic diagram based on the microsatellite system of processor, processor by bus coupling to random access memory ram, nonvolatile memory NANDFLASH.Input and output I/O equipment also can be coupled to bus, and I/O equipment comprises keyboard, mouse, universal serial bus, display etc.
In whole microsatellite system, RAM is used for the code command that storage of processor run duration performs; NANDFLASH is used for code and the user data of storage system.In present embodiment, in NANDFLASH, comprise module call list, system run time version, the code of malfunctioning module, module stores table and other more fresh codes.
For whole system, the loading of malfunctioning module upgrades, and is by upgrading corresponding module call list, module stores table, load-on module codes implement.Module call list, module stores table and random access memory, the mapping relations of nonvolatile memory are the bases realizing upgrading.
The mapping relations in NANDFLASH are as shown in Figure 3 at RAM and module for module, module.The start address that module stores table contains module I D, module need be loaded on RAM, the address of module stores at NANDFLASH and the size of module.
In present embodiment, microsatellite system will realize local code renewal need apply a kind of local code renewal system, and it comprises call list construction unit, receiving element, searches compilation unit, uploading unit, loading unit and updating block; Wherein, call list construction unit, loading unit and updating block all pass through programming realization in microsatellite system, and receiving element and uploading unit can be realized by general wireless telecommunications system.
As shown in Figure 4, the mapping relations of foundation module and RAM, first present embodiment utilizes call list construction unit in microsatellite system, construct a kind of module call list, the mapping relations in module call list and Installed System Memory district as shown in Figure 2, it comprises the entry address, memory field that module is called, and system performs corresponding block code by module call list.Module call list after being built, needs to be stored in NANDFLASH, and before system performs update module code, load-on module call list in RAM, and after module call list is modified, upgrades the module call list of system and is stored in NANDFLASH.
After having built module call list, cause the block code in this region to be lost if the RAM block region of microsatellite system suffers damage suddenly, then ground can utilize the ID obtaining malfunctioning module in receiving element microsatellite system; Then, utilization is searched compilation unit and is found out the module corresponding with this ID from this locality, new definition one piece of region of memory in the CMD file in the system source code engineering catalogue of this locality, according to the address of new definition region of memory, and the load address information of update module; Finally, executable file is become to be uploaded in microsatellite system by uploading unit the module compiles after renewal.
After microsatellite system acceptance to executable file, first, according to the load address Information Pull loading unit in executable file, executable file is loaded on corresponding clear area in system RAM; Then, according to the regional address of executable file in RAM, utilize the regional address of malfunctioning module in updating block update module call list; Specific operation process is as follows:
(1) from NANDFLASH load-on module call list, module stores table and block code and other system run time version to RAM;
(2) start-up loading unit, is loaded into corresponding clear area in RAM according to the load address information in executable file by the executable file received.
(3) start updating block, according to the regional address amendment malfunctioning module module inlet address in module call list of executable file in RAM, make the executable file in the module call entry sensing RAM of the module call list of renewal.
(4) be saved in NANDFLASH by executable file, so that system is after power-down rebooting, the block code after renewal can load automatically, upgrades the module stores table in RAM simultaneously.
(5) preserve the module call list after upgrading in NANDFLASH, make system after power-down rebooting or module call list damage, module call list can be reloaded.
(6) preserve amended module stores table in NANDFLASH, make system after power-down rebooting or module stores table damage, module stores table can be reloaded.
(7) upgraded.
Effectively transmit under data are about the condition of 70Kbyte/min at satellite-ground link, adopt present embodiment module local update method and traditional integral update method, upgrade system software size and be all about 700Kb, the size of one of them malfunctioning module is 10Kb, and the more new data of two kinds of methods is as shown in table 1:
Table 1
As can be seen from the correlation data of table 1, adopt local updating method for the renewal of local module being less than overall software, relative to traditional update method, there is the lifting of significant speed and efficiency.
Above example is to object of the present invention; technical scheme has carried out further detailed description; be understood that; the above is not in order to limit the present invention; within the spirit and principles in the present invention every, any amendment made, equivalent replacement; improve, all should be included within protection scope of the present invention.

Claims (1)

1. the local code for microsatellite system upgrades a system, it is characterized in that, comprising:
Call list construction unit, for according to the regional address of each module in microsatellite Installed System Memory, builds module call list;
Receiving element, for receiving the ID obtaining malfunctioning module in microsatellite system;
Searching compilation unit, for finding out the module corresponding with described ID from this locality, and the code compilation of this module being become executable file;
Uploading unit, for being uploaded in microsatellite system by described executable file;
Loading unit, for being loaded on corresponding clear area in microsatellite Installed System Memory according to the load address information in executable file by executable file;
Updating block, for according to the regional address of executable file in internal memory, the regional address of malfunctioning module in the module call list described in renewal;
Described call list construction unit constructs described module call list in microsatellite system, and module call list comprises the entry address, memory field that module is called, and microsatellite system performs corresponding block code by module call list; Module call list after being built, need to be stored in NANDFLASH, before microsatellite system performs update module code, load-on module call list is in RAM, and after module call list is modified, update module call list is also stored in NANDFLASH;
After having built module call list, cause the block code in this region to be lost if the RAM block region of microsatellite system suffers damage suddenly, then ground utilizes the ID obtaining malfunctioning module in receiving element microsatellite system; Then, utilization is searched compilation unit and is found out the module corresponding with this ID from this locality, new definition one piece of region of memory in the CMD file in the system source code engineering catalogue of this locality, according to the address of new definition region of memory, and the load address information of update module; Finally, executable file is become to be uploaded in microsatellite system by uploading unit the module compiles after renewal;
After microsatellite system acceptance to executable file, first, according to the load address Information Pull loading unit in executable file, executable file is loaded on corresponding clear area in system RAM; Then, according to the regional address of executable file in RAM, utilize the regional address of malfunctioning module in updating block update module call list, specific operation process is as follows:
(1) from NANDFLASH load-on module call list, module stores table and block code and other system run time version to RAM;
(2) start-up loading unit, is loaded into corresponding clear area in RAM according to the load address information in executable file by the executable file received;
(3) start updating block, according to the regional address amendment malfunctioning module module inlet address in module call list of executable file in RAM, make the executable file in the module call entry sensing RAM of the module call list of renewal;
(4) be saved in NANDFLASH by executable file, so that system is after power-down rebooting, the block code after renewal can load automatically, upgrades the module stores table in RAM simultaneously;
(5) preserve the module call list after upgrading in NANDFLASH, make system after power-down rebooting or module call list damage, module call list can be reloaded;
(6) preserve amended module stores table in NANDFLASH, make system after power-down rebooting or module stores table damage, module stores table can be reloaded;
(7) upgraded.
CN201210362798.5A 2012-09-26 2012-09-26 A kind of local code update method for microsatellite system and system thereof Active CN102880494B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210362798.5A CN102880494B (en) 2012-09-26 2012-09-26 A kind of local code update method for microsatellite system and system thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210362798.5A CN102880494B (en) 2012-09-26 2012-09-26 A kind of local code update method for microsatellite system and system thereof

Publications (2)

Publication Number Publication Date
CN102880494A CN102880494A (en) 2013-01-16
CN102880494B true CN102880494B (en) 2016-02-10

Family

ID=47481833

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210362798.5A Active CN102880494B (en) 2012-09-26 2012-09-26 A kind of local code update method for microsatellite system and system thereof

Country Status (1)

Country Link
CN (1) CN102880494B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107562504A (en) * 2017-09-11 2018-01-09 哈尔滨工程大学 A kind of serial port implementing method of DSP program segmentings loading

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104536727B (en) * 2014-11-26 2018-08-10 上海新跃仪表厂 The in-orbit maintaining method of star sensor software
CN104820586B (en) * 2015-04-09 2018-05-22 北京空间机电研究所 A kind of in-orbit maintaining method of spacecraft embedded software
CN106293784A (en) * 2015-05-19 2017-01-04 深圳市阿乐卡科技有限公司 A kind of method of BIN file block upgrading
CN107273115A (en) * 2017-05-17 2017-10-20 哈尔滨工业大学 Satellite rapid build system and method based on standardized module
CN108549784B (en) * 2018-04-27 2021-10-08 北京航空航天大学 Artificial intelligent writing satellite measurement and control and force-thermal-electric coupling simulation program method and device
CN111290773B (en) * 2020-03-12 2024-01-19 深圳Tcl新技术有限公司 System upgrade method, device and readable storage medium
CN113110853B (en) * 2021-03-15 2023-05-30 杭州康吉森自动化科技有限公司 Configuration data online downloading method and device and electronic equipment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1529847A (en) * 2001-07-16 2004-09-15 任宇清 Embedded software update system
CN102508657A (en) * 2011-10-18 2012-06-20 北京空间飞行器总体设计部 Method for maintaining embedded software module of spacecraft

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1529847A (en) * 2001-07-16 2004-09-15 任宇清 Embedded software update system
CN102508657A (en) * 2011-10-18 2012-06-20 北京空间飞行器总体设计部 Method for maintaining embedded software module of spacecraft

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
cient Code Update Scheme for DSP Applications in Mobile Embedded Systems".《ACM》.2010,全文. *
Weijia Li,Youtao Zhang."An Ef&#64257 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107562504A (en) * 2017-09-11 2018-01-09 哈尔滨工程大学 A kind of serial port implementing method of DSP program segmentings loading

Also Published As

Publication number Publication date
CN102880494A (en) 2013-01-16

Similar Documents

Publication Publication Date Title
CN102880494B (en) A kind of local code update method for microsatellite system and system thereof
CN105468362A (en) Application deployment method and cloud computing system
CN102609281B (en) Distributed software patch update method and system
CN104102506A (en) ARM (Advanced RISC Machine) platform based Android startup acceleration method
CN102779056B (en) Remote hardware method for updating program and system
CN103164244A (en) Firmware system long-distance updating methods based on unified extensible firmware interface
CN103425548A (en) Method and system for operating system cloud backup and restore
CN102567054B (en) Control method of two-tower amplifier and corresponding device
CN104732151A (en) Remote safety batch BIOS updating method under Linux system
CN104503796A (en) IAP (Internet Access Provider) based configurable full-network remote node firmware upgrading method
CN103777979A (en) Method and device for recovering BIOD through cloud end
CN104991806A (en) Remote firmware upgrading system and method for single-chip microcomputer program
CN113407208A (en) Edge device function online configuration method based on remote deployment
CN104503922A (en) Method for loading Windows CE system based on uboot guidance
CN103853557A (en) Method for starting WinCE by utilizing Uboot network
CN104318091A (en) Moonlet ground testing method based on virtualization computer system
CN104346342A (en) Method and apparatus for loading Flash plug-in
CN101656975A (en) Wireless sensor network node on-site wireless program updating device and updating method thereof
CN109710297B (en) Method for upgrading and backing equipment wholly or in modules
CN102664952A (en) Method for managing and monitoring embedded equipment cluster
CN102880479B (en) A kind of method of remotely modifying BIOS property parameters and device
CN103729219A (en) Method and system for framing UEFI BIOS (unified extensible firmware interface basic input/output system)
WO2021018208A1 (en) Firmware upgrade method and apparatus, electronic device, and storage medium
CN106201605A (en) FPGA start-up loading FLASH upgrade-system based on FPGA and PowerPC and method
CN101349973A (en) Method for dynamically loading embedded type Java processor microcode instruction set

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant