A Version-Controlled Avionics Data Dual-Address Backup and Replacement Method and System

CN122570249APending Publication Date: 2026-08-14XIAN AVIATION COMPUTING TECH RES INST OF AVIATION IND CORP OF CHINA
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-06-30
Publication Date
2026-08-14

AI Technical Summary

Technical Problem

[0004]然而,在实际应用中,上述方案存在明显的技术缺陷

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122570249A_ABST
    Figure CN122570249A_ABST
Patent Text Reader

Abstract

This invention relates to the field of avionics data management, and more particularly to a method and system for dual-address backup and replacement of avionics data based on version control. The method includes: acquiring an avionics data packet to be loaded, the avionics data packet including a header and a target code; obtaining the primary address and secondary address corresponding to the avionics data packet to be loaded from a preset avionics equipment configuration file according to a data identifier ID; performing validity checks on the avionics data packets already stored in the primary and secondary addresses respectively; determining the target address to be written to the avionics data packet to be loaded based on the validity check results, and writing the avionics data packet to be loaded to the determined target address. This invention, through intelligent judgment and dynamic replacement based on version information, enables the avionics system to always maintain two versions of available data, enhancing system reliability and improving loading efficiency; reducing full-scale mirror redundancy and improving storage utilization; supporting fast access to avionics data via index tables and autonomous recovery, thus improving system security.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of avionics data management and relates to a method and system for backup and replacement of avionics data with dual addresses based on version control. Background Technology

[0002] Avionics systems are a core component of modern aircraft, undertaking critical tasks such as flight control, navigation, communication, and surveillance. With the widespread application of integrated modular avionics architectures, the types of data that avionics systems need to manage are becoming increasingly complex, including flight mission databases, avionics equipment configuration files, and resident software. This data needs to be updated via onboard or offboard data loading systems during ground maintenance or in-flight mission changes to ensure that the avionics equipment is always operating with the correct configuration and software version.

[0003] Existing avionics systems typically use a single storage address approach when updating or loading data, meaning new data packets are directly overwritten to a designated storage address on the target device. While some systems support redundant backups, most use a full mirror backup method, where a complete copy of the data is stored in two independent storage areas, and the same content is written to both storage areas simultaneously or sequentially during updates. This approach improves data availability by increasing the number of storage copies.

[0004] However, in practical applications, the above solutions have significant technical drawbacks. With the single storage address method, if anomalies such as link jitter, power outages, or verification failures occur during the write process, the data in the storage area will be incomplete or corrupted, and the system will be unable to start or run correctly due to the lack of another usable complete version. While the full mirror backup method can solve the single point of failure problem, its redundancy granularity is unreasonable, requiring double the non-volatile storage space for each data packet. This not only results in low storage utilization but also requires complete erase / write operations on both addresses for each update, leading to long update times and significant wear on the write / erase lifespan of non-volatile storage media such as Flash. Furthermore, both of these methods lack governance of data packet version semantics, failing to perform differentiated updates based on version information and automatically select the target write address, resulting in low operational efficiency for data loading. Therefore, there is an urgent need for an avionics data management method that can balance reliability, storage efficiency, and intelligent operation and maintenance. Summary of the Invention

[0005] To achieve the above objectives, the present invention adopts the following technical solution: In a first aspect, the present invention provides a method for dual-address backup and replacement of avionics data based on version control, including: Obtain the avionics data packet to be loaded. The avionics data packet includes a header and a target code. The header includes a data identifier ID, a version number, and a first cyclic redundancy check (CR) code used to verify the header. The target code contains a second CR code used to verify the content of the target code. Based on the data identifier ID, obtain the primary and secondary addresses corresponding to the avionics data packets to be loaded from the preset avionics equipment configuration file; The validity of the avionics data packets stored in the primary address and secondary address are verified respectively. Based on the validity verification results, the target address for writing the avionics data packet to be loaded is determined, and the avionics data packet to be loaded is written to the determined target address.

[0006] Furthermore, determining the target address to be written to the avionics data packet to be loaded based on the validity verification result includes: If one of the avionics data packets stored in the primary address and the secondary address is valid while the other is invalid, the invalid address is selected as the target address; if both are invalid, either one is arbitrarily selected as the target address. If the avionics data packets already stored in the primary address and the secondary address are both valid, then compare the version number of the avionics data packet to be loaded with the version numbers of the two stored avionics data packets; When the version number to be loaded is higher than the highest version number of the two addresses, the address where the older version is stored is selected as the target address. If the version number to be loaded is lower than or equal to the lowest version number of the two addresses, write is refused and a loading exception is reported.

