A method, device and system for adaptive management of communication bandwidth

By introducing a specific communication bandwidth management scheduling table and a distributed adaptive offset mechanism into the ARINC825 communication architecture, the problems of complex scheduling design and communication conflicts caused by clock offset in multi-subsystem networks are solved, achieving the effects of simplified scheduling and improved reliability.

CN122496419APending Publication Date: 2026-07-31SHENZHEN HOBBYWING TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
SHENZHEN HOBBYWING TECH CO LTD
Filing Date
2026-07-01
Publication Date
2026-07-31

AI Technical Summary

Technical Problem

The existing ARINC825 communication architecture has a complex scheduling design workload in multi-subsystem networks, and local clock skew causes communication conflicts and load overload, affecting the determinism and reliability of the system.

Method used

The same specific communication bandwidth management scheduling table is initialized in all subsystems. The adaptive offset of the main time frame is dynamically calculated through the CAN bus arbitration result, and the backup time frame window is set to realize distributed adaptive compensation of clock offset.

Benefits of technology

It simplifies scheduling design, improves system maintainability and scalability, avoids communication conflicts, and enhances system fault tolerance and communication reliability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122496419A_ABST
    Figure CN122496419A_ABST
Patent Text Reader

Abstract

This application discloses a communication bandwidth adaptive management method, device, and system, relating to the field of aviation communications. The method is applied to a multi-subsystem CAN network running the ARINC825 protocol. Each subsystem initializes and deploys an identical scheduling table, eliminating the need for configuring complex sub-time frame scheduling schemes individually. Within a main time frame period, each subsystem competes to transmit frames with the same identifier within a sub-time frame cluster window, recording the number of failures based on CAN bus arbitration. Based on the number of failures, frame length, and baud rate, an adaptive offset for the main time frame is calculated. After supplementing transmissions and updating the offset via a spare time frame window, each subsystem independently offsets its own main time frame start time in the next period. Through distributed adaptive timing adjustment, conflicting transmission windows are automatically staggered, resolving communication conflicts and overloads caused by clock skew, simplifying network scheduling design, and improving the determinism and reliability of airborne communication.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of aviation communication technology, and in particular to a communication bandwidth adaptive management method, device and system. Background Technology

[0002] The ARINC825 specification is a widely adopted airborne data bus standard in the aviation industry. Based on the Controller Area Network (CAN) bus, it defines the implementation methods for the physical layer and data link layer. In modern aviation systems, such as communication networks composed of multiple power plant subsystems interconnected via a CAN bus and running the ARINC825 communication protocol, a deterministic data communication architecture is typically employed: Time Triggered Bus Scheduling (TTBS) + Major / Minor Frames + Local Timing. Under this architecture, a communication cycle consists of one major time frame and multiple minor time frames. Each subsystem is allocated one or more specific minor time frames for data transmission, thereby avoiding bus conflicts and ensuring the real-time performance and reliability of communication.

[0003] However, in practical applications of multi-subsystem systems, the above standard architecture has the following drawbacks: Scheduling design is a heavy and complex undertaking. In a communication network containing multiple subsystems, the number of minor frames is numerous. Each subsystem typically corresponds to one or more specific minor frames within each major frame period. To ensure that data transmissions from all subsystems do not conflict, a dedicated minor frame scheduling table needs to be designed and configured for each subsystem. As the system scales up and the number of devices increases, the static design and verification of the scheduling table becomes extremely complex and demanding; even minor changes to the system can lead to a complete restructuring of the scheduling table. Local timing skew leads to communication conflicts and overload. Each subsystem's local timing relies on an independent crystal clock source. Due to inherent frequency deviations, temperature drift, and random differences in power-on startup times of the crystals, a non-negligible relative skew develops in the local timing over time. This skew causes overlapping or misalignment of primary / secondary time frame boundaries that were originally time-separated. In severe cases, multiple subsystems may simultaneously claim bus access rights and initiate communication at the same time, causing a momentary overload on the CAN bus and triggering intense bus arbitration. Lower-priority subsystems that fail arbitration will fail to transmit, resulting in communication anomalies and severely impacting the system's deterministic behavior and reliability.

[0004] Therefore, how to design a communication bandwidth management method that can simplify scheduling design and adaptively compensate for time offsets in multiple subsystems to avoid communication conflicts is a technical problem that urgently needs to be solved in this field. Summary of the Invention

[0005] This application provides a communication bandwidth adaptive management method, device, and system, which aims to solve the problems of heavy workload in the design of multi-subsystem network scheduling in the prior art, as well as communication conflicts and overload caused by local clock offset.

