差錯控制,什么是差錯控制
差錯控制,什么是差錯控制
差錯的特點
由于通信線路上總有噪聲存在,噪聲和有用信息中的結果,就會出現差錯。
噪聲可分為兩類,一類是熱噪聲,另一類是沖擊噪聲,熱噪聲引起的差錯是一種隨機差錯, 亦即某個碼元的出錯具有獨立性,與前后碼元無關。
沖擊噪聲是由短暫原因造成的,例如電機的啟動、停止,電器設備的放弧等,沖擊噪聲引起 的差錯是成群的,其差錯持續時間稱為突發錯的長度。
衡量信道傳輸性能的指標之一是誤碼率PO。
PO=錯誤接收的碼元數/接收的總碼元數
目前普通電話線路中,當傳輸速率在600~2400bit/s時,PO在之間,對于大多數通信系統,PO在之間,而計算機之間的數據傳輸則要求誤碼率低于。
差錯控制的基本方式
差錯控制方式基本上分為兩類,一類稱為“反饋糾錯”,另一類稱為“前向糾錯”。在這 兩類基礎上又派生出一種稱為“混合糾錯”。
(1)反饋糾錯
這種方式在是發信端采用某種能發現一定程度傳輸差錯的簡單編碼方法對所傳信息進行編碼 ,加入少量監督碼元,在接收端則根據編碼規則收到的編碼信號進行檢查,一量檢測出(發 現)有錯碼時,即向發信端發出詢問的信號,要求重發。發信端收到詢問信號時,立即重發 已發生傳輸差錯的那部分發信息,直到正確收到為止。所謂發現差錯是指在若干接收碼元中 知道有一個或一些是錯的,但不一定知道錯誤的準確位置。圖6-1給出了“差錯控制”的 示意方框圖。
(2)前向糾錯
這種方式是發信端采用某種在解碼時能糾正一定程度傳輸差錯的較復雜的編碼方法,使接收 端在收到信碼中不僅能發現錯碼,還能夠糾正錯碼。在圖6-1中,除去虛線所框部分就是前 向糾錯的方框示意圖。采用前向糾錯方式時,不需要反饋信道,也無需反復重發而延誤傳輸 時間,對實時傳輸有利,但是糾錯設備比較復雜。
(3)混合糾錯
混合糾錯的方式是:少量糾錯在接收端自動糾正,差錯較嚴重,超出自行糾正能力時,就向 發信端發出詢問信號,要求重發。因此,“混合糾錯”是“前向糾錯”及“反饋糾錯”兩種 方式的混合。
對于不同類型的信道,應采用不同的差錯控制技術,否則就將事倍功半。
反饋糾錯可用于雙向數據通信,前向糾錯則用于單向數字信號的傳輸,例如廣播數字電視系統,因為這種系統沒有反饋通道。
誤碼控制基本原理
我們先舉一個日常生活中的實例。如果你發出一個通知:“明天14:00~16:00開會”,但在通知過程中由于某種原因產生了錯誤,變成“明天10:00~16:00開會”。別人收到這個錯誤通知后由于無法判斷其正確與否,就會按這個錯誤時間去行動。為了使收者能判斷正誤,可以在發通知內容中增加“下午”兩個字,即改為:“明天下午14:00~16:00開會”, 這時,如果仍錯為:“明天下午10:00~16:00開會”,則收到此通知后根據“下午”兩字即 可 判斷出其中“10:00”發生了錯誤。但仍不能糾正其錯誤,因為無法判斷“10:00”錯在何處,即無法判斷原來到底是幾點鐘。這時,收者可以告訴發端再發一次通知,這就是檢錯重發。為了實現不但能判斷正誤(檢錯),同時還能改正錯誤(糾錯),可以把發的通知內容再增 加“兩個小時”四個字,即改為:“明天下14:00~16:00兩個小時開會”。這樣,如果其 中“14:00”錯為“10:00”,不但能判斷出錯誤,同時還能糾正錯誤,因為其中增加的“ 兩個小時”四個字可以判斷出正確的時間為14:00~16:00”。
通過上例可以說明,為了能判斷傳送的信息是否有誤,可以在傳送時增加必要的附加判斷數 據;如果又能糾正錯誤,則需要增加更多的附加判斷數據。這些附加數據 在不發生誤碼的情況之下是完全多余的,但如果發生誤碼,即可利用被傳信息數據與附加數 據之間的特定關系來實現檢出錯誤和糾正錯誤,這就是誤碼控制編碼的基本原理。具體地說 就是:為了使信源代碼具有檢錯和糾錯能力,應當按一定的規則在信源編碼的基礎上增加 一些冗余碼元(又稱監督碼),使這些冗余碼元與被傳送信息碼元之間建立一定的關系,發信 端完成這個任務的過程就稱為誤碼控制編碼;在收信端,根據信息碼元與監督碼元的特定關 系,實現檢錯或糾錯,輸出原信息碼元,完成這個任務的過程就稱誤碼控制譯碼(或解碼)。 另外,無論檢錯和糾錯,都有一定的誤別范圍,如上例中,若開會時間錯為“16:00~18:0 0”,則無法實現檢錯與糾錯,因為這個時間也同樣滿足附加數據的約束條件,這就應當增 加更多的附加數據(即冗余)。我們已知,信源編碼的中心任務是消去冗余,實現碼率壓縮, 可是為了檢錯與糾錯,又不得不增加冗余,這又必然導致碼率增加,傳輸效率降低;顯然這 是個矛盾。我們分析誤碼控制編碼的目的,正是為了尋求較好的編碼方式,能在增加冗余不 太多的前提下來實現檢錯和糾錯。 再者,經過信源編碼,如果傳送信道容量與信源碼率相匹配,而且 信道內引入的噪聲較小,則誤碼率一般是很低的。例如,當信道的信雜比超過20dB時,二元 單極性碼的誤碼率低于,即誤碼率只 分之一,故通過信道編碼實現檢錯 和糾錯是可以做到的。
誤碼控制編碼的分類
隨著數字通信技術的發展,研究開發了各種誤碼控制編碼方案,各自建立在不同的數學模型 基礎上,并具有不同的檢錯與糾錯特性,可以從不同的角度對誤碼控制編碼進行分類。
按照誤碼控制的不同功能,可分為檢錯碼、糾錯碼和糾刪碼等。檢錯碼僅具備識別錯碼功能 而無糾正錯碼功能;糾錯碼不僅具備識別錯碼功能,同時具備糾正錯碼功能;糾刪碼則不僅 具備識別錯碼和糾正錯碼的功能,而且當錯碼超過糾正范圍時可把無法糾錯的信息刪除。
按照誤碼產生的原因不同,可分為糾正隨機錯誤的碼與糾正突發性錯誤的碼。前者主要用于 產生獨立的局部誤碼的信道,而后者主要用于產生大面積的連續誤碼的情況,例如磁帶數碼 記錄中磁粉脫落而發生的信息丟失。按照信息碼元與附加的監督碼元之間的檢驗關系可分為線性碼與非線性碼。如果兩者呈線性 關系,即滿足一組線性方程式,就稱為線性碼;否則,兩者關系不能用線性方程式來描述, 就稱為非線性碼。
按照信息碼元與監督附加碼元之間的約束方式之不同,可以分為分組碼與卷積碼。在分組碼 中,編碼后的碼元序列每n位分為一組,其中包括k位信息碼元和r位附加監督碼元,即n=k+r ,每組的監督碼元僅與本組的信息碼元有關,而與其他組的信息碼元無關。卷積碼則不同, 雖然編碼后碼元序列也劃分為碼組,但每組的監督碼元不但與本組的信息碼元有關,而且與前 面碼組的信息碼元也有約束關系。
按照信息碼元在編碼之后是否保持原來的形式不變,又可分為系統碼與非系統碼。在系統碼中,編碼后的信息碼元序列保持原樣不變,而在非系統碼中,信息碼元會改變其原有的信號序列。由于原有碼位發生了變化,使譯碼電路更為復雜,故較少選用。
根據編碼過程中所選用的數字函數式或信息碼元特性的不同,又包括多種編碼方式。對 于某種具體的數字設備,為了提高檢錯、糾錯能力,通常同時選用幾種誤碼控制編碼方式。 在表6-1中,列出了常見的幾種誤碼控制編碼方式。以下,以線性分組碼為例,對幾種簡單 的編碼方式進行介紹。
有關誤碼控制編碼的幾個基本概念
(1)信息碼元與監督碼元
信息碼元又稱信息序列或信息位,這是發端由信源編碼后得到的被傳送的信息數據比特,通 常以k表示。由信息碼元組成的信息組為:
在二元碼情況下,每個信息碼元m的取值只有0或1.監督碼元又稱監督位或附加數據比特,這是為了檢糾錯碼而在信道編碼時加入的判斷數據位 。通常以r表示,即為:
n=k+r或r=n-k
經過分組編碼后的碼又稱為(n,k)碼,即表示總碼長為n位,其中信息碼長(碼元數)為k位, 監督碼長(碼元數)為r=n-k。通常稱其為長為n的碼字(或碼組、碼矢)。
(2)許用碼組與禁用碼組
信道編碼后的總碼長為n,總的碼組數應為,即為。其中被傳送的信息碼組 有個,通常稱為許用碼組;其余的碼組共有()個,不傳送,稱為禁用碼組。 發端誤碼控制編碼的任務正是尋求某種規則從總碼組()中選出許用碼組;而收端譯碼的 任務則是利用相應的規則來判斷及校正收到的碼字符合許用碼組。通常又把信息碼元數目k 與編碼后的總碼元數目(碼組長度)n之比稱為信道編碼的編碼效率或編碼速率,表示為:
R=k/n=k/k+r
這是衡量糾錯碼性能的一個重要指標,一般情況下,監督位越多(即r越大),檢糾錯能力越 強,但相應的編碼效率也隨之降低了。
(3)碼重與碼距
在分組編碼后,每個碼組中碼元為“1”的數目稱為碼的重量,簡稱碼重。兩個碼組對應位置上取值不同(1或0)的位數,稱為碼組的距離,簡稱碼距,又稱漢明距離,通常用d表示。 例如:000與101之間碼距d=2;000與111之間碼距d=3。對于(n,k)碼,許用碼組為個, 各碼組之間距離最小值稱為最小碼距,通常用表示。碼距又稱漢明距。
最小碼距的大小與信道編碼的檢糾錯能力密切相關。以下舉例說明分組編碼的最小碼距 與檢糾錯能力的關系。
設有兩個信息A和B,可用1比特表示,即0表示A,1表示B,碼距=1。如果直接傳送信息 碼,就沒有檢糾錯能力,無論由1錯為0,或由0錯為1,收端都無法判斷其錯否,更不能糾正 ,因為它們都是合法的信息碼(許用碼)。這可用圖6-2來說明。由圖中看出,A與B之間最小 碼距為1,只要發生一位誤碼就會變成另一個許用碼,無法檢糾其錯誤。
如果對這兩個信息A和B經過信道編碼,增加1比特監督碼元,得到(2,1)碼組,即:n=2、k= 1、r=n-k=1,就具有檢錯能力。
由于n=2,故總碼組數為,以由于k=1,故許用碼組數,其余為禁用碼組。由圖中看出,許用碼組有兩種選 擇方式,即00與11,或01與10,其結果是相同的,只是信息碼元與監督碼元之間的約束規律 不同?,F采用信息碼元重復一次得到許用碼組的編碼方式,故許用碼組為00表示A,11表 示B。這時A和B都具有1位檢錯能力,因為無論A(00)或B(11)如果發生一位錯碼,必將變成01 或10,這都是禁用碼組,故收端完全可以按不符合信息碼重復一次的準則來判斷為誤碼。但 卻不能糾正其錯誤,因為無法判斷誤碼(01或10)是A(00)錯誤造成還是B(11)錯誤造成,即無 法 判定原信息是A或B,或說A與B形成誤碼(01或10)的可能性(或概率)是相同的。如果產生二位錯碼,即00錯為11,或11錯為00,結果將從一個許用碼組變成另 一個許用碼組,收端就無法判斷其錯否。通常用e表示檢錯能力(位數),用t表示糾錯能力( 位數)。由上述分析可知,當=2的情況下,碼組的檢錯能力e=1,糾錯能力t=0。
為了提高檢糾錯能力,可對上述二個信息A和B經過信道編碼增加2比特監督碼元,得到(3,1 )碼組,即n=3、k=1、r=n-k=2,總的碼組數為,由圖6-4來說明其檢 糾錯能力。
信道編碼后,許用碼組之間的最小碼距d0越大,檢糾錯的能力就越高。此例中由于k=1,=2,故只有2個許用碼組,其余6個為禁用碼組。由圖中可以看出,滿足 最 小碼距為最大的條件共有4種選擇方式,即為(000與111)、(001與110)、(010和101)、(011 與100),這四種選擇方式具有相同的最小碼距,故其抗干擾能力或檢糾錯能力也相同。為了 編碼直接、簡便,選擇二重重復編碼方式,即按信息碼元重復二次的規律來產生許用碼組, 編碼結果為000表示A,111表示B,由圖中黑點代表,A與B之間的碼距=3。
由圖中可以看出,這時的兩個許用碼組A或B都具有一位糾錯能力。例如,當信息A(000)產生 一位錯誤時,將有三種誤碼形式,即001或010或100,這些都是禁用碼組,可確定是誤碼。而且這三個誤碼距離最近的許用碼組的000,與另一個許用碼組111的距離較遠,根據誤碼 少的概率大于誤碼多的概率的規律,可以判定原來的正確碼組是000,只要把誤碼中的1改 為0即可得到糾正。同理,如果信息B(111)產生一位錯誤時,則有另三種誤碼可能產生,即1 10或101 或011,根據同樣道理可以判定原來的正確碼組是111,并能糾正錯誤。但是,如果 信息A(000)或信息B(111)產生兩位錯誤時,雖然能根據出現禁用碼組識別其錯誤,但糾錯時 卻會作出錯誤的糾正造成誤糾錯。如果信息A(000)或信息B(111)產生三位錯誤時,將從一個 許 用碼組A(或B)變成了另一個許用碼組B(或A),這時既檢不出錯,更不會糾錯了,因為誤碼已 成為合法組合的許用碼組,譯碼后必然產生錯誤。
綜上所述,可以得到分組編碼最小碼距與檢糾錯能力的關系有以下三條結論:
①在一個碼組內為了檢測e個誤碼,要求最小碼距應滿足:
≥e+1
②在一個碼組內為了糾正t個誤碼,要求最小碼距應滿足:
≥2t+1
③在一個碼組內為了糾正t個誤碼,同時能檢測e個誤碼(e>t),要求最小碼距應滿足:
≥e+t+1
非常好我支持^.^
(8) 100%
不好我反對
(0) 0%
相關閱讀:
- [電子說] 常用的數據差錯控制技術(1)-重復校驗 2020-10-30
- [數據通信] 差錯控制編碼,差錯控制編碼工作原理是什么 2010-03-17
( 發表人:admin )