[0007] Furthermore, the validity verification of the avionics data packets already stored in the primary address and the secondary address includes: Read the header of the avionics data packet stored at that address and perform header verification using the first cyclic redundancy check code; If the header verification fails, the avionics data packet stored at that address is deemed invalid; if the header verification passes, the header is parsed to obtain the size of the target code, and the second cyclic redundancy check code is used to perform integrity verification on the target code; if the target code integrity verification fails, the avionics data packet stored at that address is deemed invalid; if it passes, it is deemed valid.

[0008] Furthermore, after writing the avionics data packet to be loaded to the determined target address, the process also includes: Update the index table, which records the version number of the avionics data packet corresponding to each data identifier ID and its current valid storage target address, so that the system can access it directly when it is powered on. The index table includes an index table identifier, an index table size, the number of avionics data packets, and the data identifier ID, size, version number, and target address of each avionics data packet.

[0009] Furthermore, it also includes abnormal handling procedures when the system powers on: Read the index table and perform an integrity check; If the integrity check passes, the avionics data packet is accessed directly based on the target address in the index table; If the integrity verification fails, an autonomous recovery process will be executed based on the avionics configuration file.

[0010] Furthermore, the autonomous recovery process includes: Obtain the primary and secondary addresses corresponding to the target avionics data packet according to the avionics equipment configuration file; The validity of the avionics data packets stored in the primary address and the secondary address are verified respectively. If only one side is valid, access the avionics data packet at the valid address; If both are valid, compare the version numbers and access the avionics data packet at the address with the higher version number; If both fail, a system error is reported.

[0011] Furthermore, the fields of the avionics configuration file include configuration file identifier, configuration file size, number of avionics data packets, and data identifier ID, size, and assigned primary and secondary addresses for each avionics data packet.

[0012] Secondly, the present invention provides a version-controlled dual-address backup and replacement system for avionics data, comprising: The data acquisition module is used to acquire the avionics data packet to be loaded. The avionics data packet includes a header and a target code. The header includes a data identifier ID, a version number, and a first cyclic redundancy check code used to verify the header. The target code contains a second cyclic redundancy check code used to verify the content of the target code. The address acquisition module is used to obtain the primary address and secondary address corresponding to the avionics data packet to be loaded from the preset avionics equipment configuration file according to the data identifier ID; The verification module is used to verify the validity of the avionics data packets stored in the main address and the secondary address, respectively. The confirmation output module is used to determine the target address to be written to the avionics data packet to be loaded based on the validity verification result, and then write the avionics data packet to be loaded to the determined target address.

[0013] Thirdly, the present invention provides a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of the version-controlled dual-address backup and replacement method for avionics data.

[0014] Fourthly, the present invention provides a computer-readable storage medium storing a computer program, wherein the computer program, when executed by a processor, implements the steps of the version-controlled dual-address backup and replacement method for avionics data.

[0015] Compared with the prior art, the present invention has the following technical effects: This invention acquires structured avionics data packets containing a header and a target code. The header carries a data identifier ID and a version number, while the target code carries an independent checksum. This enables each data packet to possess self-descriptive capabilities and independently verifiable integrity, providing a standardized data foundation for subsequent version identification and dual-address management. By retrieving the corresponding primary and secondary addresses from a pre-defined avionics equipment configuration file based on the data identifier ID, dual physical address mapping management for each avionics data packet can be achieved. This ensures that the system always maintains a backup address during updates, avoiding the problem of system unavailability due to a single storage address update failure and enhancing the reliability of data loading.

[0016] By verifying the validity of the avionics data packets already stored in the primary and secondary addresses, the availability status of existing data on both addresses can be accurately identified before new data is written, providing a basis for subsequent intelligent decision-making and avoiding erroneous writing to valid addresses.

[0017] By determining the target address for writing avionics data packets to be loaded based on validity verification results, a dynamic replacement strategy based on the actual data state can be implemented. This ensures that write operations always prioritize overwriting invalid or older versions of addresses, avoiding unnecessary duplicate writes during full image backups and improving data loading efficiency and storage space utilization. This method can be widely applied to data loading and maintenance scenarios in civil aviation, general aviation, and military aviation platforms, effectively enhancing the reliability and security of avionics systems during data updates. Attached Figure Description

[0018] Figure 1 This is an overall architecture diagram of an embodiment of the present invention.

