一、CAN與CAN FD的概念
1、CAN是什么
控制器局域網總線(CAN,Controller Area Network)是一種用于實時應用的串行通訊協議總線,它可以使用雙絞線來傳輸信號,是世界上應用最廣泛的現場總線之一。 CAN協議用于汽車中各種不同元件之間的通信,以此取代昂貴而笨重的配電線束。 該協議的健壯性使其用途延伸到其他自動化和工業應用。 CAN協議的特性包括完整性的串行數據通訊、提供實時支持、傳輸速率高達1Mb/s、同時具有11位的尋址以及檢錯能力。
來源:車技幫
2、CAN FD是什么
CAN FD 是CAN with Flexible Data rate的縮寫,翻譯為【可變速率的 CAN】。 也可以簡單的認為是傳統CAN的升級版,其中要說明的是,只升級了協議,物理層沒有改變。
3、為什么需要CAN FD?
原因主要是汽車功能越來越多,越來越復雜,傳統的CAN總線(CAN2.0)的負載率越來越高,甚至負載率高達95%,以及傳統CAN總線還存在一些局限性。
傳統CAN總線的局限性包括:
· 傳輸率最大為1Mbiy/s(典型的<= 500kbit/s);
· 傳統CAN數據幀超過50%的額外開銷(overhead > 50%)。
對比其他協議,額外開銷比例要小得多,如UDP (1500 bytes/datagram, 64 bytes overhead),FlexRay(254 bytes/frame, 8 bytes overhead)。
還有就是歷史原因,汽車不可能直接放棄目前的傳統CAN總線技術,重頭來過。 那么為了解決CAN總線負載率問題,而又能兼容CAN總線,并且研發成本不能太高的問題,因此在2015年最新的修訂版ISO 11898-1(classic CAN和CAN FD)發布。
目前的很多應用對于通訊的數據量要求越來越高,對于通訊的速率要求也越來越高,尤其是當速率高于1MBit/s的時候,傳統的CAN通訊是無法滿足的,所以基于這種應用的需求,CAN FD就應運而生了。 既然是出于這樣的目的,CANFD的出現肯定是需要解決傳輸速率和傳輸字節的問題,帶著這樣的思路我們就可以更容易地理解CANFD協議,以及為什么會出現它了。
二、CAN與CANFD的比較
CAN與CAN-FD主要區別:傳輸速率不同、數據域長度不同、幀格式不同、ID長度不同。
1、傳輸速率不同
CAN的傳輸速率
一般的工程中比較常用的為500K每秒的通訊速率。 這個速率在實際測試的時候也是非常可靠的。 CAN總線上任意兩個節點的最大傳輸距離與其位速率有關。 最大通信距離指的是同一條總線上兩個節點之間的距離。 從下面圖中,可以看到速率越低通訊距離就越遠,也就是說CAN總線的通訊距離和波特率成反比。 CAN最大傳輸速率為1Mbps
來源:CSDN編程社區. 何以解憂唯有寫!
CANFD的傳輸速率
CAN-FD 采用了兩種位速率:從控制場中的 BRS 位到 ACK 場之前(含 CRC 分界符)為可變速率,其余部分為原 CAN 總線用的速率。 兩種速率各有一套位時間定義寄存器,它們除了采用不同的位時間單位 TQ 外,位時間各段的分配比例也可不同。
因此,對于 CAN FD而言,是在 CAN 的基礎上增加了一個數據域的傳輸速率,數據傳輸速率要大于等于原 CAN 總線用的速率。 也就是說 CAN FD 支持兩種傳輸速率,兩種速率可以保持一致,也可以不保持一致。 速率可變,仲裁比特率最高1Mbps,數據比特率最高8Mbps。
來源:博客園. 華夏九州
2、數據域長度不同
CAN的數據域長度,一幀數據最長8字節。 CAN FD數據域長度,一幀數據最長64字節。
傳統CAN報文與CANFD報文的DLC長度區別如下所示:
來源:CSDN編程社區.qq_41256212
傳統CAN報文與CANFD報文的最大區別有2點,1、CANFD可以傳輸更多的數據,2、CANFD報文在傳輸中由2種傳輸速率完成傳輸,一種是標稱的CAN總線速率(用于傳輸非數據域的字段),另一種是數據域傳輸速度(用于傳輸數據域的字段)。
3、幀格式不同
在CAN總線上傳輸的信息稱為報文,當總線空閑時任何連接的單元都可以開始發送新的報文。 CAN通信是通過以下5種類型的幀進行的:數據幀 、遙控幀 、錯誤幀 、過載幀 、幀間隔。
來源:CSDN編程社區. 不脫發的程序猿
CAN FD新增了FDF、BRS、ESI位。
FDF:表示CAN報文還是CAN-FD報文。
BRS:表示位速率轉換,該位隱性時,速率可變(即BSR到CRC使用轉換速率傳輸),該位為顯性時,以正常的CAN-FD總線速率傳輸(恒定速率);
ESI:表示發送節點狀態。
來源:CSDN編程社區 金城孤客
4、ID長度不同
CAN標準幀ID長度最長11bit,CANFD標準幀ID長度可擴展到12bit。
三**、CAN與CANFD的優劣勢**
1、CAN優勢
具有實時性強、傳輸距離較遠、抗電磁干擾能力強、成本低等優點;
采用雙線串行通信方式,檢錯能力強,可在高噪聲干擾環境中工作;
具有優先權和仲裁功能,多個控制模塊通過CAN 控制器掛到CAN-bus 上,形成多主機局部網絡;
可根據報文的ID決定接收或屏蔽該報文;
可靠的錯誤處理和檢錯機制;
發送的信息遭到破壞后,可自動重發;
節點在錯誤嚴重的情況下具有自動退出總線的功能;
報文不包含源地址或目標地址,僅用標志符來指示功能信息、優先級信息。
2、CAN缺點
不一致性
CAN總線各節點質量的不一致會引發系統癱瘓、錯誤、死機等問題,所以CAN一致性測試成為保證CAN網絡安全運行的重要手段。
不可預測性
CAN總線將節點狀態分為ErrorAcTIve、Error Passive 和Bus Off 三種,這三種狀態在一定條件下可以互相轉換,不同狀態中節點的發送有不同的延遲。 另外,由于CAN 的原子廣播特點,其它節點的發送錯誤或接收錯誤會開啟一個錯誤幀,從而影響到該節點的接收錯誤計數器的值,進而影響節點狀態。
信道出錯堵塞
節點有可能受干擾或其它原因暫時或永久失效,出錯的主機會命令CAN 收發器不斷發送消息,即所謂的Babbling ldiot 錯誤。 由于該信息的格式等均合法,因此CAN 沒有相應的機制來處理這種情況。
3、CAN FD的優勢
CAN FD提高位速率的同時提供更短的CAN幀
延遲時間更短.
更好的實時性能
更高的帶寬
CAN FD可以在CAN幀中容納從8到64字節更多的數據
相對更少的系統開銷 = 更好的數據吞吐量
發送較大數據對象時,軟件更簡單高效
CAN FD具有更高性能的CRC算法
降低未檢測到錯誤的風險
但是因為受制于產品的穩定性考驗,改造成本等問題,還沒辦法快速全面普及CAN FD。
四、小結
總的來看,由于現在車輛上需要的通訊數據越來越多,而原有的CAN負載率逐年升高,考慮到傳統的CAN通訊的架構已經非常的龐大了,如果將傳統的全部推翻更換一個全新的通訊方式所要付出的代價實在太大,所以需要一個既能兼容原有的CAN通訊,又不至于增加太高的成本,CAN FD就是一個折中方案,同時還可以提高數據的傳輸量。
審核編輯:湯梓紅
-
控制器
+關注
關注
113文章
16731瀏覽量
181003 -
CAN
+關注
關注
57文章
2811瀏覽量
465786 -
總線
+關注
關注
10文章
2925瀏覽量
88964 -
通訊協議
+關注
關注
10文章
282瀏覽量
20591 -
CANFD
+關注
關注
0文章
69瀏覽量
5133
原文標題:CAN與CAN FD的區別是什么?
文章出處:【微信號:智能汽車電子與軟件,微信公眾號:智能汽車電子與軟件】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
如何實現CAN到CAN FD的升級?
CAN到CAN FD快速升級的實現方案
can總線一幀多少字節多少位_MCU擴展CAN/CAN FD接口方案MCP2518FD+ATA6563

STM32設備上的CAN FD
CAN與CAN FD如何解決彼此的通訊
可以混合使用Classical CAN格式和CAN FD格式的診斷報文嗎?
CAN FD是什么意思 優點有哪些
can和canfd的區別
如何使用DSLogic分析CAN/CAN-FD 信號?

評論