加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
    • ? CAN-FD與CAN主要區(qū)別
    • ? CAN-FD簡介
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

【CAN總線知識(shí)】深度解析CAN-FD與CAN協(xié)議的差別

10/22 16:22
620
閱讀需 6 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

導(dǎo)讀

隨著工業(yè)的發(fā)展,工業(yè)總線上的數(shù)據(jù)量越來越多,這使得CAN總線的逐漸達(dá)到負(fù)荷極限,這就需要改進(jìn)原有的總線來提高總線傳輸速率,CAN-FD便在這樣的背景下誕生了。

隨著當(dāng)今工業(yè)的發(fā)展,尤其是在CAN總線運(yùn)用較多的汽車領(lǐng)域,總線通訊的數(shù)據(jù)量越來越大,例如電動(dòng)汽車上,汽車內(nèi)部出現(xiàn)更多的輔助系統(tǒng)和人機(jī)交互系統(tǒng),這就使得傳統(tǒng)的CAN總線在傳輸速率和帶寬方面越來越力不從心。因此CAN-FD孕育而生。

根據(jù)CAN規(guī)范ISO11898-2所定義的標(biāo)準(zhǔn)幀結(jié)構(gòu),一幀報(bào)文最大只能傳輸64位(8個(gè)字節(jié))的數(shù)據(jù),在最好的情況下總線負(fù)載達(dá)到70%左右,不過如果報(bào)文數(shù)據(jù)少于8個(gè)字節(jié)的情況下總線負(fù)載可能會(huì)更小。我們或者會(huì)提出疑問,為什么不可以把CAN標(biāo)準(zhǔn)的通信波特率改高一點(diǎn)呢?其實(shí)是有一個(gè)很重要的因素,CAN采用仲裁機(jī)制來判定不同節(jié)點(diǎn)CAN報(bào)文傳輸?shù)膬?yōu)先級(jí),在仲裁期同一總線上的所有節(jié)點(diǎn)必須在一個(gè)位的時(shí)間內(nèi)到達(dá)。另一方面電信號(hào)有一個(gè)有限的傳播速度。從大量經(jīng)驗(yàn)中得出CAN總線以1Mbit/s運(yùn)行的最長距離為40米。通信波特率越高,通信距離則越短。

? CAN-FD與CAN主要區(qū)別

CAN-FD和CAN主要的區(qū)別有兩點(diǎn):

1. 可變速率

CAN-FD采用了兩種位速率:從控制場(chǎng)中的BRS位到ACK場(chǎng)之前(含CRC分界符)為可變速率,其余部分為原CAN總線用的速率。兩種速率各有一套位時(shí)間定義寄存器,它們除了采用不同的位時(shí)間單位TQ外,位時(shí)間各段的分配比例也可不同。

2. 新的數(shù)據(jù)場(chǎng)長度

CAN-FD對(duì)數(shù)據(jù)場(chǎng)的長度作了很大的擴(kuò)充,DLC最大支持64個(gè)字節(jié),在DLC小于等于8時(shí)與原CAN總線是一樣的,大于8時(shí)有一個(gè)非線性的增長,所以最大的數(shù)據(jù)場(chǎng)長度可達(dá)64字節(jié)。

圖2

? CAN-FD簡介

1. CAN-FD 數(shù)據(jù)幀幀格式

CAN-FD 數(shù)據(jù)幀在控制場(chǎng)新添加EDL位、BRS位、ESI位,采用了新的DLC編碼方式、新的CRC算法(CRC場(chǎng)擴(kuò)展到21位)。CAN-FD數(shù)據(jù)幀格式如圖 3所示。

圖3

2. 新添加位介紹

2.1?EDL位(Extended Data Length),原CAN數(shù)據(jù)幀中的保留位r, 該位功能為:

    隱性:?表示CAN-FD 報(bào)文 (采用新的DLC編碼和CRC算法);顯性:?表示CAN報(bào)文。

2.2?BRS位( Bit Rate Switch),該位功能為:

隱性:表示轉(zhuǎn)換可變速率;

顯性:表示不轉(zhuǎn)換速率。

2.3 ESI(Error State Indicator),該位的功能為:

隱性:表示發(fā)送節(jié)點(diǎn)處于被動(dòng)錯(cuò)誤狀態(tài)(Error Passive);

顯性:表示發(fā)送節(jié)點(diǎn)處于主動(dòng)錯(cuò)誤狀態(tài)(Error Active)。

EDL位可以表示CAN報(bào)文還是CAN-FD報(bào)文;BRS表示位速率轉(zhuǎn)換,該位為隱性位時(shí),從BRS位到CRC界定符使用轉(zhuǎn)換速率傳輸,其他位場(chǎng)使用標(biāo)準(zhǔn)位速率,該位為顯性時(shí),以正常的CAN-FD總線速率傳輸;通過添加ESI位,可以很方便的知道當(dāng)前發(fā)送節(jié)點(diǎn)所處的狀態(tài)。

3. 新的CRC算法

CAN總線由于位填充規(guī)則對(duì)CRC的干擾,造成錯(cuò)幀漏檢率未達(dá)到設(shè)計(jì)意圖。CAN-FD對(duì)CRC算法作了改變,即CRC以含填充位的位流進(jìn)行計(jì)算。在校驗(yàn)和部分為避免再有連續(xù)位超過6個(gè),就確定在第一位以及以后每4位添加一個(gè)填充位加以分割,這個(gè)填充位的值是上一位的反碼,作為格式檢查,如果填充位不是上一位的反碼,就作出錯(cuò)處理。CAN-FD的CRC場(chǎng)擴(kuò)展到了21位。由于數(shù)據(jù)場(chǎng)長度有很大變化區(qū)間,所以要根據(jù)DLC大小應(yīng)用不同的CRC生成多項(xiàng)式,CRC_17,適合于幀長小于210位的幀,CRC_21,適適合于幀長小于1023位的幀。

4. 新的DLC編碼

CAN-FD 數(shù)據(jù)幀采用了新的新的DLC編碼方式,在數(shù)據(jù)場(chǎng)長度在0-8個(gè)字節(jié)時(shí),采用線性規(guī)則,數(shù)據(jù)場(chǎng)長度為12-64個(gè)字節(jié)時(shí),使用非線性編碼。如圖 5所示。

圖5

CANFD接口卡?USBCANFD-400U

? 4路CANFD 2路LIN

??XCP/CCP標(biāo)定

? 兼容CAN2.0A/B模式收發(fā)

參考價(jià)格:3300元起

致遠(yuǎn)電子

致遠(yuǎn)電子

廣州致遠(yuǎn)電子股份有限公司成立于2001年,注冊(cè)資金5000萬元,國家級(jí)高新技術(shù)認(rèn)證企業(yè),廣州市高端工控測(cè)量儀器工程技術(shù)研究開發(fā)中心,Intel ECA全球合作伙伴和微軟嵌入式系統(tǒng)金牌合作伙伴。

廣州致遠(yuǎn)電子股份有限公司成立于2001年,注冊(cè)資金5000萬元,國家級(jí)高新技術(shù)認(rèn)證企業(yè),廣州市高端工控測(cè)量儀器工程技術(shù)研究開發(fā)中心,Intel ECA全球合作伙伴和微軟嵌入式系統(tǒng)金牌合作伙伴。收起

查看更多

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

ZLG官方賬號(hào),一個(gè)匯聚500名工程師的研發(fā)測(cè)試分享平臺(tái),為您提供電子世界領(lǐng)先的產(chǎn)品技術(shù)與行業(yè)解決方案.