郭 佳,王毓晗,馬正新
(清華大學(xué)電子工程系,北京 100084)
1993年,法國學(xué)者 C.Berrou等人首次提出了Turbo碼[1],由于引入了交織和迭代技術(shù),因而使Turbo碼達(dá)到了接近香農(nóng)極限的性能。隨著芯片技術(shù)和大規(guī)模集成電路技術(shù)的發(fā)展,Turbo碼目前已經(jīng)廣泛應(yīng)用到衛(wèi)星通信、移動通信等各個領(lǐng)域。與此同時,與Turbo碼相關(guān)的關(guān)鍵技術(shù)也得到了深入研究和發(fā)展。文獻(xiàn)[2]采用二次置位多項(xiàng)式(QPP)交織器,并結(jié)合并行無沖突算法,將Turbo碼應(yīng)用到LTE中;文獻(xiàn)[3-4]通過將Turbo碼與比特交織編碼調(diào)制迭代譯碼(BICM-ID)系統(tǒng)相結(jié)合,提高了通信的可靠性,但系統(tǒng)的復(fù)雜度和延時也相應(yīng)有所增加。
突發(fā)誤碼是無線通信中的常見問題,然而關(guān)于如何提高Turbo碼抗突發(fā)誤碼性能的研究卻非常罕見。文獻(xiàn)[5]對Turbo碼抗突發(fā)干擾作了研究分析,并提出在Turbo編碼后級聯(lián)交織器的解決方法,對糾正干擾產(chǎn)生的突發(fā)誤碼起到了明顯的效果,但同時由于添加了一級交織器,因此會增加系統(tǒng)的復(fù)雜度和延時。目前解決突發(fā)誤碼常用方法是采用交織技術(shù),而Turbo碼內(nèi)部卻恰恰包含交織結(jié)構(gòu)。本文以改進(jìn)Turbo碼內(nèi)部交織結(jié)構(gòu)從而提升其抗突發(fā)誤碼性能的思路為出發(fā)點(diǎn),首先分析了突發(fā)誤碼對Turbo碼的影響,進(jìn)而提出了一種雙重交織結(jié)構(gòu)的Turbo碼設(shè)計方案,最終的仿真結(jié)果顯示文中設(shè)計的Turbo碼不僅具備一般Turbo碼在加性高斯白噪聲(AWGN)信道中逼近香農(nóng)極限的性能,而且抗突發(fā)誤碼性能明顯優(yōu)于一般Turbo碼,對保證無線通信的可靠性具有現(xiàn)實(shí)意義。
Turbo碼的一般結(jié)構(gòu)如圖1所示,設(shè)輸入序列為X={x1,x2,x3,…,xL},經(jīng)交織后的序列為 X'={x'1,x'2,x'3,…,x'L},設(shè)分量編碼器 1輸出序列為 Y={y1,y2,y3,…,yL},分量編碼器 2 輸出序列為 Z={z1,z2,z3,…,zL}。若選擇不穿孔方式,則輸出編碼序列為 Tx={x1,y1,z1,x2,y2,z2,…,xL,yL,zL}。在接收端,設(shè)解調(diào)后對X、Y和Z相對應(yīng)的對數(shù)似然比表示為 r(·),則將對序列 Rx1={r(x1),r(y1),r(x2),r(y2),…,r(xL),r(yL)}和序列 Rx2={r(x'1),r(z1),r(x'2),r(z2),…,r(x'L),r(zL)}兩個分量進(jìn)行譯碼,并將譯碼所獲得的信息增益用于迭代。
圖1 一般Turbo碼編碼結(jié)構(gòu)框圖Fig.1 Block diagram of the common Turbo encoding
考慮到無線信道可能出現(xiàn)突發(fā)誤碼情況,則上述編碼結(jié)構(gòu)本身存在一定的風(fēng)險。當(dāng)突發(fā)誤碼持續(xù)較長時間時,會造成終端解調(diào)設(shè)備的短時失鎖,對‘0’、‘1’的判決概率可視為 P(0)=P(1)=0.5,相對應(yīng)的對數(shù)似然比LLR=0,即對數(shù)似然比信息被刪除掉。按照圖1結(jié)構(gòu),若將輸入序列X與分量編碼器1碼字Y毗連輸出,突發(fā)誤碼極有可能將r(X)和r(Y)同時連續(xù)刪除,從而造成接收序列Rx1中存在一連串的‘0’。為了糾正Rx1中的突發(fā)誤碼,需要提供足夠長的保障區(qū)間,也就是需要通過提高Eb/N0等方式保證非刪除區(qū)間接收似然比序列的質(zhì)量,而當(dāng)Rx1中突發(fā)誤碼超過一定界限時,可能導(dǎo)致譯碼失敗。此時,由于分量碼Rx1譯碼出現(xiàn)崩潰,從而直接影響迭代譯碼效果,甚至?xí)筎urbo碼呈現(xiàn)出較高誤碼平臺。
由以上分析,為了避免r(X)和r(Y)被信道中的突發(fā)誤碼連續(xù)刪除,可以在輸入序列和分量編碼器1之間引入交織映射。同時,為了避免兩個分量編碼器輸出校驗(yàn)位相關(guān)性增強(qiáng),需要保證兩個分量編碼器輸入序列間存在良好的映射關(guān)系。QPP映射作為一種代數(shù)映射,具備許多良好的特性,可以用來設(shè)計Turbo碼內(nèi)部交織。而對于分量碼的選擇,從系統(tǒng)設(shè)計的有效性和復(fù)雜性綜合考慮,分量碼可以選擇編碼結(jié)構(gòu)相同的遞歸系統(tǒng)卷積碼(RSC)。由于采用了雙重交織,那么收尾序列的處理和復(fù)接器的設(shè)計都應(yīng)相應(yīng)地加以改動。下面給出一種基于雙重交織結(jié)構(gòu)的Turbo碼設(shè)計方案,其編碼結(jié)構(gòu)如圖2所示,具體說明如下:
(1)交織器1采用QPP映射f:X→I1,其中X為輸入序列,I1為編碼器1輸入序列;交織器2采用映射f2:X→I2,即I2=f(f(x))=f(I1),I2為編碼器2輸入序列。由于采用了雙重交織結(jié)構(gòu),信息位和校驗(yàn)位被同時刪除的風(fēng)險顯著降低;
(2)分量編碼器選擇為遞歸系統(tǒng)卷積碼(RSC);
(3)RSC可以選擇是否進(jìn)行收尾。但是為了不引入額外的延遲,收尾的幾個比特不參與交織。當(dāng)對兩個RSC分別進(jìn)行收尾時,兩個分量碼收尾比特通常不相同。假設(shè)RSC編碼器約束長度為m,信息幀長為L,則進(jìn)行收尾后系統(tǒng)位序列長度為L+2m,兩個編碼器輸出序列長度均為L+m,當(dāng)選擇不穿孔方式時,碼率R=L/(3L+4m),當(dāng)Lm時,碼率可視為R=1/3;
(4)對分量碼RSC進(jìn)行收尾處理會獲得更好的編碼增益[6],但是考慮到系統(tǒng)位與子編碼序列長度不等,復(fù)接器應(yīng)相應(yīng)改動,可將系統(tǒng)位一組收尾序列最后傳輸。解復(fù)接時,按照復(fù)接方式鏡像處理;
(5)選取QPP映射f滿足交織后位置序號奇偶性不變,則經(jīng)f2映射后的位置序號同樣保持奇偶性不變。相同奇偶性可以保證Turbo碼在穿孔時均勻地刪除校驗(yàn)位,從而保證穿孔后的Turbo碼仍具備良好的糾錯性能;
(6)譯碼結(jié)構(gòu)與編碼結(jié)構(gòu)完全相對應(yīng)。
圖2 抗突發(fā)誤碼Turbo碼編碼結(jié)構(gòu)框圖Fig.2 Block diagram of the anti-burst error Turbo encoding
借助Matlab工具對Turbo碼的誤比特率曲線進(jìn)行仿真對比。不失一般性,仿真采用BPSK調(diào)制。為了方便比較,所選用的QPP交織、隨機(jī)交織以及雙重交織器Turbo碼,其分量碼統(tǒng)一采用RSC,其生成矩陣G=[13,15],譯碼算法均為對數(shù)最大后驗(yàn)概率譯碼,且譯碼迭代次數(shù)為5次。仿真圖中L表示Turbo碼系統(tǒng)位長度,由圖3仿真結(jié)果可見,文中設(shè)計的Turbo碼在AWGN信道中同樣具備逼近香農(nóng)極限的糾錯性能。
圖3 AWGN信道下的誤比特率對比Fig.3 Contrast of BER in the AWGN channel
文中設(shè)計Turbo碼的目的在于抗突發(fā)誤碼。在無線通信和移動通信中,接收終端由于受到干擾,或者短時進(jìn)入盲區(qū)都會產(chǎn)生突發(fā)誤碼,我們在日常生活中也經(jīng)歷過由于突發(fā)誤碼所造成語音通話斷續(xù)、網(wǎng)絡(luò)傳輸堵塞等故障。為了更真實(shí)地模擬這些場景,在仿真中我們在每幀數(shù)據(jù)中引入一段長度為200b的突發(fā)誤碼,誤碼區(qū)間其對數(shù)似然比序列為0。為了驗(yàn)證遍歷性,突發(fā)誤碼的位置在幀內(nèi)隨機(jī)發(fā)生。圖4仿真結(jié)果表明,目前普遍使用的一般Turbo碼在此情形下出現(xiàn)了較高的誤碼平臺,而文中設(shè)計的雙重交織結(jié)構(gòu)的Turbo碼其誤比特率可以隨Eb/N0增加迅速降低到10-6數(shù)量級。由此可見,文中設(shè)計的Turbo碼在無線通信中中能夠提供更穩(wěn)定的服務(wù)保障。
圖4 抗突發(fā)誤碼性能對比Fig.4 Contrast of the anti-burst error performance
本文在分析了突發(fā)誤碼對Turbo碼影響的基礎(chǔ)上,提出了一種基于雙重交織結(jié)構(gòu)的Turbo碼設(shè)計方法。仿真結(jié)果顯示,文中設(shè)計的 Turbo碼在AWGN信道中具有良好的糾錯性能,當(dāng)通信中存在較長突發(fā)誤碼時,文中設(shè)計的Turbo碼表現(xiàn)出明顯的優(yōu)勢。當(dāng)一般Turbo碼出現(xiàn)誤碼平臺時,文中設(shè)計的Turbo碼表現(xiàn)出極好的抗突發(fā)誤碼能力,其誤比特率甚至可以降低到10-6數(shù)量級,對保證無線信道的無差錯信息傳輸體現(xiàn)出了更大的應(yīng)用價值。文中研究目前仍處于理論分析和軟件仿真階段,還有待通過硬件實(shí)現(xiàn)進(jìn)一步驗(yàn)證。
[1]Berrou C,Glavieux A,Thitimajshima P.Near Shannon Limit Error-Correcting Coding and Decoding:Turbo Codes[C]//Proceeding of 1993 IEEE International Conference on Communications.Geneva,Switzerland:IEEE,1993:1064-1070.
[2]Wong Cheng-Chi,Chang Hsie-Chia.High-Efficiency Processing Schedule for Parallel Turbo Decoders Using QPP Interleaver[J].IEEE Transactions on Circuits and SystemsⅠ:Regular Papers,2011,58(6):1412-1420.
[3]李鴻林,王偉利.基于卷積碼、LDPC碼、Turbo碼的BICMID 性能的研究[J].應(yīng)用科技,2009,36(12):13-16.LI Hong-lin,WANG Wei-li.The BICM-ID performance research based on convolutional codes,LDPC codes and Turbo codes[J].Applied Science and Technology,2009,36(12):13-16.(in Chinese)
[4]Kang Donghoon,Lee Yongwook,Oh Wangrok.A Low Complexity Turbo coded BICM-ID[C]//Proceeding of 2013 IEEE International Symposium on Broadband Multimedia Systems and Broadcasting.London:IEEE,2013:1-3.
[5]王存珂.基于Matlab的Turbo碼抗突發(fā)干擾研究[D].鄭州:鄭州大學(xué),2013.WANG Cun-ke.Study of Turbo Codes for Anti-burst Interference Based on Matlab[D].Zhengzhou:Zhengzhou University,2013.(in Chinese)
[6]Andrei M,Trifina L,Tarniceriu D.Influence of Trellis Termination Methods On Turbo Code Performances[C]//Proceeding of 2012 International Symposium on Electrical and Electronics Engineering.Galati:IEEE,2013:1-6.