CAN data link layers: Three generations

There are three CAN data link layer generations:

The Classical CAN and the CAN FD protocols are internationally standardized in ISO 11898-1. The CAN XL protocol is specified in CiA 610-1.

The CAN data link layer is standardized in ISO 118981-1 (Classical CAN and CAN FD) as well as in CiA 610-1 (CAN XL)

CAN is a very reliable producer/consumer serial bus system with multi-drop capabilities. The network arbitration method is the same for all CAN generations: Classical CAN, CAN FD, and CAN XL. The CAN frames are broadcasted. This means every node is able to consume any frame produced by any other node in the CAN network.

All three generations use the same non-destructive bus-arbitration method. They support standardized data frame formats as well as error and overload frames. Remote frames are only featured by Classical CAN.

Originally, CAN was developed for use as an in-vehicle network in passenger cars, nowadays CAN is used in many other industries. This includes applications in any kind of transportation system (rail vehicle, aircraft, marine, etc.), in industrial machine control systems, in home and building automation (e.g. HVAC, elevators), in mobile machines (construction and agriculture equipment), in medical devices and laboratory automation, as well as in many other embedded and deeply embedded applications. Each year, more than two billion CAN nodes are sold. The price for CAN protocol controllers is very reasonable.

In the beginning, there was only the data link layer protocol, what we today name Classical CAN. Introduced by Bosch as CAN 2.0 A/B, it has been internationally standardized in the ISO 11898 series since 1993. CiA doesn’t use the term CAN 2.0 anymore: we name it Classical CAN.

In 2012, Bosch and other CAN experts improved the CAN protocol to what is known as the CAN FD protocol. The Classical CAN and CAN FD protocols are by some means backward compatible: Any CAN FD-compliant node understands Classical CAN frames. However, legacy Classical CAN nodes not supporting CAN FD destroy a received CAN FD frame by sending an error frame.

Both protocols, Classical CAN and CAN FD are internationally standardized in ISO 11898-1:2015 and feature a high reliability. All single-bit failures are detectable. Multi-bit failures are found with a very high probability. One of the unique features is the fault confinement, which provides a network-wide data consistency.

The third CAN protocol generation, called CAN XL, has been developed by CiA technical groups. It provides a lot of new features including the separation of bus access arbitration (11-bit priority ID) and data frame content indication (32-bit acceptance field) as well as layer management information (e.g. SDT field). The data field length ranges from 1 byte to 2048 byte. The CAN XL data link layer is specified in CiA 610-1.