[0019] Figure 2 This is a flowchart illustrating the validity verification process of avionics data packets according to an embodiment of the present invention.

[0020] Figure 3 This is a diagram of the avionics data packet structure according to an embodiment of the present invention. Detailed Implementation

[0021] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.

[0022] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0023] The present invention will now be described in further detail with reference to the accompanying drawings: See Figure 1 In one embodiment of the present invention, a method for dual-address backup and replacement of avionics data based on version control is provided to solve the problems of low data reliability and poor storage utilization caused by single-address write interruption or full mirror redundancy during the data update process of avionics system.

[0024] Specifically, the version-controlled dual-address backup and replacement method for avionics data of this invention includes the following steps: S1: Obtain the avionics data packet to be loaded. The avionics data packet includes a header and a target code. The header includes a data identifier ID, a version number, and a first cyclic redundancy check (CRC) code used to verify the header. The target code contains a second CRC code used to verify the content of the target code.

[0025] Avionics data packets consist of a header and a target code. This structured design enables the data packets to be self-describing, allowing them to obtain their identity, version, and integrity verification criteria without relying on external information. The header contains a data identifier (ID) that uniquely identifies the type of the avionics data packet or the avionics module to which it belongs, enabling the system to accurately distinguish and locate different types of data packets. The version number identifies the release version of the avionics data packet and is crucial for version control and intelligent replacement decisions; it is typically represented by an incrementing number or a specific encoding. The first cyclic redundancy check (CRC) is a checksum specifically calculated for the header information, used to quickly verify the integrity of the header data before loading, preventing errors in header parameter parsing due to bit flips during transmission or storage, which could lead to subsequent processing anomalies. The target code is the part of the avionics data packet that carries the actual business data; it can be a database file, avionics configuration file, or a binary executable file of the resident software, etc.

[0026] The second cyclic redundancy check (CRC) code is specifically calculated and generated for the target code content. It is used to verify the integrity and correctness of the target code data, ensuring that the data loaded into the avionics system is not corrupted during transmission. For example, in the airborne data loading system of a civil aircraft, the ground maintenance terminal sends the flight mission database file to be updated to the airborne avionics system via the aviation data bus. This file, after being structured and encapsulated, forms an avionics data packet. Its header records the database ID and version number, and both the header and the target code carry independent CRC codes.

[0027] S2: Based on the data identifier ID, obtain the primary and secondary addresses corresponding to the avionics data packet to be loaded from the preset avionics equipment configuration file.

[0028] The avionics configuration file is a binary-formatted system-level configuration file pre-stored at designated addresses in the avionics equipment. Its core function is to record the address mapping relationships of all avionics data packets in non-volatile memory such as Flash memory, essentially acting as a data packet storage directory. Each avionics data packet is allocated two independent physical storage locations in this configuration file, called the primary address and the secondary address. The primary and secondary addresses are two different storage areas on the physical storage medium for the same avionics data packet; they have the same capacity but are independent in address space. By maintaining the primary and secondary address mapping relationship for each avionics data packet, the system achieves dual-path data backup at the physical storage level. Even if one address experiences physical or data corruption, it is still possible to recover valid data from the other address. The data identifier ID serves as a query index in this step. The system extracts the ID by parsing the header information of the avionics data packet to be loaded, then traverses the record entries in the avionics configuration file to match the primary and secondary addresses corresponding to the same ID. This address is represented in numerical form as a physical or logical address, for direct use in subsequent data read and write operations.

[0029] S3: Perform validity checks on the avionics data packets already stored in the primary and secondary addresses respectively.

[0030] This step assesses the availability of existing data at both addresses before deciding to write new data, providing a basis for subsequent target address decisions. The system needs to read the avionics data packets stored in the primary and secondary addresses separately, and independently perform a validity verification process for the data at each address. The purpose of validity verification is to determine whether the avionics data packet stored at that address is complete and usable, or whether it is corrupted or invalid. This pre-verification mechanism before writing avoids the system blindly overwriting valid data and is a prerequisite for intelligent replacement decisions. The verification process relies on the first cyclic redundancy check (CRC) code in the avionics data packet header and the second CRC code at the end of the target code. Through these two independent check codes, the integrity of the data can be verified layer by layer from both the header and target code levels. In actual operation of avionics systems, data corruption may occur in various scenarios, such as during transmission, bit flips caused by storage medium aging, or failure of the previous write operation due to abnormal interruption. Through validity verification, the system can accurately identify these invalid addresses, thus prioritizing invalid addresses as write targets in subsequent steps, both reclaiming invalid storage space and protecting valid data from being mistakenly overwritten.

