CAN與CANFD的異同

2021-10-09 08:03:46 字數 2743 閱讀 5036

為什麼需要can fd?

在汽車行業,為什麼需要can fd?

1. 原因主要是因為汽車功能越來越多,越來越複雜,傳統的can匯流排(can2.0)的負載率越來越高,甚至負載率高達95%。

2. 因為傳統can匯流排的侷限性:

· 傳輸率最大為1mbiy/s(典型的<= 500kbit/s);

· 傳統can資料幀超過50%的額外開銷(overhead > 50%)。

3. 對比其他協議,額外開銷比例要小得多,如udp (1500 bytes/datagram, 64 bytes overhead),flexray(254 bytes/frame, 8 bytes overhead)。

4. 因為歷史原因,汽車不可能直接放棄目前的傳統can匯流排技術,一切推到重來。那麼為了解決can匯流排負載率問題,而又能相容can匯流排,並且研發成本不能太高的問題,2023年最新的修訂版iso 11898-1(classic can和can fd)發布。

什麼是can fd?

2023年,開始can fd協議的開發。

2023年,iso 11898-1(classical can和can fd)修訂版發布。

對比傳統can匯流排技術,can fd有兩方面的公升級:

1. 支援可變速率—> 最大5mbit/s;

2. 支援更長資料長度--> 最長64 bytes資料。

can fd的開發成本和傳統can開發成本相差不大,並且可以和傳統can很好相容。

can fd對比flexray的優勢在於:

1. can fd的開發成本遠低於flexray;

2. flexray對ecu公升級刷寫不友好。

can fd對比乙太網的優勢在於:

1. can fd的開發成本遠低於乙太網;

2. 乙太網優勢在於大資料的傳輸但不能完全適用於當前汽車架構。

from vector——data rate vs cost

can fd 資料幀

對比傳統can的資料幀,can fd在控制場新新增edl位、brs位、esi位,採用了新的dlc編碼方式、新的crc演算法(crc場擴充套件到21位)。

can fd資料幀 vs can資料幀

1. 起始位sof(start of frame)

傳統can的資料幀起始位sof和can fd的資料幀起始位sof是一樣的,乙個bit的顯性位『0』。

2. 仲裁場(arbitration field)

對比傳統can資料幀,can fd共享相同的can id,包括擴充套件資料幀的id。

can fd用rrs bit(始終為顯性位『0』)代替rtr。

fdf(fd format)表示can fd還是傳統can資料幀:

· fdf – 『0』 --> 傳統can資料幀

· fdf – 『1』--> can fd資料幀

brs(bit rate switch)表示時鐘頻率的切換:

· brs – 『1』-->時鐘頻率切換

esi(error state indicator)表示can匯流排的錯誤狀態。

3. dlc控制域(control field)

dlc用於表示資料幀的資料長度。並且支援傳統can 資料幀的編碼方式。

4. crc

can匯流排由於位填充規則對crc的干擾,造成錯幀漏檢率未達到設計意圖。can fd對crc演算法做了改變,即crc以含填充位的位流進行計算。在校驗和部分為避免再有連續位超過6個,就確定在第一位以及以後每4位新增乙個填充位加以分割,這個填充位的值是上一位的反碼。作為格式檢查,如果填充位不是上一位的反碼,就作出錯處理。can fd的crc場擴充套件到了21位。

根據不同的資料長度,crc的長度也不一樣:

· crc 15bits –> 傳統can;

· crc 17bits--> 資料長度<= 16bytes;

· crc 21bits -->資料長度》16bytes。

crc的結束標識位(crc delimiter)一般是1位,但也接收2位。

ack緊跟著crc結束標識位。不同的是,can fd支援2bits的ack的識別。

6. 結束識別符號(end of frame)

eol在傳統can,can fd中都是7個連續隱性位「1」。

效能對比

CAN和CANFD的區別總結

概述 canfd 可以理解成can協議的公升級版,只公升級了協議,物理層未改變。can與canfd主要區別 傳輸速率不同 資料長度不同 幀格式不同 id長度不同。傳輸速率不同 can 最大傳輸速率1mbps。canfd 速率可變,仲裁位元率最高1mbps 與can相同 資料位元率最高8mbps,如下...

CANFD和CAN的區別簡介

1.概述 can fd 可以理解成can協議的公升級版,只公升級了協議,物理層未改變。can與can fd主要區別 傳輸速率不同 資料長度不同 幀格式不同 id長度不同。由傳統can轉移到canfd比較方便 2.傳輸速率不同 can 最大傳輸速率1mbps。can fd 速率可變,仲裁位元率最高1m...

TCP 與UDP的異同

tcp 傳輸控制協議 和udp 擁護資料報協議 是傳輸層的倆個傳輸協議,它們倆個的最大區別就是是否面向連線。tcp包括了面向連線和可靠資料傳輸服務,在客戶端和伺服器端進行通訊前,要先交換傳輸層控制資訊,為雙方的通訊做好準備。在這個握手階段後,我們就可以認為在這倆個程序間存在乙個tcp連線,且是乙個全...