Search

CN-122018934-A - Global replacement on-orbit programming method and system supporting multiple memories

CN122018934ACN 122018934 ACN122018934 ACN 122018934ACN-122018934-A

Abstract

The invention provides a global replacement on-orbit programming method and system supporting multiple memories, wherein the method comprises the steps of S1, generating a software uploading remote control packet, S2, sending an instruction to clear a cache area where current software receives uploading software, S3, uploading the remote control packet, S4, checking all the uploading remote control packets, S5, writing the uploading software in the cache area into a curable storage device according to configuration conditions, S6, executing FPGA gating operation, selecting and loading a newly written program, and S7, loading the program to the memory for execution by the monitoring software according to FPGA gating signals. The method and the device are simple and convenient to operate, and the on-orbit software is easier and more reliable to change by adopting a mode of managing the pre-stored area and the upper-annotated area separately for the on-satellite codes, isolating a storage device where the pre-stored area program is located, ensuring that the pre-stored area program is not tampered or destroyed.

Inventors

  • ZHANG ZEHAO
  • ZHANG YONGQING
  • XIANG JIE
  • JIANG HAIJIAN
  • TANG LI

Assignees

  • 上海卫星工程研究所

Dates

Publication Date
20260512
Application Date
20260104

Claims (10)

  1. 1. A global replacement on-track programming method supporting multiple memories, comprising the steps of: Step S1, generating a software uploading remote control package according to an executable program bin file of satellite software; Step S2, a buffer area clearing instruction is sent, a buffer area of current stored software is cleared, and the completion of clearing of the buffer area is confirmed through telemetry; step S3, sending the software uploading remote control packet to the cache area, and confirming that uploading is completed through telemetry; S4, checking the uploading software in the cache area, and generating uploading success telemetering after the checking is passed; step S5, a software curing instruction is sent, the checked upper filling software is written into an upper filling area of the appointed curable storage device from the cache area, a writing completion mark is generated after writing is completed, and the curable storage device supports an MRAM and a FLASH memory; S6, generating a storage area selection signal through FPGA gating operation, and pointing the selection signal to the filling area when the writing completion mark is detected; And S7, restarting the hardware, and loading the uploading software from the uploading area to the memory for execution by the monitoring program according to the storage area selection signal generated by the FPGA.
  2. 2. The global replacement on-orbit programming method supporting multiple memories according to claim 1, wherein in step S1, the on-board software bin file is in a binary file format, and the software uploading remote control package encapsulates binary data in the on-board software bin file into a remote control package conforming to a specific format by a package software.
  3. 3. The global replacement on-orbit programming method supporting multiple memories according to claim 1, wherein in step S2, after sending the buffer clear command, the operation of clearing the buffer is performed, the clearing operation is completed in a multi-period time-sharing clearing mode, the clearing progress is represented by area counting and state telemetry, and after the buffer is cleared, a state machine for controlling a uploading process is set to a state allowing uploading remote control packets.
  4. 4. The global replacement on-orbit programming method supporting multiple memories according to claim 1, wherein in the step S3, when the uploading process control state machine is in a state allowing uploading remote control packets, the software uploading remote control packets are received and processed, the received packet count is compared with the packet serial numbers in the currently received software uploading remote control packets, if the received packet count is matched with the packet serial numbers in the currently received software uploading remote control packets, the exclusive or and check values of on-orbit programming program data in the software uploading remote control packets are calculated and compared with the exclusive or and check values in the software uploading remote control packets, when the check is consistent, the on-orbit programming program data are copied to the cache area, and check valid marks are stored at check marks corresponding to the packet serial numbers, if the packet serial numbers are not matched or the check is inconsistent, abnormal telemetry is recorded and downloaded, and when the received packet count is equal to the total number of on-orbit programming packets defined in the software uploading remote control packets, an uploading completion mark is set.
  5. 5. The global replacement on-orbit programming method supporting multiple memories according to claim 1, wherein in step S4, the software for uploading in the cache area is exclusive-or checked, when all the flags in the check flag storage array are valid, the check is determined to pass, the state of the uploading process control state machine is set to a checked state, the software master enable flag is set to disable, and uploading success telemetry is generated after the check is passed.
  6. 6. The global replacement on-orbit programming method supporting multiple memories according to claim 1, wherein in step S5, after a software curing instruction is sent, the checked upper-level software is written into a designated curable storage device from the cache area; When the curable storage device is an MRAM (magnetic random Access memory), data are directly assigned to a destination address, one sector is written in each period, and a writing completion mark is set after all sectors are written in; when the curable storage device is a FLASH memory, a target sector is firstly erased and then an independent writing thread is started, the writing thread is started by waiting for a writing starting signal quantity, writing counting is given after writing of each sector is completed, and a writing completion mark is set after writing of all the sectors is completed.
  7. 7. The global replacement on-orbit programming method supporting multiple memories according to claim 1, wherein in step S5, the curable storage device is divided into four physical areas, three of which are pre-stored areas, storing programs not before on-orbit programming, and one of which is an uploading area, storing uploading software after the software uploading remote control package is reorganized, namely uploading new programs.
  8. 8. The global replacement on-track programming method supporting multiple memories according to claim 7, wherein in step S6, after the write completion flag is set, a hardware strobe signal is configured by the FPGA to direct the selection signal to the upper-injection area.
  9. 9. The global replacement on-orbit programming method supporting multiple memories according to claim 8, wherein in step S7, when the storage area selection signal generated by the FPGA is directed to the pre-stored area, a two-out-of-three fault tolerance operation is performed on the programs in the three pre-stored areas, the program data in the error area is restored, and a unified program is loaded, and when the storage area selection signal is directed to the betting area, the betting software is loaded from the betting area.
  10. 10. A global replacement on-track programming system supporting multiple memories, employing the global replacement on-track programming method supporting multiple memories according to any of claims 1 to 9, comprising: the module M1 generates a software uploading remote control package according to an executable program bin file of the satellite software; The module M2 is used for sending a buffer area clearing instruction, clearing the buffer area of the current stored software and confirming that the clearing of the buffer area is completed through telemetry; the module M3 sends the software uploading remote control packet to the cache area, and the uploading is confirmed to be completed through telemetry; The module M4 is used for checking the uploading software in the cache area, and generating uploading success telemetering after the checking is passed; the module M5 sends a software curing instruction, writes the checked upper-filling software into an upper-filling area of the appointed curable storage device from the cache area, and generates a writing completion mark after writing is completed, wherein the curable storage device supports the MRAM and FLASH memory; A module M6, generating a storage area selection signal through FPGA gating operation, and pointing the selection signal to the filling area when the writing completion mark is detected; and the module M7 is used for executing the restarting of the hardware, and the monitoring program loads the uploading software from the uploading area to the memory for execution according to the storage area selection signal generated by the FPGA.