[0006] In a first aspect, embodiments of this application provide a communication bandwidth adaptive management method, applied to a communication network interconnected via a CAN bus and where each subsystem has an independent local timer, comprising the following steps: In each subsystem of the communication network, an identical specific communication bandwidth management scheduling table is initialized; wherein, the specific communication bandwidth management scheduling table defines the primary time frame, secondary time frame cluster, secondary time frame, backup time frame, and primary time frame adaptive offset. At the start of a main time frame period, each of the subsystems simultaneously starts its own main time frame and enables the transmission permission of all the secondary time frames. When the local time of each subsystem reaches the window of the subtime frame cluster, the subtime frames with the same identifier compete to be sent within the subtime frame cluster window; each subsystem records the number of times it participates in arbitration but fails to send, and the subsystem that successfully sends disables the sending enable of the corresponding subtime frame. Each subsystem obtains its own adaptive offset of the main time frame for the current round based on its recorded number of arbitration failures, its own communication baud rate, and the corresponding frame length. If a secondary time frame fails to be sent successfully after passing through the secondary time frame cluster window, then the contention for transmission continues within the backup time frame window, the number of arbitration failures is recorded again, and the adaptive offset of the primary time frame is updated. After the main time frame period ends, each subsystem offsets the start time of the main time frame of its next period according to its updated adaptive offset of the main time frame.

[0007] Preferably, the specific communication bandwidth management scheduling table is functionally divided through the following structure: The first moment of the period of the main time frame is used to enable the transmission of all secondary time frames. The starting time of the secondary time frame cluster is determined by adding a preset first calibration time to the starting point of the main time frame. The sub-time frame is the transmission window for each type of frame in the device. Its start time is determined by adding a preset second calibration time to the start point of the sub-time frame cluster. After a successful transmission, the transmission enable given by the main time frame is turned off. The backup time frame is used to provide an additional transmission opportunity when the secondary time frame fails to be transmitted within the secondary time frame cluster due to arbitration failure.

[0008] Preferably, the secondary time frame cluster and the secondary time frame are calibrated using the start time of the primary time frame as the time base.

[0009] Preferably, the adaptive offset of the current main time frame for each subsystem is represented as follows: (1); in, Subsystem number For the first The main time frame adaptive offset of the subsystem. For the first The frame length of the conflicting frames transmitted by the subsystem. For the first The communication baud rate of the subsystem For the first Total number of arbitration failures in the subsystem.

[0010] Preferably, the window positions of the secondary time frame cluster and the secondary time frame are both calibrated with the start time of the main time frame as the time base, so that when the start time of the main time frame shifts, the window position shifts synchronously.

[0011] Preferably, the window positions of the secondary time frame cluster and the secondary time frame are both calibrated using the start time of the primary time frame as the time base, so that when the start time of the primary time frame shifts, the window position shifts synchronously, specifically as follows: Using the local timer of the main time frame as the time axis reference, the start time of the secondary time frame cluster is calibrated as: the start time of the main time frame + the first calibration time, and the start time of the secondary time frame is calibrated as: the start time of the secondary time frame cluster + the second calibration time. When the start time of the main time frame shifts, all time windows based on it automatically move accordingly.

[0012] Preferably, the sub-time frames with the same identifier are competitively transmitted within the sub-time frame cluster window based on the CAN bus arbitration mechanism; The CAN bus arbitration mechanism is as follows: when multiple subsystems send data frames simultaneously within the same time window, the CAN controller performs bit-by-bit arbitration based on the identifier (ID) of the data frame. The frame with the smaller identifier value wins the arbitration and continues to send, while the frame with the larger identifier value immediately stops sending and waits for the bus to become idle before trying again.

[0013] Preferably, the initialization of the identical specific communication bandwidth management scheduling table includes: Set the initial value of the main time frame adaptive offset to zero; The main time frame adaptive offset is updated after the end of each communication cycle and applied in the next cycle.

[0014] Secondly, embodiments of this application provide a multi-subsystem communication device, wherein each subsystem of the device includes at least one CAN controller, a local timer, and a processor; The processor is used to execute programs stored in the memory to implement the method described in any one of the first aspects, and to transmit and receive data on the bus via the CAN controller.

[0015] Thirdly, embodiments of this application provide an airborne communication system including multiple subsystems interconnected via a CAN bus, wherein each subsystem is used to perform the method described in any one of the first aspects.

[0016] Compared with the solutions of the prior art, the present invention has at least the following beneficial technical effects: By initializing and deploying identical specific communication bandwidth management scheduling tables in all subsystems, there is no need to configure complex sub-time frame scheduling schemes for each subsystem separately, which greatly simplifies the workload and complexity of scheduling design for communication networks and improves the maintainability and scalability of the system. By introducing a dynamic, adaptive master time frame offset mechanism based on bus arbitration results, each subsystem can independently calculate its own time offset according to the number of arbitration failures it has experienced. This process does not require any centralized coordinator and is a distributed adaptive control method. By establishing a mathematical relationship between the number of arbitration failures and frame transmission time, a precise offset is calculated and applied to the time base of the next communication cycle. This allows sub-time frames with the same identifier that would otherwise collide due to clock drift to be automatically staggered on the time axis in subsequent cycles, effectively avoiding bus overload and intense arbitration at the same moment, and fundamentally solving the problem of periodic communication conflicts and failures caused by clock drift. By setting a backup time frame window, a second transmission opportunity is provided for late frames that fail to arbitrate within the contention window, ensuring the integrity and timeliness of data communication and enhancing the system's fault tolerance. In summary, this invention, through the organic combination of the aforementioned technical means, forms a complete adaptive closed-loop management scheme for communication bandwidth based on the ARINC825 communication architecture. This scheme can adaptively compensate for clock skew between multiple subsystems in a distributed manner without increasing additional hardware costs or relying on a global clock synchronization protocol. It transforms the bandwidth overhead originally used for conflict retransmission into system robustness to clock differences, simplifying scheduling design and improving communication reliability. This demonstrates significant technological advancement and broad application prospects. Attached Figure Description