[0031] S4: Based on the validity verification result, determine the target address to be written to the avionics data packet to be loaded, and write the avionics data packet to be loaded to the determined target address.

[0032] Based on the validity verification results of the data packets stored at the primary and secondary addresses in step S3, the optimal target write address is automatically selected according to the preset decision logic, and the actual data write operation is executed. The decision logic for determining the target address comprehensively considers the validity and version information of the data at both addresses. Its core principle is to prioritize protecting valid newer versions of data and overwrite invalid or older versions. Through this intelligent address selection strategy, the system can ensure that at least one complete and usable data version is maintained at any given time, while avoiding redundant write / erase overhead caused by writing to both addresses simultaneously, thus improving memory lifespan and data loading efficiency. For example, in practical applications, when the avionics data packet stored at the primary address becomes invalid due to a previous loading interruption, while the avionics data packet stored at the secondary address is valid, the system will automatically select the primary address as the target address for this write operation. This allows for rapid reclamation of invalid storage space while preserving the valid version in the secondary address as a backup. After the target address is determined, the data loading module executes the actual write operation, sequentially writing the binary data of the avionics data packet to be loaded into the physical storage area corresponding to the target address, completing the data update.

[0033] This invention's version-controlled dual-address backup and replacement method for avionics data constructs a complete closed-loop loading process—from data packet acquisition, address location, status verification to intelligent replacement—through the collaborative work of steps S1 to S4. The structured avionics data packet provided in step S1 offers standardized data input for the entire process; the dual-address mapping mechanism established in step S2 provides a physical foundation for reliable data storage; the dual-address validity pre-verification in step S3 provides accurate judgment criteria for subsequent decisions; and the intelligent replacement logic in step S4 makes the optimal write decision based on the verification results of the preceding steps, achieving a balance between data loading reliability and storage efficiency. The entire method is interconnected, with the output of one step constituting the input of the next, collectively achieving highly reliable delivery of avionics data during the update process.

[0034] In one possible implementation, determining the target address for writing the avionics data packet to be loaded based on the validity check result includes: if one of the avionics data packets stored in the primary address and the secondary address is valid while the other is invalid, then the invalid address is selected as the target address; if both are invalid, then either one is arbitrarily selected as the target address; if both the primary address and the secondary address have valid avionics data packets stored in them, then the version number of the avionics data packet to be loaded is compared with the version numbers of the two stored avionics data packets; when the version number to be loaded is higher than the highest version number of the two addresses, the address storing the older version is selected as the target address; when the version number to be loaded is lower than or equal to the lowest version number of the two addresses, writing is rejected and a loading error is reported.

[0035] This implementation refines the target address decision logic into processing rules for four specific scenarios, covering all possible combinations of dual-address validity verification results. The first scenario is when only one of the primary and secondary addresses is valid, while the other is invalid. This scenario commonly occurs when an abnormal interruption occurs during the previous data loading process, causing incomplete and invalid data to be written to the target address, while the other address, which was not overwritten, still retains complete old version data. In this scenario, the system selects the invalid address as the target address, enabling the reclamation of the invalid storage area without affecting the valid version, thus ensuring atomicity protection for data updates. The second scenario is when both the primary and secondary addresses have invalid avionics data packets stored there. This scenario may occur when avionics equipment is first put into use, the storage area is not initialized, or both addresses have suffered data corruption due to long-term aging of the storage medium. In this case, there is no protected valid data on either address, and the system can arbitrarily select one as the target address to write new data. In actual implementation, the primary address is usually selected by default to ensure operational consistency.

[0036] The third scenario involves valid avionics data packets stored in both the primary and secondary addresses. This is the most common state for normally operating avionics equipment, where each address stores a verified, complete data version. In this case, a version comparison is needed to determine whether to write the data and which address to write it to. Specifically, the version number of the avionics data packet to be loaded is denoted as Vdataload, the version number of the avionics data packet already stored in the primary address is denoted as VA, and the version number of the avionics data packet already stored in the secondary address is denoted as VB. The system first compares VA and VB to determine the highest and lowest version numbers in both addresses. If Vdataload is greater than the highest version number in VA and VB, it indicates that the data packet to be loaded is a completely new, updated version, and the system selects the address storing the older version as the target address. This selection strategy ensures that after writing, the new version and the second newest version are stored in the two addresses respectively. Even if a loading anomaly occurs later, the system can still restore to the second newest version, achieving rolling version update protection. If Vdataload is lower than or equal to the lowest version number in VA and VB, it means that the data packet to be loaded is an outdated version or the same as the current version. Such a loading request may be caused by operational error or system failure. The system refuses to write and reports the loading error to the upper-layer application to prevent version rollback from causing the avionics equipment to operate under an incorrect configuration.

