馬克祥,金 晶
(1.中國電子科學研究院,北京 100041;2.北京宇航系統(tǒng)工程研究所,北京 100076)
由于LDPC碼優(yōu)良的譯碼特性,已經(jīng)被選為5G數(shù)據(jù)傳輸?shù)男诺谰幋a方案。比較常見的LDPC碼譯碼算法有BP類算法和BF類算法兩大類。BF類譯碼算法計算復雜較低,資源開銷較小,硬件實現(xiàn)時可以構造快速譯碼器,因此得到廣泛的研究。對于校驗失敗的方程,其包含的變量節(jié)點對這種偏離造成的影響是不同的。當比特節(jié)點的信道接收值相對比較小時,造成與其相關校驗方程錯誤的概率反而更高。由此,文獻[1]提出加權比特翻轉(zhuǎn)算法(Weighted Bit Flipping,WBF)。在此基礎上,文獻[2]-[3]提出一系列的改進算法提升WBF類算法性能。WBF類算法一般僅限于大列重LDPC碼譯碼。文獻[4]中的RRWBF及其改進算法IRRWBF[5]可用于小列重LDPC碼譯碼。這兩個算法相較于與其它比特翻轉(zhuǎn)算法具有良好的譯碼性能,但是其單比特翻轉(zhuǎn)特性使其譯碼收斂速度較慢。
RRWBF算法作為單比特翻轉(zhuǎn)譯碼算法收斂速度較慢,但是具有良好的譯碼性能。增加RRWBF算法譯碼過程翻轉(zhuǎn)比特的個數(shù),可以有效的提高譯碼收斂的速度,但是同時多比特翻轉(zhuǎn)過程容易引入更多的錯誤翻轉(zhuǎn)比特,從而影響譯碼性能。因此,本文算法所提多比特翻轉(zhuǎn)算法重點結(jié)合一種單多比特切換機制,檢測到多比特翻轉(zhuǎn)引入過多的翻轉(zhuǎn)錯誤時切換到單比特算法,在有效提升傳統(tǒng)算法譯碼速度的同時有效降低多比特對譯碼性能的影響。本提出給出一種多比特選擇的機制,利用該機制可以在每次迭代譯碼過程中選擇合理數(shù)量的比特進行翻轉(zhuǎn),使得每次迭代過程選擇的翻轉(zhuǎn)比特既可以在不明顯衰減譯碼的前提下,獲得譯碼速度的極大提升。
校驗節(jié)點和比特節(jié)點分別記為Θ和Γ。衡量Θm和Γn可靠性的值分別叫做度量值Tm和品質(zhì)因素En。M(n)={m:hmn=1}和N(m)={n:hmn=1}分別為連接Γn和Θm的校驗節(jié)點和比特節(jié)點集合。第k次譯碼時,nf,k和M(nf,k)分別為該譯碼時刻翻轉(zhuǎn)的Γ以及與其相連的Θ節(jié)點集合,校驗結(jié)果發(fā)生變化的Θ節(jié)點稱為翻轉(zhuǎn)校驗集,記做M(nf,k)。與M(nf,k)包含的元素mf,k相連的Γ節(jié)點記為nmf,k。消除冗余計算的RRWBF(IRRWBF)算法詳述如下:
計算每個比特節(jié)點n的品質(zhì)因素。
(1)
步驟1:sk=0,輸出zk。
步驟3:k=k+1,當k>Kmax,輸出zk,否則計算sk,公式如下:
(2)
然后轉(zhuǎn)到Step1進行下一次迭代譯碼嘗試。
本文算法流程描述如下:
步驟1:翻轉(zhuǎn)比特數(shù)nk=α·?gk/dc」;若nk>Un則nk=Un,否則為nk。
步驟2:找到具有最大nk個品質(zhì)因素的比特位置,將這些比特的譯碼結(jié)果翻轉(zhuǎn)完成本次譯碼迭代,計算校驗節(jié)點在第k步迭代的伴隨式sk;
步驟4:對每次迭代的nk數(shù)目num情況進行統(tǒng)計,當nk減少時,num重新計數(shù),若不減少則num加1,當計數(shù)累加到stop次迭代后,nk=1。k=k+1。如果nk=1且num=stop時,返回Step2;否則返回Step1。
利用隨機LDPC碼Mackay (504, 252)(簡記為Mackay 504)實例化算法,構造相應地修正比特翻轉(zhuǎn)LDPC譯碼器。各個算法的最大迭代次數(shù)為50。測試數(shù)據(jù)經(jīng)過BPSK調(diào)制后經(jīng)由AWGN信道傳輸,噪聲的均值為0、方差為N0/2。
圖1 Mackay 504碼譯碼性能比較
圖1給出本文算法在α=1.6,Un=8,stop=15時的譯碼性能。從仿真圖可以看出,當SNR=4.4 dB的時候,本文算法的性能相較于IRRWBF算法有0.1 dB的損失。此時,IRRWBF算法的平均迭代次數(shù)為42.7,而本文算法僅為7.9,下降了將近5倍。在錯誤比特較多的情況下,多比特翻轉(zhuǎn)引起更多錯誤翻轉(zhuǎn)的概率大于單比特翻轉(zhuǎn),從而使得單純的多比特翻轉(zhuǎn)算法譯碼性能劣于多比特翻轉(zhuǎn)算法。進而使得本文算法在低信噪比譯碼性能下降較多。但是,在高信噪比區(qū)域本文算法綜合單比特譯碼算法和多比特譯碼算法兩者的優(yōu)勢,進而使得譯碼性能比單純的單比特譯碼算法性能還要有所提升,表現(xiàn)出良好的應用前景。
表1 Mackay 504碼譯碼迭代次數(shù)比較
為了提高LDPC碼的譯碼速度,本文提出一種包含迭代提前停止機制的多比特翻轉(zhuǎn)RRWBF算法。與IRRWBF算法相比,本文算法在各個信噪比場景下都具有較快的譯碼收斂速度,多數(shù)情況下比原有算法收斂速度提升約5倍以上,可以更好的滿足高速數(shù)據(jù)傳輸場景下的快速高效譯碼需求。