[0017] Exemplary embodiments of the present invention can be more fully understood by referring to the accompanying drawings. The drawings are provided to further illustrate the embodiments of this application and form part of the specification. They are used together with the embodiments of this application to explain the present invention and do not constitute a limitation thereof. In the drawings, the same reference numerals generally represent the same components or steps.

[0018] Figure 1 A schematic diagram of the structure of a specific communication bandwidth management scheduling table provided in an exemplary embodiment of this application; Figure 2 A flowchart illustrating an exemplary embodiment of this application provides a method for adaptive communication bandwidth management. Figure 3 A schematic diagram of the time frame alignment state of a multi-subsystem before arbitration, provided as an exemplary embodiment of this application; Figure 4 A schematic diagram of the time frame state of a multi-subsystem after arbitration and adaptive offset is completed, as provided in an exemplary embodiment of this application; Figure 5 This is a schematic diagram of the structure of a multi-subsystem communication device provided for an exemplary embodiment of this application. Detailed Implementation

[0019] Exemplary embodiments of the present disclosure will now be described in more detail with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be implemented in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.

[0020] In the description of this invention, it should be noted that the terms "center," "upper," "lower," "left," "right," "vertical," "horizontal," "inner," and "outer," etc., indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are used only for the convenience of describing the invention and for simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on the invention. Furthermore, the terms "first," "second," and "third" are used for descriptive purposes only and should not be construed as indicating or implying relative importance.

[0021] Furthermore, the technical features involved in the different embodiments of the present invention described below can be combined with each other as long as they do not conflict with each other.

[0022] Before providing a detailed description of the embodiments of this application, some key technical terms that may be involved will be explained first: ARINC825 specification: an airborne data communication standard based on CAN bus, which defines the specific implementation of the physical layer and data link layer; Time-Triggered Bus Scheduling (TTBS): A communication scheduling strategy in which the communication behavior of all nodes is triggered based on a predefined global timetable to achieve deterministic behavior; Major Frame: In TTBS, the largest, cyclically repeating communication cycle; Minor Frame: A time slice within the main time frame, typically allocated to one or more nodes for sending specific data; Specific communication bandwidth management scheduling table: This application specifically designs an enhanced scheduling table for use by multiple subsystems. It includes elements such as main time frame, secondary time frame cluster, secondary time frame, backup time frame and adaptive offset, which is the basis for each subsystem to realize adaptive communication management. Arbitration failure count: Under the CAN bus arbitration mechanism, the number of times a node loses bus access rights when attempting to send a data frame because other nodes with smaller identifiers (IDs) are also sending at the same time; Master time frame adaptive offset: A value dynamically calculated by the subsystem based on its own arbitration failure, used to adjust the start time of its own master time frame in the next communication cycle to achieve distributed time adaptive alignment.

[0023] Please refer to Figure 1This is a schematic diagram of a specific communication bandwidth management scheduling table provided in an exemplary embodiment of this application. This scheduling table is the basis for the operation of the method of this invention, defining the timing rules of communication behavior on the time axis represented by the local timer of each subsystem. It consists of a cyclically repeating main time frame.

[0024] Specifically, the start time of the main time frame is the first moment of the cycle. At this moment, the transmission enable flag of all secondary time frames is set, allowing transmission to be carried out in subsequent windows.

[0025] Within the main time frame, a secondary time frame cluster window 1 is first defined. The start time of the secondary time frame cluster window 1 is the start point of the main time frame plus a preset first calibration time. Determined, exemplarily, can be represented as This window represents the time range during which all subsystems compete to send data. Specifically, the first calibration time... The size can be set according to the specific needs of the system. For example, it can be set to a fixed value at the level of microseconds or milliseconds to reserve the necessary processing or synchronization time after the start of the main time frame.

[0026] Within sub-timeframe cluster window 1, several sub-timeframes are defined, illustrated in the diagram as sub-timeframe 1, sub-timeframe 2, and sub-timeframe 3. Each sub-timeframe corresponds to a transmission window for a specific data frame. The start time of each sub-timeframe is the start point of its respective sub-timeframe cluster window 1 plus a preset second calibration time (e.g., ...). , , (This is determined.) For example, the start time of sub-time frame 1 is... Once a data frame is successfully transmitted within its corresponding sub-time frame, its transmission enable flag is immediately cleared to prevent duplicate transmissions. Specifically, the number of sub-time frames and the values ​​of each second calibration time are determined based on the number of different message types that need to be periodically transmitted in the network. For example, a power control system might need to transmit different data frames such as temperature, speed, and oil pressure separately, with each data frame allocated within a cluster window by a specific... The value is defined for the next time frame.