[0037] This implementation deeply integrates the dual-address backup mechanism with version control strategy through the aforementioned scenario-specific decision-making logic. Each load only replaces the older or invalid address, avoiding a full mirror write to both addresses, significantly reducing the number of erase / write operations on non-volatile memory and data loading time. For example, assuming a certain avionics data packet has a current primary address version of 3, a secondary address version of 2, and a version to be loaded is 4, the system will select the older secondary address as the target address to write version 4. After loading, the dual addresses will store versions 3 and 4 respectively, preserving rollback capability while only performing one erase / write operation.

[0038] In one possible implementation, the validity verification of the avionics data packets stored in the primary address and the secondary address includes: reading the header of the avionics data packet stored at the address and performing header verification using the first cyclic redundancy check (CRC) code; if the header verification fails, the avionics data packet stored at the address is determined to be invalid; if the header verification passes, the header is parsed to obtain the size of the target code, and the target code is verified for integrity using the second CRC code; if the target code integrity verification fails, the avionics data packet stored at the address is determined to be invalid; if it passes, it is determined to be valid.

[0039] See Figure 2This implementation details the layered verification process for validity checking. The verification process consists of two serial stages: header verification and target code integrity verification. Only when both stages pass verification is the avionics data packet stored at that address deemed valid. The first stage is header verification. The system reads the first bytes of the avionics data packet from the storage area at that address, extracts the first cyclic redundancy check (CR) code contained in the header, recalculates the CR value of the header data, and compares the calculated value with the read CR code. If the comparison is inconsistent, it indicates that the header data has been corrupted during storage or transmission, and key parameters such as the data identifier ID, version number, or target code size recorded in the header may be inaccurate. Continuing to use the data packet poses a risk, and it is directly deemed invalid. If the header verification passes, it indicates that the header information is complete and reliable. The system parses the header to obtain the target code size parameter, which indicates the byte length of the target code data area following the header. The second stage is target code integrity verification. The system reads the target code data of the corresponding length according to the target code size parameter, extracts the second CR code carried at the end of the target code, and recalculates the CR value of the target code data for comparison. If the comparison is inconsistent, it indicates that the target code data is corrupted, and the avionics data packet cannot run correctly in the avionics equipment, thus being deemed invalid. If the comparison is consistent, it indicates that the avionics data packet stored at that address is completely intact from the header to the target code, thus being deemed valid. This implementation achieves a balance between verification efficiency and verification integrity through a layered verification mechanism. Header verification, as a lightweight and rapid screening method, can terminate the verification process in advance if the header is damaged, avoiding unnecessary full verification calculations for large target code data.

[0040] In one possible implementation, after writing the avionics data packet to be loaded to a determined target address, the method further includes: updating an index table, wherein the index table is used to record the version number of the avionics data packet corresponding to each data identifier ID and its currently valid storage target address, so that it can be directly accessed when the system is powered on; the index table includes an index table identifier, an index table size, a number of avionics data packets, and a data identifier ID, size, version number and target address of each avionics data packet.

[0041] This implementation introduces an index table mechanism as a quick access point for avionics data packet version information. During normal operation of the avionics system, each power-on requires loading various avionics data packets for application use. If each power-on required traversing the avionics equipment configuration file, reading both addresses, and performing validity checks to determine which address to access, system startup time would be significantly prolonged. The purpose of the index table is to record the latest valid status of each avionics data packet after successful loading, allowing for direct querying upon subsequent power-ons. The index table is stored in binary form in a designated non-volatile storage area of ​​the avionics equipment. Its structure includes an index table identifier to identify whether the storage area is a valid index table, an index table size, and the number of avionics data packets to describe the overall capacity and number of recorded entries. Then, the information entries for each avionics data packet are repeatedly arranged according to the number of avionics data packets, including the data identifier ID, size, version number, and destination address. The destination address field records the actual physical address where the current valid version of the avionics data packet is stored. After successful loading, the system updates the record corresponding to the ID in the index table, updating the version number to the new version number for this loading and the target address to the target address for this writing, ensuring that the index table always remains consistent with the actual data state on both addresses. This implementation, by synchronously updating the index table after successful loading, makes the index table a reliable and fast access channel when the system powers on, significantly shortening the data location time during system startup.

