Communication control device for a participant station of a serial bus system and method for handling messages in a participant station of a serial bus system

The communication control device ensures a predefined transmission sequence for messages with the same CAN identifier, addressing the random order issue in CAN bus systems, achieving high data rates and error robustness for applications like CiA613-3 and ISO-TP.

DE102024139318A1Undetermined Publication Date: 2026-06-25ROBERT BOSCH GMBH
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
DE · DE
Patent Type
Applications
Current Assignee / Owner
ROBERT BOSCH GMBH
Filing Date
2024-12-20
Publication Date
2026-06-25

AI Technical Summary

Technical Problem

The internal queuing procedure in CAN bus systems for messages with the same CAN identifier results in a random transmission order, leading to potential message unavailability and reduced effective net data rate, which fails to meet timing requirements in higher-level technical systems.

Method used

A communication control device and method that manage messages with a sequence index for messages having the same CAN identifier, ensuring a predefined transmission sequence without requiring memory position monitoring, allowing for high data rates and error robustness.

Benefits of technology

Maintains the intended transmission sequence for messages with the same CAN identifier, achieving data rates of at least 5 Mbit/s to 20 Mbit/s with minimal resource expenditure and preventing system malfunctions, suitable for applications like CiA613-3 and ISO-TP.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A communication control device (11; 21) for a subscriber station (10; 20; 30) for a serial bus system (1) and a method for handling messages (45; 46; 47) in a subscriber station (10; 20; 30) of a serial bus system (1) is provided. The communication control unit (11; 21) has a message management module (1122) for managing messages (45; 46; 47) that are to be sent by the communication control unit (11; 21) to a bus (40) of the bus system (1) to control communication between the subscriber station (10; 20; 30) and at least one other subscriber station (10; 20; 30) of the bus system (1), and a transmission sequence determination module (1121) for determining a sequence index (SQ_IDX) for the messages (45; 46; 47), wherein each message (45; 46; 47) has an identifier (4531) whose value indicates the priority with which the message (45; 46;47) to be sent to the bus (40), wherein the transmission sequence determination module (1121) is configured to determine a sequence index (SQ_IDX) for each identifier (4531) and assign it to the identifier (4531), and wherein the message management module (1122) is configured to determine the transmission sequence for messages (45; 46; 47) whose identifiers (4531) have the same value, using the sequence index (SQ_IDX).
Need to check novelty before this filing date? Find Prior Art

Description

