1.一種基于變量節(jié)點(diǎn)懶惰串行分層調(diào)度的LDPC譯碼算法,該算法基于現(xiàn)場(chǎng)可編程門(mén)陣列FPGA硬件平臺(tái)進(jìn)行實(shí)現(xiàn),其特征在于,包含以下步驟:
1)根據(jù)LDPC碼的校驗(yàn)矩陣P,建立因子圖;
2)初始化因子圖中所有外信息為零;
3)初始化變量節(jié)點(diǎn)的后驗(yàn)概率信息;
4)初始化懶惰校驗(yàn)函數(shù)節(jié)點(diǎn)集合為空集;
5)如果懶惰校驗(yàn)函數(shù)節(jié)點(diǎn)集合為空集,則重置該集合,使其包含所有校驗(yàn)節(jié)點(diǎn);
6)依此選擇懶惰校驗(yàn)函數(shù)節(jié)點(diǎn)集合中的校驗(yàn)節(jié)點(diǎn);
7)根據(jù)串行分層調(diào)度算法,更新步驟6)中所選校驗(yàn)節(jié)點(diǎn)相關(guān)的中間變量;
8)根據(jù)步驟7)中的中間變量判斷懶惰條件是否滿(mǎn)足,如果滿(mǎn)足懶惰條件,則將步驟6)中所選的校驗(yàn)節(jié)點(diǎn)從懶惰校驗(yàn)函數(shù)節(jié)點(diǎn)集合中刪除,否則保留該校驗(yàn)節(jié)點(diǎn);
9)重復(fù)步驟6)~8),直至所有校驗(yàn)節(jié)點(diǎn)都被選擇一次;
10)根據(jù)變量節(jié)點(diǎn)的置信度進(jìn)行硬判決,得到二進(jìn)制譯碼結(jié)果B;
11)判斷譯碼停止條件是否滿(mǎn)足。如果譯碼條件已滿(mǎn)足,則終止譯碼過(guò)程,否則重復(fù)步驟5)~10)直至譯碼停止條件被滿(mǎn)足。
2.根據(jù)權(quán)利要求1所述的一種基于變量節(jié)點(diǎn)懶惰串行分層調(diào)度的LDPC譯碼算法,其特征在于:所述步驟1)中LDPC碼的校驗(yàn)矩陣P大小為m×n,其中m為其行數(shù),n為其列數(shù),其元素為0,1。
3.根據(jù)權(quán)利要求1所述的一種基于變量節(jié)點(diǎn)懶惰串行分層調(diào)度的LDPC譯碼算法,其特征在于:所述步驟1)中校驗(yàn)矩陣P的每行對(duì)應(yīng)因子圖中的1個(gè)校驗(yàn)函數(shù)節(jié)點(diǎn),每列對(duì)應(yīng)因子圖中的一個(gè)變量節(jié)點(diǎn),即該因子圖中具有m個(gè)校驗(yàn)函數(shù)節(jié)點(diǎn)和n個(gè)變量節(jié)點(diǎn),當(dāng)校驗(yàn)矩陣中的元素P(i,j)(1≤j≤m,1≤i≤n)為1時(shí),第i個(gè)校驗(yàn)函數(shù)節(jié)點(diǎn)和第j個(gè)變量節(jié)點(diǎn)之間建立一條邊。
4.根據(jù)權(quán)利要求1所述的一種基于變量節(jié)點(diǎn)懶惰串行分層調(diào)度的LDPC譯碼算法,其特征在于:所述步驟2)中外信息(L(rij))為第i個(gè)校驗(yàn)函數(shù)節(jié)點(diǎn)傳遞給第j個(gè)變量節(jié)點(diǎn)的外部置信度信息。
5.根據(jù)權(quán)利要求1所述的一種基于變量節(jié)點(diǎn)懶惰串行分層調(diào)度的LDPC譯碼算法,其特征在于:所述步驟3)的后驗(yàn)概率信息,在第j個(gè)變量節(jié)點(diǎn)的后驗(yàn)概率信息(L(Qj))的初始化方程為:
其中yj為第i個(gè)變量節(jié)點(diǎn)從加性高斯白噪聲信道接收到數(shù)值,σn2為噪聲的平均功率。
6.根據(jù)權(quán)利要求1所述的一種基于變量節(jié)點(diǎn)懶惰串行分層調(diào)度的LDPC譯碼算法,其特征在于:所述步驟5)中重置懶惰校驗(yàn)函數(shù)節(jié)點(diǎn)集合是為了確保譯碼結(jié)果的正確性,防止之前判決正確的置信度在后續(xù)的更新過(guò)程中發(fā)生變化。
7.根據(jù)權(quán)利要求1所述的一種基于變量節(jié)點(diǎn)懶惰串行分層調(diào)度的LDPC譯碼算法,其特征在于:所述步驟7)中串行分層調(diào)度算法的計(jì)算過(guò)程為依此執(zhí)行以下3個(gè)方程:
L(qji)=L(Qj)-L(rij)
L(Qj)=L(qji)+L'(rij)
其中,L(qji)為運(yùn)算過(guò)程中的中間變量,表示為第j個(gè)變量節(jié)點(diǎn)傳遞給第i個(gè)校驗(yàn)函數(shù)節(jié)點(diǎn)的外信息。
8.根據(jù)權(quán)利要求1所述的一種基于變量節(jié)點(diǎn)懶惰串行分層調(diào)度的LDPC譯碼算法,其特征在于:所述步驟7)中間變量包含min(i)和smin(i),min(i)表示|L(qki)|取值中的最小值,而smin(i)表示|L(qki)|取值中的次小值。
9.根據(jù)權(quán)利要求1所述的一種基于變量節(jié)點(diǎn)懶惰串行分層調(diào)度的LDPC譯碼算法,其特征在于:所述述步驟8)中懶惰判決條件為:
si×(min(i)+α×smin(i))>Lth
其中α為近似因子,取值為0.75;Lth為懶惰門(mén)限,該值需通過(guò)仿真確定。
10.根據(jù)權(quán)利要求1所述的一種基于變量節(jié)點(diǎn)懶惰串行分層調(diào)度的LDPC譯碼算法,其特征在于:所述步驟10)中譯碼終止條件為:
1)譯碼迭代次數(shù)達(dá)到設(shè)定的最大值,其中迭代次數(shù)為重復(fù)步驟4)~9)的次數(shù);所有校驗(yàn)方程都已滿(mǎn)足,即P×B=0。