田甜 薛鴻民 鄧志龍
摘 ?要:該文在介紹Turbo碼原理基礎(chǔ)上,提出一種新的Turbo碼設(shè)計(jì)方案,并對(duì)分量編碼器、二次置換多項(xiàng)式交織器、刪余器、最大后驗(yàn)概率譯碼算法等關(guān)鍵技術(shù)做出具體分析。同時(shí),利用Matlab軟件對(duì)Turbo碼在不同交織長(zhǎng)度、不同迭代次數(shù)和不同編碼速率下進(jìn)行性能仿真,得出Turbo碼應(yīng)用于短波通信系統(tǒng)時(shí)參數(shù)設(shè)置,與經(jīng)過(guò)實(shí)測(cè)驗(yàn)證具有較高可靠性的卷積碼編碼相比,在300bps信息傳輸速率下,獲得3dB增益,有效增強(qiáng)了系統(tǒng)可靠性。
關(guān)鍵詞:Turbo碼 ?編碼 ?譯碼 ?短波通信
中圖分類(lèi)號(hào):TN929 ? ? ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2020)08(c)-0049-04
Abstract: This paper puts forward a new Turbo code design scheme on the basis of introducing the principle of Turbo code, and analyzes the key technologies such as component encoder, quadratic permutation polynomial interleaver, delete and maximum posterior probability decoding algorithm in detail. At the same time, Matlab software is used to conduct performance simulation of Turbo code in different mixed length and number of iteration under different code rate, and it is concluded that the parameter settings of the Turbo code used in shortwave communication system can obtain a gain of 3dB at the information transmission rate of 300bps by comparing with the convolutional code with higher reliability verified by actual measurement, which effectively enhances the system reliability.
Key Words: Turbo code; Encoding; Decoding; Short wave communication
在短波通信系統(tǒng)中,信源與信宿之間實(shí)現(xiàn)交互通信,既要保證通信的可靠性,又要高效地完成信息交互,就必須引入編碼模塊,通過(guò)加入冗余比特實(shí)現(xiàn)不穩(wěn)定通信環(huán)境下的可靠通信。編碼模塊分為信源編碼與信道編碼。信源編碼的作用是盡可能壓縮數(shù)據(jù)冗余度以保證高效性,信道編碼的作用是添加數(shù)據(jù)冗余度以保證可靠性,二者相互作用、相互制約,又推動(dòng)相互不斷發(fā)展。自1993年起,Turbo碼作為信道編碼理論的一種,被廣泛進(jìn)行研究,其性能無(wú)限向香農(nóng)限逼近,并在工程實(shí)踐領(lǐng)域得到廣泛應(yīng)用。
1 ?Turbo碼編碼器
信息序列a經(jīng)過(guò)交織器,依據(jù)交織映射規(guī)則變?yōu)樾畔⑿蛄衋,送入分量編碼器。通過(guò)分量編碼器1輸出信息序列為Xp1,通過(guò)分量編碼器2輸出信息序列為Xp2,依據(jù)所需編碼效率,通過(guò)刪余器進(jìn)行控制,周期刪除校驗(yàn)比特,與原始信息序列a進(jìn)行復(fù)用,輸出編碼后信息序列X;也可不經(jīng)過(guò)刪余器直接與原始信息序列a進(jìn)行復(fù)用輸出編碼后信息序列X。該文設(shè)計(jì)的Turbo碼編碼器,采用虛線所示,不經(jīng)刪余器直接復(fù)用,完成Turbo碼編碼。
1.1 分量編碼器
1.2 交織器
采用二次置換多項(xiàng)式(QPP)交織器[2]。設(shè)信息序列送入交織器前標(biāo)記為,這里K表示輸入信息序列個(gè)數(shù),通過(guò)QPP交織器后輸出為,映射關(guān)系為,其中與信息序列標(biāo)號(hào)i之間的關(guān)系為。f1和f2主要取決于在實(shí)際應(yīng)用中選取交織長(zhǎng)度k的大小,通過(guò)查找QPP交織器參數(shù)設(shè)置表可得函數(shù)一一映射關(guān)系[1]。
2 ?Turbo碼譯碼器
典型Turbo碼譯碼器原理結(jié)構(gòu)見(jiàn)圖2。
不同于卷積碼譯碼方法[4],Turbo碼在譯碼過(guò)程中主要利用循環(huán)迭代思想(見(jiàn)圖1)。首先接收端將接收到的數(shù)據(jù)符號(hào)Y進(jìn)行解復(fù)用,分為信息比特Ys和校驗(yàn)比特Yp,并將校驗(yàn)比特Yp還原為由分量編碼器1得到的校驗(yàn)比特Yp1和由分量編碼器2得到的校驗(yàn)比特Yp2,分別送至軟輸入軟輸出譯碼器1和軟輸入軟輸出譯碼器2,兩個(gè)譯碼器相互提供先驗(yàn)信息,進(jìn)行反復(fù)迭代,最終使譯碼器之間提供的先驗(yàn)信息Le趨于定值后進(jìn)行硬判決,得到關(guān)于發(fā)送信息序列a的最大似然估計(jì)值。
3 ?最大后驗(yàn)概率譯碼算法(MAP算法)
當(dāng)譯碼器進(jìn)行譯碼時(shí),主要取決于來(lái)自?xún)煞矫嫘畔ⅲ阂皇窍闰?yàn)信息,指前一個(gè)譯碼器譯碼后得到的關(guān)于信息序列對(duì)數(shù)似然比值中可作為下一個(gè)譯碼器先驗(yàn)信息的那部分信息;二是數(shù)據(jù)信息,是經(jīng)過(guò)編碼后的信息序列經(jīng)過(guò)信道后產(chǎn)生的序列,其中數(shù)據(jù)信息內(nèi)又包含了信息比特和校驗(yàn)比特信息,標(biāo)記為。
Turbo碼譯碼器在對(duì)接收數(shù)據(jù)進(jìn)行譯碼之前,必須設(shè)置相應(yīng)接收數(shù)據(jù)幅值門(mén)限,使譯碼性能提高。接收端接收數(shù)據(jù)可簡(jiǎn)化表示為:,其中其中,a為乘性干擾因子,n為加性干擾因子,信道所加噪聲為高斯白噪聲。接收端對(duì)數(shù)據(jù)幅值限幅,即對(duì)概率比值限幅。乘性干擾因子a初始值為1,若a增大,門(mén)限降低,Turbo碼譯碼端性能下降;若將a減小,門(mén)限提升, Turbo碼譯碼端性能提升,數(shù)據(jù)處理范圍增大,但不能超出軟硬件數(shù)據(jù)處理最大范圍,造成數(shù)據(jù)溢出。
4 ?Turbo碼性能仿真
針對(duì)不同交織長(zhǎng)度,迭代次數(shù)以及編碼速率,在AWGN信道條件下,采用BPSK調(diào)制方式進(jìn)行仿真測(cè)試。接收端以誤碼率為衡量標(biāo)準(zhǔn),橫坐標(biāo)為Eb/N0,縱坐標(biāo)為誤碼率,Eb表示發(fā)送1比特信息時(shí)所需要的最小功率,N0表示噪聲的平均功率。
4.1 交織長(zhǎng)度對(duì)譯碼性能的影響
交織器最大目的就是將信息序列打亂,降低相關(guān)性,對(duì)抗在傳輸過(guò)程中引起的突發(fā)性錯(cuò)誤。其中交織長(zhǎng)度與內(nèi)部交織規(guī)則是交織器性能重要指標(biāo),不同圖案映射規(guī)則反映不同交織器性能,當(dāng)映射關(guān)系確定,交織長(zhǎng)度越長(zhǎng),誤碼性能越優(yōu)越。交織器長(zhǎng)度增加會(huì)帶來(lái)極大譯碼延時(shí),在進(jìn)行通信系統(tǒng)設(shè)計(jì)時(shí),必須折中考慮。隨交織器交織長(zhǎng)度的增加,其譯碼效果逐漸增強(qiáng),會(huì)對(duì)系統(tǒng)帶來(lái)一定編碼增益,尤其當(dāng)信噪比較高時(shí),碼長(zhǎng)較長(zhǎng)的交織器會(huì)產(chǎn)生明顯優(yōu)勢(shì),但在譯碼端譯碼器存儲(chǔ)量也會(huì)隨之增大。
4.2 迭代次數(shù)對(duì)譯碼性能的影響
由MAP譯碼算法推導(dǎo)過(guò)程可知,Turbo碼譯碼是通過(guò)不斷迭代完成的,在每一次對(duì)接收信息序列進(jìn)行譯碼時(shí),產(chǎn)生最大似然值中包含3個(gè)部分信息:信道值、前一級(jí)譯碼器為本級(jí)譯碼器提供的關(guān)于譯碼序列的先驗(yàn)信息和本級(jí)譯碼器為下一級(jí)譯碼器提供的外信息。兩個(gè)譯碼器之間不斷傳遞外信息,直到趨于穩(wěn)定,再通過(guò)硬判決門(mén)限進(jìn)行判決。理論上,隨迭代次數(shù)增加,當(dāng)外信息、信息序列與編碼器產(chǎn)生的校驗(yàn)比特序列之間相關(guān)性不強(qiáng)時(shí),可提高糾錯(cuò)能力,使系統(tǒng)性能不斷提升。隨迭代次數(shù)增加,性能會(huì)有所改善,譯碼器復(fù)雜度也會(huì)提升;迭代次數(shù)超過(guò)5次,接收端誤碼率改善逐漸變小,繼續(xù)增加會(huì)造成資源浪費(fèi)。可采用良好的停止迭代準(zhǔn)則[3],當(dāng)Turbo碼性能滿(mǎn)足系統(tǒng)指標(biāo)后,停止迭代,縮短譯碼時(shí)間。
4.3 編碼速率對(duì)譯碼性能的影響
Turbo碼編碼速率的調(diào)整通過(guò)刪余器完成,編碼速率的降低使信號(hào)在傳輸過(guò)程中冗余比特增加,糾錯(cuò)能力增強(qiáng),編碼模塊增益提高。在R=1/2編碼速率時(shí),刪余器對(duì)兩組校驗(yàn)比特不同的鑿孔方式,對(duì)Turbo碼性能會(huì)產(chǎn)生不同影響,該文采用在校驗(yàn)比特序列1中刪除偶數(shù)校驗(yàn)位,在校驗(yàn)比特序列2中刪除奇數(shù)校驗(yàn)位的鑿孔方式。Turbo碼編碼速率對(duì)譯碼性能會(huì)產(chǎn)生較大影響,在誤碼率為10-3時(shí),編碼速率R=1/3Turbo碼與編碼速率R=1/2Turbo碼相比,約有2dB增益改善。
5 ?短波通信系統(tǒng)性能仿真
短波通信系統(tǒng)采用OFDM多載波傳輸方式,將經(jīng)實(shí)測(cè)驗(yàn)證具有較高可靠性卷積碼編碼方式與Turbo碼編碼方式進(jìn)行分析比較。
仿真結(jié)果見(jiàn)圖3,Turbo碼性能與卷積碼性能相比,在誤碼率為10-4時(shí),約有3dB增益改善,有效提高短波OFDM通信系統(tǒng)可靠性。此外,使用Turbo碼必須進(jìn)行碼率匹配,當(dāng)對(duì)Turbo碼兩個(gè)分量編碼器不進(jìn)行歸零處理,MAP譯碼時(shí),前向遞推、反向遞推的初始狀態(tài)與最終狀態(tài)均不能確定,在誤碼率為10-4時(shí),約有2dB性能劣化。
參考文獻(xiàn)
[1] 唐振宇.Turbo碼在短波通信中的研究及實(shí)現(xiàn)[D].北京郵電大學(xué),2015.
[2] 王秀敏,宿晨,單良,等.高性能LDPC/Turbo碼雙模譯碼器的發(fā)展綜述[J].中國(guó)計(jì)量大學(xué)學(xué)報(bào),2017,28(2):203-207,260.
[3] Wu Yufei, Woerner BD, Ebel WJ. A simple stopping criterion for turbo decoding[J]. IEEE Communications Letters,2000,4(8):258-260.
[4] 賴(lài)劍強(qiáng).無(wú)人機(jī)超短波通信系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].通信技術(shù),2019,52(5):1142-1149.
[5] 毛晶晶,李磊,王偉.超遠(yuǎn)距離散射鏈路的低碼率Turbo碼技術(shù)[J].無(wú)線電通信技術(shù),2018,44(5):444-448.
[6] 王白云,鄒星,羅宇.航空通信系統(tǒng)Turbo編譯碼研究[J].航空電子技術(shù),2017,48(4):15-19.