校驗碼工作原理解析
元件故障\噪聲干擾等各種因素常常導致計算機在處理信息過程中出現錯誤。為了防止錯誤,可將信號采用專門的邏輯線路進行編碼以檢測錯誤,甚至校正錯誤。通常的方法是,在每個字上添加一些校驗位,用來確定字中出現錯誤的位置。
最簡單且應用廣泛的檢錯碼是采用一位校驗位的奇校驗或偶校驗。
設x=(x0x1…xn-1)是一個n位字,則奇校驗位定義為
=x0⊕x1⊕…⊕xn-1??????? (2.15)
式中⊕代表按位加,表明只有當x中包含有奇數個1時,才使=1,即C=0。
同理,偶校驗位C定義為
C=x0⊕x1⊕…⊕xn-1??????? (2.16)
即x中包含偶數個1時,才使C=0。
假設一個字x從部件 A 傳送到部件 B。在源點 A,校驗位C可用上面公式算出來,并合在一起將(x0x1…xn-1C)送到B。假設在B點真正接收到的是x=(x'0x'1…x'n-1C '),然后計算
F=x'0⊕x'1⊕…⊕x'n-1⊕C'
若F=1,意味著收到的信息有錯,若F=0,表明x字傳送正確。奇偶校驗提供奇數個錯誤檢測,無法檢測偶數個錯誤,更無法識別錯誤信息的位置。
[例7]已知下表中左面一欄有5個字節的數據。請分別用奇校驗和偶校驗進行編碼,填在中間一欄和右面一欄。
[解:]
假定最低一位為校驗位,其余高8位為數據位,列表如下。從中看出,校驗位的值取0還是取1, 是由數據位中1的個數決定的。
非常好我支持^.^
(4) 80%
不好我反對
(1) 20%
相關閱讀:
- [電子說] 使用MODBUS協議的時候可以不用設置數據幀格式了嗎? 2024-01-30
- [電子說] CRC校驗碼的多種Verilog實現方式 2023-11-12
- [電子說] 循環冗余校驗碼(CRC)的基本原理及生成方法 2023-11-03
- [電子說] 如何在IAR Embedded Workbench中配置生成對應代碼區域的CRC校驗碼 2023-10-27
- [電子說] CRC校驗碼的多種Verilog實現方式 2023-06-21
- [電子說] 工控常用LRC XOR累加和CRC校驗工具校驗碼自動生成軟件多計算方式 2022-11-25
- [電子說] 計算機組成原理—校驗碼 2023-05-25
- [可編程邏輯] 基于FPGA的CRC校驗碼生成器設計 2022-11-16
( 發表人:admin )