ARINC429 requirement analysis and code automatic generation method based on bus protocol

By using ARINC429 requirements analysis and automatic code generation methods, the problems of manual analysis errors and time consumption in ARINC429 bus protocol software development were solved, achieving efficient and accurate code generation and improving development efficiency and code quality.

CN122173064APending Publication Date: 2026-06-09CHINA AERONAUTICAL CONTROL SYST RES INST

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
CHINA AERONAUTICAL CONTROL SYST RES INST
Filing Date
2026-02-28
Publication Date
2026-06-09

Smart Images

  • Figure CN122173064A_ABST
    Figure CN122173064A_ABST
Patent Text Reader

Abstract

This invention discloses a method for ARINC429 requirements analysis and automatic code generation based on the bus protocol. The method includes: establishing a standard template for a table according to the ARINC429 communication protocol requirements, containing the information needed for code generation; automatically analyzing the ARINC429 communication protocol file using a program to read key information from the table; reporting errors in the main table and sub-tables that do not conform to the protocol format during the key information reading process; establishing a complete data flow processing code framework rule based on the signal input, processing, and output sequence; and establishing different structures for the received / transmitted Label numbers according to channel and direction based on the data information obtained in step S3. This invention, through the automated identification of ARINC429 bus protocol requirements and the automated generation of standard code, reduces design and implementation defects introduced by developers' understanding of requirements during software development, greatly improving software development efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of embedded software development technology for aviation communication buses, and in particular to a method for ARINC429 requirements analysis and automatic code generation based on bus protocols. Background Technology

[0002] The ARINC429 bus is widely used in the civil aviation field, such as in aircraft like the Boeing 737 / 747, Airbus A320, and COMAC C919. Simultaneously, due to its mature standard and ease of use, it is also used in a large number of aircraft in the commercial aviation sector.

[0003] Aero-engine control software is safety-critical; software problems can lead to catastrophic consequences, including aircraft crashes and loss of life. During the research and development process, to meet the testing requirements of various engines and aircraft, the ARINC429 bus communication protocol frequently undergoes software changes. These changes easily introduce coding defects due to manual coding, identification errors, and missed checks. Furthermore, compared to other bus protocols, the ARINC429 communication protocol's packet transmission and complex component composition make it difficult to learn and understand, and prone to errors. Therefore, research on automatic ARINC429 bus requirement analysis and code generation remains necessary. Manual analysis is error-prone and time-consuming, requiring tools to address the issues of large data volumes and numerous data coupling dependencies. Therefore, it is necessary to design an analysis tool based on the standard ARINC429 communication protocol. Summary of the Invention

[0004] Purpose of the invention: The purpose of this invention is to provide a method for ARINC429 requirements analysis and automatic code generation based on the bus protocol.

[0005] Technical solution: The ARINC429 requirement analysis and automatic code generation method based on bus protocol described in this invention includes the following steps:

[0006] S1. Based on the ARINC429 standard communication protocol requirements, establish a standard template for the table to include the information required for code generation;

[0007] S2. Based on the format of the table file, use a program to automatically analyze the ARINC429 communication protocol file and read the key information in the table;

[0008] S3. During the process of reading key information from the table, report any main table or sub-tables that do not conform to the protocol format as faulty;

[0009] S4. Establish a complete code framework rule for data stream processing based on the order of signal input, processing, and output.

[0010] S5. Based on the data information obtained in step S3, establish different structures for the received / sent Label numbers according to the channel and direction.

[0011] Furthermore, the information required for code generation in step S1 includes:

[0012] The header A_To_B in Table 1 distinguishes the input and output channel names and directions; it also includes the labels and names from the protocol.

[0013] Table 2 shows the BNR type data template, including label, name, type, parity bit, symbol status bit, data bits, and source / destination identification bit;

[0014] Table 3 shows the DISC type data template, including label, name, type, parity bit, symbol status bit, data bits, and source / destination identification bit.

[0015] Furthermore, step S2, reading key information from the table, includes:

[0016] The source A and destination B in the A_To_B header are used to identify the ARINC429 signal direction and the corresponding communication channel;

[0017] Read the label, parameters, meaning, unit, type, resolution, update rate, data length, and remarks;

[0018] Based on the key parameters in the master table retrieved above, related sub-tables are searched in the document using remarks and labels;

[0019] Read the label, source, target, update rate, transmission rate, unit, signal range, precision, and resolution from BNR type sub-table 2;

