A time slice scheduling based system in a 1553b bus network
By introducing a time-slice scheduling system into the 1553B bus network, different time slices are divided to process different types of messages, which solves the problems of uncertain message transmission cycle and low bus bandwidth utilization, and achieves deterministic transmission and efficient utilization.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHENZHEN TIANXUAN TIANJI ELECTRONICS CO LTD
- Filing Date
- 2022-09-29
- Publication Date
- 2026-05-26
Smart Images

Figure CN115562828B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of computer technology, and in particular to a time-slice-based scheduling system in a 1553B bus network. Background Technology
[0002] The 1553B is a time-division multiplexed command / response data bus widely used in avionics due to its high reliability and real-time performance, and is also widely used in ship systems. A bus controller (BC), several (no more than 31) remote terminals (RTs) for data communication between subsystems and the data bus can be connected to the bus. Typically, a bus monitor (MT) can also be connected to monitor the communication status of each node.
[0003] In the existing technology, messages defined in the 1553B bus table can only be transmitted in the order they are defined. Once a message does not meet the conditions for transmission, the subsequent message is transmitted immediately. If the defined small cycle cannot transmit all the messages that meet the conditions, the subsequent message transmission cycle will be inaccurate. Summary of the Invention
[0004] In view of the above technical problems, the present invention provides a time-slice-based scheduling system in a 1553B bus network, which makes the message transmission cycle of the 1553B bus network certain and the bus bandwidth utilization high.
[0005] Other features and advantages of the invention will become apparent from the following detailed description, or may be learned in part by practice of the invention.
[0006] The purpose of this invention is to provide a time-slice-based scheduling system in a 1553B bus network, the system comprising:
[0007] Multiple time slices, which are divided within each small period according to message period and latency characteristics, are used for transmitting strictly timed messages and non-strictly timed messages. The multiple time slices include:
[0008] Load time slices to filter messages that may be transmitted in the short period and put them into a dynamic cross table;
[0009] The synchronization time slice is used to transmit the bus synchronization messages defined by the system. After each synchronization message is transmitted, it checks whether there is an emergency message to transmit. If there is insufficient time in the remaining time to complete the transmission of the synchronization message, the synchronization message is lost.
[0010] The periodic time segment front end is used to transmit the strictly timed message without a refresh flag when the system defines periodic transmission of the strictly timed message without a refresh flag.
[0011] The UPE time segment is used to transmit the non-strict timing message with refresh flag when the system defines the non-strict timing message with refresh flag.
[0012] Both the SUPE time slice front segment and the SUPE time slice back segment are used to transmit the strict timing message when the system defines the strict timing message with a refresh flag, and the maximum transmission delay of the strict timing message is 1 / 2 of the small cycle time.
[0013] In the latter part of the periodic time segment, if the strictly timed message without a refresh flag used for periodic transmission has not been completed in the former part of the periodic time segment, the incomplete strictly timed message will continue to be transmitted.
[0014] The latter part of the UPE time slice is used to define the non-strict timing message with a refresh flag in the system, and to continue transmitting the incomplete non-strict timing message when the former part of the UPE time slice has not completed the transmission of the non-strict timing message.
[0015] Furthermore, in the early part of the periodic time segment, when the strictly timed message without a refresh flag does not meet the conditions for transmission, the interval between the strictly timed message that does not meet the conditions for transmission and the next strictly timed message is reserved. After each strictly timed message is processed, it is checked whether there is an emergency message to be transmitted. If the remaining time is insufficient to complete the transmission of the current strictly timed message, the current and remaining strictly timed messages are processed in the later part of the periodic time segment, and the remaining time is used to query and process emergency messages.
[0016] Furthermore, in the early part of the UPE time slot, if the non-strictly timed message with the refresh flag does not meet the conditions for transmission, then the subsequent non-strictly timed messages are then organized for transmission. The transmission of the subsequent non-strictly timed messages can occupy the interval time between the previous non-strictly timed message and the next non-strictly timed message. After each non-strictly timed message is processed, it is checked whether there is an emergency message to be transmitted. If the remaining time is insufficient to complete the transmission of the current non-strictly timed message, then the current and remaining non-strictly timed messages are reserved for processing in the later part of the UPE time slot, and the remaining time is used for querying and processing emergency messages.
[0017] Furthermore, in the first and second segments of the SUPE time slot, if a strictly timed message with a refresh flag does not meet the conditions for transmission, the interval between the strictly timed message that does not meet the conditions for transmission and the next strictly timed message is retained. After each strictly timed message is processed, it is checked whether there is an emergency message to be transmitted. When processing a strictly timed message, if the remaining time is insufficient to complete the transmission of the current strictly timed message, the current and remaining strictly timed messages are processed in the second segment of the periodic time slot, and the remaining time is used for querying and processing emergency messages.
[0018] Furthermore, in the latter part of the periodic time segment, when the strictly timed message without a refresh flag does not meet the conditions for transmission, the interval between the current and the next strictly timed message is retained; after each strictly timed message is processed, it is checked whether there is an emergency message transmission; if the remaining time is insufficient to complete the current strictly timed message transmission, the time allocated for the periodic message is reported to the host as insufficient, and at the same time, the remaining time is used to query and process emergency messages.
[0019] Furthermore, the latter part of the UPE time slice is also used to determine whether the current non-strictly timed message meets the transmission conditions when it is obtained that the non-strictly timed message has not been transmitted in the former part of the UPE time slice. If it does not meet the transmission conditions, the subsequent non-strictly timed messages are organized for transmission. The transmission of the subsequent non-strictly timed messages can occupy the interval between the previous non-strictly timed message and the next non-strictly timed message. After the transmission of each non-strictly timed message is completed, the latter part of the UPE time slice is also used to query emergency messages. When the remaining time in the latter part of the UPE time slice is insufficient to complete the transmission of a certain non-strictly timed message, the current and remaining non-strictly timed messages are added to the retry message chain.
[0020] Furthermore, the system also includes a retry message time slice, which is used to organize the transmission of non-strictly timed messages in the relevant retry message chain when there is remaining time before and after the UPE time slice; when the remaining time is insufficient to complete the transmission of the current non-strictly timed message, the retry message chain is retained and processed in subsequent cycles.
[0021] Furthermore, the system also includes a management message time slice, which is used to organize the transmission of management messages when there is remaining time before and after the UPE time slice, and when the transmission of the non-strictly timed messages in the retry message chain has been completed in the retry message time slice. The management messages include: query messages; broadcast RTC messages; synchronization mode commands with data words; and broadcast BIT messages.
[0022] Furthermore, the management message time slot is specifically used for: checking the starting large cycle number and large cycle interval of the management message, and determining whether the management message can enter the dynamic cross table based on the starting large cycle number and the large cycle interval; when the management message transmission error occurs, determining whether to reorganize the transmission on another channel based on its retry status information; when the remaining time of the management message time slot is insufficient to complete the transmission of all management messages, discarding the management messages that have not been transmitted; after each management message is processed, querying whether there is an emergency message transmission, and if the remaining time is insufficient to complete the current management message transmission, discarding the remaining management messages, and using the remaining time to query and process emergency messages.
[0023] The technical solution of the present invention has the following beneficial effects:
[0024] This invention is based on time-slice scheduling, which schedules messages with different periodicity and delay characteristics in different time slice areas. For strictly timed messages, even if the message does not meet the conditions for sending, the interval between the message and the next message must be reserved. In this way, the period of the transmitted messages is determined, and the situation where the inaccurate message transmission period or the incomplete transmission of messages causes the inaccurate transmission time of all subsequent messages will not occur. Attached Figure Description
[0025] Figure 1 This is a time-slice-based scheduling system that is an embodiment of the system described in this specification. Detailed Implementation
[0026] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in many forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided to make this disclosure more comprehensive and complete, and to fully convey the concept of the example embodiments to those skilled in the art. The described features and characteristics can be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a full understanding of embodiments of this disclosure. However, those skilled in the art will recognize that the technical solutions of this disclosure can be practiced with one or more of the specific details omitted, or other systems, components, apparatuses, steps, etc., can be employed. In other instances, well-known technical solutions are not shown or described in detail to avoid obscuring various aspects of this disclosure.
[0027] When reading the following embodiments, please also refer to the description of the 1553B: On the 1553B data bus, messages are transmitted sequentially in time, and there are 10 possible communication modes between BC and RT on the bus. Most messages are processed in a fixed order, period, and phase. These messages are called periodic messages, and their transmission process is called synchronous communication. These messages can be processed according to a static timetable. Messages with the shortest period time are arranged in a small frame (small period). The period time is harmonicized according to powers of 2 of the small period to form a main frame (large period). Each large period consists of several small periods, and the remaining periods are also harmonicized according to powers of 2 and placed in the message table.
[0028] like Figure 1 As shown in the embodiments of this specification, a time-slice-based scheduling system in a 1553B bus network is provided. The system 100 includes:
[0029] Multiple time slices are divided into multiple time slices within each small period according to message period and delay characteristics. These multiple time slices are used to transmit strictly timed messages and non-strictly timed messages.
[0030] The multiple time slices include a loading time slice 101, used to filter messages that may be transmitted in the current small cycle and place them into a dynamic cross-tabulation. Specifically, the loading time slice 101 can filter all messages that may be transmitted in the current subsystem 100 mode and the current small cycle and place them into the dynamic cross-tabulation. The loading time slice 101 should generally not exceed 1% of the slice time. Since this is a time-for-space mechanism, if space is sufficient, all messages that need to be transmitted in all small cycles and all subsystem 100 modes can be stored in memory. During application execution, these messages can be directly retrieved from memory, saving time spent searching for messages.
[0031] If there is remaining time after the dynamic crosstab is formed, that remaining time needs to be preserved. No urgent message queries will be performed during this time, because the time allotted for loading time slot 101 is already insufficient; the remaining time generally will not exceed 50us, which is insufficient to complete the transmission of an urgent message.
[0032] Synchronization time segment 102 is used to transmit bus synchronization messages defined by the system 100. After each synchronization message is transmitted, it checks whether there is an emergency message to be transmitted. If there is insufficient time in the remaining time to complete the transmission of the synchronization message, the synchronization message is lost, but the remaining time is used to query and process the emergency message.
[0033] The periodic time segment 103 is used to transmit the strict timing message without a refresh flag when the system 100 defines the periodic transmission of the strict timing message without a refresh flag.
[0034] UPE time segment 104 is used to transmit the non-strict timing message with refresh flag when the system 100 defines the non-strict timing message with refresh flag.
[0035] Both the SUPE time slice front segment 105 and the SUPE time slice back segment 106 are used to transmit the strict timing message when the system 100 defines the strict timing message with a refresh flag, and the maximum transmission delay of the strict timing message is 1 / 2 of the small cycle time.
[0036] In the latter part of the periodic time segment 107, if the strictly timed message without a refresh flag is not completed in the former part of the periodic time segment 103, the incomplete strictly timed message continues to be transmitted.
[0037] The UPE time slice latter segment 108 is used to define the non-strict timing message with a refresh flag in the system 100, and to continue transmitting the incomplete non-strict timing message when the UPE time slice former segment 104 has not completed the transmission of the non-strict timing message.
[0038] In one embodiment, in the first segment 103 of the periodic time area, when a periodically transmitted strictly timed message without a refresh flag does not meet the transmission conditions, the interval between the strictly timed message that does not meet the transmission conditions and the next strictly timed message is retained. Furthermore, after each strictly timed message is processed, it is checked whether there is an emergency message to transmit. If, when processing a strictly timed message, the remaining time is insufficient to complete the transmission of the current strictly timed message, then the current and remaining strictly timed messages are processed in the second segment 107 of the periodic time area, and the remaining time is used for querying and processing emergency messages. Specifically, in the first segment 103 of the periodic time area, the condition for not transmitting a periodically transmitted strictly timed message without a refresh flag refers to the RT corresponding to the strictly timed message being inactive.
[0039] In one embodiment, in the UPE time slot pre-segment 104, when a non-strictly timed message with a refresh flag does not meet the transmission conditions, subsequent non-strictly timed messages are then organized for transmission. The transmission of subsequent non-strictly timed messages can occupy the interval between the previous non-strictly timed message and the next non-strictly timed message. After each non-strictly timed message is processed, it is checked whether there is an emergency message to transmit. If the remaining time is insufficient to complete the transmission of the current non-strictly timed message, the current and remaining non-strictly timed messages are reserved for processing in the UPE time slot post-segment 108, and the remaining time is used for querying and processing emergency messages. Specifically, the transmission conditions for non-strictly timed messages with refresh flags in the UPE time slot pre-segment 104 may include: the RT corresponding to the non-strictly timed message is active, the association flag is set, the message refresh flag is set, and the vector word corresponding to the message is set.
[0040] In one embodiment, in the SUPE time slice pre-segment 105 and SUPE time slice post-segment 106, if a strictly timed message with a refresh flag does not meet the transmission conditions, the interval between the strictly timed message that does not meet the transmission conditions and the next strictly timed message is retained. Furthermore, after each strictly timed message is processed, it is checked whether there is an emergency message transmission. When processing a strictly timed message, if the remaining time is insufficient to complete the current strictly timed message transmission, the current and remaining strictly timed messages are processed in the periodic time slice post-segment 107, and the remaining time is used for emergency message querying and processing. Specifically, in the SUPE time slice pre-segment 105 and SUPE time slice post-segment 106, the transmission conditions for a strictly timed message with a refresh flag may include: the RT corresponding to the strictly timed message is active, the association flag is set, the message refresh flag is set, and the vector word corresponding to the message is set.
[0041] In one embodiment, in the latter part 107 of the periodic time segment, when the strictly timed message without a refresh flag in periodic transmission does not meet the conditions for transmission, the interval time between the current and the next strictly timed message is retained; after each strictly timed message is processed, it is checked whether there is an emergency message transmission; if the remaining time is insufficient to complete the current strictly timed message transmission, the time allocated for periodic messages is reported to the host as insufficient, and at the same time, the remaining time is used for querying and processing emergency messages. The condition for not sending the strictly timed message without a refresh flag in periodic transmission refers to the RT corresponding to the strictly timed message being inactive.
[0042] In one embodiment, the UPE time slice later segment 108 is further configured to, upon receiving a non-strictly timed message that has not been fully transmitted in the UPE time slice earlier segment 104, determine whether the current non-strictly timed message meets the transmission conditions. If it does not meet the transmission conditions, then organize the transmission of subsequent non-strictly timed messages. The transmission of subsequent non-strictly timed messages may occupy the interval between the previous non-strictly timed message and the next non-strictly timed message. After each non-strictly timed message is transmitted, the UPE time slice later segment 108 is further configured to query for emergency messages. When the remaining time in the UPE time slice later segment 108 is insufficient to complete the transmission of a certain non-strictly timed message, the current and remaining non-strictly timed messages are added to the retry message chain. The sending conditions for non-strictly timed messages in the UPE time slice later segment 108 are: the RT corresponding to the message is active, the association flag is set, the message refresh flag is set, and the vector word corresponding to the message is set.
[0043] As a supplement, the system 100 also includes a retry message time slice 109, which is used to transmit the non-strictly timed messages in the retry message chain related to the remaining time when there is remaining time in the first segment 104 and the second segment 108 of the UPE time slice; when the remaining time is insufficient to complete the transmission of the current non-strictly timed message, the retry message chain is retained and processed in subsequent cycles.
[0044] The retry message time segment 109 does not actually correspond to the actual time segment, but rather represents a portion of the remaining time within the UPE time segment. If there is remaining time in the UPE time segment, a limited amount of that time is reserved for the retry message time segment 109 to organize the transmission of relevant retry messages. The remaining time in the retry message time segment 109 is not used for emergency message queries and is instead reserved for the following management message segments.
[0045] As a supplement, the system 100 also includes a management message time slice 110, which is used to organize the transmission of management messages when there is remaining time in the first segment 104 and the second segment 108 of the UPE time slice, and when the transmission of the non-strictly timed messages in the retry message chain has been completed in the retry message time slice 109. The management messages include: query messages; broadcast RTC messages; synchronization mode commands with data words; and broadcast BIT messages.
[0046] In terms of time, after retrying message time segment 109, the management message segment does not actually correspond to the real segment time, but is a possible part of the UPE time segment time.
[0047] As a supplement, the management message time slot 110 is specifically used for: checking the starting large cycle number and large cycle interval of the management message, and determining whether the management message can enter the dynamic cross table based on the starting large cycle number and the large cycle interval; when the management message transmission error occurs, determining whether to reorganize the transmission on another channel based on its retry status information; when the remaining time of the management message time slot 110 is insufficient to complete the transmission of all management messages, discarding the management messages that have not been transmitted; after each management message is processed, querying whether there is an emergency message transmission, and if the remaining time is insufficient to complete the current management message transmission, discarding the remaining management messages, and using the remaining time to query and process emergency messages.
[0048] As can be seen from the above embodiments, the technical solution of the present invention has the following beneficial effects:
[0049] This invention is based on time-slice scheduling, which schedules messages with different periodicity and delay characteristics in different time slice areas. For strictly timed messages, even if the message does not meet the conditions for sending, the interval between the message and the next message must be reserved. In this way, the period of the transmitted messages is determined, and the situation where the inaccurate message transmission period or the incomplete transmission of messages causes the inaccurate transmission time of all subsequent messages will not occur.
[0050] 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 them. Although the present invention 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 therein; and these 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 the present invention. In addition, those skilled in the art can understand that although some embodiments described herein include certain features included in other embodiments but not other features, combinations of features of different embodiments are meant to be within the scope of the present invention and form different embodiments. For example, in the above claims, any one of the claimed embodiments can be used in any combination. The information disclosed in this background section is only intended to deepen the understanding of the overall background technology of the present invention, and should not be regarded as an admission or in any form implying that the information constitutes prior art known to those skilled in the art.
Claims
1. A time-slice-based scheduling system in a 1553B bus network, characterized in that, The system includes: Multiple time slices, which are divided within each small period according to message period and latency characteristics, are used for transmitting strictly timed messages and non-strictly timed messages. The multiple time slices include: Load time slices to filter messages that may be transmitted in the short period and put them into a dynamic cross table; The synchronization time slice is used to transmit the bus synchronization messages defined by the system. After each synchronization message is transmitted, it checks whether there is an emergency message to transmit. If there is insufficient time in the remaining time to complete the transmission of the synchronization message, the synchronization message is lost. The periodic time segment front end is used to transmit the strictly timed message without a refresh flag when the system defines periodic transmission of the strictly timed message without a refresh flag. The UPE time segment is used to transmit the non-strict timing message with refresh flag when the system defines the non-strict timing message with refresh flag. Both the SUPE time slice front segment and the SUPE time slice back segment are used to transmit the strict timing message when the system defines the strict timing message with a refresh flag, and the maximum transmission delay of the strict timing message is 1 / 2 of the small cycle time. In the latter part of the periodic time segment, if the strictly timed message without a refresh flag used for periodic transmission has not been completed in the former part of the periodic time segment, the incomplete strictly timed message will continue to be transmitted. The latter part of the UPE time slice is used to define the non-strict timing message with a refresh flag in the system, and to continue transmitting the incomplete non-strict timing message when the former part of the UPE time slice has not completed the transmission of the non-strict timing message.
2. The time-slice-based scheduling system in the 1553B bus network according to claim 1, characterized in that, In the early part of the periodic time segment, when a strictly timed message without a refresh flag does not meet the conditions for transmission, the interval between the strictly timed message that does not meet the conditions for transmission and the next strictly timed message is reserved. After each strictly timed message is processed, it is checked whether there is an emergency message to be transmitted. If the remaining time is insufficient to complete the transmission of the current strictly timed message, the current and remaining strictly timed messages are processed in the later part of the periodic time segment, and the remaining time is used to query and process emergency messages.
3. The time-slice-based scheduling system in the 1553B bus network according to claim 1, characterized in that, In the early part of the UPE time slot, if the non-strictly timed message with the refresh flag does not meet the conditions for transmission, then the subsequent non-strictly timed messages are then organized for transmission. The transmission of the subsequent non-strictly timed messages can occupy the interval between the previous non-strictly timed message and the next non-strictly timed message. After each non-strictly timed message is processed, check if there is an emergency message to be transmitted. If the remaining time is insufficient to complete the current non-strictly timed message transmission, then the current and remaining non-strictly timed messages are reserved for processing in the later part of the UPE time slot, and the remaining time is used to query and process emergency messages.
4. The time-slice-based scheduling system in the 1553B bus network according to claim 1, characterized in that, In the first and second segments of the SUPE time slot, if a strictly timed message with a refresh flag does not meet the conditions for transmission, the interval between the strictly timed message that does not meet the conditions for transmission and the next strictly timed message is retained. After each strictly timed message is processed, it is checked whether there is an emergency message to be transmitted. When processing a strictly timed message, if the remaining time is insufficient to complete the transmission of the current strictly timed message, the current and remaining strictly timed messages are processed in the second segment of the periodic time slot, and the remaining time is used for querying and processing emergency messages.
5. The time-slice-based scheduling system in the 1553B bus network according to claim 1, characterized in that, In the latter part of the periodic time segment, when the strictly timed message without a refresh flag does not meet the conditions for transmission, the interval between the current and the next strictly timed message is retained; after each strictly timed message is processed, it is checked whether there is an emergency message to be transmitted; if the remaining time is insufficient to complete the current strictly timed message transmission, the time allocated for the periodic message is reported to the host as insufficient, and at the same time, the remaining time is used to query and process emergency messages.
6. The time-slice-based scheduling system in the 1553B bus network according to claim 1, characterized in that, The latter part of the UPE time slot is also used to determine whether the current non-strictly timed message meets the transmission conditions when a non-strictly timed message that has not been transmitted in the former part of the UPE time slot is obtained. If the transmission conditions are not met, the subsequent non-strictly timed messages are organized for transmission. The transmission of the subsequent non-strictly timed messages may occupy the interval between the previous non-strictly timed message and the next non-strictly timed message. After the transmission of each non-strictly timed message is completed, the latter part of the UPE time slot is also used to query emergency messages. If the remaining time in the latter part of the UPE time slot is insufficient to complete the transmission of a certain non-strictly timed message, the current and remaining non-strictly timed messages are added to the retry message chain.
7. The time-slice-based scheduling system in the 1553B bus network according to claim 6, characterized in that, The system also includes a retry message time slice. The retry message time slice is used to organize the transmission of non-strictly timed messages in the relevant retry message chain when there is remaining time before and after the UPE time slice. When the remaining time is insufficient to complete the transmission of the current non-strictly timed message, the retry message chain is retained and processed in subsequent cycles.
8. The time-slice-based scheduling system in the 1553B bus network according to claim 7, characterized in that, The system also includes a management message time slice, which is used to organize the transmission of management messages when there is remaining time before and after the UPE time slice, and when the transmission of the non-strictly timed messages in the retry message chain has been completed in the retry message time slice. The management messages include: query messages; broadcast RTC messages; synchronization mode commands with data words; and broadcast BIT messages.
9. The time-slice-based scheduling system in the 1553B bus network according to claim 8, characterized in that, The management message time slot is specifically used for: Check the starting major cycle number and major cycle interval of the management message, and determine whether the management message can enter the dynamic cross table based on the starting major cycle number and the major cycle interval; When the management message transmission fails, determine whether to reorganize the transmission on another channel based on its retry status information; When the remaining time in the management message time slot is insufficient to complete the transmission of all management messages, the untransmitted management messages are discarded. After each management message is processed, check if there is an emergency message to be transmitted. If the remaining time is insufficient to complete the current management message transmission, discard the remaining management messages and use the remaining time to query and process emergency messages.