最近越來越多工程師關注CAN FD,同時也會向虹科反饋CAN FD的產品應用信息。覺得對于CAN FD的發布,對于中國的工程師或者是中國對CAN技術的應用將會迎來新的契機。試想,國外累計了20多年的CAN技術呈現出來的新技術-CAN FD,在它誕生沒多久就可以見證和陪伴它的“成長”,對于技術工程師來說是多么美妙的事情。
當第一次接觸CAN FD,現場很多人都會有疑問,CAN FD與CAN有哪些不同呢?CAN FD能否與當前的CAN 兼容?目前CAN FD的應用情況怎么樣?等等一系列相關的問題就像打開話匣子一樣迸發出來。接下來重點介紹CAN FD與CAN的不同之處,同時也作了哪些升級。
一、CAN FD采用了兩種位速率
CAN FD全稱為CAN with Flexible Data-rate,即是帶靈活可變的數據波特率,在數據段中可以實現高達理論15Mbit/s的通信波特率,從控制場中的BRS位到ACK場之前(含CRC分界符)為可變速率,其余部分為原CAN總線用的速率。
二、CAN-FD的數據幀增加至64個字節有效數據
如下圖可見,較之CAN基本數據格式,CAN-FD的數據位長度已經突破最大8個字節的數據,達到最高64個字節的有效數據。
三、幀結構的變化:
其中CAN FD 數據幀在控制場新添加EDL位、BRS位、ESI位,采用了新的DLC編碼方式、新的CRC算法(CRC場可能擴展到17,21,26位)。
3.1 控制場添加EDL位、BRS位、ESI位
EDL位:(Extended Data Length)原CAN數據幀中的保留位r, 該位功能為:
隱性: 表示CAN FD 報文 (采用新的DLC編碼和CRC算法)
顯性: 表示CAN報文
BRS位:( Bit Rate Switch)該位功能為:
隱性:表示轉換可變速率
顯性:表示不轉換速率
ESI(Error State Indicator),該位的功能為:
隱性:表示發送節點處于被動錯誤狀態(Error Passive)
顯性:表示發送節點處于主動錯誤狀態(Error Active
3.2 新的DLC編碼方式
對比ISO 11898-1的編碼方式是線性編碼方式,CAN-FD新的DLC編碼方式是以階梯式的向上增加,而非逐一向上的非線性編碼。
3.3 更長的數據位
當然少不了數據域高達64個字節的數據長度:
3.4 新的CRC算法
確定在第一位以及以后每4位添加一個填充位加以分割,這個填充位的值是上一位的反碼,作為格式檢查,如果填充位不是上一位的反碼,就作出錯處理。
CAN FD的CRC場擴展到了16位以上,可擴展到17,21位。。由于數據場長度有很大變化區間,所以要根據DLC大小應用不同的CRC生成多項式。
綜上說了那么多理論上的變化,看起來還是不夠具體,那么就來一個CAN標準幀與CAN FD幀的波特對比圖:
有關CAN FD與CAN 的兼容問題,Holger提到目前有三種方式來應付同一個平臺中兩者的兼容問題,
1.同一個平臺采用CAN FD和CAN兩種硬件通道,
3.在使用CAN FD通信時,讓CAN節點進入休眠狀態。
責任編輯:gt
-
處理器
+關注
關注
68文章
19259瀏覽量
229651 -
CAN
+關注
關注
57文章
2744瀏覽量
463615 -
總線
+關注
關注
10文章
2878瀏覽量
88051
發布評論請先 登錄
相關推薦
評論