Technical field The present invention relates to a communication control device for a subscriber station of a serial bus system and a method for handling messages in a subscriber station of a serial bus system that operates with high data rate and high error robustness. State of the art A bus system is frequently used for communication between sensors and control units in technical systems, such as those in vehicles. Within this bus system, data is created, transmitted, and read as messages. Many different standards exist for this purpose, such as Classical CAN, CAN FD, and CAN XL, all standardized in the international standard ISO 11898-1:2024. Messages are transmitted between the bus system participants, such as sensors, control units, transmitters, etc. These bus participants are also called nodes or participant stations. Each participant station in a bus system has a transmit memory that can store more than one message. A communication controller manages the messages in the transmit memory and determines the order in which these messages are sent according to various criteria. In time-controlled systems, such as FlexRay or TTCAN, there is a system-wide schedule specifying when each message should be sent. Often, the transmit memories are managed so that the messages are sent in the order in which they are written to the memory. This type of transmission order is also known as FIFO (First In, First Out). In contrast, in CAN bus systems, the transmission order of messages from a receiving station is usually determined by internal arbitration within the receiving station. This process uses CAN identifiers. Each message stored in the receiving station's transmit memory and to be sent over the bus is assigned a CAN identifier. The message with the highest priority CAN identifier, according to the CAN bus arbitration rules, is transmitted to the bus first. This transmission order is also known as a priority queue. However, a problem arises because this internal queuing procedure in CAN does not provide a clear result when the receiving station intends to send two or more messages with the same CAN identifier. It is possible that the relative transmission order of such messages with the same CAN identifier depends on the positions of these messages in the receiving station's transmission memory. This is the case, for example, with an M_CAN IP module of the applicant in the present patent application, which is currently available on the market. However, it is also possible that the relative transmission order of such messages with the same CAN identifier is random. However, if the specified transmission sequence is not followed, the messages may become unusable and have to be retransmitted. This reduces the effective net data rate in the bus system. As a result, the timing requirements of the higher-level technical system cannot be met. Disclosure of the invention Therefore, the object of the present invention is to provide a communication control device for a participant station of a serial bus system and a method for handling messages in a participant station of a serial bus system, which solve the aforementioned problems. In particular, a communication control device for a participant station of a serial bus system and a method for handling messages in a participant station of a serial bus system are to be provided, which can achieve a high data rate on the bus and high error robustness of the communication. The problem is solved by a communication control device for a subscriber station of a serial bus system according to claim 1.The communication control unit has a message management module for managing messages that are to be sent by the communication control unit to a bus of the bus system to control communication between the subscriber station and at least one other subscriber station of the bus system, a transmission sequence determination module for determining a sequence index for the messages, wherein each message has an identifier whose value indicates the priority with which the message is to be sent to the bus, wherein the transmission sequence determination module is configured to determine a sequence index for each identifier and assign it to the identifier, and wherein the message management module is configured to determine the transmission sequence for messages whose identifiers have the same value using the sequence index. Due to the design of the communication control unit, the specified transmission sequence for messages is maintained. The communication control unit defines a transmission sequence for a series of messages with the same CAN identifier. However, the communication control unit does not need to monitor the memory locations of these messages with the same CAN identifier. Furthermore, the communication control unit does not need to use a FIFO memory for this purpose. Therefore, the procedure that can be carried out by the communication control unit can be implemented with very little resource expenditure, since the sequence index only needs to have a small range of values ​​and also allows a return to 0. Another advantage is that the communication control unit does not need to consider the positions of messages in memory when it enters a sequence of messages with the same CAN identifier into a transmit memory managed as a "priority queue". Instead, the communication control unit can use all free memory locations. This makes it possible to adhere to the prescribed transmission sequence for messages with minimal time and cost. Another major advantage is that the internal arbitration of an existing communication control unit requires only minor adjustments. These adjustments can be easily implemented in any communication control unit, particularly CAN controllers. This makes retrofitting existing communication control units, especially CAN controllers, very straightforward, thus conserving resources. Therefore, the communication control unit enables the various CAN bus systems to be used for certain applications in technical systems, particularly in vehicles, which absolutely require a unique transmission sequence of messages from a receiving station with the same CAN identifier. Such applications include, for example, fragmentation according to CiA613-3, CANsec according to CiA613-2, or ISO-TP according to the international standard ISO 15765-2. The design of the communication control unit described above helps prevent malfunctions in the higher-level system(s), as the correct message sequence is maintained according to the intended priority. Furthermore, a net data rate of at least 5 Mbit / s up to approximately 8 Mbit / s or 10 Mbit / s or higher, and in particular up to 20 Mbit / s, can be achieved on the bus. In this case, a bit is less than 100 ns long. Moreover, the size of the user data can be up to 2048 bytes per frame. Naturally, a wide variety of values ​​for the number of bytes per frame are possible, in particular up to 512 bytes or 1024 bytes, or any other value. Further advantageous configurations of the communication control device are specified in the dependent claims. The transmission order determination module may be configured to map the specified sequence index in a message storage module to the identifier, and the message management module may be configured to determine the transmission order for messages whose identifiers have the same value, using the sequence index stored in the message storage module. The message storage module may include a transmission priority queue with a predetermined number of memory slots, each containing a message with the identifier and the sequence index. In one embodiment, the message storage module has a send priority queue which has a predetermined number of memory slots in which a message with the identifier, the sequence index and a range is stored, wherein the sequence index has a predetermined range of values, and wherein the range is one of three ranges into which the predetermined range of values ​​of the sequence index is divided. The sequence index can be an integer chosen from the predetermined range of values, with the send order determination module being designed to increment the sequence index for each successive message in the send priority queue and, after exceeding the maximum value of the predetermined range of values ​​of the sequence index for the next message in the send priority queue, to revert to the minimum value of the range. According to one embodiment, the predetermined value range of the sequence index is determined by the fact that there is a difference of at least 3×#Slt -4 between the minimum value of the sequence index and the maximum value of the sequence index, where #Slt is the predetermined number of memory slots in the transmit priority queue. It is conceivable that the predetermined value range of the sequence index is divided into three directly consecutive areas, which have a first, second and third area and each have a minimum size of #Slt - 1, where #Slt is the predetermined number of memory slots in the transmit priority queue, where the first area starts with the minimum value of the sequence index, where the second area is seamlessly and non-overlappingly positioned between the first area and the third area, and where the third area ends with the maximum value of the sequence index. The communication control device described above can be part of a participant station for a serial bus system, which also has a transmit / receive device for sending a signal generated by the communication control device for a frame to a bus of the bus system and for receiving a signal from the bus, wherein the communication control device is designed to negotiate with the other participant stations on the bus in the first communication phase which of the participant stations of the bus system will have at least temporary, exclusive, collision-free access to the bus in the subsequent second communication phase. Optionally, the transmit / receive device is designed to generate bus states for the frame with a first operating mode in a first communication phase and to generate bus states for the frame with a second operating mode in a second communication phase, which differs from the first operating mode. The previously described participant station can be part of a bus system that also includes a bus and at least two participant stations, which are interconnected via the bus in such a way that they can communicate serially with each other. In this case, at least one of the at least two participant stations is a participant station as described above. The aforementioned problem is further solved by a method for handling messages in a participant station of a serial bus system according to claim 11. The method is carried out with a communication control unit of the participant station, wherein the communication control unit performs the steps of: managing, with a message management module, messages that are to be sent by the communication control unit to a bus of the bus system to control communication between the participant station and at least one other participant station of the bus system; determining, with a transmission sequence determination module, a sequence index for the messages, wherein each message has an identifier whose value indicates the priority with which the message is to be sent to the bus, wherein, in the determination step, the transmission sequence determination module determines a sequence index for each identifier and assigns it to the identifier.and wherein, in the step of managing messages whose identifiers have the same value, the message management module determines the sending order using the sequence index. The procedure offers the same advantages as previously mentioned in relation to the message handling equipment and / or the subscriber station. Other possible implementations of the invention also include combinations of features or embodiments described previously or subsequently with regard to the exemplary embodiments, even if not explicitly mentioned. In such cases, the person skilled in the art will also add individual aspects as improvements or additions to the respective basic form of the invention. Drawings The invention is described in more detail below with reference to the accompanying drawing and exemplary embodiments. The figures show: Fig. 1 a simplified block diagram of a bus system according to a first embodiment; Fig. 2 a diagram illustrating the structure of a message that can be sent and / or received by participant stations of the bus system according to the first embodiment; Fig. 3 a simplified schematic block diagram of a participant station of the bus system according to the first embodiment; Figs. 4 and 5 a time course of signals that occur during normal operation in the bus system according to the first embodiment; Fig. 6 a diagram of the structure of part of a communication control unit of the participant station of Fig. 3; and Fig. 7 a diagram illustrating a function of a message management module of the communication control unit of Fig. 6. In the figures, identical or functionally equivalent elements are provided with the same reference symbols unless otherwise specified. Description of the exemplary implementations Fig. 1 shows, as an example, a bus system 1, which can be, in particular, at least partially a CAN bus system, a CAN FD bus system, a CAN XL bus system, etc. The bus system 1 can be used in a vehicle, in particular a motor vehicle, an aircraft, etc., or in a hospital, etc. In Fig. 1, the bus system 1 has a plurality of terminal stations 10, 20, 30, each connected to a bus 40 or bus line with a first bus wire 41 and a second bus wire 42. The bus wires 41, 42 can also be called CAN_H and CAN_L for the signals on bus 40. Messages 45, 46, 47 in the form of signals can be transmitted between the individual terminal stations 10, 20, 30 via bus 40. The terminal stations 10, 20, 30 are, for example, control units or display devices of a motor vehicle. As shown in Fig. 1, the subscriber stations 10, 30 each have a communication control unit 11 and a transmit / receive unit 12. The transmit / receive unit 12 has a transmit module 121 and a receive module 122. The subscriber station 20 has a communication control unit 21 and a transmit / receive unit 22. The transmit / receive unit 22 has a transmit module 221 and a receive module 222. The transmit / receive equipment 12 of the subscriber stations 10, 30 and the transmit / receive equipment 22 of the subscriber station 20 are each directly connected to the bus 40, even though this is not shown in Fig. 1. The communication control devices 11, 21 each serve to control communication between the respective subscriber station 10, 20, 30 via bus 40 with at least one other subscriber station of the subscriber stations 10, 20, 30 that are connected to bus 40. The communication control unit 11 creates and reads initial messages 45 and 47, which are, for example, CAN messages 45 and 47. These CAN messages 45 and 47 are structured, for example, according to the CAN XL format as defined in ISO 11898-1:2024. The transmit / receive unit 12 is used to send and receive messages 45 and 47 from bus 40. The transmit module 121 receives a digital transmit signal TxD generated by the communication control unit 11 for one of the messages 45 and 47 and converts it into signals for transmission on bus 40. The digital transmit signal TxD can be a pulse-width modulated signal, at least temporarily or in sections. The receive module 122 receives signals transmitted on bus 40 corresponding to messages 45 to 47 and generates a digital receive signal RxD from them. The receiver module 122 sends the receive signal RxD to the communication control unit 11. Additionally, the communication control unit 11 can be configured to create and read second messages 46, which are, for example, CAN FD messages 46. The transmit / receive unit 12 can be configured accordingly. The communication control unit 21 can be implemented like a conventional CAN controller according to ISO 11898-1:2024, i.e., like a CAN FD-tolerant Classical CAN controller or a CAN FD controller. The communication control unit 21 creates and reads secondary messages 46, for example, CAN FD messages. The transmit / receive unit 22 is used to send and receive the messages 46 from the bus 40. The transmit module 221 receives a digital transmit signal TxD created by the communication control unit 21 and converts it into signals for a message 46 on the bus 40. The receive module 222 receives signals transmitted on the bus 40 corresponding to messages 45 to 47 and generates a digital receive signal RxD from them. The transmit / receive unit 22 may be implemented like a conventional CAN FD transceiver or a CAN SIC transceiver. With the two participant stations 10, 30, the formation and subsequent transmission of messages 45, 47 using various CAN formats, in particular the CAN FD format or the CAN XL format, as well as the reception of such messages 45, 47, is possible. This is described in more detail below for message 45. Fig. 2 shows a frame 450 for message 45, which is in particular a CAN XL frame or a CAN FD frame, as provided by the communication control unit 11 to the transmit / receive unit 12 for transmission on bus 40. In this embodiment, the communication control unit 11 creates the frame 450 as compatible with CAN FD. Alternatively, the frame 450 is compatible with any successor standard for CAN FD or CAN XL. According to Fig. 2, the frame 450 for CAN communication on the bus 40 is divided into different communication phases 451, 452, namely an arbitration phase 451 (first communication phase) and a data phase 452 (second communication phase). Frame 450 has, after a start bit SOF, an arbitration field 453, a control field 454, a first switch field 455, a data field 456, a checksum field 457, a second switch field 458, and a frame termination field 459. The checksum field 457, the second switch field 458, and the frame termination field 459 form a frame termination phase 457, 458, 459 of frame 450. The arbitration field 453 is used to store an identifier 4531. A Classical CAN frame does not have switch fields 455 and 458. In arbitration phase 451, using the identifier (ID) 4531 in arbitration field 453, the participating stations 10, 20, and 30 negotiate bitwise which station wants to send the message 45, 46 with the highest priority and therefore receives exclusive access to bus 40 of bus system 1 for sending in the subsequent data phase 452. In arbitration phase 451, CAN XL also uses a physical layer, as with CAN and CAN-FD. This physical layer corresponds to the physical layer, or layer 1, of the well-known OSI model (Open Systems Interconnection model). During phase 451, the well-known CSMA / CR protocol is used, which allows simultaneous access to bus 40 by participant stations 10, 20, and 30 without destroying the higher-priority message 45 or 46. This makes it relatively easy to add further bus participant stations 10, 20, and 30 to bus system 1, which is very advantageous. The CSMA / CR protocol necessitates the existence of so-called recessive states on bus 40 (Fig. 1), which can be overridden by other participating stations 10, 20, 30 with dominant levels or states on bus 40. In the recessive state, high impedance conditions prevail at the individual participating station 10, 20, 30, which, in combination with the parasitic effects of the bus circuitry, results in longer time constants. This limits the maximum bit rate of today's CAN FD physical layer to approximately 2 megabits per second in real-world vehicle applications. At the end of the arbitration phase 451 of CAN FD and CAN XL, the data phase 452 is switched on using the first switching field 455. In data phase 452, in addition to part of the first switching field 455, the payload data of the CAN-XL frame 450 or message 45 from data field 456, as well as the checksum field 457 and part of the second switching field 458, are transmitted. With today's CAN-XL physical layer, a maximum bit rate of up to approximately 20 megabits per second is possible in data phase 452. At the end of data phase 452 for CAN FD and CAN XL, the second switching field 458 switches back to arbitration phase 451. A sender of message 45 only begins sending bits of data phase 452 to bus 40 when the subscriber station 10, as the sender, has won the arbitration and thus has exclusive access to bus 40 of bus system 1 for sending. Thus, in the arbitration phase 451, the participating stations 10 and 30 partially use a format known from CAN / CAN-FD according to ISO 11898-1:2024, specifically up to and including the FDF bit known from ISO 11898-1:2024. However, compared to CAN or CAN FD, CAN XL allows for an increase in the net data transmission rate in the data phase 452, the second communication phase, particularly to over 10 megabits per second. Furthermore, it is possible to increase the size of the payload per frame, especially to approximately 2 kilobytes or any other value. Fig. 3 shows the basic structure of the subscriber station 10 with the communication control unit 11 and the transmit / receive unit 12. The subscriber station 30 and / or the subscriber station 20 can be structured similarly to that shown in Fig. 3. Therefore, subscriber stations 20 and 30 are not described separately. According to Fig. 3, the subscriber station 10 has, in addition to the communication control unit 11 and the transceiver 12, a microcontroller 13 to which the communication control unit 11 is assigned and which has a central processing unit (CPU) 131. Additional parts of the subscriber station 10, such as a power supply unit that provides electrical energy to the transceiver 12, are not shown in Fig. 3 for the sake of simplicity. The communication control unit 11 is basically designed for the implementation of CAN functions in accordance with ISO11898-1:2024. The communication control unit 11 has a protocol controller 111 and a protocol extension block 112. The protocol controller 111 creates a frame 450 (Fig. 2) from a message of the microcontroller 13 for a message 45 on the bus 40. The protocol extension block 112 provides at least one additional function that is not executed by the protocol controller 111. The protocol controller 111 includes modules that create and process messages 45 according to ISO 11898-1:2024. Specifically, a checksum module 15 and / or at least one additional module may be provided for this purpose. The checksum module 15 calculates at least one checksum for frame 450 of message 45. Protocol extension block 112 has at least one extension module 1121, but in particular a plurality of extension modules 1121 to 112N. In the example of Fig. 3, block 112 has a transmit sequence determination module 1121, a message management module 1122 (message handler), a message storage module 1223 with a transmit priority queue TXPQ (TXPQ = transmit priority queue), a receive signal filter module 1124, and optionally other modules 1125 to 112N. Any number of modules or other modules can be foreseen and used. Protocol Extension Block 112 contains all higher-level protocol extension functions. These functions can be modular, meaning they can be implemented by individual modules 1121 to 112N. The protocol extensions can therefore be easily added and do not affect the protocol controller 111. In principle, the protocol extensions can be implemented in software, either alternatively or additionally. This software then runs on the central processing unit 131 of the microcontroller 13. At least one signal, CRTL, can be exchanged between the protocol controller 111 and the protocol extension block 112, which controls sending and receiving. The transmit order determination module 1121 is designed to assign a predefined variable SQ_IDX to each message 45 created by the protocol controller 111 that has the same priority ID or identifier 4531 (ID for arbitration on bus 40). As explained in more detail with reference to Fig. 6, the predefined variable SQ_IDX is stored with the message 45 to be transmitted in the message storage module 1223, specifically in the transmit priority queue TXPQ (TXPQ = Transmit-Priority-Queue). The predefined variable SQ_IDX is used for internal arbitration at the receiving station 10, as described in more detail below. The transmit order determination module 1121 can be implemented in software. The message management module 1122 (message handler) of Fig. 3 is designed to manage a predetermined number of messages 45 to be sent and a predetermined number of received messages 45 in the message storage module 1223. The necessary memory in which the messages 45 to be sent or already received are stored can additionally or alternatively be arranged outside the communication control unit 11. In this case, status information, such as whether a message 45 is stored, is / are stored in the message management module 1122. If necessary, the message management module 1122 can send messages 45 divided into several smaller frames 450 and receive messages 45 divided into several smaller frames 450. Thus, the message management module 1122 can assign the parts of a message 45 to the message 45. The message storage module 1223 has predefined memory elements configured for storing messages 45 or for storing at least part of a message 45, and configured for storing additional information about the messages 45, in particular a variable SQ_IDX. This is described in more detail with reference to Fig. 6. The receive signal filter module 1124 of Fig. 3 can filter incoming messages 45 to relieve the central processing unit 131. The transceiver 12 comprises the transmit module 121 and the receive module 122. Although the following text refers to the transceiver 12, it is alternatively possible to provide the receive module 122 in a separate unit external to the transmit module 121. The transmit module 121 and the receive module 122 can be configured as in a conventional transceiver 22. The transmit / receive device 12 is connected to the bus 40, more precisely its first bus wire 41 for CAN_H or CAN-XL_H and its second bus wire 42 for CAN_L or CAN-XL_L. During operation of bus system 1, the transmitter module 121 of the transmitter / receiver unit 12 converts a transmission signal TxD from the communication control unit 11 into corresponding signals CAN_H and CAN_L for the bus wires 41 and 42, and transmits these signals CAN_H and CAN_L to bus 40 at the CAN_H and CAN_L terminals. An example of the CAN_H and CAN_L signals is shown in Fig. 4. If the transmitter / receiver unit 12 uses a voltage supply other than 5V, the voltage values ​​for the CAN_H and CAN_L signals at its CAN_H and CAN_L terminals also change. The transceiver 12 implements layer 1 of the well-known OSI model; that is, the transceiver 12 physically encodes the individual bits to be transmitted on bus 40. As a result, a differential voltage VDIFF = CAN_H - CAN_L is generated on bus 40. An example of the differential voltage VDIFF, which is generated due to the signals from Fig. 4, is shown in Fig. 5. The receiver module 122 of the transmitter / receiver unit 12 generates a receive signal RxD from the CAN_H and CAN_L signals received from the bus 40 (see Fig. 4) or from the differential voltage VDIFF (see Fig. 5) and forwards this signal to the communication control unit 11, as shown in Fig. 3. Except in idle or standby mode, the transmitter / receiver unit 12 with the receiver module 122 is always listening for data or message transmissions 45, 46 on the bus 40 during normal operation, regardless of whether the transmitter / receiver unit 12 is the sender of the message 45 or not. As shown in Fig. 4, the CAN_H and CAN_L signals have the dominant and recessive bus levels or bus states 401 and 402, as known from CAN, at least during the arbitration phase 451. The individual bits of the VDIFF signal with bit time t_bt can be detected with a receive threshold of 0.7 V. In the data phase 452, the bits of the CAN_H and CAN_L signals are transmitted faster in CAN FD and CAN XL, i.e., with a shorter bit time t_bt, than in the arbitration phase 451. Thus, the CAN_H and CAN_L signals in the data phase 452 of CAN FD or CAN XL can differ from the conventional CAN_H and CAN_L signals according to Classical CAN, at least in their higher bit rate. The sequence of states 401, 402 for the signals CAN_H, CAN_L in Fig. 4 and the resulting voltage waveform VDIFF in Fig. 5 serve only to illustrate the function of the receiving station 10. The sequence of data states for the bus states 401, 402 can be selected as required. In the operation of the subscriber station 10, the communication control unit 11 proceeds as follows to define a transmission sequence for a group of messages 45 or their frames 450 (Fig. 2) that have the same identifier 4531 (Fig. 2). For this purpose, the communication control unit 11 of Fig. 3, in particular its transmission sequence determination module 1121, defines an internal priority for this group of messages 45 or their frames 450 (Fig. 2), as described in more detail below with reference to Fig. 6. Naturally, the same applies to messages 46 and 47, even though only messages 45 are mentioned below. The CAN priority of a message 45 or its frame 450 (Fig. 2) is determined by its identifier 4531. The CAN priority is higher if the identifier 4531 has a smaller numerical value. The CAN priority is lower if the identifier 4531 has a larger numerical value. The identifier 4531 is used for arbitration between subscriber stations 10, 20, 30 on bus 40, as described in ISO 11898-1:2024. The protocol controller 111 can initiate the transmission of message 45, or its frame 450 (Fig. 2), to bus 40 when the CAN bus is "idle," either because no communication is active or because the end of an "intermission" of a CAN frame 450 (Fig. 2) or message 45 is detected. "Intermission" can also be described as the interval between frames and corresponds to the predetermined interval that must be maintained after the end of a frame 450 before the next frame 450 may be sent to bus 40, i.e., before the next transmission option to bus 40 exists. At the latest at the time of this transmission option, the message management module 1122 (message handler) must provide the protocol controller 111 with the message 45, or frame 450, to be sent. The send order determination module 1121 can dynamically manage the elements of the send priority queue TXPQ. Furthermore, when the send order determination module 1121 wants to write a new message 45 to an element or memory slot of the send priority queue TXPQ, the message management module 1122 always assigns it only a pointer to a free element or memory slot of the send priority queue TXPQ. As shown in Fig. 6 as an example, messages 45 and frames 450 can therefore be in a different order in the send priority queue TXPQ than they are intended to be sent. In Fig. 6, the send priority queue TXPQ has seven memory slots SLT_IDX, namely 0 to 6, for messages 45 with their controls TxRqst, SQ_IDX, and B_SQ_IDX. In the example shown in Fig. 6, five messages 45 are stored, of which only the identifier ID (4531) of the messages 45 is specified in detail, in decimal notation, for the sake of simplicity. The transmission sequence determination module 1121 assigns the control elements SQ_IDX. From the control elements SQ_IDX, the control element B_SQ_IDX is derived for a first area B_A, a second area B_B, and a third area B_C, as described in more detail below. The areas B_A, B_B, and B_C are seamlessly and non-overlappingly arranged. For each element or memory slot SLT_IDX of the send priority queue TXPQ, there is a status bit that indicates the send request (TxRqst) of the element or message in the memory slot SLT_IDX. The control bit TxRqst indicates whether message 45 stored in the send priority queue TXPQ is to be sent (TxRqst = 1), or whether there is no send request for message 45 stored in the send priority queue TXPQ (TxRqst = 0). This status bit changes when an element or message 45 in the memory slot SLT_IDX of the send priority queue TXPQ has been successfully sent, when the send order determination module 1121 adds a new message 45 to the send priority queue TXPQ, or when a send request is canceled.The cancellation of a transmit order can be performed, for example, by software in the transmit sequence determination module 1121 or the microcontroller 13, and is called transmit cancellation. Alternatively, the cancellation of a transmit order can be performed by hardware, for example, because the maximum number of transmission attempts has been reached for this element or message in the SLT_IDX memory slot of the transmit priority queue TXPQ. The transmit cancellation function is optional and is not supported by all message handler modules 1122. The message handler module 1122 uses the variables SLT_IDX, RQST, RES_IDX, RES_ID, and RES_SQ to determine which message 45 from the messages stored in the send priority queue TXPQ should be sent next. For this purpose, the send order determination module 1121 provides the message handler module 1122 with the sequence index control SQ_ID. As described in more detail below, the message management module 1122 can initially store the currently highest-priority identifier ID (4531) in the variable RES_ID as an intermediate result, and additionally store the index for the memory slot in which this identifier ID (4531) was found in the variable RES_IDX. Furthermore, the message management module 1122 stores the sequence index SQ_IDX found in the variable RES_SQ. This intermediate result in the variables RES_ID, RES_IDX, and RES_SQ is updated when an identifier ID (4531) with a higher priority and for which TxRqst=1 is detected in a memory slot. After the last transmit slot of the queue TXPQ has been checked, the result is available, consisting of the three values ​​of the variables RES_ID, RES_IDX, and RES_SQ.The area B_SQ_IDX is automatically derived from the value for the sequence index SQ_IDX and does not need to be stored by the message management module 1122. Each time the value of the TxRqst bit in the transmit priority queue TXPQ changes, the message management module 1122 performs a scan through the elements or memory slots SLT_IDX of the transmit priority queue TXPQ to find the element or message 45 in a memory slot SLT_IDX of the transmit priority queue TXPQ that has the highest transmit priority after the change. This scan can also be called Tx_Scan. The transmission sequence determination module 1121, in conjunction with the message management module 1122, ensures that a high-priority message 45, which has a low-value identifier (ID) 4531 and which the transmission sequence determination module 1121 has written to the transmission priority queue TXPQ on bus 40 shortly before the next transmission option, can be started at that next transmission option. For this purpose, modules 1121 and 1122 are designed such that the message management module 1122 (message handler) can quickly recognize this message 45 as the highest-priority message 45 or frame 450. This prevents another CAN frame 450 from being started with this transmission option, either from participant station 10 or from another participant station 10, 20, 30 on bus 40, so that the highest priority message has to wait until this other CAN frame 450 has ended. For this purpose, the transmission sequence determination module 1121 and the message management module 1122 jointly execute a two-part procedure. The first part of the procedure describes how the transmission sequence determination module 1121 establishes the internal order of messages 45 within a group with the same identifier 4531. The second part of the procedure describes how the message management module 1122 finds the next message 45 to be sent in the transmission priority queue TXPQ in a single search pass (Tx_Scan). The transmit priority queue TXPQ consists of a group of elements in a memory slot SLT_IDX, where each element stores a message 45 along with additional control information (e.g. the sequence index SQ_IDX). The message management module 1122 (message handler) manages the elements or memory slots SLT_IDX of the transmit priority queue TXPQ of the message memory 1122 such that the CAN messages 45 stored therein are sent in the order of their CAN priority (ID) 4531 and the transmit sequence determined by the transmit sequence determination module 1121. Messages 45 that have the same CAN identifier 4531 (Fig. 2) are sent relative to each other in a sequence specified by the message management module 1122. The message management module 1122 can have and use application software for this purpose. The first part of the procedure, in particular the transmission sequence determination module 1121, can be executed in software, as follows. The send order determination module 1121 transmits the desired send order to the message management module 1122 via the sequence index variable SQ_IDX. The send order determination module 1121 writes the variable SQ_IDX along with the message 45 to an element or memory slot SLT_IDX of the send priority queue TXPQ, as illustrated by an arrow in Fig. 6. Often, it is desired that a group of messages 45 that have the same identifier 4531 be sent in the same order in which they were written to the send priority queue TXPQ. In this case, these messages 45 that have the same identifier 4531 must be written to the send priority queue TXPQ with incrementing sequence index SQ_IDX values, so that the SQ_IDX values ​​represent the internal send order. Examples of this are shown below with reference to Fig.7 described in connection with the third embodiment. As shown in Fig. 6, the sequence index SQ_IDX is an integer in a range from a minimum value SQ_IDX-mn (specifically 0) to a maximum value SQ_IDX-mx (at least SQ_IDX-mn + 3×#Slt - 4), where #Slt is the maximum number of elements or memory slots SLT_IDX in the transmit priority queue TXPQ. The range of values ​​may also be larger. However, an excessively large range has the disadvantage that a longer variable SQ_IDX must be managed, thus increasing the overhead of the procedure. Alternatively, the minimum value SQ_IDX-mn can have a value other than 0. In the example shown in Fig. 6, the send priority queue TXPQ has seven elements, or memory slots SLT_IDX, so #Slt = 7. Therefore, the sequence index SQ_IDX can be an integer in the range of 0 to 19. The range of 0 to 19 means that SQ_IDX-mn has the value 0 and SQ_IDX-mx has the value 19. In this example, areas A and C each have 7 elements, while the middle area B has only 6 elements. Thus, area B is smaller than areas A and C. Areas A, B, and C are not all the same size. In the example shown in Fig. 6, one of the messages 45 with an identifier 100 has already been sent. Afterward, another message 45 with an identifier 200 was stored in the memory slot. The transmit sequence determination module 1121 manages a separate variable SQ_IDX(ID) for each transmit identifier 4351. For this purpose, the module 1121 uses at least one counter, specifically one counter per transmit identifier 4351. Each time the transmit sequence determination module 1121 writes a message 45 with a predetermined CAN identifier 4531 to the transmit priority queue TXPQ, the module 1121 increments the corresponding sequence index SQ_IDX(ID) or the corresponding counter value. The incrementing occurs cyclically; the maximum value is followed by 0. That is, for the identifier 4531 (100) in Fig. 6, the transmit sequence determination module 1121 manages a separate variable SQ_IDX(100). Furthermore, the transmit order determination module 1121 manages a separate variable SQ_IDX(200) for the identifier 4531 (200) in Fig. 6.Furthermore, the transmission sequence determination module 1121 manages a separate variable SQ_IDX(300) for the identifier 4531 (300) in Fig. 6. The transmission sequence determination module 1121 also manages a separate variable SQ_IDX(400) for the identifier 4531 (400) in Fig. 6. The second part of the procedure can be executed in hardware, as follows. The send priority queue TXPQ can then contain up to #Slt messages with the same identifier 4531 or value for the identifier 4531, provided that the send priority queue TXPQ contains only messages 45 with the same identifier 4531 or value for the identifier 4531. Furthermore, the values ​​of the sequence index SQ_IDX of messages 45 are then cyclically and monotonically increasing, with a possible return from the maximum value SQ_IDX-mx to the minimum value SQ_IDX-mn, where the minimum value SQ_IDX-mn can, in particular, have the value 0 or any other value according to the previously mentioned specifications. The values ​​of the sequence index SQ_IDX are subsequently also referred to as SQ_IDX values. If there is no return in the SQ_IDX values ​​in the send priority queue TXPQ, the messages 45 should be sent relative to each other in the order of their values ​​for the memory slots of the queue TXPQ of the memory module 1123, i.e. the SLT_IDX values, starting with the lowest SQ_IDX value of the variable sequence index SQ_IDX. The internal priority of message 45 is therefore not determined by its position, more precisely the position of message 45, in the send priority queue TXPQ, but by the sequence index SQ_IDX. Furthermore, a return to the sequence index values ​​(SQ_IDX values) of message 45 may be present. The procedure for such SQ_IDX values ​​is described below. Alternatively, the procedure described below with reference to Fig. 7 can be used. To enable the message management module 1122 to easily detect a return in the SLT_IDX values, the SQ_IDX value range is divided into three consecutive ranges. The lower range, B_A, begins with SQ_IDX-mn, the upper range, B_C, ends with SQ_IDX-mx, and the middle range, B_B, lies between them. All three ranges have a minimum size of #Slt-1, but may be larger. This ensures that the numerical values ​​of a sequence of SQ_IDX values, which can simultaneously be in the transmit priority queue TXPQ, can never be in all three areas B_A, B_B, and B_C at the same time, but always only in two areas. If the numerical values ​​of a sequence of SQ_IDX values ​​are in both area B_A and area B_C, it can be reliably identified that this sequence contains a jump back from SQ_IDX-mx, the end of area B_C, to SQ_IDX-mn, the beginning of area B_A. In all other cases, this sequence does not contain a jump back to SQ_IDX-mn. The minimum size for the areas specified in #Slt-1 ensures that, in the event of a jump back, all upper elements of the sequence are in area B_C and all lower elements of the sequence are in area B_A. To locate (scan) the element or memory slot SLT_IDX containing message 45 with the highest transmit priority, the message management module 1122 compares the identifiers 4531, i.e., the priorities, of all elements in the queue TXPQ with the TxRqst bit set. The concept presented here allows these comparisons to be performed sequentially, specifically as an algorithm or scan. This Tx_Scan procedure, specifically the Tx_Scan algorithm, only needs to be executed once to find the element with the highest transmit priority. In particular, a scan through the elements or memory slots SLT_IDX of the queue TXPQ is not necessary if the TxRqst bit of an element or memory slot SLT_IDX is reset if it was not found to have the highest transmit priority during the last Tx_Scan. The sequence index SQ_IDX supplements the identifier 4531 during internal arbitration at participant station 10. The sequence index SQ_IDX is treated as decimal places of the integer CAN identifier. The sequence index SQ_IDX can have a value within a predetermined range, in particular 0 to 255. However, other values ​​or a different range of values ​​for the sequence index SQ_IDX are possible. The communication control unit 11, specifically module 1121, manages a sequence index SQ_IDX per identifier 4531. The sequence index SQ_IDX is incremented for each successive message 45, i.e., increased by 1 (+1). When the maximum value is reached, the next increment causes a return to the minimum value SQ_IDX-mn. The message management module 1122 can manage the five variables shown in Fig. 6 for the execution of the procedure. The variable SLT_IDX, which is the sequential index of the elements of the queue TXPQ. The variable RQST is a signal indicating that at least one element of the queue TXPQ with the TxRqst bit set has been found. In the example shown in Fig. 6, a set TxRqst bit has the value 1. The variable RES_IDX represents a signal indicating the index of the currently highest-priority element in the TXPQ queue. The variable RES_ID represents a signal indicating the identifier 4531 of the TXPQ queue element to which the index RES_IDX points. The variable RES_SQ represents a signal indicating the sequence index SQ_IDX of the element in the queue TXPQ that the index RES_IDX points to. The message management module 1122 begins the Tx_Scan or sequence with the first element of the queue TXPQ (SLT_IDX=0) and with RQST=0. Module 1122 sequentially reads the identifier 4531 and the sequence index SQ_IDX of each element of the queue TXPQ to which the current sequence index SLT_IDX points, until module 1122 reaches an element of the queue TXPQ whose send request is set (TxRqst=1). Then the message management module 1122, specifically the algorithm implemented by module 1122, is used: RQST = 1 RES_IDX = SLT_IDX RES_ID = Identifier(SLT_IDX) RES_SQ = SQ_IDX(SLT_IDX) The message management module 1122, specifically the algorithm implemented by module 1122, then proceeds, incrementing the variable SLT_IDX until it reaches the next element in the queue TXPQ whose send request is set (TxRqst=1). There, module 1122 checks whether the variable RES_IDX needs to be set to a new value. Module 1122 distinguishes between the following three cases: A), B), and C). Case A) The variable RES_ID has a higher priority than the identifier 4531 in the currently checked element of the queue TXPQ (SLT_IDX). If this is the case, the variables RES_IDX, RES_ID, and RES_SQ remain unchanged. Case B) The variable RES_ID has a lower priority than the identifier 4531 in the currently checked queue element TXPQ (SLT_ID). If this is the case, then the message management module 1122, specifically the algorithm implemented by module 1122, sets the variables as follows: RES_IDX = SLT_IDX RES_ID = Identifier(SLT_IDX) = ID (4531) (SLT_IDX) RES_SQ = SQ_IDX(SLT_IDX) Case C) The variable RES_ID has the same priority as the identifier 4531 in the currently checked queue element TXPQ (SLT_IDX). If this is the case, then the message management module 1122, specifically the algorithm implemented by module 1122, checks the variables SQ_IDX(SLT_IDX) and RES_SQ. Here, the two cases C1) and C2) are distinguished as follows. In case C1), the message management module 1122, in particular the algorithm implemented by module 1122, checks whether one of the following two conditions / alternatives linked by OR (OR) holds: {[SQ_IDX(SLT_IDX) in range B_C] AND [RES_SQ in range B_A]} OR {[[SQ_IDX(SLT_IDX) NOT in range B_C] OR [RES_SQ NOT in range B_A]] AND [SQ_IDX(SLT_IDX) < RES_SQ]} If the check in case C1) shows that one of the two aforementioned conditions is met, then the message management module 1122, in particular the algorithm implemented by module 1122, sets RES_IDX = SLT_IDX RES_ID = Identifier(SLT_IDX) RES_SQ = SQ_IDX(SLT_IDX) Otherwise, case C2) applies. That is, when checking case C1), none of the stated conditions are met or true (ELSE). Then the message management module 1122, in particular the algorithm implemented by module 1122, leaves the variables RES_IDX, RES_ID, and RES_SQ unchanged. The message management module 1122, in particular the algorithm implemented by module 1122, continues the Tx_Scan scan until all elements of the TXPQ queue have been evaluated. At the end of the procedure carried out by the message management module 1122, RES_IDX points to the element or memory slot SLT_IDX or message 45 that is to be sent next if there is at least one element with a send request (RQST=1). Table 1 below shows an example of the send priority queue TXPQ to illustrate the aforementioned case C1). Here, #Slt = 6 The minimum number of SQ_IDX values ​​is: 3 * #Slt - 1 = 3 * 6 - 1 = 17. However, in the example in Table 1 below, more than the minimum number of SQ_IDX values ​​are used, namely 18 SQ_IDX values, as follows: Range B_A: SQ_IDX has values ​​from 0 ... 5; Range B_B: SQ_IDX has values ​​from 6 ... 10; Range B_C: SQ_IDX has values ​​from 11 ... 17 Table 1: Identifier ID (4531) (decimal representation) 011000B_A 111001B_A 212000 3110017B_C 413000 514000 In the example for the send priority queue TXPQ from Table 1, messages 45 with the identifier (ID) value 100 are sent in the following order: first, message 45 in memory slot SLT_IDX = 3, then message 45 in memory slot SLT_IDX = 0, and then message 45 in memory slot SLT_IDX = 1. In this example, the sequence of values ​​of the sequence index SQ_IDX for messages 45 with the identifier (ID) 4531, value 100, contains a jump from 17 to 0. Therefore, the element from the upper subsequence (SLT_IDX=3) is sent before the two elements from the lower subsequence (SLT_IDX=0, SLT_IDX=1). Table 2 below shows an example of the send priority queue TXPQ to illustrate the aforementioned case C2). Here, #Slt = 4 Number of SQ_IDX values: 3*#Slt-1 = 3*4-1=11 Range B_A: SQ_IDX has values ​​from 0 ... 3 Range B_B: SQ_IDX has values ​​from 4 ... 6 Range B_C: SQ_IDX has values ​​from 7 ... 10 Table 2: Identifier ID (4531) (decimal representation) 011008B_C 111007B_C 212001 311006B_B In the example for the send priority queue TXPQ from Table 2, messages 45 with the identifier (ID) with the value 100 are sent in the following order: First message 45 in memory slot SLT_IDX = 3, then message 45 in memory slot SLT_IDX = 1, and then message 45 in memory slot SLT_IDX = 0. The procedure performed by the communication control unit, in particular its modules 1121 and 1122, and described above, can always correctly identify the desired transmission sequence despite a return in the sequence index SQ_IDX. To ensure that the return in the sequence index SQ_IDX can be detected, the value range of the sequence index SQ_IDX has a certain minimum size, as described above, specifically 3 x #Slt - 1. Due to the return at the sequence index SQ_IDX, all free memory slots SLT_IDX of the transmit priority queue TXPQ can always be used. As mentioned previously, no FIFO memory is required. According to a second embodiment, the predetermined value range of the sequence index SQ_IDX is not the same for each identifier 4531. Therefore, the predetermined value range of the sequence index SQ_IDX for at least one identifier 4531 can be smaller than for the other identifiers 4531. Furthermore, the predetermined value range of the sequence index SQ_IDX for at least one identifier 4531 can be larger than for the other identifiers 4531. Otherwise, the second embodiment is designed as described previously for the first embodiment. According to a third embodiment, the predetermined value range of the three areas B_A, B_B, B_C is the same for each sequence index SQ_IDX. This results in a larger predetermined value range for the sequence index SQ_IDX than in the first embodiment. However, due to the three equally sized areas B_A, B_B, and B_C per sequence index SQ_IDX, the message management module 1122 can more easily determine in which of the three areas B_A, B_B, and B_C an SQ_IDX value lies. For particularly easy determination by the message management module 1122, a value range for SQ_IDX from 0 to 3x#Slt-1 is recommended. In such a case, applying the preceding example from Table 1, where the three areas B_A, B_B, and B_C are defined, the formula 3*#Slt = 3*7 = 21 applies for 7 transmission slots, where #Slt is the number of transmission slots. Then, with the three equally sized areas: Area B_A: SQ_IDX has values ​​from 0 to 6; Area B_B: SQ_IDX has values ​​from 7 to 13; Area B_C: SQ_IDX has values ​​from 14 to 20. For example, for equally sized areas B_A, B_B, B_C, the following sizes or values ​​apply (here SQ_IDX-mn = 0): Area B_A: Sizes or values ​​from 0 to 1×#Slt-1; Area B_B: Sizes or values ​​from 1×#Slt to 2×#Slt-1; Area B_C: Sizes or values ​​from 2×#Slt to 3×#Slt-1 An advantage of choosing the three areas B_A, B_B, B_C per sequence index SQ_IDX is that the arithmetic in hardware becomes somewhat simpler than in the example from Table 1 in the preceding embodiment. Figure 7 shows a table with rows Z1 to Z15 for the different possibilities available for assigning values ​​to the sequence index SQ_IDX for messages 45 that have the same identifier (ID) 4531. According to rows Z11 to Z15, a return to the values ​​of the sequence index SQ_IDX is possible. The assignment of sequence indexes SQ_IDX shown in Figure 7 and the resulting ranges B_A, B_B, B_C can realize the advantages described above. In the example shown in Fig. 7, it is assumed that there are 6 memory slots in the transmit priority queue TXPQ, into which messages 45 with the same identifier (ID) 4531 are to be written sequentially. Each of the black squares in one of the rows Z1 to Z15 of the table in Fig. 7 represents a message 45 that is stored in one of the 6 memory slots in the transmit priority queue TXPQ. The table in Fig. 7 shows the values ​​of the sequence index SQ_IDX, which the transmit order determination module 1121 assigns to the respective message 45 before the message 45 is stored in the corresponding memory slot in the transmit priority queue TXPQ in Fig. 6. Since the example in Fig. 7 assumes that the transmit priority queue TXPQ from Fig. 6 has six elements or memory slots SLT_IDX, #Slt = 6. As described previously, the sequence index SQ_IDX in Fig. 7 therefore has fifteen values, for example, a range from 0 to 14, as shown in Fig. 7. The minimum value SQ_IDX-mn of the transmit index SQ_IDX in the example in Fig. 7 is 0. The maximum value SQ_IDX-mx of the transmit index SQ_IDX in the example in Fig. 7 is 14. In general: #Slt = 6 => range of values ​​from SQ_IDX_min = 0 to SQ_IDX_max = 14 = 3×(#Slt - 1) - 1 Row Z1 of the table in Fig. 7 shows that the send order determination module 1121 can assign or determine the values ​​9 to 14 for the sequence index SQ_IDX to the six consecutive messages 45. The values ​​9 to 14 for the sequence index SQ_IDX are located in the areas B_B and B_C. The messages 45 are then stored in the send priority queue TXPQ with their value for the sequence index SQ_IDX, and optionally also with the value for the area index B_SQ_IDX, as previously described with reference to Fig. 6. Storing the values ​​for the area index B_SQ_IDX is unnecessary, as the message management module 1122 knows the sizes of the areas B_A, B_B, and B_C, for example, by calculating them from the number of #Slt, and can therefore assign each SQ_IDX value to one of the areas B_A, B_B, or B_C. The message management module 1122 then evaluates that the messages 45 from row Z1 of the table in Fig.The message sequence SQ_IDX 7, with sequence index SQ_IDX = 9 to 14, is to be sent to bus 40. Therefore, message 45 with send index SQ_IDX = 9 is sent first to bus 40. Then message 45 with send index SQ_IDX = 10 is sent to bus 40. Then message 45 with send index SQ_IDX = 11 is sent to bus 40. Then message 45 with send index SQ_IDX = 12 is sent to bus 40. Then message 45 with send index SQ_IDX = 13 is sent to bus 40. Then message 45 with send index SQ_IDX = 14 is sent to bus 40. According to the other possibilities / alternatives of lines Z2 to Z15 in Fig. 7, the same applies as previously described in detail for line Z1 of Fig. 7. Option for line Z2: The send order determination module 1121 determines or assigns the values ​​8 to 13 for the sequence index SQ_IDX to messages 45, thus arranging the SQ_IDX values ​​in the ranges B_B and B_C. This ensures that messages 45 are sent to bus 40 in the send order from sequence index SQ_IDX = 8 to 13. Therefore, message 45 with send index SQ_IDX = 8 is sent to bus 40 before the other messages 45 in line Z2, with message 45 with send index SQ_IDX = 13 being sent last. Option Z3: The transmission sequence determination module 1121 determines or assigns the values ​​7 to 12 for the sequence index SQ_IDX to messages 45, thereby arranging the SQ_IDX values ​​in the ranges B_B and B_C. This ensures that messages 45 are sent to bus 40 in the transmission sequence of sequence index SQ_IDX = 7 to 12, as previously described for line Z2. Option Z4: The transmission sequence determination module 1121 determines or assigns the values ​​6 to 11 for the sequence index SQ_IDX to messages 45, thereby arranging the SQ_IDX values ​​in the ranges B_B and B_C. This ensures that messages 45 are sent to bus 40 in the transmission sequence of sequence index SQ_IDX = 6 to 11, as previously described for line Z2. Option Z5: The transmission sequence determination module 1121 determines or assigns the values ​​5 to 10 for the sequence index SQ_IDX to messages 45, thereby arranging the SQ_IDX values ​​in the ranges B_B and B_C. This ensures that messages 45 are sent to bus 40 in the transmission sequence of sequence index SQ_IDX = 5 to 10, as previously described for line Z2. Option for line Z6: The transmission sequence determination module 1121 determines or assigns the values ​​4 to 9 for the sequence index SQ_IDX to messages 45, thereby arranging the SQ_IDX values ​​in the areas B_A and B_B. This ensures that messages 45 are sent to bus 40 in the transmission sequence of sequence index SQ_IDX = 4 to 9, as previously described for line Z2. Option Z7: The transmission sequence determination module 1121 determines or assigns the values ​​3 to 8 for the sequence index SQ_IDX to messages 45, thereby arranging the SQ_IDX values ​​in the areas B_A and B_B. This ensures that messages 45 are sent to bus 40 in the transmission sequence of sequence index SQ_IDX = 3 to 8, as previously described for line Z2. Option for line Z8: The transmission sequence determination module 1121 determines or assigns the values ​​2 to 7 for the sequence index SQ_IDX to messages 45, thereby arranging the SQ_IDX values ​​in the areas B_A and B_B. This ensures that messages 45 are sent to bus 40 in the transmission sequence of sequence index SQ_IDX = 2 to 7, as previously described for line Z2. Option Z9: The transmission sequence determination module 1121 determines or assigns the values ​​1 to 6 for the sequence index SQ_IDX to messages 45, thereby arranging the SQ_IDX values ​​in the areas B_A and B_B. This ensures that messages 45 are sent to bus 40 in the transmission sequence of sequence index SQ_IDX = 1 to 6, as previously described for line Z2. Option Z10: The transmission sequence determination module 1121 determines or assigns the values ​​0 to 5 for the sequence index SQ_IDX to messages 45, thereby arranging the SQ_IDX values ​​in the areas B_A and B_B. This ensures that messages 45 are sent to bus 40 in the transmission sequence of sequence index SQ_IDX = 0 to 5, as previously described for line Z2. Option Z11: The send order determination module 1121 uses a return value in the sequence index SQ_IDX values. Thus, the send order determination module 1121 assigns the value 14 for the sequence index SQ_IDX to the first message 45 and the values ​​from 0 to 4 for the sequence index SQ_IDX to the subsequent messages 45, thereby arranging the SQ_IDX values ​​in the ranges B_A and B_C. This ensures that the messages 45 are sent to bus 40 in the send order of sequence index SQ_IDX = 14 and then 0 to 4, as previously described for line Z2. Option for line Z12 with a return value for the sequence index SQ_IDX: Thus, the send order determination module 1121 assigns the value 13 for the sequence index SQ_IDX to the first message 45 and the values ​​14 and then 0 to 3 for the sequence index SQ_IDX to the subsequent messages 45, thereby arranging the SQ_IDX values ​​in the ranges B_A and B_C. This ensures that the messages 45 are sent to bus 40 in the send order of sequence index SQ_IDX = 13, then 14, and then 0 to 3, as previously described for line Z2. Option for line Z13 with a return value for the sequence index SQ_IDX: Thus, the send order determination module 1121 assigns the value 12 for the sequence index SQ_IDX to the first message 45 and the values ​​13, 14, and then 0 to 2 for the sequence index SQ_IDX to the subsequent messages 45, thereby arranging the SQ_IDX values ​​in the ranges B_A and B_C. This ensures that the messages 45 are sent to bus 40 in the send order of sequence index SQ_IDX = 12 to 14 and then 0 to 2, as previously described for line Z2. Option for line Z14 with a return value for the sequence index SQ_IDX: Thus, the send order determination module 1121 assigns the value 11 for the sequence index SQ_IDX to the first message 45 and the values ​​12 to 14 and then 0 to 1 for the sequence index SQ_IDX to the subsequent messages 45, thereby arranging the SQ_IDX values ​​in the ranges B_A and B_C. This ensures that the messages 45 are sent to bus 40 in the send order of sequence index SQ_IDX = 11 to 14 and then 0 to 1, as previously described for line Z2. Option for line Z15 with a return value for the sequence index SQ_IDX: Thus, the send order determination module 1121 assigns the value 10 for the sequence index SQ_IDX to the first message 45 and the values ​​11 to 14 and then 0 for the sequence index SQ_IDX to the subsequent messages 45, thereby arranging the SQ_IDX values ​​in the ranges B_A and B_C. This ensures that the messages 45 are sent to bus 40 in the send order of sequence index SQ_IDX = 10 to 14 and then 0, as previously described for line Z2. As shown in Fig. 7, when returning to the sequence of sequence index values ​​(SQ_IDX values) of message 45, the transmission sequence determination module 1121 divides the SQ_IDX values ​​into two subsequences, so that the SQ_IDX values ​​are always arranged in only two areas of the areas B_A, B_B, B_C. The lower elements of the sequence have values ​​from X up to the maximum value SQ_IDX-mx, and the upper elements of the sequence have values ​​from SQ_IDX-mn to Y. In the example in Fig. 7, which shows the minimum number of sequence index values ​​(SQ_IDX values) for #Slt = 6 memory slots, for example, in row Z13, X = 2 and Y = 12. The values ​​X and Y are determined such that both the upper and lower subsequences have between one and #Slt-1 elements, for a total of at most #Slt elements.Because the maximum value SQ_IDX-mx of SQ_IDX is significantly larger than the #Slt number of the memory slots SLT_IDX, there is a large gap between the value of SQ_IDX(Y) and the value of SQ_IDX(X). In the example shown in Fig. 7, the difference between the value of SQ_IDX(Y) and the value of SQ_IDX(X) is 10. If there is a return path, the upper subsequence is sent first, followed by the lower subsequence. Apart from the possible return path, messages 45 with the same identifier 4531 are sent in the relative order of their value for the sequence index SQ_IDX. The message management module 1122 reliably detects a return in the SQ_IDX values ​​if, in the sequence of SQ_IDX values ​​located in the maximum #Slt transmit slots SLT_IDX of the queue TXPQ shown in Fig. 6, there are values ​​in both range B_A and range B_C. In this case, messages with an SQ_IDX value in range B_C are sent first, followed by those with an SQ_IDX value in range B_A. If the message management module 1122 does not detect a return because there is no SQ_IDX value in range B_A or no SQ_IDX value in range B_C, then the messages 45 are sent to bus 40 in the order of their SQ_IDX values. Otherwise, the third embodiment is designed as previously described for the first or second embodiment. According to a fourth embodiment, all three areas B_A, B_B, B_C are of different sizes. Otherwise, the fourth embodiment is designed as previously described for the first or second embodiment. In general, for all embodiments, the areas B_A, B_B, B_C must have at least the following sizes or values ​​(here SQ_IDX-mn = 0): Area B_A: Sizes or values ​​from 0 to 1×#Slt-2; Area B_B: Sizes or values ​​from 1×#Slt-1 to 2×#Slt-3; Area B_C: Sizes or values ​​from 2×#Slt-2 to 3×#Slt-4 At this minimum size, the areas B_A, B_B, and B_C are of equal size. If the minimum size is selected, the message management module 1122 needs to manage fewer values ​​for the sequence index SQ_IDX and therefore fewer values ​​for the areas B_A, B_B, and B_C. Of course, larger values ​​for the sequence index SQ_IDX and thus for the areas B_A, B_B, and B_C can also be selected. All previously described configurations of the communication control unit 11, the modules 1121, 1122, 1123 and their modifications, the subscriber stations 10, 30, the bus system 1 and the method implemented therein can be used individually or in any possible combination. In particular, all features of the previously described embodiments and / or their modifications can be combined as desired. Additionally or alternatively, the following modifications are particularly conceivable. Although the invention has been previously described using the example of the CAN bus system, the invention can be used in any communication network and / or communication method in which an internal sending sequence of messages in a sending queue is to be determined in a communication control device. Although the invention has been previously described using the example of the CAN bus system, the invention can be used in any communication network and / or communication method in which two different communication phases are used, in which the bus states that are generated for the different communication phases differ. In particular, according to the embodiments, bus system 1 can be a communication network in which data can be transmitted serially at two different bit rates. It is advantageous, but not a necessary requirement, that bus system 1 ensures exclusive, collision-free access to a common channel for at least certain periods of time for each participating station 10, 20, 30. The number and arrangement of participant stations 10, 20, 30 in the bus system 1 of the exemplary embodiments are arbitrary. In particular, participant station 20 can be omitted from bus system 1. It is possible that one or more of participant stations 10 or 30 are present in bus system 1. It is conceivable that all participant stations in bus system 1 are configured identically, i.e., that only participant stations 10, only participant stations 20, or only participant stations 30 are present. QUOTES INCLUDED IN THE DESCRIPTION This list of documents cited by the applicant was automatically generated and is included solely for the reader's convenience. The list is not part of the German patent or utility model application. The DPMA accepts no liability for any errors or omissions. Cited non-patent literature ISO11898-1:2024

