奇偶校驗法

奇偶校驗法常用於識別數據是否發生傳輸錯誤,並且可以啟動校正措施,或者捨棄傳輸發生錯誤的數據,要求重新傳輸有錯誤的數據塊。

奇偶校驗法

奇偶校驗法是一種很簡樸並且廣泛使用的校驗方法。

這種方法是在每一位元組中加上一個奇偶校驗位,並被傳輸,即每個位元組傳送九位數據。

數據傳輸以前通常會確定是奇校驗還是偶校驗,以保證傳送端和接收端採用相同的校驗方法進行數據校驗。

假如校驗位不符,則認為傳輸出錯。

奇校驗是在每個位元組後增加一個附加位,使得“1”的總數為奇數。

奇校驗時,校驗位按如下規則設定:假如每位元組的數據位中“1”的個數為奇數,則校驗位為“0”;若為偶數,則校驗位為“1”。

奇校驗通常用於同步傳輸。

而偶校驗是在每個位元組後增加一個附加位,使得“1”的總數為偶數。

偶校驗時,校驗位按如下規則設定:假如每位元組的數據位中“1”的個數為奇數,則校驗位為“1”;若為偶數,則校驗位為“0”。

偶校驗常用於異步傳輸或低速傳輸。

校驗的原理是:假如採用奇校驗,傳送端傳送的一個字元編碼(含校驗位)中,“1”的個數一定為奇數個,在接收端對接收字元二進制位中的“1”的個數進行統計,若統計出“1”的個數為偶數個,則意味著傳輸過程中有1位(或奇數位)發生差錯。

事實上,在傳輸中偶爾—位出錯的機會最多,故奇偶校驗法常常採用。

然而,奇偶校驗法並不是一種安全的檢錯方法,其識別錯誤的能力較低。

假如發生錯誤的位數為奇數,那么錯誤可以被識別,而當發生錯誤的位數為偶數時,錯誤就無法被識別了,這是因為錯誤互相抵消了。

數位的錯誤,以及大多數涉及偶數個位的錯誤都有可能檢測不出來。

它的缺點在於:當某一數據分段中的一個或者多位被破壞時,並且在下一個數據分段中具有相反值的對應位也被破壞,那么這些列的和將不變,因此接收方不可能檢測到錯誤。

常用的奇偶校驗法為垂直奇偶校驗、水平奇偶校驗和水平垂直奇偶校驗。

垂直奇偶校驗

垂直奇偶校驗是在垂直方向上以列的形式附加上校驗位。

假設數據格式及其傳送順序如圖1所示,則垂直奇偶校驗的編碼規則如圖2所示。

圖1 垂直奇偶校驗時

圖2 垂直奇偶校驗法舉例

數據格式及其傳送順序

式中,m為碼字的定長位數,n為碼字的個數。

設垂直奇偶校驗的編碼效率為R,則:

垂直奇偶校驗又稱為縱向奇偶校驗,它能檢測出每列中發生的奇數個錯誤,偶數個錯誤,因而對差錯的漏檢率接近1/2。

水平奇偶校驗

水平奇偶校驗是在水平方向上以行的形式附加上校驗位。

假設數據格式及其傳送順序如圖3所示,則水平奇偶校驗的編碼規則如圖4所示。

圖3 水平奇偶校驗時數據格式及其傳送順序

圖4 水平奇偶校驗法舉例

式中,m為碼字的定長位數,n為碼字的個數。

設水平奇偶校驗的編碼效率為R,則:

水平奇偶校驗又稱為橫向奇偶校驗,它不但能檢測出各段同一位上發生的奇數個錯誤,而且還能檢測出突髮長度≤m的所有突發錯誤,其漏檢率要比垂直奇偶校驗法低,但是實現水平奇偶校驗時,一定要使用數據緩衝器。

水平垂直奇偶校驗

水平垂直奇偶校驗是在結合水平奇偶校驗和垂直奇偶校驗的基礎上形成的一種校驗方法。

它是在一批字元傳送之後,另外增加一個稱為“方塊校驗字元”的檢驗字元,方塊校驗字元的編碼方式是使所傳輸字元代碼的每個縱向列中位代碼的“1”的個數成為奇數(或偶數)。

假設數據格式及其傳送順序如圖5所示,假如水平和垂直方向上都使用偶校驗,則水平垂直奇偶校驗的編碼規則如圖6所示。

圖5 水平垂直奇偶校驗時數據格式及其傳送順序

圖6 水平垂直奇偶校驗法舉例

式中,m為碼字的定長位數,n為碼字的個數。

設水平垂直奇偶校驗的編碼效率為R,則:

水平垂直奇偶校驗又稱為縱橫奇偶校驗。

它能檢測出傳輸過程中發生的所有3位或3位以下的錯誤、奇數個錯誤、大部分偶數個錯誤以及突髮長度≤m+1的突發錯誤,可使誤碼率降至原誤碼率的百分之一到萬分之一,有較強的檢錯能力,但是有部分偶數個錯誤不能檢測出來。

水平垂直奇偶校驗還可以自動糾正差錯,使誤碼率降低2~4個數量級,適用於中、低速傳輸系統和反饋重傳系統,被廣泛用於通信和某些計算機外部設備中。

相關詞條

相關搜尋

熱門詞條

聯絡我們