[0020] Read the description information from the corresponding BIT bits in the label, source, destination, update rate, transmission rate, unit, and data bits of the DISC type sub-table 3.

[0021] Further, step S3 includes:

[0022] Based on the associated master table and sub-table information, perform conformity checks, report any inconsistencies, and store the key information required for code generation.

[0023] Furthermore, step S4 includes the ARINC429 communication receiving template, which is divided into three templates: receiving data Label number structure, bus data parsing, and bus 32-bit data parsing.

[0024] Furthermore, step S4 includes an ARINC429 communication transmission template, which is divided into three templates: a data label number structure, a 32-bit bus data packet, and a bus data protocol transmission template.

[0025] Furthermore, during the reception in step S5, the data is packetized by Label number through the bus data parsing template to form complete 32-bit bus data; then, the data is processed according to the original 32-bit bus data and the data bits, SSM, SDI, resolution, and BIT bit information obtained in step S3.

[0026] Furthermore, in step S5, when sending, the data bits, SSM, SDI, resolution, and BIT information in the 32-bit bus data are first packetized, and then sent at a specified period using the bus data protocol sending template.

[0027] Beneficial effects: Compared with the prior art, the present invention has the following significant advantages: The present invention reduces the design and implementation defects caused by developers' understanding of requirements during the software development process by automatically identifying ARINC429 bus protocol requirements and automatically generating standard code, thus greatly improving software development efficiency. Attached Figure Description

[0028] Figure 1 This is a flowchart illustrating the software requirements analysis and automatic code generation process for this invention.

[0029] Figure 2 This is an example diagram of the software code template structure of the present invention. Detailed Implementation

[0030] The technical solution of the present invention will be further described below with reference to the accompanying drawings.

[0031] like Figure 1 As shown, the ARINC429 requirement analysis and automatic code generation method based on the bus protocol described in this invention includes the following steps:

[0032] Step 1: Based on the ARINC429 communication protocol requirements, create standard templates Tables 1, 2, and 3 to contain the information required for code generation. Table 1 is the overall ARINC429 communication protocol table for communication between device A and device B; Table 2 is the ARINC429 communication protocol sub-table for inlet temperature T1; Table 3 is the ARINC429 communication protocol sub-table for discrete quantity DISC1, as shown in the tables below. For multiple-input multiple-output systems, the header A_To_B in Table 1 distinguishes the input and output channel names and directions. Key information such as labels and names in the protocol should also be filled in. Tables 2 and 3 are BNR and DISC type data templates, respectively. In addition to including labels, names, and types, they also need to indicate parity status, symbol status (SSM), data bits, and source / destination identification bits (SDI).

[0033] Table 1. Summary of ARINC429 communication protocols sent from Device A to Device B

[0034]

[0035] Table 2. ARINC429 Communication Protocol Sub-Table for Inlet Temperature T1

[0036]

[0037] Table 3. ARINC429 Communication Protocol Sub-Table for Discrete Quantity DISC1

[0038]

[0039] Step 2: Based on the format of Tables 1, 2, and 3, use a program to automatically analyze the ARINC429 communication protocol file and read the following key information from Tables 1 to 3:

[0040] f) The source A and destination B in the A_To_B header are used to identify the ARINC429 signal direction and the corresponding communication channel;

[0041] g) Read the label, parameter, meaning, unit, type, resolution, update rate, data length, and remarks;

[0042] h) Based on the key parameters in the master table read above, search for related sub-tables in the document using the remarks and labels;

[0043] i) Read the label, source, target, update rate, transmission rate, unit, signal range, precision, and resolution from BNR type sub-table 2;

[0044] j) Read the description information in the corresponding BIT bits of the label, source, destination, update rate, transmission rate, unit, and data bits in the DISC type sub-table 3.

[0045] Step 3: During the reading process, any master table or sub-tables that do not conform to the protocol format are reported as faults. Simultaneously, based on the associated master table and sub-table information, conformity checks are performed, and any inconsistencies are reported as faults. At the same time, key information required for code generation is stored to prepare for subsequent code generation.

[0046] Step 4: Establish a complete data flow processing code framework based on the signal input, processing, and output sequence: such as... Figure 2 As shown, the ARINC429 communication receiving template is divided into three templates: receive data Label number structure, bus data parsing, and bus 32-bit data parsing. The ARINC429 communication transmitting template is divided into three templates: transmit data Label number structure, bus 32-bit data packet assembly, and bus data protocol transmission.