Description

Global replacement on-orbit programming method and system supporting multiple memories Technical Field The invention relates to the technical field of aerospace, in particular to a global replacement type on-orbit programming method and system supporting multiple memories. Background Under the current continuous development of aerospace technology, tasks borne by satellites are increasingly complex, and the tasks are expanded from early simple communication and remote sensing to multi-task cooperation and high-precision observation, so that higher requirements are put on functions and performances of satellite-borne software. The satellite-borne software is used as embedded software running in a satellite single machine, the scale of the satellite-borne software is continuously enlarged along with the increase of task complexity, and the storage medium is gradually converted from the traditional type to FLASH so as to meet the requirements of larger storage capacity and more stable running. However, the working condition of the satellite software in the ground test stage is different from the actual working condition in the on-orbit, so that the software requirement is very likely to be changed in the on-orbit test process. Under the background, the on-orbit programming software flow is simplified, the version upgrading efficiency in the on-orbit software test can be improved, and the availability and reliability of satellites are further improved. Therefore, the on-orbit programming method capable of writing various media has great economic and social benefits in aerospace engineering practice. The invention patent with the publication number of CN107391189B is found through the search of the patent literature, and an on-orbit programming method of satellite-borne software is disclosed, which comprises the steps of firstly, uploading program patch package data, secondly, checking after receiving, thirdly, storing the patch package in an on-orbit programming area, fourthly, uploading software signature setting, fifthly, modifying backup area data according to the software signature, sixthly, loading monitoring software for feeding dogs and initializing hardware, seventhly, clearing the affiliated sector according to EDAC error addresses, and the like. The patent needs to carry out difference comparison of stored software and new software, and carries out on-orbit programming package uploading on the basis, when the problem occurs in ground test and the new software needs to be updated, the code comparison and uploading are carried out for many times, and the test process is complicated. The invention patent with the publication number of CN107957874B discloses a recoverable resident on-orbit programming method for on-orbit software, which comprises the following steps of building an assessment system platform, after the assessment system platform executes a mature SRAM on-orbit programming process, uploading remote control instructions after on-orbit verification of on-orbit programming information to solidify the on-orbit programming information into an idle area of an EEPROM, after reset occurs, carrying original codes stored in the EEPROM and on-orbit programming information stored in the idle area of the EEPROM into the SRAM, and uploading the remote control instructions on the ground to determine whether to only run the original codes or run programs after on-orbit programming. This patent requires analysis changes to the original stored code, with the possibility of errors. The storage medium related to the two on-orbit programming methods is EEPROM, and the storage capacity is limited. In summary, to solve the above-mentioned problems in the prior art, researching a global replacement on-track programming method and system supporting multiple memories is a critical task to be solved. Disclosure of Invention In view of the drawbacks of the prior art, an object of the present invention is to provide a global replacement on-track programming method and system supporting multiple memories. The invention provides a global replacement type on-orbit programming method supporting various memories, which comprises the following steps: Step S1, generating a software uploading remote control package according to an executable program bin file of satellite software; Step S2, a buffer area clearing instruction is sent, the buffer area of the current stored software is cleared, and the completion of clearing the buffer area is confirmed through telemetry; step S3, a software uploading remote control packet is sent to a cache area, and uploading is confirmed to be completed through telemetry; S4, checking the uploading software in the cache area, and generating uploading success telemetering after the checking is passed; step S5, a software curing instruction is sent, the checked upper-filling software is written into an upper-filling area of the appointed curable storage device from the cache area, a writing compl