[0042] In one possible implementation, the system also includes an exception handling step when it powers on: reading the index table and performing an integrity check; if the integrity check passes, directly accessing the avionics data packet according to the target address in the index table; if the integrity check fails, executing an autonomous recovery process according to the avionics equipment configuration file.

[0043] This implementation addresses the scenario where the index table may be corrupted due to power outages or other anomalies during the update process. It employs a two-level access strategy upon system power-up. During index table updates, non-volatile storage areas need to be erased and new content written. If a power outage occurs after erasure but before the writing is complete, the index table will be in an incomplete or corrupted state, with the cyclic redundancy check (CRC) at the end inconsistent with the actual content. Upon system power-up, the index table is first read, and its CRC value is calculated for integrity verification. If the verification passes, the index table content is considered complete and reliable. The system directly accesses the corresponding avionics data packets based on the target addresses recorded in the index table, eliminating the need to traverse dual addresses and perform validity checks, thus enabling rapid startup. If the integrity verification fails, the index table is unusable. The system then initiates an autonomous recovery process, obtaining basic dual-address mapping information by accessing the avionics equipment configuration file, automatically scanning and determining the validity status of the avionics data packets at the dual addresses, and reconstructing the currently used data version. This two-level strategy ensures the system retains self-recovery capabilities even when the index table is corrupted, preventing system startup failures or loading of incorrect data versions due to index table corruption.

[0044] In one possible implementation, the autonomous recovery process includes: obtaining the primary address and secondary address corresponding to the target avionics data packet according to the avionics equipment configuration file; performing validity checks on the avionics data packets stored in the primary address and the secondary address respectively; if only one is valid, accessing the avionics data packet in the valid address; if both are valid, comparing the version numbers and accessing the avionics data packet in the address with the higher version number; if both are invalid, reporting a system error.

[0045] This implementation details the specific execution steps of the autonomous recovery process, which is triggered when the index table integrity check fails. This process autonomously determines the addresses that each avionics data packet should access without relying on the index table. The core idea of ​​the autonomous recovery process is to return to the avionics equipment configuration file and the actual data at the dual addresses for self-judgment. The system first obtains the primary and secondary addresses of the avionics data packet from the avionics equipment configuration file, and then performs a complete hierarchical validity check on these two addresses to determine the validity of the data packet at each address. If only one is valid, it means the other address has failed due to a previous loading anomaly, and the system directly accesses the avionics data packet at the valid address, which is the version that should be used currently. If both are valid, the system further compares the version numbers of the avionics data packets at the two addresses and selects the address with the higher version number for access, as the higher version number represents the newer and preferred data version. If both are invalid, it means that both storage addresses of the avionics data packet on the device are corrupted, and usable data cannot be obtained through autonomous recovery. The system reports an error to the upper layer, prompting that data loading needs to be re-executed. This implementation method endows the avionics system with the ability to self-repair in abnormal situations through an autonomous recovery process, which can restore it to the correct operating state without the intervention of external maintenance equipment, thus significantly improving the system's autonomy and maintainability.

[0046] In one possible implementation, the fields of the avionics configuration file include configuration file identifier, configuration file size, number of avionics data packets, and data identifier ID, size, and assigned primary and secondary addresses for each avionics data packet.

[0047] This implementation clarifies the specific data structure of the avionics equipment configuration file, which is the fundamental data source for dual-address management of avionics data. The configuration file is stored in binary format in a designated non-volatile storage address of the avionics equipment, with its fields arranged sequentially. The configuration file identifier, located at the beginning of the file, is typically a fixed sequence of characters used to identify whether the storage area is a valid avionics equipment configuration file, preventing the system from misreading other data. The configuration file size field records the byte length of the entire configuration file, facilitating the system's determination of the data range during reading. The avionics data packet quantity field indicates the number of avionics data packet entries recorded in the configuration file. Subsequently, the address allocation information for each avionics data packet is repeated according to the number of avionics data packets. Each record contains a data identifier ID, size, primary address, and secondary address. The data identifier ID is used to uniquely identify the type of avionics data packet corresponding to this record and is consistent with the data identifier ID recorded in the header of the avionics data packet. The size field records the maximum storage space required for this avionics data packet, used to determine the range of each address region when allocating the primary and secondary addresses. The primary and secondary address fields respectively record the starting positions of the two physical storage addresses allocated by the system for this avionics data packet. The avionics configuration file is generated when the avionics equipment is manufactured or configured for the first time. Its content remains stable unless a new type of avionics data package needs to be added or the storage layout needs to be adjusted, providing a persistent address mapping basis for dual address management.

