資源描述:
《低密度奇偶校驗碼譯碼算法性能分析及仿真》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、低密度奇偶校驗碼譯碼算法性能分析及仿真 摘要:討論了置信傳播(BP)譯碼算法和在該算法基礎(chǔ)上衍生的兩種譯碼算法,對數(shù)似然率(LLR-BP)算法和最小和(Min-sum)算法;分析了三種譯碼算法的性能,并對分析結(jié)果進(jìn)行了仿真驗證。結(jié)果表明,在譯碼性能上LLR-BP算法與BP算法相當(dāng),前者比后者算法要簡單,Min-sum算法雖然較BP和LLR-BP算法相比,損失了一定誤碼性能,但易于硬件實現(xiàn),實用性較強(qiáng)?! £P(guān)鍵詞:LDPC碼信道編碼差錯控制糾錯編碼計算機(jī)仿真 中圖分類號:TN91文獻(xiàn)標(biāo)識碼:A文章編號:1007-9416(2016)05-0000-00 低密
2、度奇偶校驗碼(LDPC)是一種線性分組糾錯碼,當(dāng)其采用迭代譯碼算法時,如和積(sum-product)譯碼算法,具有逼近Shannon限的良好性能,其譯碼算法復(fù)雜度隨碼長呈線性增長,非常適合并行實現(xiàn)。正因如此,LDPC碼受到了業(yè)界的廣泛關(guān)注,已廣泛應(yīng)用于移動通信、光纖通信、衛(wèi)星測控通信和數(shù)字視頻等領(lǐng)域[1][2]。6 構(gòu)造LDPC碼時,其校驗矩陣中的非零元素往往很少,正是由于校驗矩陣具有這種稀疏的特性,因此出現(xiàn)了多種高效的譯碼算法,且糾錯能力較強(qiáng)。LDPC譯碼采用的是消息傳遞(MP)算法,其基本算法有比特翻轉(zhuǎn)(BF)算法和置信傳播(BP)算法。BF算法只進(jìn)行比
3、特位的翻轉(zhuǎn)等幾種簡單的運(yùn)算,復(fù)雜度較低,因此硬件實現(xiàn)簡單,但其性能相對較低,適用于硬件條件受限而性能要求較低的場合;而BP算法是將接收到的信息在變量節(jié)點和校驗節(jié)點之間進(jìn)行迭代運(yùn)算,從而獲得最大編碼增益,因此具有很好的性能,同時復(fù)雜度也較高,廣泛應(yīng)用于對性能有較高要求的場合?! ”疚脑诮榻B低密度校驗編碼的基礎(chǔ)上,研究了置信傳播(BP)算法、對數(shù)似然率(LLR-BP)算法、最小和(Min-sum)算法等三種譯碼算法,并對各種算法的復(fù)雜度、工程實現(xiàn)的難易度和優(yōu)缺點進(jìn)行分析,并對分析結(jié)果進(jìn)行仿真驗證?! ?低密度校驗編碼 LDPC編碼的首要條件是構(gòu)造一個符合條件的稀疏
4、校驗矩陣。根據(jù)校驗矩陣結(jié)構(gòu)不同,通常把LDPC碼分為規(guī)則LDPC碼和不規(guī)則LDPC碼。規(guī)則LDPC碼的校驗矩陣每行每列的非零元素相同,而不規(guī)則LDPC碼不受此規(guī)則限制。無論哪種,好的LDPC碼,必須圍繞無短環(huán)、無低碼重碼字、碼間最小距離盡可能大的原則構(gòu)造校驗矩陣[3]?! 鹘y(tǒng)的編碼方法是將稀疏奇偶校驗矩陣H經(jīng)過高斯消元處理轉(zhuǎn)換為生成矩陣G,再根據(jù)G來進(jìn)行編碼。如此的編碼方法其生成矩陣的稀疏性難以保證,且會導(dǎo)致編碼的運(yùn)算和存儲復(fù)雜性大大增加。對于線性編碼來說,校驗矩陣為H,編碼后碼字為c,則由校驗等式性質(zhì)H?c’=0,所以可以用校驗矩陣直接編碼,主要的編碼方法有
5、高斯消去的直接編碼,LU分解編碼,部分迭代編碼算法等。本文仿真采用高斯消去的直接編碼,將m?n校驗矩陣H通過高斯消元和列變換改成如下形式H=[I
6、P],I為m?m單位矩陣,P為m?(n-m)矩陣,編碼后碼字c寫成c=[s
7、u]形式,u為輸入碼字,s為校驗碼字,由校驗等式H?c’=0得,I?s’+P?u’=0,即s’6=P?u’,則由c=[us]可得編碼后碼字。 2LDPC碼譯碼算法 LDPC譯碼算法是以迭代運(yùn)算為主,主要是基于二分圖[6]結(jié)構(gòu)的消息傳遞算法。二分圖與校驗矩陣H相對應(yīng),包含三種元素,方形節(jié)點、圓形節(jié)點及連接方形節(jié)點和圓形節(jié)點之間的邊,對于M×N
8、的校驗矩陣H,方形節(jié)點Vc=(c0,c1,…,cM-1)稱為校驗節(jié)點,對應(yīng)于校驗矩陣中的列,圓形節(jié)點Vs=(s0,s1,…,sN-1)稱為變量節(jié)點,對應(yīng)于校驗矩陣中的行。如果校驗矩陣中的非零位于第i行第j列,則校驗節(jié)點ci和變量節(jié)點sj之間存在一條邊,如圖1所示,為5×10的校驗矩陣二分圖表示。LDPC譯碼時各個節(jié)點的置信消息需要在變量節(jié)點和校驗節(jié)點之間互相傳遞?! ?譯碼算法性能分析及計算機(jī)仿真 從第二節(jié)對三種譯碼算法的分析來看,LLR-BP譯碼算法雖然與BP算法接近,但是,由于其運(yùn)算是在對數(shù)域進(jìn)行,因此復(fù)雜度有所降低;而MIN_SUM算法則通過采用近似運(yùn)算
9、來降低復(fù)雜度,但是,近似運(yùn)算導(dǎo)致了該算法性能會有所損耗?! ?.1三種譯碼算法復(fù)雜度比較 文獻(xiàn)[6]對概率域BP譯碼算法、LLR_BP譯碼算法和Min-sum譯碼算法的計算復(fù)雜度進(jìn)行了對比,各種算法都是針對碼率為1/2的(n,2p,p)規(guī)則LDPC碼進(jìn)行分析的。如表1所示?! ∮杀?可以看出,在計算復(fù)雜度方面,BP算法最為復(fù)雜,LLR-BP算法次之,Min-sum算法計算量是最小的。6 3.2三種譯碼算法性能比較 為了對BP算法、LLR_BP算法和MIN_SUM三種譯碼算法的性能進(jìn)行分析,本文建立了BPSK系統(tǒng)仿真模型,如圖2所示,并以此模型為基礎(chǔ),分析三
10、種譯碼算法在仿真系統(tǒng)中的