[0027] In this embodiment, immediately following the second time frame cluster window 1, the scheduling table also defines a backup time frame window. This window provides additional transmission opportunities for data frames that failed to be transmitted successfully due to arbitration failure within the second time frame cluster 1, thus demonstrating the flexibility and fault tolerance of the scheduling. The start time of the backup time frame window can be the end time of the second time frame cluster window, or it can be set by adding a preset protection interval. Its length should be sufficient to complete at least one transmission of the longest data frame and any possible arbitration process.

[0028] Finally, each subsystem also maintains a master time frame adaptive offset, initially set to zero. This offset value is updated based on the arbitration results at the end of each communication cycle and is used for overall translation to the start of the next master time frame.

[0029] Please refer to Figure 2 , Figure 2 This is a flowchart of a communication bandwidth adaptive management method according to some embodiments of this application. The method is applied to a communication network interconnected via a CAN bus, where each subsystem has an independent local timer and runs the ARINC825 communication protocol. It is executed independently by processors in multiple subsystems connected to the same CAN bus. For simplicity, the method is described below from the perspective of one subsystem; those skilled in the art will understand that all subsystems follow the same logic. The method includes steps S210 to S270.

[0030] S210, in each subsystem of the communication network, initialize the exact same specific communication bandwidth management scheduling table; wherein, the specific communication bandwidth management scheduling table defines the main time frame, the secondary time frame cluster, the secondary time frame, the backup time frame, and the main time frame adaptive offset. Specifically, in a communication network, all subsystems connected to the CAN bus (e.g., multiple power equipment controllers) load an identical, specific communication bandwidth management schedule from their local memory upon startup. The structure of this schedule is as follows: Figure 1 As shown, key parameters include the main time frame period and the first calibration time. The second calibration time of each time frame The offset time of the backup time frame, etc., are consistent across all subsystems. This consistency is key to simplifying the scheduling design of this invention, eliminating the need to write different and complex time slot allocation tables for each device.

[0031] Each subsystem simultaneously initializes its own main time frame start time. It is typically aligned with a zero point of the local timer, although the zero points of each subsystem may deviate from each other, and the initial value of the adaptive offset of the main time frame is set to zero. At this point, all subsystems have a unified but distributed communication timing plan.

[0032] S220: At the start of a main time frame period, each subsystem simultaneously starts its own main time frame and enables the transmission permission of all secondary time frames. Specifically, when the local timer of each subsystem reaches its set start time of the main time frame, a new main time frame period begins. The processor executes the scheduling table logic and immediately allocates all secondary time frames (such as...) Figure 1 The send enable flags of frames 1, 2, and 3 in the system are set to allow transmission. This means that if there are 10 types of messages that need to be sent periodically in the system, the transmission eligibility of these 10 messages in the current period is activated simultaneously, and they will compete for the right to send in subsequent sub-time frame cluster windows.

[0033] S230, when the local time of each subsystem reaches the window of the subtime frame cluster, subtime frames with the same identifier compete to be sent within the subtime frame cluster window; each subsystem records the number of times it participates in arbitration but fails to send, and the subsystem that successfully sends disables the sending enable of the corresponding subtime frame. Specifically, when the local timer reaches the start time of the next time frame cluster window... At that time, all subsystems with transmit enabled will check their transmit queues. Assume three subsystems A, B, and C all need to transmit a similar data frame named F1 (e.g., a status report frame). According to the scheduling table, frame F1 is allocated within the next time frame cluster, with an offset of [missing information]. Therefore, the three subsystems A, B, and C began sending out their respective F1 frames almost simultaneously.

[0034] At this point, the arbitration mechanism of the CAN bus physical layer comes into play. Each F1 frame carries a unique identifier (ID) as part of the frame header. In this embodiment, the arbitration rule of the CAN bus is as follows: on the bus, a dominant level (logic 0) overrides a recessive level (logic 1); when a node sends a recessive bit but detects a dominant bit on the bus, it immediately knows that its arbitration has failed, and immediately stops sending, switches to the receiving state, and waits for the current frame transmission to end before trying again. Since the F1 frame IDs sent by subsystems A, B, and C are different, the frame with the smallest ID will win the arbitration and be successfully sent.

