當(dāng)前位置:首頁 > 嵌入式 > 嵌入式硬件
[導(dǎo)讀]你了解CAN總線嗎?你知道總線中有哪些錯誤嗎?你想了解總線中的錯誤是如何校驗以及錯誤之間的關(guān)系嗎?下文為大家揭開它神秘的面紗。

你了解CAN總線嗎?你知道總線中有哪些錯誤嗎?你想了解總線中的錯誤是如何校驗以及錯誤之間的關(guān)系嗎?下文為大家揭開它神秘的面紗。

數(shù)據(jù)校驗是為保證數(shù)據(jù)的完整性進(jìn)行的一種驗證操作。CAN通信采用CRC校驗作為一種重要的錯誤檢測手段,是節(jié)點判斷CAN幀信息的完整性并產(chǎn)生確認(rèn)應(yīng)答的依據(jù)。

在現(xiàn)場總線通信和控制的實際應(yīng)用中,工業(yè)應(yīng)用環(huán)境往往是極端的溫度以及電磁噪聲或是其他的惡劣環(huán)境,系統(tǒng)在這種條件下能否正常工作至關(guān)重要,試想一下倘若生產(chǎn)線設(shè)備發(fā)送的位置信息在傳輸過程出現(xiàn)了錯誤,輕則可能造成生產(chǎn)癱瘓,重則可能導(dǎo)致設(shè)備損壞甚至人員傷害。

在CAN總線通信過程中CAN控制器具備完整的錯誤檢測能力,其中包含:位錯誤檢測、格式錯誤檢測、填充錯誤檢測、應(yīng)答錯誤檢測和CRC錯誤檢測。作為一種重要的錯誤檢測手段,CRC錯誤檢測是接收節(jié)點判斷CAN幀信息的完整性并向總線確認(rèn)應(yīng)答的依據(jù)。

常見的校驗方法

1、最簡單的校驗是數(shù)據(jù)發(fā)送后進(jìn)行主動回讀,結(jié)果一致才確認(rèn)傳輸成功,很顯然這種傳輸溝通的方式很直觀并非常精準(zhǔn),但是由于回讀的操作使得數(shù)據(jù)傳輸量翻倍,也就是傳輸對帶寬要求高且效率低下。

2、奇偶校驗,就是傳輸中使用額外1個位來記錄傳輸數(shù)據(jù)二進(jìn)制數(shù)中1的個數(shù)是奇數(shù)還是偶數(shù),這個方案適合絕大多數(shù)硬件,傳輸開銷適中,因此被廣泛使用,例如常見的串口通信。

3、累加和校驗,該算法原理是對數(shù)據(jù)逐一進(jìn)行累加后得到一個數(shù)值,接收方在接收數(shù)據(jù)同時也進(jìn)行數(shù)據(jù)的累加并最終與發(fā)送過來的累加和進(jìn)行比較,該算法計算簡單,無論在硬件或是軟件實現(xiàn)都能保證較高的效率,常用于低速串行數(shù)據(jù)通信校驗和芯片代碼的完整性判斷。

4、CRC檢驗,該算法是基于一個多項式除法取余的結(jié)果,其根據(jù)位數(shù)需求和多項式變化有數(shù)十種版本,憑借其硬件實現(xiàn)簡單,位反轉(zhuǎn)偵錯能力較強及運算開銷適中的優(yōu)點被廣泛應(yīng)用與數(shù)字網(wǎng)絡(luò)傳輸以及數(shù)據(jù)存儲領(lǐng)域,如磁盤數(shù)據(jù)校驗、USB、GSM/CDMA通信,在計算機應(yīng)用中經(jīng)常接觸到的RAR和ZIP文件的壓縮/解壓數(shù)據(jù)完整性檢查也采用了該算法。

5、MD5、SHA為代表的信息摘要校驗,數(shù)據(jù)摘要算法也被稱為哈希(Hash)算法、散列算法,摘要算法用于數(shù)據(jù)量比較大的場合。它通過對所有數(shù)據(jù)提取指紋信息以實現(xiàn)數(shù)據(jù)簽名、數(shù)據(jù)完整性校驗等功能,由于其不可逆性,有時候會被用做敏感信息的加密,如軟件注冊授權(quán)文件的內(nèi)容保護,還有經(jīng)常遇到的互聯(lián)網(wǎng)下載大文件(例如大小到GB級別的ISO鏡像)通常會帶有MD5、SHA1等信息方便用戶檢查傳輸數(shù)據(jù)的完整性。

CAN幀中的CRC檢驗

1、CRC域在CAN幀中的位置

 

 