[0047] Step 5 involves creating different structures for the received / transmitted Label numbers based on the channel and direction, using the data information obtained in Step 3. During reception, data is packetized by Label number using the bus data parsing template to form complete 32-bit bus data. Then, the data is processed based on the original 32-bit bus data and the data bits, SSM, SDI, resolution, and BIT bits obtained in Step 3. During transmission, the data bits, SSM, SDI, resolution, and BIT bits in the 32-bit bus data are first packetized, and then transmitted at a specified period using the bus data protocol transmission template.

[0048] This invention addresses the development of ARINC429 bus communication protocol code for embedded software. It extracts key information required for software development based on the ARINC429 bus communication protocol requirements, defines ARINC429 bus receiving, processing, and transmitting rules, and, based on the defined software template and key information in the ARINC429 bus protocol, generates ARINC429 bus receiving and processing code including Label number matching, SDI verification, SSM verification, and data area reading and parsing, as well as bus packet assembly code for Label number assembly, SDI packet assembly, SSM packet assembly, and data processing, thus forming complete embedded software code that conforms to the communication protocol requirements.

Claims

1. A method for ARINC429 requirements analysis and automatic code generation based on a bus protocol, characterized in that, Includes the following steps: S1. Based on the ARINC429 standard communication protocol requirements, establish a standard template for the table to include the information required for code generation; S2. Based on the format of the table file, use a program to automatically analyze the ARINC429 communication protocol file and read the key information in the table; S3. During the process of reading key information from the table, report any main table or sub-tables that do not conform to the protocol format as faulty; S4. Establish a complete code framework rule for data stream processing based on the order of signal input, processing, and output. S5. Based on the data information obtained in step S3, establish different structures for the received / sent Label numbers according to the channel and direction.

2. The ARINC429 requirements analysis and automatic code generation method based on bus protocol according to claim 1, characterized in that, The information required for code generation in step S1 includes: The header A_To_B in Table 1 distinguishes the input and output channel names and directions; it also includes the labels and names from the protocol. Table 2 shows the BNR type data template, including label, name, type, parity bit, symbol status bit, data bits, and source / destination identification bit; Table 3 shows the DISC type data template, including label, name, type, parity bit, symbol status bit, data bits, and source / destination identification bit.

3. The ARINC429 requirements analysis and automatic code generation method based on bus protocol according to claim 1, characterized in that, The key information read from the table in step S2 includes: The source A and destination B in the A_To_B header are used to identify the ARINC429 signal direction and the corresponding communication channel; Read the label, parameters, meaning, unit, type, resolution, update rate, data length, and remarks; Based on the key parameters in the master table retrieved above, related sub-tables are searched in the document using remarks and labels; Read the label, source, target, update rate, transmission rate, unit, signal range, precision, and resolution from BNR type sub-table 2; Read the description information from the corresponding BIT bits in the label, source, destination, update rate, transmission rate, unit, and data bits of the DISC type sub-table 3.

4. The ARINC429 requirements analysis and automatic code generation method based on bus protocol according to claim 1, characterized in that, Step S3 includes: Based on the associated master table and sub-table information, perform conformity checks, report any inconsistencies, and store the key information required for code generation.

5. The ARINC429 requirements analysis and automatic code generation method based on bus protocol according to claim 1, characterized in that, Step S4 includes the ARINC429 communication receiving template, which is divided into three templates: receiving data Label number structure, bus data parsing, and bus 32-bit data parsing.

6. The ARINC429 requirements analysis and automatic code generation method based on bus protocol according to claim 1, characterized in that, Step S4 includes the ARINC429 communication transmission template, which is divided into three templates: transmission data Label number structure, bus 32-bit data packet assembly, and bus data protocol transmission.

7. The ARINC429 requirements analysis and automatic code generation method based on bus protocol according to claim 1, characterized in that, When receiving data in step S5, the data is packetized by Label number through the bus data parsing template to form complete 32-bit bus data. Then, the data is processed according to the original 32-bit bus data and the data bits, SSM, SDI, resolution, and BIT bit information obtained in step S3.

8. The ARINC429 requirements analysis and automatic code generation method based on bus protocol according to claim 1, characterized in that, In step S5, when sending data, the data bits, SSM, SDI, resolution, and BIT information in the 32-bit bus data are first packetized, and then sent at a specified period using the bus data protocol sending template.