[0035] The above process is called a contention-based transmission. The subsystem that wins the arbitration (let's say A) immediately clears its own F1 frame transmission enable flag after successful transmission to avoid retransmission. Subsystems B and C, which fail the arbitration, each increment their local F1 frame arbitration failure counter by 1. For example, In this embodiment, the record of arbitration failures is for a specific sub-time frame, because arbitration failures cause a transmission delay for that specific frame. For a subsystem, within a main time frame period, different sub-time frames may have successes and failures, and ultimately the main time frame adaptive offset of the subsystem is the sum of the delays caused by all conflicting frames.

[0036] Specifically, if multiple different sub-time frames are defined within a sub-time frame cluster, the system will sequentially enter the window of each sub-time frame and repeat this competition and recording process for the corresponding data frame. For example, after the F1 frame window ends, after... With the time offset, the window for F2 frames is entered, and all subsystems that need to send F2 frames will compete again in a new round.

[0037] S240, each subsystem obtains its own adaptive offset of the main time frame for the current round based on its recorded number of arbitration failures, its own communication baud rate, and the corresponding frame length; After the cluster window time for the next time frame expires, each subsystem begins to calculate its own adaptive offset for the main time frame based on the results of this round of competition. The specific calculation formula is as follows: (1); in, This is the subsystem number (e.g., B or C). For the first The main time frame adaptive offset of the subsystem; in, For the first The length (in bits) of the conflicting frame F1 sent by the subsystem. The frame length usually includes the sum of all bit fields such as frame start, arbitration field, control field, data field, CRC field, acknowledgment field and frame end. in, For the first The CAN bus communication baud rate of the subsystem (in bits per second, i.e., bps) is usually the same in all subsystems, but may differ in complex systems that support multi-rate communication. Therefore, device specificity is preserved in the formula.

[0038] For the first The total number of arbitration failures in the subsystem is the cumulative number of arbitration failures for that frame within the current time frame cluster window.

[0039] The calculation process of formula (1) above reveals the essence of time offset: the process of arbitration failure and waiting for retransmission consumes additional time. For example, if the frame length is 100 bits and the baud rate is 1 Mbps, then the time wasted waiting for a successful frame transmission after an arbitration failure is 100 μs. This formula precisely quantifies the bus time consumed due to arbitration waiting. For subsystem A that wins arbitration and does not record the number of failures, its The result is 0, therefore the calculated value is... If the value is 0, the time frame will not be shifted.

[0040] S250, if a secondary time frame fails to be sent successfully after passing through the secondary time frame cluster window, then the contention for transmission continues in the backup time frame window and the number of arbitration failures is recorded again, and the adaptive offset of the main time frame is updated. Specifically, immediately following the next time frame cluster window, a backup time frame window opens. For those subsystems (such as B and C) that failed arbitration in step S230 but whose transmit enable flag is still enabled, they will attempt to compete for transmission again within this window.

[0041] At this point, the competition process within this window is similar to step S230. The subsystem that wins the arbitration successfully sends and clears the enable bit, while the subsystem that fails records the number of arbitration failures again. After the standby window ends, the subsystems that have not yet successfully sent (e.g., C, which failed after two competitions) will again accumulate and update their main time frame adaptive offset according to formula (2): (2); in, It is the updated main time frame adaptive offset. This is the number of arbitration failures added by the subsystem in the standby window. This accumulation mechanism of formula (2) ensures that the final offset accurately reflects the total time loss caused by all conflicts throughout the entire communication cycle.

[0042] Finally, if the transmit enable bits of all subsystems have been cleared when the backup time frame window is opened (i.e., all frames have been successfully transmitted), the window is skipped directly without any further operation, and the process proceeds to step S260.

[0043] S260, after the main time frame period ends, each subsystem offsets the start time of its next main time frame according to its updated main time frame adaptive offset.

[0044] Specifically, at the end of the current main time frame period, each subsystem has calculated its own final main time frame adaptive offset. This offset will be used to adjust the start time of its next major timeframe, i.e.: (3); in, It is the start time of the next major time frame. It is a fixed master time frame cycle length. In an alternative implementation, if the clock drift is bidirectional (some devices have faster clocks, some slower), a negative offset can be introduced. However, in the arbitration scenario of this scheme, the losing party is always one beat slower than the winning party, so the offset is always positive, which manifests as a shift of the time base backward.

[0045] In this embodiment, since the window positions of the secondary time frame cluster and the secondary time frame are both calibrated with the start time of the main time frame as the time base, their triggering conditions are... and Therefore, when because When movement occurs, these sub-windows also shift synchronously along the timeline without requiring additional item-by-item modifications. In this way, each subsystem executes an adaptive logic where the longer the delay, the later the next round starts, dynamically correcting its own time deviation. This is equivalent to each device automatically adjusting its next departure time based on the length of its communication congestion, thus avoiding congestion with other devices again.

[0046] In this embodiment, after completing step S260, the system returns to step S220 to begin the next new, timing-corrected communication cycle. This method is executed cyclically within each cycle, forming a closed-loop adaptive control process that continuously compensates for slowly varying clock drift caused by factors such as temperature and aging.

[0047] It should be noted that this embodiment simplifies scheduling design by initializing and deploying identical specific communication bandwidth management scheduling tables in all subsystems, eliminating the need to configure complex scheduling schemes for each subsystem individually. It achieves quantitative compensation for clock skew by accurately calculating adaptive offsets based on the number of arbitration failures, frame length, and baud rate. By using the start time of the main time frame as the time base to calibrate all sub-windows, a single offset adjustment can synchronously correct the entire time plan, avoiding the complexity of modifying each item individually. Through a closed-loop mechanism, continuous and dynamic compensation for clock drift is achieved, ensuring the long-term stability of the system.

[0048] To more intuitively demonstrate the technical effects of the present invention, the following embodiments will be combined with... Figure 3 and Figure 4 A detailed explanation will be provided.

[0049] Please refer to Figure 3This is a schematic diagram illustrating the time frame alignment state of a multi-subsystem system before arbitration, provided in an exemplary embodiment of this application. Assume there are three subsystems in the system: device A, device B, and device C. They use... Figure 1 The scheduling table is shown. After communication initialization, due to differences in clock precision, the local times of the three devices, although approximately the same, have slight offsets. At some point on the timeline, they simultaneously enter the main time frame period and enter the secondary time frame cluster window at almost the same time (as shown by the dashed box in the figure). Their respective F1 frame windows (secondary time frame 1) highly overlap on the timeline. This causes them to compete fiercely on the CAN bus, with high-ID devices B and C failing arbitration, and the number of failures is recorded. At this time, the bus load is momentarily high, and communication between B and C experiences delays.

[0050] Please refer to Figure 4 This is a schematic diagram of the time frame state of a multi-subsystem provided in an exemplary embodiment of this application after arbitration and adaptive offset. It has undergone... Figure 3 After the competition shown, the system completes one full cycle from steps S230 to S260. Device A wins the arbitration. Its time base remains unchanged. Device B failed arbitration once. The start time of its entire next main time frame is delayed by a small offset. At this point, device C experiences the most arbitration failures. It is the largest, therefore its time base is delayed the most.

[0051] Based on the above calculations, in the next communication cycle, a significant, quantified misalignment occurred in the timing of the three devices entering the sub-time frame cluster window. Device A's sub-time frame 1 arrived first, followed by device B, while device C's was significantly delayed. The F1 frame transmission windows, which were originally overlapping on the timeline, are now automatically and distributedly separated, allowing each device to successfully transmit within its respective sub-time frame 1 window without further arbitration. The bus load is smoothly distributed, and the communication conflict problem is fundamentally resolved. This adaptive separation process will continue to run, forming a dynamic equilibrium.

[0052] As can be seen from the above specific implementation methods, the communication bandwidth adaptive management method provided in this application successfully transforms the complex multi-node clock synchronization problem into a simple, reliable, and centrally coordinated distributed adaptive control problem through a cleverly designed shared scheduling table and an offset feedback mechanism based on the arbitration characteristics of the CAN bus itself. This method significantly reduces the design and maintenance costs of aviation communication networks while greatly improving their robustness and determinism.

[0053] Some embodiments of this application provide a multi-subsystem communication device. For example... Figure 5The diagram shows the hardware structure of a subsystem 50 constituting this communication device. Each subsystem 50 includes a processor 500, a memory 501, a local timer 502, and a CAN controller 503. The local timer 502 can be a timer module built into the processor or an independent peripheral hardware timer. The processor 500 executes the program stored in the memory 501 to implement all the steps of the communication bandwidth adaptive management method described in Embodiment 1, and transmits and receives data on the CAN bus through the CAN controller 503.

[0054] Specifically, within a subsystem 50, the functional modules formed by the programs run by the processor 500 include: a scheduling table management module, a transmission control module, an arbitration monitoring module, an offset calculation module, and a time base adjustment module. These modules work collaboratively to complete the entire process of adaptive communication bandwidth management.

[0055] The scheduling table management module is responsible for storing and maintaining the specific communication bandwidth management scheduling table. The structure of this scheduling table is similar to... Figure 1 The system maintains consistency, defining a primary time frame, secondary time frame cluster, secondary time frame, backup time frame, and primary time frame adaptive offset. All subsystems' scheduling table management modules load identical scheduling table parameters, including the primary time frame period, first calibration time, lists of secondary calibration times, backup time frame offset time, and a mapping table between frame types and identifiers. This mapping table defines the identifier, frame length, and corresponding secondary time frame number for each periodic data frame. The initial value of the primary time frame adaptive offset is set to zero upon power-on and updated by the offset calculation module based on the arbitration result after each communication cycle.

[0056] The transmission control module manages the transmission enable status of each sub-time frame and strictly controls the timing of data frame transmission. At the beginning of each main time frame period, this module sets the enable bits of all sub-time frames uniformly. When the local timer 502 reaches the start time of the sub-time frame cluster window, for each sub-time frame that is in the active window and has a valid enable bit, the transmission control module initiates transmission through the CAN controller 503. Once a "transmission successful" notification is received from the arbitration monitoring module, the enable bit of the corresponding sub-time frame is immediately cleared to prevent duplicate transmission; if an "arbitration failed" notification is received, the enable bit remains valid, and retry is performed in a later period of the current time frame window or a backup time frame window.

[0057] The arbitration monitoring module interacts closely with the hardware status interface of the CAN controller 503, monitoring the hardware result of each transmission attempt in real time. It captures the status flag automatically set by the CAN controller when arbitration is lost, accurately distinguishing between "successful transmission" and "arbitration failure," and returns the result to the transmission control module. Simultaneously, the arbitration monitoring module transmits the arbitration failure event to the offset calculation module, which includes the length of the conflicting frame and the current communication baud rate.

[0058] The offset calculation module receives arbitration failure events and maintains an independent arbitration failure counter for each sub-timeframe. After the sub-timeframe cluster window ends, it calculates the initial main timeframe adaptive offset for this round according to formula (1) based on the counter values ​​of all failures. After the backup timeframe window ends, if there are still new arbitration failure records, the offset is accumulated and updated to obtain the final main timeframe adaptive offset, which is then passed to the time base adjustment module, while the offset value stored in the scheduling table management module is updated.

[0059] The time base adjustment module is responsible for adjusting the time base for the next communication cycle. After the current major time frame cycle ends, it calculates the start time of the next cycle based on the final offset and updates the system's time base. Since all sub-windows in the scheduling table are calibrated with the start time of the major time frame as the time base, only the `T_major_start` parameter needs to be modified to achieve the overall translation of the sub-time frame cluster, all sub-time frames, and backup time frames, greatly reducing implementation complexity and ensuring strict consistency of the relative timing between windows.

[0060] Through the modular architecture described above, each subsystem 50 constitutes a multi-subsystem communication device capable of independently and distributedly executing the communication bandwidth adaptive management method of this application. This device, as a complete functional node, can be mounted on the CAN bus via its CAN controller 503, and together with other homogeneous devices, form a communication network.

[0061] This embodiment corresponds to the airborne communication system described in the third aspect. The system includes multiple subsystems interconnected via a CAN bus. Each subsystem is a multi-subsystem communication device described in Embodiment 2, that is, it includes at least one CAN controller, a local timer, and a processor, and each subsystem is used to execute the methods described in the above embodiments.

[0062] In an airborne environment, such as a flight control system, power management system, or avionics integrated system, multiple airborne devices (such as flight control computers, engine full authority digital controllers, environmental sensor nodes, etc.) are connected via one or more CAN buses to form the airborne communication system. Each airborne device in the system acts as a subsystem, and its internal memory contains an identical specific communication bandwidth management scheduling table. During power-on initialization, the scheduling table parameters of all subsystems (main time frame period, first calibration time, each second calibration time, backup time frame offset time, etc.) remain consistent, and the adaptive offset of the main time frame starts from zero.

[0063] The system operates as follows: In each communication cycle, each subsystem independently and distributedly executes the steps described in Example 1 based on its local timer. When multiple subsystems compete to transmit within the same time window due to clock skew, the inherent arbitration mechanism of the CAN bus will cause some subsystems to experience arbitration failure. These subsystems calculate their respective adaptive offset of the main time frame based on the number of failures and frame characteristics, and independently shift their own main time frame start time backward in the next cycle. As the system continues to run, this closed-loop process of "competition-offset-realignment" iterates continuously, ultimately causing the time windows of the originally conflicting subsystems to be automatically and quantitatively staggered on the time axis, achieving distributed clock skew compensation and adaptive communication bandwidth management without a centralized coordinator.

[0064] The significant advantage of this airborne communication system lies in the fact that it eliminates the need for any central scheduling node or global clock synchronization protocol. Each subsystem relies on a pre-loaded, identical scheduling table and obtains adaptive offsets by independently monitoring its own arbitration failures. This purely distributed approach resolves the communication conflicts caused by complex scheduling design and clock drift. This simplifies the initial design and airworthiness verification of airborne networks while ensuring highly deterministic and reliable data communication during long-term operation and in harsh environments, demonstrating excellent engineering practicality and a wide range of applications.

[0065] Those skilled in the art will understand that the specific hardware implementation of the aforementioned airborne communication system and subsystem equipment can employ a general-purpose embedded processor, an independent CAN controller, or a microcontroller with an integrated CAN controller, along with supporting crystal clock sources and timer peripherals. The program implementing the method can be stored in non-volatile memory (such as Flash or EEPROM) and executed by the processor as firmware for each subsystem. Following a development process compliant with airborne software standards such as DO-178C, this solution can be directly integrated into existing airborne equipment without significant modifications to the hardware platform.

[0066] This application also provides a computer-readable storage medium corresponding to the method provided in the foregoing embodiments, which stores a computer program (i.e., a program product) thereon. When the computer program is run by a processor, it executes the method described in any of the foregoing embodiments.

[0067] The computer-readable storage medium may include, but is not limited to, various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks. In a specific application scenario, the computer-readable storage medium may be embedded in an aircraft avionics device as part of the firmware, enabling the device to load and execute the program each time it is powered on, thereby obtaining the communication bandwidth adaptive management function described in this invention.

[0068] The computer-readable storage medium provided in the above embodiments of this application and the method provided in the embodiments of this application are based on the same inventive concept and have the same beneficial effects as the methods adopted, run or implemented by the applications stored therein.

[0069] This embodiment also provides a computer program product, which includes a computer program that, when executed by a processor, implements the method as described in any of the above embodiments. This computer program product can be packaged as a software upgrade package that can be loaded into existing airborne equipment, upgrading the equipment's functionality through a data loading interface, enabling it to possess the distributed adaptive bandwidth management capability of this invention without changing the hardware design.

[0070] It should be noted that the flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code, which contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.

[0071] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0072] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. The apparatus embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and there may be other division methods in actual implementation. Furthermore, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Additionally, the coupling or direct coupling or communication connection shown or discussed may be through some communication interface; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.

