CAN: From physical layer to application layer and beyond
Since the invention of CAN in the 80ies, three CAN protocol generations have been introduced:
- CAN CC (classic)
- CAN FD (flexible data rate) and its subset CAN FD light
- CAN XL (extended data-field length)
According to the ISO OSI (open system interconnection) layer model, CAN applications typically cover the physical layer, the data link layer, and the application layer (see Figure 1).
Lower-layer protocols
CAN lower layers are specified in ISO 11898 series and cover the physical medium attachment (PMA) sub-layer, the physical coding sub-layer (PCS) as well as the data link layer (DLL).
Figure 2 shows a typical implementation of the CAN lower layers. The CAN DLL is responsible for flow control, data encapsulation, frame coding, bit stuffing, serialization, error detection, error signaling, acknowledgement, etc. The PCS sub-layer performs bit encoding, bit decoding, and synchronization. The PMA sub-layer converts physical signals into logical signals and vice versa. The physical medium-dependent (PMD) sub-layer is generally application-specific.
The several standardized PMA sub-layers are normally implemented by means of transceivers. The PMA options include:
- CAN high-speed (HS) transceiver with optional low-power and optional selective wake-up capability (ISO 11898-2:2024)
- CAN SIC (signal improvement capability) transceiver (ISO 11898-2:2024)
- CAN XL SIC transceiver (ISO 11898-2:2024)
- CAN low-power/fault-tolerant transceiver (ISO 11898-3:2006) – not more recommended for new designs
- CAN truck/trailer transceiver (ISO 11992-1)
- Single-wire CAN (SWC) transceiver (SAE J2411) – not more recommended for new designs
Most common is a high-speed transmission up to 1 Mbit/s. This is realized by means of CAN HS transceivers. For bit-rates higher than 1 Mbit/s as used in the CAN FD data-phase, the CAN FD transceivers with improved symmetry features are used. ISO 11898-2:2024 specifies such transceivers for bit-rates up to 2 Mbit/s and up to 5 Mbit/s. Of course, the achievable bit-rate depends highly on the physical network design. CAN SIC transceivers can suppress ringing. This enables network designers to achieve data-phase bit rates about 8 Mbit/s. CAN SIC XL transceivers featuring an optional PWM (pulse-width modulation) coding, support in FAST mode bit-rates of up to 20 Mbit/s.
The low-power/fault-tolerant transceiver is mostly used in the automotive industry and is limited to 125 kbit/s. It is no longer used in new designs. An application-specific PMA is standardized in ISO 11992-1, which is also limited to 125 kbit/s. It is used in truck-trailer point-to-point networks. The single-wire transmission as specified in SAE J2411 has some restrictions regarding the robustness and the transmission rate. It is not widely implemented and is no longer used in new designs.
Higher-layer protocols (HLPs)
Network to application layer implementations are usually referenced as HLPs. Often, the CAN-based application layer approaches include functional elements of other higher layers (e.g., presentation, session, transport, or network layers), too. Standardized CAN-based HLPs include:
- CANopen CC application layer (CiA 301) based on CAN CC
- CANopen FD application layer (CiA 1301) based on CAN FD
- J1939-based application profiles for different application domains
- DeviceNet based on CAN CC, developed for factory automation
- UAVCAN (Cyphal) and DroneCAN specifications for unmanned aerial vehicles