乘積碼

乘積碼

乘積碼,並行級聯碼是一種用短碼構造長碼的編碼組合方式,其中乘積碼屬於並行級聯分組碼,而大名鼎鼎的Turbo 碼就是並行級聯卷積碼。乘積碼於1954 年由Elias 最早提出,隨即得到了廣泛套用。

基本介紹

  • 中文名乘積碼
  • 提出者:Elias 
  • 提出時間:1954 年
  • 類別:並行級聯分組
步驟,糾錯碼,

步驟

(1)將信息元填入一個 2 k 行 1 k 列的矩陣;
(2)對矩陣的每一行,用一個( , ) 1 1 n k 系統分組碼 1 V 進行編碼,得到一個2 k 行1 n 列
的矩陣;
(3)對這個矩陣的每一列,用一個( , ) 2 2 n k 系統分組碼 2 V 進行編碼,最終得到一個2 n
行1 n 列的矩陣。
這樣得到的糾錯碼是一個1 2 1 2 (n ×n, k ×k)分組碼,所以稱為乘積碼。乘積碼的兩個編碼器是對排列順序不同的同一組信息元進行編碼,兩個編碼
器並行工作,沒有“內”“外”之分,統稱為分量編碼器。乘積碼也因此被稱為二維碼。同
樣,乘積碼也可以先按列編碼,再按行編碼,得到的碼字是完全一樣的。乘積碼的傳輸方式
也不唯一,可以按行傳輸、按列傳輸甚至按對角線傳輸。
與串列級聯碼一樣,傳統的乘積碼解碼方法把解碼過程分為兩步,先按行解碼,給出判
決結果,再按列解碼(先列後行也一樣)。這種解碼方式的複雜度只是兩個分量解碼器的複雜
度之和,解碼過程簡單,但不能充分發揮乘積碼的糾錯能力。採用前面提到的疊代解碼方式
能大大改善糾錯效果,但是為了使分組碼能採用疊代解碼,需要將它表示成卷積碼的格線圖
形式。1974 年Bahl、Cocke、Jelinek 和Raviv 提出的BCJR 疊代解碼算法利用分組碼的校驗
矩陣解決了這個問題.

糾錯碼

糾錯碼(error correcting code),在傳輸過程中發生錯誤後能在收端自行發現或糾正的碼。僅用來發現錯誤的碼一般常稱為檢錯碼。為使一種碼具有檢錯或糾錯能力,須對原碼字增加多餘的碼元,以擴大碼字之間的差別 ,即把原碼字按某種規則變成有一定剩餘度(見信源編碼)的碼字,並使每個碼字的碼之間有一定的關係。關係的建立稱為編碼。碼字到達收端後,可以根據編碼規則是否滿足以判定有無錯誤。當不能滿足時,按一定規則確定錯誤所在位置並予以糾正。糾錯並恢復原碼字的過程稱為解碼。檢錯碼與其他手段結合使用,可以糾錯。

相關詞條

熱門詞條

聯絡我們