[0073] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0074] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.

[0075] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application, and they should all be covered within the scope of the claims and specification of this application.

Claims

1. A method for adaptive management of communication bandwidth, applied to a communication network in which each subsystem is interconnected by a CAN bus and has an independent local timer, characterized in that, Includes the following steps: In each subsystem of the communication network, an identical specific communication bandwidth management scheduling table is initialized; wherein, the specific communication bandwidth management scheduling table defines the primary time frame, secondary time frame cluster, secondary time frame, backup time frame, and primary time frame adaptive offset. At the start of a main time frame period, each of the subsystems simultaneously starts its own main time frame and enables the transmission permission of all the secondary time frames. When the local time of each subsystem reaches the window of the subtime frame cluster, the subtime frames with the same identifier compete to be sent within the subtime frame cluster window; each subsystem records the number of times it participates in arbitration but fails to send, and the subsystem that successfully sends disables the sending enable of the corresponding subtime frame. Each subsystem obtains its own adaptive offset of the main time frame for the current round based on its recorded number of arbitration failures, its own communication baud rate, and the corresponding frame length. If a secondary time frame fails to be sent successfully after passing through the secondary time frame cluster window, then the contention for transmission continues within the backup time frame window, the number of arbitration failures is recorded again, and the adaptive offset of the primary time frame is updated. After the main time frame period ends, each subsystem offsets the start time of the main time frame of its next period according to its updated adaptive offset of the main time frame.

