<s id="eoqoe"><xmp id="eoqoe">
<button id="eoqoe"><strong id="eoqoe"></strong></button>
<s id="eoqoe"><xmp id="eoqoe">
<button id="eoqoe"><strong id="eoqoe"></strong></button>
<wbr id="eoqoe"></wbr>
<wbr id="eoqoe"><strong id="eoqoe"></strong></wbr>
<wbr id="eoqoe"><strong id="eoqoe"></strong></wbr>
<wbr id="eoqoe"><strong id="eoqoe"></strong></wbr>
<wbr id="eoqoe"><label id="eoqoe"></label></wbr>
<button id="eoqoe"></button>
<wbr id="eoqoe"></wbr>
你的位置:首頁(yè) > 測試測量 > 正文

循環(huán)冗余校驗確保正確的數據通信

發(fā)布時(shí)間:2020-02-10 來(lái)源:Ken Kavanagh 責任編輯:wenwei

【導讀】在工業(yè)環(huán)境中,電子系統通常工作在極端的溫度條件下,或處于電子噪聲環(huán)境,或是其它惡劣條件,而系統在這種條件下能 否正常工作至關(guān)重要。舉例來(lái)說(shuō),如果發(fā)送給控制機器臂位置 的DAC 的數據遭到破壞,機器臂就會(huì )按非預期的方向移動(dòng), 這不僅危險,而且代價(jià)巨大。試想一下,機器臂如果砸到生產(chǎn) 線(xiàn)上的新車(chē),或者更糟,砸到生產(chǎn)工人,后果會(huì )怎樣?
 
有幾種方法可以確保收到正確數據后才執行動(dòng)作。最簡(jiǎn)單的方 式就是控制器回讀所發(fā)送的數據。如果接收的數據與發(fā)送的數 據不匹配,則說(shuō)明其中一者已受到破壞,必須發(fā)送新數據并進(jìn) 行驗證。這種方法的確可靠,但產(chǎn)生的開(kāi)銷(xiāo)也很大,每段數據 都必須經(jīng)過(guò)驗證,傳輸的數據量要翻一倍。
 
另一種替代方法是循環(huán)冗余校驗(CRC),即隨每個(gè)數據包發(fā) 送一個(gè)校驗和(checksum),接收器就會(huì )指示是否存在問(wèn)題, 所以控制器無(wú)需驗證接收。校驗和一般通過(guò)向數據應用一個(gè)多 項式方程式來(lái)生成。應用于一個(gè)24 位字時(shí),CRC-8 可產(chǎn)生一 個(gè)8 位校驗和。將校驗和與數據組合在一起,全部32 位都發(fā) 送到能夠分析該組合的器件,并指示是否出錯——這種方法雖 然不是無(wú)可挑剔解決方案,但卻比讀寫(xiě)方法更加高效。
 
ADI 公司的眾多DAC 都采用了分組差錯校驗(PEC)的形式 來(lái)實(shí)現CRC。不需要PEC 功能時(shí),則寫(xiě)入24 位數據。要添加 PEC 功能,24 位數據需增加相應的8 位校驗和。如果接收的 校驗和與數據不一致,輸出引腳被拉低,指示存在錯誤??刂?器清除錯誤,使引腳返回高電平,并重新發(fā)送數據。圖1 所示 為如何用SPI 接口應用數據的示例。表1 列出了能夠采用分組 差錯校驗的ADI 器件示例。
 
http://zzmyjiv.cn/art/artinfo/id/80037602
圖1. 采用和不采用分組差錯校驗的SPI寫(xiě)入
 
表1. 采用分組差錯校驗的ADI 器件示例
http://zzmyjiv.cn/art/artinfo/id/80037602
 
生成分組差錯校驗和
 
CRC-8 算法采用多項式 C(x) = x8 + x2 + x1 + 1. For x = 2時(shí),此式 等于二進(jìn)制值100000111。要生成校驗和,需將24 位數據左移 8 位,產(chǎn)生一個(gè)后8 位為邏輯0 的32 位數。對齊CRC 多項式, 使其MSB 與該32 位數據最左側的邏輯1 對齊。對該數據施加 一個(gè)異或(XOR)函數,以產(chǎn)生一個(gè)新(更短)的數字。(數 字匹配得到邏輯0,不匹配得到邏輯1。)再次對齊CRC 多項 式,使其MSB 與第一個(gè)結果最左側的邏輯1 對齊,重復上述 步驟。最后,原始數據將減少至小于CRC 多項式的值。此值 即是8 位校驗和。圖2 演示了推演校驗和的方法。
 
http://zzmyjiv.cn/art/artinfo/id/80037602
圖2. 生成24 位數((0x654321))的校驗和
 
結論
 
圖2 中的示例采用(十六進(jìn)制)值0x654321 作為24 位數據字。 對該數據應用CRC-8 多項式可生成校驗和0x86。數據和校驗 和發(fā)送至兼容的ADI 公司產(chǎn)品時(shí),只有兩段數據都正確到達, 該數據才會(huì )被接收。此方法提高了數據傳輸的可靠性,并可確 保遭破壞的數據幾乎永遠不會(huì )被接收。
 
 
推薦閱讀:
 
HDMI收發(fā)器簡(jiǎn)化家庭影院系統設計
升壓電源和高壓DAC為天線(xiàn)和濾波器提供調諧信號
寬動(dòng)態(tài)范圍的高端電流檢測:三種解決方案
通信電源知識超級匯總?。?!
利用多通道DDS實(shí)現相位相干FSK調制
要采購濾波器么,點(diǎn)這里了解一下價(jià)格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書(shū)下載更多>>
熱門(mén)搜索
?

關(guān)閉

?

關(guān)閉

久久无码人妻精品一区二区三区_精品少妇人妻av无码中文字幕_98精品国产高清在线看入口_92精品国产自产在线观看481页
<s id="eoqoe"><xmp id="eoqoe">
<button id="eoqoe"><strong id="eoqoe"></strong></button>
<s id="eoqoe"><xmp id="eoqoe">
<button id="eoqoe"><strong id="eoqoe"></strong></button>
<wbr id="eoqoe"></wbr>
<wbr id="eoqoe"><strong id="eoqoe"></strong></wbr>
<wbr id="eoqoe"><strong id="eoqoe"></strong></wbr>
<wbr id="eoqoe"><strong id="eoqoe"></strong></wbr>
<wbr id="eoqoe"><label id="eoqoe"></label></wbr>
<button id="eoqoe"></button>
<wbr id="eoqoe"></wbr>