[0048] See Figure 2 In another embodiment of the present invention, a version-controlled dual-address backup and replacement system for avionics data is provided, which can be used to implement the above-mentioned version-controlled dual-address backup and replacement method for avionics data. Specifically, the version-controlled dual-address backup and replacement system for avionics data includes: The system comprises a data acquisition module, an address acquisition module, a verification module, and an acknowledgment output module. The data acquisition module acquires the avionics data packet to be loaded. The avionics data packet includes a header and a target code. The header includes a data identifier (ID), a version number, and a first cyclic redundancy check (CRC) code for verifying the header. The target code contains a second CRC code for verifying the target code content.

[0049] The address acquisition module is used to obtain the primary and secondary addresses corresponding to the avionics data packets to be loaded from the preset avionics equipment configuration file based on the data identifier ID.

[0050] The verification module is used to verify the validity of the avionics data packets stored in the primary address and secondary address, respectively.

[0051] The confirmation output module is used to determine the target address to be written to the avionics data packet to be loaded based on the validity verification result, and then writes the avionics data packet to be loaded to the determined target address.

[0052] In this embodiment, the data acquisition module is the system's data entry point. It is responsible for receiving avionics data packets to be loaded from the ground loader or the airborne health management system, and parsing the header information of the avionics data packets to extract key parameters such as data identifier ID, version number, first cyclic redundancy check (CRC) code, and second CRC code for use by subsequent modules. The address acquisition module internally maintains an interface for reading avionics equipment configuration files. Based on the data identifier ID provided by the data acquisition module, it performs a search and matching operation in the avionics equipment configuration files, locates the corresponding record entry, and extracts the values ​​of the primary and secondary addresses. The verification module includes a CRC calculation unit, which can sequentially perform header verification and target code integrity verification on the avionics data packets read from the specified address, and outputs the judgment result of whether the avionics data packets at that address are valid. The confirmation output module integrates dynamic replacement decision logic and underlying storage driver call interface. Based on the dual address validity judgment result provided by the verification module, it selects the target address according to preset decision rules and calls the underlying driver to complete the erase block clearing and data writing operations.

[0053] All relevant content of each step involved in the aforementioned embodiment of the version-controlled dual-address backup and replacement method for avionics data can be referenced to the functional description of the corresponding functional module of the version-controlled dual-address backup and replacement system for avionics data in the embodiments of the present invention, and will not be repeated here.

[0054] The module division in this embodiment of the invention is illustrative and represents only one logical functional division. In actual implementation, other division methods may be used. Furthermore, the functional modules in the various embodiments of the invention can be integrated into a single processor, exist as separate physical entities, or be integrated into a single module. The integrated modules described above can be implemented in hardware or as software functional modules.

[0055] In another embodiment of the present invention, a computer device is provided, comprising a processor and a memory. The memory stores a computer program, which includes program instructions. The processor executes the program instructions stored in the computer storage medium. The processor may be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. It is the computing and control core of the terminal, suitable for implementing one or more instructions, specifically suitable for loading and executing one or more instructions from the computer storage medium to achieve corresponding method flows or corresponding functions. The processor described in this embodiment of the present invention can be used for the operation of a version-controlled avionics data dual-address backup and replacement method.

[0056] In another embodiment of the present invention, a storage medium is provided, specifically a computer-readable storage medium (Memory), which is a memory device in a computer device used to store programs and data. It is understood that the computer-readable storage medium here can include both the built-in storage medium in the computer device and extended storage media supported by the computer device. The computer-readable storage medium provides storage space that stores the terminal's operating system. Furthermore, the storage space also stores one or more instructions suitable for loading and execution by a processor. These instructions can be one or more computer programs (including program code). It should be noted that the computer-readable storage medium here can be high-speed RAM or non-volatile memory, such as at least one disk storage device. The processor can load and execute one or more instructions stored in the computer-readable storage medium to implement the corresponding steps of the version-controlled dual-address backup and replacement method for avionics data in the above embodiments.

[0057] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0058] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0059] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0060] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0061] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and not to limit it. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art should understand that modifications or equivalent substitutions can still be made to the specific implementation of the present invention. Any modifications or equivalent substitutions that do not depart from the spirit and scope of the present invention should be covered within the scope of protection of the claims of the present invention.

Claims

