LDPC碼數據分配通用模塊設計方案
圖2中給出了一個循環子矩陣數據讀取的示意圖。從該圖中可以看出,在實線所示的仞始狀態時,讀取的數據順序是存儲器1中數據在前而存儲器2中的數據在后,但是到了虛線所示的時刻,讀取的數據順序變成了存儲器2中的數據在前,存儲器1中的數據在后。本文引用地址:http://www.104case.com/article/153700.htm
在每個循環子矩陣中只有一組1或沒有1的情況下,只需要按照存儲器中數據存儲的順序讀取,然后進行水平運算即可,然而若循環子矩陣中的1不止一組的時候,數據的讀取就會發生混亂,有時存儲器1的數據在前,而有時存儲器2中的數據在前,這對判斷最小值屬于哪個存儲器極為不利。
因此需要開發一種通用化的辨識數據先后順序的模塊,該模塊附著在校驗矩陣中的每一個列塊上,對輸出的數據自動做好標識,使得水平運算的結果能夠精確的反應數據的來源。
2 文中所采用的范例碼
基于EG(歐式幾何)的QC(準循環)LDPC碼屬于QCLDPC碼,該類碼的構造是基于歐式幾何有限域分解的。(8176,7154)LDPC碼最初是為NASA設計的,它是一個規則的QC LDPC碼,行重32,列重4。目前(8176,7154)LDPC碼是CCSDS推薦的近地通信碼,它具有很好的規則性,目前已
被應用于遙感衛星等航天器的近地通信領域。
本部分內容給出的CCSDS近地通信(8176,7154)QC-LDPC碼的譯碼方法,同樣適用于其他的每個循環子矩陣中有1組或2組1的OC-LDPC碼情況。
3 文中所采用的譯碼算法
LDPC碼的譯碼算法主要分為軟譯碼算法和硬譯碼算法,軟譯碼算法主要是指Gallager最早提出的LDPC碼概率譯碼算法、BP算法以及BP算法的改進型最小和算法;硬譯碼算法主要是指BF算法。
采用軟譯碼算法澤碼獲得的編碼增益比較高,在絕大多數情況下,眾多軟譯碼算法中具備實現價值的譯碼方法之一仍是BP算法的改進算法之一,最小和算法。傳統最小和算法的水平運算公式。
后來人們改進了最小和算法,提出了Normalized BP和Offset BP兩種算法,這兩種算法在本質上是等價的,都極大地改進了最小和算法的譯碼精度,使得最小和算法的編碼增益更加接近傳統的BP算法,目前這兩種算法中以NormalizedBP算法應用較為廣泛。文中采用了Norma lized BP算法,圖3給出了Normalized BP的參數選擇情況,如圖所示,在參數值為1.25時得到了最小和算法的最好修正結果,但是通常在實現過程中,為了利于硬件功能的實現,會將(1/λk)的值設為0.75,這樣便于硬件乘法的實現。
評論