2. The method according to claim 1, characterized in that, The specific communication bandwidth management scheduling table is functionally divided through the following structure: The first moment of the period of the main time frame is used to enable the transmission of all secondary time frames. The starting time of the secondary time frame cluster is determined by adding a preset first calibration time to the starting point of the main time frame. The sub-time frame is the transmission window for each type of frame in the device. Its start time is determined by adding a preset second calibration time to the start point of the sub-time frame cluster. After a successful transmission, the transmission enable given by the main time frame is turned off. The backup time frame is used to provide an additional transmission opportunity when the secondary time frame fails to be transmitted within the secondary time frame cluster due to arbitration failure.

3. The method according to claim 1, characterized in that, The secondary time frame cluster and the secondary time frame are calibrated using the start time of the primary time frame as the time base.

4. The method according to claim 1, characterized in that, The adaptive offset of the current main time frame for each subsystem is represented as follows: (1); in, Subsystem number For the first The main time frame adaptive offset of the subsystem. For the first The frame length of the conflicting frames transmitted by the subsystem. For the first The communication baud rate of the subsystem For the first Total number of arbitration failures in the subsystem.

5. The method according to claim 1, characterized in that, The positions of the sub-time frame cluster and the sub-time frame window are both calibrated with the start time of the main time frame as the time base, so that when the start time of the main time frame shifts, the window position shifts synchronously.