1. A method for dual-address backup and replacement of avionics data based on version control, characterized in that, include: Obtain the avionics data packet to be loaded. The avionics data packet includes a header and a target code. The header includes a data identifier ID, a version number, and a first cyclic redundancy check (CR) code used to verify the header. The target code contains a second CR code used to verify the content of the target code. Based on the data identifier ID, obtain the primary and secondary addresses corresponding to the avionics data packets to be loaded from the preset avionics equipment configuration file; The validity of the avionics data packets stored in the primary address and secondary address are verified respectively. Based on the validity verification results, the target address for writing the avionics data packet to be loaded is determined, and the avionics data packet to be loaded is written to the determined target address.

2. The method for dual-address backup and replacement of avionics data based on version control according to claim 1, characterized in that, The step of determining the target address to be written to the avionics data packet based on the validity verification result includes: If one of the avionics data packets stored in the primary address and the secondary address is valid while the other is invalid, the invalid address is selected as the target address; if both are invalid, either one is arbitrarily selected as the target address. If the avionics data packets stored in the primary address and the secondary address are both valid, then the version number of the avionics data packet to be loaded is compared with the version numbers of the two stored avionics data packets. When the version number to be loaded is higher than the highest version number of the two addresses, the address where the older version is stored is selected as the target address. If the version number to be loaded is lower than or equal to the lowest version number of the two addresses, write is refused and a loading exception is reported.

3. The method for dual-address backup and replacement of avionics data based on version control according to claim 1, characterized in that, The validity verification of the avionics data packets already stored in the primary address and the secondary address includes: Read the header of the avionics data packet stored at that address and perform header verification using the first cyclic redundancy check code; If the header verification fails, the avionics data packet stored at that address is deemed invalid; if the header verification passes, the header is parsed to obtain the size of the target code, and the second cyclic redundancy check code is used to perform integrity verification on the target code; if the target code integrity verification fails, the avionics data packet stored at that address is deemed invalid; if it passes, it is deemed valid.

4. The method for dual-address backup and replacement of avionics data based on version control according to claim 1, characterized in that, After writing the avionics data packet to be loaded to the determined target address, the process also includes: Update the index table, which records the version number of the avionics data packet corresponding to each data identifier ID and its current valid storage target address, so that the system can access it directly when it is powered on. The index table includes an index table identifier, an index table size, the number of avionics data packets, and the data identifier ID, size, version number, and target address of each avionics data packet.

5. The method for dual-address backup and replacement of avionics data based on version control according to claim 4, characterized in that, It also includes abnormal handling procedures when the system powers on: Read the index table and perform an integrity check; If the integrity check passes, the avionics data packet is accessed directly based on the target address in the index table; If the integrity verification fails, an autonomous recovery process will be executed based on the avionics configuration file.

6. The method for dual-address backup and replacement of avionics data based on version control according to claim 5, characterized in that, The autonomous restoration process includes: Obtain the primary and secondary addresses corresponding to the target avionics data packet according to the avionics equipment configuration file; The validity of the avionics data packets stored in the primary address and the secondary address are verified respectively. If only one side is valid, access the avionics data packet at the valid address; If both are valid, compare the version numbers and access the avionics data packet at the address with the higher version number; If both fail, a system error is reported.

7. The method for dual-address backup and replacement of avionics data based on version control according to claim 1, characterized in that, The fields of the avionics configuration file include configuration file identifier, configuration file size, number of avionics data packets, and data identifier ID, size, and assigned primary and secondary addresses for each avionics data packet.

8. A version-controlled dual-address backup and replacement system for avionics data, characterized in that, include: The data acquisition module is used to acquire the avionics data packet to be loaded. The avionics data packet includes a header and a target code. The header includes a data identifier ID, a version number, and a first cyclic redundancy check code used to verify the header. The target code contains a second cyclic redundancy check code used to verify the content of the target code. The address acquisition module is used to obtain the primary address and secondary address corresponding to the avionics data packet to be loaded from the preset avionics equipment configuration file based on the data identifier ID. The verification module is used to verify the validity of the avionics data packets stored in the main address and secondary address respectively; The confirmation output module is used to determine the target address to be written to the avionics data packet to be loaded based on the validity verification result, and then write the avionics data packet to be loaded to the determined target address.

9. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the version-controlled dual-address backup and replacement method for avionics data as described in any one of claims 1 to 7.

10. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, it implements the steps of the version-controlled dual-address backup and replacement method for avionics data as described in any one of claims 1 to 7.