為了降低非規則低密度奇偶校驗(low-densityparity-check,LDPC)碼解碼算法的複雜度,提出一種適合數位訊號處理囂(digital signal processor,DSP)實現的低運算複雜度、低誤碼平臺解碼的改進算法。
本文引用地址:http://www.eepw.com.cn/article/148209.htm該算法校驗節點的運算採用修正最小和算法,外信息的更新採用串行方式,既保持了串行和積算法在有限迭代次數下解碼門限低的優點,又降低了節點運算複雜度和誤碼平臺。用定點DSP晶片實現的非規則LDPC碼解碼器的實測結果表明,該算法能以較低的實現複雜度獲得低的誤碼平臺和解碼門限。
低密度奇偶校驗(low-density paruty-check,LDPC)碼是一種非常有效的信道編碼方案,已經成為新一代數字衛星廣播(DVB-S2)等標準的信道編碼方案,具有重要的應用價值。
LDPC碼解碼器設計的實現成為近年來研究的熱點。LDPC碼解碼器的實現方法主要有2種:一種是基於超大規模集成電路(VLSI)的設計;另外一種是基於數位訊號處理器(digital signalprocessor,DSP)等指令串行執行系統的實現。
LDPC碼解碼多採用和積(sum-product,SP)解碼算法,影響其複雜度的因素有迭代次數和每次迭代的運算複雜度。由於DSP晶片指令串行執行的特點,要實現較高速率的LDPC碼解碼器,必須同時減少迭代解碼次數和每次迭代的運算量。文提出一種逐個校驗節點串行更新的迭代解碼算法(S-SP),並說明在二進位對稱信道(BSC)下可以有效降低迭代解碼的次數;為降低每次迭代的運算複雜度,校驗節點的運算存在一些簡化的解碼算法,如修正最小和算法(modified mim-sum,MMS)等,但這些算法的解碼門限有一定的損失。
本文研究非規則LDPC碼的S-SP算法在加性高斯白噪聲(AWGN)信道下的性能,說明該算法雖能降低迭代次數,但是存在誤碼平臺較高的問題。考慮到簡化的解碼算法(例如MMS算法)有複雜度和誤碼平臺低的特點,本文綜合這2類算法的特點,提出了串行MMS(S-MMS)算法,該算法在有限迭代次數下具有低的誤碼平臺和較低的解碼門限,實現了複雜度和性能的較好折衷,適合於用DSP實現。
1 LDPC碼簡介和迭代解碼算法
1.1 LDPC碼簡介
LDPC碼是一種分組碼。其校驗矩陣為超稀疏隨機矩陣,設為H。對於任何一個合法的碼字v,都有校驗方程。由該方程可知,校驗矩陣中每行的非零元素,將所對應的LDPC碼元映射成一個相當於校驗碼的約束,定義這種約束關係為一個校驗節點。校驗矩陣中每列的非零元素對應LDPC碼的同一個碼元,形成了一個相當於重複碼的約束,定義這種約束關係為一個變量節點,而矩陣中的非零元素,既參與了變量節點的重複碼的約束關係,又參與了校驗節點的校驗碼的約束關係;因此定義矩陣中非零元素所對應的關係為連結這2種節點的「連結線」。因此,LDPC碼的結構也可以用圖1的因子圖表示。
LDPC碼的編碼,先利用校驗矩陣得到對應的生成矩陣,然後直接用信息序列和生成矩陣相乘即可得到編碼碼字,而LDPC碼的解碼則利用校驗節點和變量節點的約束關係,在2類節點間通過「連結線」進行外信息的傳遞,從而實現迭代解碼。
1.2 LDPC碼迭代解碼算法
定義為變量節點n的先驗信息,即對數似然比;表示第k次迭代中,從校驗節點m到變量節點n的外信息;表示第k次迭代中,從變量節點n到校驗節點m的外信息;為第k次迭代後變量節點n的後驗信息;M(n)表示和變量節點n相連的校驗節點的集合;N(m)表示和校驗節點m相連的變量節點的集合。
標準的和積(SP)解碼算法如下。
步驟l 初始化。
其中:xn為發送比特;yn為接收符號。採用二進位相移鍵控(BPSK)調製,信道為AWGN信道。
步驟2迭代解碼。
迭代解碼包括2個步驟,變量節點的計算和校驗節點的計算。本文中設定固定的迭代次數K,然後判決輸出。
1)變量節點的運算(對所有的變量節點n)。
2)校驗節點的運算(對所有的校驗節點m)。
其中k≥1.
步驟3後驗信息計算和判決輸出。
串行和積解碼算法(S-SP),在計算校驗節點m時,需要將上面和積(SP)算法中的步驟2變量節點的運算修改為
其k≥1,假設校驗節點的計算從1開始,也即m依次取1,2,3,…,M,這裡M為校驗節點的個數,如圖1所示。
S-SP算法和SP算法的不同點在於:在SP算法中,所有與校驗節點m相鄰的變量節點更新時所使用的校驗節點外信息都來自上一次的迭代輸出,然後進行校驗節點m的運算。而在S-SP算法中,計算校驗節點m時,和其相連變量節點的更新可以使用本次迭代中已經更新過的外信息。從上面的分析也可看出,S-SP算法的複雜度和SP算法相同,另外,可通過合理設計,使得該算法需要的存儲資源可降低為原來的1/2。
2 改進的迭代解碼算法和優化設計
文指出,在BSC信道下,S-SP算法可以有效降低迭代解碼次數。本文研究了該算法在AWGN信道下的特點,發現該算法雖可以降低迭代解碼次數,但是存在誤碼平臺較高的缺點。後面將利用仿真結果說明這一特點。
本文將S-SP算法與修正最小和算法(MMS)結合,提出了改進算法,將外信息的更新採用串行更新策略,校驗節點的計算採用修正最小和算法,稱為串行修正最小和算法(S-MMS)。該算法解決了S-SP算法的誤碼平臺較高的問題,解碼門限和標準的SP算法相比,性能損失很小。
提出的串行修正最小和算法(S-MMS),其迭代解碼步驟2修改如下。
設定固定的迭代次數K,對校驗節點m,依次取1,2,3,…,M,進行下面的2個步驟。
1)變量節點的運算(只計算和校驗節點m相連的變量節點)。
其中:r=│N(m)│表示集合N(m)中的元素個數,即非規則碼的校驗節點m的階數;βr為非規則碼不同階校驗節點的偏移因子;sgn()為符號函數。
最優的偏移因子βr值,可以採用密度演化或者計算機仿真的方法得到。
本算法變量節點的運算只包括求和運算,校驗節點只包括最大、最小和減法操作,與SP算法的校驗節點運算的非線性函數ln(tanh())相比,量化噪聲對其影響小。本文針對定點DSP晶片特點,信道觀測值和迭代解碼中的外信息,都採用16 b的量化精度,有利於優化指令並行度,並可以降低存儲器讀取、存儲延時。