CAN FD v2.0
77
PG223 December 5, 2018
Chapter 3:
Designing with the Core
Incoming message had the ID 0x1234_56AB.
Then after message reception, ID reg will be as:
ID reg
: 0x1234_56AB
Mask reg : 0xFFFF_FF00
Example 2:
Host programmed ID & Mask:
ID reg
: 0xABCD_1234
Mask reg : 0000_0000
Because the mask is 0x0, any incoming IDs would match this buffer.
Incoming message had the ID 0x5678_4321.
Then after message reception, ID reg will be as:
ID reg
: 0x5678_4321
Mask reg : 0x0000_0000
Clocking
The CAN FD has two clocks: the CAN clock and the AXI4-Lite/APB clock. These two clocks
can be asynchronous or synchronous to each other. When the two clocks are asynchronous,
it is required that the AXI4-Lite/APB clock has a greater frequency than the CAN clock.
• The CAN clock frequency can be 8 to 80 MHz.
• The AXI4-Lite/APB clock frequency can be 8 to 200 MHz.
The core has another clock,
can_clk_x2
, which is fully synchronous to
can_clk
and is a
multiple by two of
can_clk
in frequency. The
can_clk_x2
clock is used to drive two CAN
interface flops.
Note:
When implementing the protocol in hardware, Robert Bosch recommends using the CAN
clock at 20, 40, or 80 MHz. For more information, see
Robustness of a CAN FD Bus System – About
Oscillator Tolerance and Edge Deviations
IMPORTANT:
The CAN clock must be compliant with the oscillator tolerance range given in the
relevant standards.
Resets
The CAN FD can be reset by using the system (hard) reset input port or through the
software controlled reset provided in the SRST bit in the SRR register. Both system and
software reset sources reset the complete CAN FD core (that is, both the Object layer and
the Transfer layer).
The Transfer layer remains in reset as long as the CEN (CAN enable) bit in the SRR register
is 0 (that is, the CEN bit is the third source of reset for the Transfer layer). If the CEN bit is