田 進(jìn),王毓琀,馬正新
(清華大學(xué) 電子工程系,北京100084)
低密度奇偶校驗(low-density parity check,LDPC)碼是由 Gallager R G 在 1962 年首次提出[1],由于當(dāng)時的硬件技術(shù)受限,沒得到重視。直到1996 年,Mackay D J C 從現(xiàn)代編碼理論觀點出發(fā),研究LDPC 并發(fā)現(xiàn)其優(yōu)異糾錯性能[2],特別是Richardson T 等人采用密度進(jìn)化算法并結(jié)合線性優(yōu)化方法,得到了幾乎到達(dá)香農(nóng)限的無限不規(guī)則LDPC 的度分布參數(shù)[3],使人們重新認(rèn)識了LDPC。目前,LDPC 以其優(yōu)異性能被許多標(biāo)準(zhǔn)采用,例如:DVB-S2,802.16E和中國數(shù)字電視地面廣播傳輸系統(tǒng)標(biāo)準(zhǔn)等。
本文考慮LDPC 在衛(wèi)星通信中的應(yīng)用,相對于地面光纖和移動數(shù)字通信而言,衛(wèi)星通信有其自身的優(yōu)勢。廣覆蓋面、廣播傳輸模式、適應(yīng)惡劣地形以及迅速建立傳輸路徑的能力,使衛(wèi)星通信在民用和軍事上都具有廣闊的前景。由于傳輸路徑遠(yuǎn),信號衰減大,衛(wèi)星和地面站發(fā)射功率受限,因此,有必要采用高效的信道編碼方式,提高傳輸速率和譯碼正確性。
目前,正交相移鍵控(quadrature phase shift keying,QPSK)是衛(wèi)星傳輸系統(tǒng)中最常用的調(diào)制方式。在接收端,由于同步和相位跳變發(fā)生相位模糊。為了克服相位模糊問題,接收端必須進(jìn)行解模糊處理。本文結(jié)合信道編碼和調(diào)制2 個方面,給出信道編碼層次上抗相位模糊處理方法。通過分析LDPC 的迭代次數(shù)與翻轉(zhuǎn)長度的關(guān)系,提出改進(jìn)的譯碼算法。特別是,在數(shù)據(jù)包內(nèi)部發(fā)生一次相位翻轉(zhuǎn)時,本文算法可以有效判斷翻轉(zhuǎn)位置,并準(zhǔn)確譯碼。在低信噪比下解調(diào)時發(fā)生相位翻轉(zhuǎn)的頻率較高,影響譯碼性能,而抗相位翻轉(zhuǎn)的LDPC 可在低信噪比下保持良好性能,從而降低衛(wèi)星通信系統(tǒng)接收門限。
置信傳播(belief propagation,BP)譯碼算法[4],也稱為和積算法,或消息傳遞算法。
BP 譯碼每次迭代包括兩步:校驗節(jié)點處理和變量節(jié)點處理。每次迭代中,所有變量節(jié)點從相鄰的變量節(jié)點接收信息,處理后再回到相鄰的變量節(jié)點;然后所有的變量節(jié)點都進(jìn)行相同的處理過程;最后變量節(jié)點收集所有的可以利用的信息進(jìn)行判決。
用對數(shù)似然比(log likehood ratio,LLR)形式表示的BP譯碼算法(LLR-BP 算法):對于校驗矩陣元素hmn=1 的m,n 執(zhí)行以下步驟運算:
QPSK 解調(diào)可能發(fā)生的相位模糊形式是:π/2,3π/2。為了解決相位模糊度問題,可在基帶數(shù)字調(diào)制之前進(jìn)行差分編碼,解調(diào)之后再進(jìn)行差分譯碼,這種編碼會導(dǎo)致誤碼擴(kuò)散的問題[5]。突發(fā)通信時采用獨特碼檢測技術(shù)[6]是在2 個相互正交支路中各加入事前確定好的一組碼字,在解調(diào)相位系統(tǒng)中,可以唯一確定相位誤差。在低信噪比下,當(dāng)一個數(shù)據(jù)包較長時,解調(diào)時可能在同一個數(shù)據(jù)包中間發(fā)生相位模糊。獨特碼檢測技術(shù)只能對整個數(shù)據(jù)包的包頭做一次相位校正,因此,當(dāng)數(shù)據(jù)包內(nèi)發(fā)生相位旋轉(zhuǎn)時不能校正而出現(xiàn)譯碼錯誤。本文提出在突發(fā)通信中基于LDPC 的抗相位模糊算法,可以有效地解決當(dāng)數(shù)據(jù)包內(nèi)部發(fā)生一次相位模糊的情況。
在一定的信噪比下,數(shù)據(jù)包的錯誤比特數(shù)小于一定值時,采用LLR-BP 譯碼算法可譯碼正確。錯誤比特數(shù)增加,則譯碼迭代次數(shù)也相應(yīng)增加,錯誤比特數(shù)增加到一定,時則譯碼出錯,此時,迭代次數(shù)也達(dá)到系統(tǒng)最大迭代次數(shù)Lmax。在突發(fā)衛(wèi)星通信中,由于相位模糊導(dǎo)致I,Q 兩路信號解調(diào)時映射發(fā)生錯誤,導(dǎo)致原數(shù)據(jù)包比特數(shù)順序發(fā)生改變,則譯碼迭代次數(shù)增加。故在一定信噪比下,可利用迭代次數(shù)來判斷相位模糊發(fā)生的位置,從而正確譯碼。
如上文所述,首先考慮相位模糊發(fā)生π/2 時,數(shù)據(jù)包內(nèi)發(fā)生一次相位模糊位置P 點時,如圖1 所示。數(shù)據(jù)包P 點以后的數(shù)據(jù)發(fā)生相位π/2 翻轉(zhuǎn),則長度為D。無相位模糊時 I,Q 在星座圖映射為1 +1i,1 -1i,-1 +1i,-1 -1i,當(dāng)相位模糊產(chǎn)生 π/2,則 I,Q 映射為 1 -1i,1 +1i,- 1 - 1i,1 -1i。必須在解調(diào)端進(jìn)行逆翻轉(zhuǎn),即信號相位逆旋轉(zhuǎn)π/2。
圖1 數(shù)據(jù)包Fig 1 Data packet
本文提出改進(jìn)的LDPC 譯碼算法基于迭代次數(shù)來估計相位模糊發(fā)生的位置,通過逆翻轉(zhuǎn)來譯碼。假設(shè)在一定的信噪比下,沒有相位模糊時,LLR-BP 譯碼算法譯碼成功時實際最大迭代次數(shù)lmax;在有相位模糊情況下,逐漸增加翻轉(zhuǎn)長度。記錄第一次達(dá)到系統(tǒng)最大迭代次數(shù)Lmax時翻轉(zhuǎn)長度為d'。有相位模糊時,數(shù)據(jù)包內(nèi)翻轉(zhuǎn)長度 D >d'時,實際迭代次數(shù)Iter=Lmax,則需經(jīng)過逆翻轉(zhuǎn),才能正確譯碼。選擇逆翻轉(zhuǎn)步長d=d' -10。并記錄翻轉(zhuǎn)長度d 時最大迭代次數(shù)ld。首先第一步判斷Iter 是否大于ld,如果Iter 大于迭代次數(shù)ld,則發(fā)生相位模糊。需經(jīng)過imax=?D/d」次逆翻轉(zhuǎn)可以正確譯碼,每次逆翻轉(zhuǎn)長度為i·d;則算法流程圖如圖2所示。
圖2 改進(jìn)算法流程圖Fig 2 Flow chart of improved algorithm
其中,sum_row 為HCT列向量之和。HCT的結(jié)果為一個列向量。
該算法前提是數(shù)據(jù)包發(fā)生π/2 或者3π/2 方向的翻轉(zhuǎn),本算法可以確定其相位發(fā)生旋轉(zhuǎn)的位置與正確譯碼。當(dāng)解調(diào)系統(tǒng)出現(xiàn)這2 個方向不確定翻轉(zhuǎn)情況時,可以采取2 個方向依次逆翻轉(zhuǎn)迭代。迭代次數(shù)與逆翻轉(zhuǎn)長度的關(guān)系與碼長、LDPC 校驗矩陣、信噪比參數(shù)等因素有關(guān)。每一個系統(tǒng)確立迭代次數(shù)與逆翻轉(zhuǎn)長度關(guān)系時,需要預(yù)先進(jìn)行大量仿真實現(xiàn),統(tǒng)計各個EbNo 下的迭代次數(shù)與逆翻轉(zhuǎn)長度的關(guān)系。
以IEEE 802.16E 中的校驗矩陣,碼長為2 304 bit,碼率為1/2,在高斯信道下QPSK 調(diào)制解調(diào),采用LLR-BP 譯碼為例,最大迭代次數(shù)為30 次,AWGA 信道中傳輸,EbNo 為5 dB和4 dB。
假設(shè)I,Q 在一個數(shù)據(jù)包中翻轉(zhuǎn)至多一次,且為最常見的π/2 和3π/2 翻轉(zhuǎn)。本文首先討論 π/2 翻轉(zhuǎn),另外一種情況采用相同的處理方式。在實際情況中數(shù)據(jù)包傳輸碼字越長,越往后發(fā)生的翻轉(zhuǎn)概率越大,其概率近似為負(fù)指數(shù)分布。
圖3 翻轉(zhuǎn)長度與最大迭代次數(shù)關(guān)系Fig 3 Relation between flip length and the maximum number of iteration
由圖3 可以看出:迭代次數(shù)與包內(nèi)發(fā)生翻轉(zhuǎn)長度D 具有一定的關(guān)系。當(dāng)實際最大迭代次數(shù)Iter 小于系統(tǒng)迭代次數(shù)Lmax時,信道越好,則翻轉(zhuǎn)長度d 越大。當(dāng)達(dá)翻轉(zhuǎn)長度D達(dá)到一定時,則迭代次數(shù)為Lmax不變。圖4 表示翻轉(zhuǎn)長度從0 ~150 時,直接LLR-BP 譯碼與本文改進(jìn)算法譯碼誤碼率圖。當(dāng)不同信噪比下,直接采用LLR-BP 譯碼,當(dāng)翻轉(zhuǎn)長度大于一定時,譯碼算法失效。而本文提出的算法可以獲得性能優(yōu)異的誤碼性能。在信噪比4,5 dB 時,翻轉(zhuǎn)長度分別大于50,60 時,本文算法能夠保持與相位模糊時的誤碼性能。
圖4 本文算法與LLR BP 譯碼Fig 4 The proposed algorithm and LLR BP decoding
本文給出了在衛(wèi)星通信中,分析了LLR-BP 譯碼的迭代次數(shù)與相位翻轉(zhuǎn)長度關(guān)系,提出了一種抗相位模糊LDPC譯碼算法。該算法可有效地判定包內(nèi)相位翻轉(zhuǎn)位置并正確譯碼??蛇M(jìn)一步推廣,如果考慮相位旋轉(zhuǎn)方向不確定,即π/2和3π/2,則經(jīng)過2 種情況下的翻轉(zhuǎn)嘗試,可以正確譯碼。
[1] Gallager R G.Low density parity check codes[J].IRE Trans on Inform Theory,1962,39:37.
[2] MacKay D J C,Neal R M.Near Shannon limit performance of low density parity check codes[J].Electron lett,1996,32:1645 -1646.
[3] Richardson T,Shokrollahi A,Burbank R.Design of capacity-approaching irregular low-density parity-check codes[J].IEEE Trans on Inform Theroy,2001,47(2):619 - 639.
[4] Chen J,F(xiàn)ossorier M.Near optimum universal belief propagation based decoding of low density parity check codes[J].IEEE Trans on Commun,2002,50(3):406 - 414.
[5] Blains C A.Antenna theory analysis and design[M].3rd ed.Hoboken:John Wiley & Sons Inc,2005.
[6] 吳曉東,路友榮,黃淵凌,等.TDMA 突發(fā)信號的檢測[J].電信技術(shù)研究,2005(1/2):28 -34.