循環(huán)冗余校驗確保正確的數(shù)據(jù)通信
表1. 采用分組差錯校驗的ADI 器件示例
產(chǎn)品型號 | 描述 | ||
AD5360/AD5361 | 16通道、16 位/14 位、±10 V DAC | ||
AD5362/AD5363 | 8通道、16 位/14 位、±10 V DAC | ||
AD5748 | 電流/電壓輸出驅(qū)動器,適合工業(yè)應(yīng)用 | ||
AD5749 | 電流輸出驅(qū)動器,適合工業(yè)應(yīng)用 | ||
AD5750/AD5750-1 | 電流/電壓輸出驅(qū)動器,輸出范圍可編程,適合工業(yè)應(yīng)用 | ||
AD5751 | 電流/電壓輸出驅(qū)動器,適合工業(yè)應(yīng)用 | ||
AD5755/AD5735 | 4通道、16 位、4 mA 至20 mA 電流和電壓輸出 DAC | ||
AD5757/AD5737 | 4通道、16 位、4 mA 至20 mA 電流輸出DAC | ||
ADT7470 | 溫度傳感器集線器和風(fēng)扇控制器 |
生成分組差錯校驗和
CRC-8 算法采用多項式 C(x) = x8 + x2 + x1 + 1. For x = 2時,此式等于二進(jìn)制值100000111。要生成校驗和,需將24 位數(shù)據(jù)左移 8 位,產(chǎn)生一個后8 位為邏輯0 的32 位數(shù)。對齊CRC 多項式,使其MSB 與該32 位數(shù)據(jù)最左側(cè)的邏輯1 對齊。對該數(shù)據(jù)施加一個異或(XOR)函數(shù),以產(chǎn)生一個新(更短)的數(shù)字。(數(shù)字匹配得到邏輯0,不匹配得到邏輯1。)再次對齊CRC 多項式,使其MSB 與第一個結(jié)果最左側(cè)的邏輯1 對齊,重復(fù)上述步驟。最后,原始數(shù)據(jù)將減少至小于CRC 多項式的值。此值即是8 位校驗和。圖2 演示了推演校驗和的方法。
圖2. 生成24 位數(shù)((0x*321))的校驗和
結(jié)論
圖2 中的示例采用(十六進(jìn)制)值0x*321 作為24 位數(shù)據(jù)字。對該數(shù)據(jù)應(yīng)用CRC-8 多項式可生成校驗和0x86。數(shù)據(jù)和校驗和發(fā)送至兼容的ADI 公司產(chǎn)品時,只有兩段數(shù)據(jù)都正確到達(dá),該數(shù)據(jù)才會被接收。此方法提高了數(shù)據(jù)傳輸?shù)目煽啃?,并?a class="contentlabel" href="http://m.butianyuan.cn/news/listbylabel/label/確保">確保遭破壞的數(shù)據(jù)幾乎永遠(yuǎn)不會被接收。
評論