Arbitration or Prioritization

<< Click to Display Table of Contents >>

Navigation:  Protocols > CAN-Bus Basics >

Arbitration or Prioritization

 

CAN bus systems use the “multi master principle”: Several ECUs are connected with equal rights. All ECUs have access to the bus and can send or receive signals via an installed CAN interface. Before an ECU can send, it must register at least three free bit times (bus idle). Collisions between the sent messages are avoided by a bus access process. If several ECUs would send messages simultaneously, the electrical signals would be altered, resulting in faulty messages. A superordinate management is not necessary.

 

Identifiers ensure that sent messages are ranked. This process is called bitwise arbitration, done bit-by-bit along the identifier.

 

At the same time an ECU sends an identifier, it receives identifiers of other messages. The ECUs regulate sending behavior among each other on the CAN bus using the identifier.

 

If two ECUs send at the same time, the first dominant bit of an identifier overwrites the corresponding recessive bit of the other. The ECU whose identifier begins with a recessive bit ends its transmission, so that the dominant ECU can send without interruption. This process utilizes non-return-to-zero coding (NRZ), i.e. the signal remains on Low or High for the total period of a bit.

 

If the previous bit sequence is the same for two identifiers, the next bit is compared. Again, the dominant bit causes the ECU that has sent a message with a recessive bit to stop sending. This arbitration process determines which ECU is allowed to send at a specific time on the bus and which is not.

 

For the transfer of a time critical message, an identifier with high priority (= low ID, e.g. “0”) is issued, granting priority at the time of transfer. Therefore, the message with the lowest identifier is always transmitted.

 

However, even for high-priority messages, the exact sending time cannot be influenced. Other messages transmitted right at the same moment will not be interrupted. The start of sending can therefore be delayed by the maximum length of the message (non-deterministic behavior).