[0049]

Claims

Communication control unit (11; 21) for a subscriber station (10; 20; 30) for a serial bus system (1), comprising a message management module (1122) for managing messages (45; 46; 47) to be sent by the communication control unit (11; 21) to control communication between the subscriber station (10; 20; 30) and at least one other subscriber station (10; 20; 30) of the bus system (1) to a bus (40) of the bus system (1), comprising a transmission sequence determination module (1121) for determining a sequence index (SQ_IDX) for the messages (45; 46; 47), wherein each message (45; 46; 47) has an identifier (4531) whose value indicates the priority with which the message (45; 46;47) to be sent to the bus (40), wherein the transmission sequence determination module (1121) is configured to determine a sequence index (SQ_IDX) for each identifier (4531) and assign it to the identifier (4531), and wherein the message management module (1122) is configured to determine the transmission sequence for messages (45; 46; 47) whose identifiers (4531) have the same value, using the sequence index (SQ_IDX). Communication control device (11; 21) according to claim 1, wherein the transmission sequence determination module (1121) is configured to assign the specified sequence index (SQ_IDX) in a message storage module (1223) to the identifier (4531), and wherein the message management module (1122) is configured to determine the transmission sequence for messages (45; 46; 47) whose identifiers (4531) have the same value, using the sequence index (SQ_IDX) stored in the message storage module (1223). Communication control device (11; 21) according to claim 2, wherein the message storage module (1223) has a transmit priority queue (TXPQ) having a predetermined number (#Slt) of memory slots (SLT_IDX) in which a message (45; 46; 47) with the identifier (4531) and the sequence index (SQ_IDX) is stored. Communication control device (11; 21) according to claim 2 or 3, wherein the message storage module (1223) has a transmit priority queue (TXPQ) having a predetermined number (#Slt) of memory slots (SLT_IDX) in which a message (45; 46; 47) with the identifier (4531), the sequence index (SQ_IDX) and a range (B_A; B_B; B_C) is stored, wherein the sequence index (SQ_IDX) has a predetermined range of values, and wherein the range (B_A; B_B; B_C) is one of three ranges (B_A, B_B, B_C) into which the predetermined range of values ​​of the sequence index (SQ_IDX) is divided. Communication control device (11; 21) according to one of the preceding claims, wherein the sequence index (SQ_IDX) is an integer selected from the predetermined range of values, and wherein the transmit order determination module (1121) is configured to increment the sequence index (SQ_IDX) for each successive message (45; 46; 47) in the transmit priority queue (TXPQ) and, after exceeding the maximum value of the predetermined range of values ​​of the sequence index (SQ_IDX) for the next message (45; 46; 47) in the transmit priority queue (TXPQ), to revert to the minimum value of the range. Communication control device (11; 21) according to one of the preceding claims, wherein the predetermined value range of the sequence index (SQ_IDX) is determined by the fact that there is a difference of at least 3×#Slt -4 between the minimum value (SQ_IDX-mn) of the sequence index (SQ_IDX) and the maximum value (SQ_IDX-mx) of the sequence index (SQ_IDX), where #Slt is the predetermined number of memory slots in the transmit priority queue (TXPQ). Communication control device (11; 21) according to one of claims 4 to 6, wherein the predetermined value range of the sequence index (SQ_IDX) is divided into three directly consecutive areas (B_A, B_B, B_C) which have a first, second and third area and each have a minimum size of #Slt - 1, wherein #Slt is the predetermined number of memory slots in the transmit priority queue (TXPQ), wherein the first area (B_A) begins with the minimum value SQ_IDX-mn of the sequence index (SQ_IDX), wherein the second area (B_B) is arranged seamlessly and non-overlappingly between the first area (B_A) and the third area (B_C), and wherein the third area (B_C) ends with the maximum value (SQ_IDX-mx) of the sequence index (SQ_IDX). A subscriber station (10; 20; 30) for a serial bus system (1), comprising a communication control device (11; 21) according to one of the preceding claims, and a transmit / receive device (12; 22) for transmitting a signal (TxD) generated by the communication control device (11; 21) for a frame (450) to a bus (40) of the bus system (1) and for receiving a signal (VDIFF) from the bus (40), wherein the communication control device (11; 21) is configured to negotiate with the other subscriber stations (20; 30) on the bus (40) in the first communication phase (451) which of the subscriber stations (10, 20, 30) of the bus system (1) will have at least temporary, exclusive, collision-free access to the bus (40) in the subsequent second communication phase (452). Subscriber station (10; 20; 30) according to claim 8, wherein the transmit / receive device (12; 22) is configured to generate bus states (401; 402) for the frame (450) with a first operating mode in a first communication phase (451) and to generate bus states (401; 402) for the frame (450) with a second operating mode in a second communication phase (452) which differs from the first operating mode. Bus system (1), comprising a bus (40), and at least two subscriber stations (10; 20; 30), which are connected to each other via the bus (40) in such a way that they can communicate serially with each other and of which at least one subscriber station (10; 30) is a subscriber station (10; 30) according to claim 8 or 9. Method for handling messages (45; 46; 47) in a subscriber station (10; 20; 30) of a serial bus system (1), wherein the method is executed with a communication control unit (11; 21) of the subscriber station (10; 20; 30), and wherein the communication control unit (11; 21) performs the steps: Manage, with a message management module (1122), messages (45; 46; 47) to be sent by the communication control unit (11; 21) to control communication of the subscriber station (10; 20; 30) with at least one other subscriber station (10; 20; 30) of the bus system (1) to a bus (40) of the bus system (1); Determine, with a transmission sequence determination module (1121), a sequence index (SQ_IDX) for the messages (45; 46; 47), wherein each message (45; 46; 47) has an identifier (4531) whose value indicates the priority of the message (45; 46;47) to be sent to the bus (40), wherein the send order determination module (1121) determines a sequence index (SQ_IDX) for each identifier (4531) during the determination step and assigns it to the identifier (4531), and wherein the message management module (1122) determines the send order using the sequence index (SQ_IDX) during the management step for messages (45; 46; 47) whose identifiers (4531) have the same value.;