CAN with flexible Data Rate improved CAN
More than 20 years after introducing CAN, communication requirements have increased and CAN has reached it's bandwidth limits in some application fields.
To improve CAN regarding bandwidth Bosch has specified the improved CAN data link layer protocol, called CAN FD. The idea behind CAN FD is that after the arbitration phase of classical CAN the data rate can be increased. The data bits are transferred with a higher bit rate than in the arbitration phase when a transmitter has won the bus arbitration. The speed is limited only by the CAN transceiver signal delay and the signal delay on the cable.
Besides the increased bit speed the new CAN FD allows date frames up to 64 bytes compared with the maximum of 8 bytes with classical CAN.
The ISO TC22 SC3 WG1 has been working to integrate CAN FD in the ISO 11898-1 standard as an optional feature, then called ISO CAN FD. The standard is available since end of 2015 as ISO 11898-1:2015
For more information see the Bosch CAN FD Specification Version 1.0 or the older CAN-FD Whitepaper (V1.1) . Official introduced by BOSCH at the 13th international CAN Conference in March 2012.
Since May 2012 the new M_CAN manual contains specific information on CAN FD used in this FPGA IP. A CiA Newsletter article explains the difference between the original BOSCH non-ISO CAN FD and the upcoming ISO CAN FD protocol.
CiA provides information on CAN FD and organizes world wide events to promote it.
The CAN FD protocol was recently enhanced regarding the CRC weakness in the original Bosch paper. The CiA White Paper explains why and how (“Summary of the discussion regarding the CAN FD CRC issue”). The new frame format has 5 bits more, three stuff bit counter bits, one parity bit for the counter and one additional stuff bit. This version will be the coming ISO standard version.
On June 30 2015 ISO has approved ISO 11898-1 as a Draft International Standard with no negative votes. This document specifies the Classical CAN and the CAN FD protocols.
The Linux CAN device driver can4linux supports this frame format already in it's 'virtual' mode. The same is true for the SocketCAN approach. Since May 2014 a version of can4linux is available with real hardware support for the IFI non-ISO CAN FD controller.
CAN FD: from theory to practice written by Holger Zeltwanger is a good overview with hints on how to design CAN FD networks. CAN Newsletter, print 3/2015 page 34.
See also the CAN FD related link collection