如圖1橙色塊方框所示,一個傳統(tǒng)CAN幀結(jié)構(gòu)中,CRC域放置在數(shù)據(jù)結(jié)束后應(yīng)答檢測之前,對于CAN FD也是相同的位置,該信息對于用戶應(yīng)用界面來說是不可見的,可以通過CANscope總線分析儀解碼窗口或者帶有CAN協(xié)議解碼能力的示波器從總線模擬波形上得到對應(yīng)的CRC數(shù)據(jù)展示,見圖2。

 

  圖2

 

2、CRC的在CAN幀中的生成

在經(jīng)典CAN中,使用15位CRC,在硬件可使用移位和異或運算完成CRC的計算,而CAN FD規(guī)范中對幀數(shù)據(jù)長度進(jìn)行了擴展,對于數(shù)據(jù)長度小于等于16字節(jié)的CAN FD幀,采用17位CRC,對于數(shù)據(jù)長度大于16字節(jié)的CAN FD幀采用21位CRC。CAN總線中使用的若干版本CRC生成多項式g整理如表1所示。

 

 

3、CRC是如何完成校驗工作的

CAN幀基于CRC多項式的安全校驗是發(fā)送器根據(jù)發(fā)送的比特計算校驗值,并在CAN幀結(jié)構(gòu)CRC字段中提供該結(jié)果。接收器使用相同的多項式來計算總線上所見位的校驗值,將自我計算的校驗值與接收的校準(zhǔn)值進(jìn)行比較,如果匹配,則認(rèn)為幀被正確接收,接收節(jié)點在ACK時隙位中發(fā)送顯性狀態(tài),從而覆蓋發(fā)送器的隱性狀態(tài)。在不匹配的情況下,接收節(jié)點在ACK定界符之后發(fā)送錯誤幀。

目前CAN FD的控制器CRC校驗實現(xiàn)過程會相對復(fù)雜一點,在一個CAN總線網(wǎng)絡(luò)中,幀起始被檢測到后所有的節(jié)點開始使用三組多項式g15、g17和g21同步計算CRC序列,其中也包含發(fā)送節(jié)點,由于CRC的計算受CAN幀類型和DLC長度影響,直到CAN幀的控制域以及DLC確認(rèn)后才選擇采用對應(yīng)的CRC生成序列,確定的CRC序列會在幀結(jié)構(gòu)中CRC字段被采納用于發(fā)送或者用于接收比較。

4、有關(guān)CRC的ISO CAN FD、non-ISO CAN FD兼容性問題

當(dāng)前CAN FD協(xié)議有兩個版本,為提高故障(錯誤)檢測能力,新版本特別引入了一個3位填充位計數(shù)器和一個額外的奇偶校驗位。此外,CRC計算方法也發(fā)生了變化。這些改進(jìn)使最新的CAN FD協(xié)議與博世(BOSCH)開發(fā)的原始CAN FD協(xié)議不兼容。負(fù)責(zé)ISO的工作組已完成其文件,并已將其提交給DIS(國際標(biāo)準(zhǔn)草案)在進(jìn)行投票程序。

為了避免誤解,CiA建議使用術(shù)語“ISO CAN FD”和“non-ISO CAN FD”。所有符合ISO 11898-2:2015的產(chǎn)品都應(yīng)稱為“ISO CAN FD”。執(zhí)行博世(BOSCH)原始CAN FD協(xié)議的產(chǎn)品應(yīng)命名為“non-ISO CAN FD”,在這個過度階段的產(chǎn)品主要目的是用于前期評估和開發(fā),將來所有產(chǎn)品都將符合ISO標(biāo)準(zhǔn)。

請注意,早前一些供應(yīng)商提供的組件或者工具是針對non-ISO CAN FD協(xié)議的,包括目前在售的部分CAN FD產(chǎn)品,CiA建議僅使用ISO CAN FD產(chǎn)品進(jìn)行設(shè)計和開發(fā),不過你可繼續(xù)使用non-ISO CAN FD做評估和前期開發(fā),因為協(xié)議的改變對于用戶界面是不可見,但注意的是不能同一個網(wǎng)絡(luò)混用non-ISO CAN FD和ISO CAN FD接口設(shè)備,這樣會造成CAN總線錯誤無法完成發(fā)送和接收,如果僅僅是發(fā)送或接收傳統(tǒng)的CAN幀將不會受到任何影響,幸運的是部分設(shè)備供應(yīng)商提供的組件或者工具允許用戶選擇支持ISO或者non-ISO模式,這樣能很好地在過渡時期幫助你完成工作。

總結(jié)

傳統(tǒng)CAN以及目前CAN FD采取的校驗機制,保證傳輸過程中遭受破壞的幀數(shù)據(jù)幾乎不會被接收以及應(yīng)答成功,能有效防止物理層傳輸錯誤,讓用戶界面不需要額外關(guān)注幀傳輸數(shù)據(jù)的正確性。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