본문 바로가기
임베디드 개발/펌웨어

CAN FD 프로토콜

by eteo 2023. 2. 20.

 

 

 

CAN FD 특징

 

1. Recommended Clock : 20/40/80MHz Clock

 

2. Nominal bit rate : up to 1Mbps

 

3. Data bit rate : 2/5/8Mbps

 

4. DLC : Maximum 64 bytes per length

 

5. Improved CRC

 

6. 주로 사용하는 bit rate : 500Kbps / 2 Mbps

 

 

 

 

 

 

 

 

 

CAN FD Frame

 

 

 

 

 

주요 차이점은 아래와 같다.

 

 

📌 CAN FD도 기존 CAN과 마찬가지로 ID가 11bit인 Standard Frame과 ID가 29bit인 Extended Frame이 있다.

 

📌 Higher Speed of Data Bit Rate가 적용되는 구간은 BRS bit부터 CRC Delimeter까지이다.

 

📌 Data 길이가 16보다 작으면 17-bit CRC가 사용되고 Data길이가 16보다 크거나 같으면 21-bit CRC가 사용된다.

 

📌 CAN FD에는 리모트 프레임이 없다. 때문에 RTR 비트 역시 필요하지 않으며 항상 dominant인 RRS(Remote Request Substitution)로 대체된다.

 

📌 CAN FD 컨트롤러는 Classic CAN Frame을 수신할 수 있으나 Classic CAN 컨트롤러는 CAN FD Frame을 수신할 경우 Error Frame으로 반응한다.

 

 

 

 

Data Length Code

DLC Classic Frame FD Frame
0 0 0
1 1 1
2 2 2
3 3 3
4 4 4
5 5 5
6 6 6
7 7 7
8 8 8
9 8 12
10 8 16
11 8 20
12 8 24
13 8 32
14 8 48
15 8 64
>15 8 64

 

 

 

 

 

 

Classic CAN과 비교하여 CAN FD에 추가된 bit

 

  • FDF : FD Format Indicator
    • Recessive : FD
    • Dominant : Classic
  • Res : Reserved bit for future (dominant)
  • BRS : Bit Rate Switch. FD Only
    • Recessive : BRS Enabled
    • Dominant : BRS Disabled
  • ESI : Error State Indicator
    • Recessive : Error Passive Node
    • Dominant : Error Active Node

 

 

 

 

 

 

 

 

 

 

 

 

ISO CAN FD vs Non-ISO CAN FD

 

 

CAN FD는 ISO와 Non-ISO버전이 있으며 서로 호환되지 않으니 주의가 필요하다.

 

초장기 Bosch사는 ISO표준 제정 전 FD프로토콜을 적용한 제품들을 내놓았고 이 때 버전을 Bosch CAN FD 1.0 버전 또는 Non-ISO CAN FD라고 부른다.

 

3년의 시간이 지나 2015년에 CAN FD를 위한 ISO표준이 제정되었고, ISO CAN FD라고 하면 ISO11898-2:2015를 따르는 프로토콜을 말한다.

 

 

 

 

 

Reference :

https://www.ni.com/ko-kr/shop/seamlessly-connect-to-third-party-devices-and-supervisory-system/understanding-can-with-flexible-data-rate--can-fd-.html

https://www.youtube.com/watch?v=5k5BAaHpO-I (Microchip Technology)

https://elearning.vector.com/mod/page/view.php?id=1922