Datasheet

Table Of Contents
Table 39-2. Coding of DLC in CAN FD
DLC 9 10 11 12 13 14 15
Number of Data Bytes 12 16 20 24 32 48 64
In CAN FD frames, the bit timing will be switched inside the frame, after the BRS (Bit Rate Switch) bit, if
this bit is recessive. Before the BRS bit, in the CAN FD arbitration phase, the nominal CAN bit timing is
used as defined by the Nominal Bit Timing & Prescaler Register NBTP. In the following CAN FD data
phase, the fast CAN bit timing is used as defined by the Data Bit Timing & Prescaler Register DBTP. The
bit timing is switched back from the fast timing at the CRC delimiter or when an error is detected,
whichever occurs first.
The maximum configurable bit rate in the CAN FD data phase depends on the CAN clock frequency
(GCLK_CAN). Example: with a CAN clock frequency of 20MHz and the shortest configurable bit time of 4
t
q
, the bit rate in the data phase is 5 Mbit/s.
In both data frame formats, CAN FD long and CAN FD fast, the value of the bit ESI (Error Status
Indicator) is determined by the transmitter’s error state at the start of the transmission. If the transmitter is
error passive, ESI is transmitted recessive, else it is transmitted dominant.
39.6.2.4 Transceiver Delay Compensation
During the data phase of a CAN FD transmission only one node is transmitting, all others are receivers.
The length of the bus line has no impact. When transmitting via pin CAN_TX the CAN receives the
transmitted data from its local CAN transceiver via pin CAN_RX. The received data is delayed by the
CAN transceiver’s loop delay. In case this delay is greater than TSEG1 (time segment before sample
point), a bit error is detected. In order to enable a data phase bit time that is even shorter than the
transceiver loop delay, the delay compensation is introduced. Without transceiver delay compensation,
the bit rate in the data phase of a CAN FD frame is limited by the transceivers loop delay.
Description
The CAN’s protocol unit has implemented a delay compensation mechanism to compensate the
transmitter delay, thereby enabling transmission with higher bit rates during the CAN FD data phase
independent of the delay of a specific CAN transceiver.
To check for bit errors during the data phase of transmitting nodes, the delayed transmit data is compared
against the received data at the Secondary Sample Point SSP. If a bit error is detected, the transmitter
will react on this bit error at the next following regular sample point. During arbitration phase the delay
compensation is always disabled.
The transmitter delay compensation enables configurations where the data bit time is shorter than the
transmitter delay, it is described in detail in the new ISO11898-1. It is enabled by setting bit DBTP.TDC.
The received bit is compared against the transmitted bit at the SSP. The SSP position is defined as the
sum of the measured delay from the CAN’s transmit output CAN_TX through the transceiver to the
receive input CAN_RX plus the transmitter delay compensation offset as configured by TDCR.TDCO. The
transmitter delay compensation offset is used to adjust the position of the SSP inside the received bit
(e.g. half of the bit time in the data phase). The position of the secondary sample point is rounded down
to the next integer number of mtq.
PSR.TDCV shows the actual transmitter delay compensation value. PSR.TDCV is cleared when
CCCR.INIT is set and is updated at each transmission of an FD frame while DBTP.TDC is set.
The following boundary conditions have to be considered for the transmitter delay compensation
implemented in the CAN:
SAM D5x/E5x Family Data Sheet
CAN - Control Area Network
© 2019 Microchip Technology Inc.
Datasheet
DS60001507E-page 1209