6. The method according to claim 5, characterized in that, The positions of the sub-time frame cluster and the sub-time frame window are both calibrated using the start time of the main time frame as the time base, so that when the start time of the main time frame shifts, the window position shifts synchronously, specifically as follows: Using the local timer of the main time frame as the time axis reference, the start time of the secondary time frame cluster is calibrated as: the start time of the main time frame + the first calibration time, and the start time of the secondary time frame is calibrated as: the start time of the secondary time frame cluster + the second calibration time. When the start time of the main time frame shifts, all time windows based on it automatically move accordingly.

7. The method according to claim 1, characterized in that, Based on the CAN bus arbitration mechanism, the sub-time frames with the same identifier compete to be sent within the sub-time frame cluster window. The CAN bus arbitration mechanism is as follows: when multiple subsystems send data frames simultaneously within the same time window, the CAN controller performs bit-by-bit arbitration based on the identifier (ID) of the data frame. The frame with the smaller identifier value wins the arbitration and continues to send, while the frame with the larger identifier value immediately stops sending and waits for the bus to become idle before trying again.

8. The method according to claim 1, characterized in that, The initialization of the identical specific communication bandwidth management scheduling table includes: Set the initial value of the main time frame adaptive offset to zero; The main time frame adaptive offset is updated after the end of each communication cycle and applied in the next cycle.

9. A multi-subsystem communication device, characterized in that, Each subsystem in the device includes at least one CAN controller, a local timer, and a processor; The processor is used to execute programs stored in the memory to implement the method of any one of claims 1 to 8, and to transmit and receive data on the bus via the CAN controller.

10. An airborne communication system, characterized in that, It includes multiple subsystems interconnected via a CAN bus, wherein each subsystem is used to perform the method of any one of claims 1 to 8.