劉星成,周敬瑩,張 弦
(中山大學(xué)電子與通信工程系,廣東廣州510275)
非對(duì)稱Z信道上Turbo碼的迭代譯碼算法及其性能*
劉星成,周敬瑩,張 弦
(中山大學(xué)電子與通信工程系,廣東廣州510275)
非對(duì)稱Z信道是一種傳輸單向出錯(cuò)的無記憶信道。針對(duì)這種信道,對(duì)Turbo碼迭代譯碼的最大后驗(yàn)概率(MAP)譯碼算法進(jìn)行了分析和推導(dǎo),得出了相應(yīng)的譯碼算法。在此基礎(chǔ)上,對(duì)Turbo碼性能進(jìn)行了仿真,對(duì)仿真過程中的關(guān)鍵問題作了論述。結(jié)果表明,利用此譯碼算法,Turbo碼在Z信道上可以獲得很好的誤比特率(BER)性能。
Z信道;Turbo碼;MAP算法;譯碼算法;誤比特率
Turbo碼是一類并行級(jí)聯(lián)卷積碼(PCCC),它將遞歸系統(tǒng)卷積碼(RSC)作為分量碼,通過隨機(jī)交織器結(jié)合在一起,編碼后的校驗(yàn)位經(jīng)過刪余矩陣和復(fù)接器,從而產(chǎn)生不同碼率的碼字。在Turbo碼編碼過程中,信息序列d經(jīng)過一個(gè)交織器,形成一個(gè)新序列d′(長(zhǎng)度與內(nèi)容沒變,但比特位置已經(jīng)重新排列過)。d與d′分別送到兩個(gè)分量編碼器RSC1和RSC2,編碼后生成校驗(yàn)序列為v1和v2;原來的d作為編碼器的系統(tǒng)輸出v0。為提高碼率,序列v1和v2需要經(jīng)過刪余矩陣周期地刪除一些校驗(yàn)位,形成校驗(yàn)位序列vi′(i=1,2)。d和vi′經(jīng)過復(fù)接器后,生成Turbo碼序列(v0,vi)。仿真時(shí),需要對(duì)RSC1編碼器進(jìn)行歸零操作。
Turbo碼獲得優(yōu)異性能的根本原因之一是采用了迭代譯碼,通過分量譯碼器之間軟信息的交換來提高譯碼性能。Turbo碼譯碼器的結(jié)構(gòu)如圖1所示,它由兩個(gè)軟輸入軟輸出譯碼器DEC1和DEC2串行級(jí)聯(lián)組成。譯碼器DEC1對(duì)分量碼RSC1進(jìn)行譯碼,產(chǎn)生關(guān)于信息序列的比特的似然比信息,并將其中的外部信息經(jīng)過交織送給譯碼器DEC2。DEC2將此信息作為先驗(yàn)信息,對(duì)分量碼RSC2進(jìn)行譯碼,產(chǎn)生交織后信息序列中每一比特的似然比信息,其中的外部信息經(jīng)過解交織后送給DEC1,進(jìn)行下一次譯碼。這樣經(jīng)過多次迭代,DEC1或DEC2的外部信息趨于穩(wěn)定,似然比值逼近于對(duì)整個(gè)碼的最大似然譯碼。然后根據(jù)此似然比值進(jìn)行硬判決,即可得到信息序列的每一比特的最佳估值序列。
圖1 基于MAP算法的Turbo碼迭代譯碼器Fig.1 Iterative decoder of Turbo codes based on theMAP algorithm
若Λ(dk)>0,則判決值=1;否則判決值=0。
為計(jì)算軟輸出對(duì)數(shù)概率似然比,設(shè)k時(shí)刻編碼器的狀態(tài)為Sk=m,k-1時(shí)刻的狀態(tài)為Sk-1= m′,定義k時(shí)刻的幾個(gè)聯(lián)合概率和條件概率函數(shù)αk(m)、βk(m)和γi(Rk,m′,m)為:
式(2)是一個(gè)前向遞歸計(jì)算過程,初值為α0(m=0)=1,α0(m≠0)=0。式(3)是一個(gè)后向遞歸計(jì)算過程,對(duì)于編碼器歸零的迭代初值為βN(m=0)=1,βN(m≠0)=0;若編碼器不歸零,則迭代初值為βN(m)=1,?m。式(2)和(3)得到的是數(shù)值不穩(wěn)定的算法,為了解決這個(gè)問題,進(jìn)行歸一化為:
因此,可以得到Λ(dk)的最終似然比的表示形式為:
(1)-(5)式組成了MAP算法。
此后又有人推出了簡(jiǎn)化的LOG-MAP算法和更簡(jiǎn)化的MAX-LOG-MAP算法,以一定的性能犧牲為代價(jià)換得了譯碼復(fù)雜度的大幅降低[14-15]。
設(shè)信道轉(zhuǎn)移概率為p,信道模型如圖2所示[12-13]:
圖2 Z信道模型Fig.2 Z-channelmodel
圖2中有兩個(gè)輸入符號(hào),其中一個(gè)輸入符號(hào)x2無錯(cuò)誤傳輸,接收是y2,另一個(gè)輸入符號(hào)x1以錯(cuò)誤概率p傳輸,接收的是y1或者y2,則信道轉(zhuǎn)移概率矩陣為:
因?yàn)棣胕(Rk,m′,m)=Pr{dk=i}·Pr{Rk|Ck}=
其中Λe(dk)是外信息,與輸入的信息位無關(guān),只與校驗(yàn)位有關(guān),信息位xk=0,1。
迭代譯碼結(jié)構(gòu)是Turbo碼具有良好譯碼性能的一個(gè)重要原因。各個(gè)譯碼單元相互之間傳遞外信息,作為先驗(yàn)信息提供給下一次譯碼,即
同時(shí)結(jié)合圖1,可以得到如下迭代譯碼步驟:
步驟1:初始化Λ(0)2e(dk)=0。
步驟2:對(duì)于迭代次數(shù)r=1,2,…,I,(其中I是總的迭代次數(shù)),有,
步驟3:r+1→r,如果r
步驟4:迭代結(jié)束,對(duì)dk進(jìn)行硬判決,得到輸出碼字。
我們的實(shí)驗(yàn)仿真環(huán)境如下:VC++6.0,CPU 2.53 GHz,512 MB,W indows XP Professional。譯碼器采用上述MAP算法。所有仿真結(jié)果均以誤比特率BER對(duì)信道轉(zhuǎn)移概率p的形式給出。Turbo碼的性能與交織器的設(shè)計(jì)類型、交織長(zhǎng)度、分量碼的選擇、譯碼算法和迭代次數(shù)等因素有關(guān)。限于篇幅,此處主要考察交織器和碼率等因素對(duì)Turbo碼性能的影響。
Turbo碼中引入交織器的目的主要是為了增大Turbo碼的有效距離使錯(cuò)誤離散化,便于譯碼器糾正隨機(jī)錯(cuò)誤,這樣可以提高數(shù)據(jù)傳輸?shù)目煽啃?大大降低數(shù)據(jù)突發(fā)錯(cuò)誤的影響。下面對(duì)分組交織器、偽隨機(jī)交織器、映射交織器和編碼匹配交織器的性能進(jìn)行仿真比較[16]。仿真參數(shù)設(shè)置為:采用非對(duì)稱Z信道模型,信息序列的交織長(zhǎng)度為65 526,碼率為R=1/2,迭代6次。
圖3給出了Turbo碼生成多項(xiàng)式為(37,21)時(shí)4類交織器的性能比較曲線,圖4給出了Turbo碼生成多項(xiàng)式為(7,5)時(shí)4類交織器的性能比較曲線。從圖3可以看出,在信道轉(zhuǎn)移概率p> 0.136時(shí),映射交織器的性能優(yōu)于分組交織器、偽隨機(jī)交織器、映射交織器和編碼匹配交織器[16-17];當(dāng)信道轉(zhuǎn)移概率0.134
從上述仿真結(jié)果可以看出,采用映射交織器和編碼匹配交織器的Turbo碼的誤比特率隨信道轉(zhuǎn)移概率的減小而快速下降,而且?guī)缀鯖]有錯(cuò)誤平底,尤其是當(dāng)編碼器約束長(zhǎng)度較大時(shí),分組交織器和偽隨機(jī)交織器的錯(cuò)誤平底比較明顯。當(dāng)信道轉(zhuǎn)移概率較小時(shí),編碼匹配交織器的性能要優(yōu)于映射交織器,但在信道轉(zhuǎn)移概率較大時(shí),映射交織器的性能是最優(yōu)的。交織器的選擇對(duì)于Turbo碼的性能有直接影響,在具體的條件下選擇合適的交織器是很重要的。
下面就非對(duì)稱Z信道模型、碼率R=1/2、(37,21)RSC碼,迭代6次時(shí),對(duì)于不同交織長(zhǎng)度對(duì)譯碼性能的影響進(jìn)行比較。從圖5可以看出,當(dāng)信道轉(zhuǎn)移概率較大時(shí)(如>0.145),交織長(zhǎng)度的增加對(duì)誤比特率性能的改進(jìn)不大,但是當(dāng)信道轉(zhuǎn)移概率減小時(shí)(在0.12-0.145之間),隨著交織長(zhǎng)度的增加,Turbo碼的糾錯(cuò)性能相應(yīng)提高。因?yàn)榻豢楅L(zhǎng)度越長(zhǎng),碼字中各個(gè)比特的交織距離就越大,就越可以打亂突發(fā)錯(cuò)誤,使誤比特率降低。在不改變Turbo碼編碼器和譯碼器結(jié)構(gòu)的情況下,可以通過增加交織長(zhǎng)度來降低誤比特率。但是交織長(zhǎng)度增加時(shí),譯碼的復(fù)雜性也增加,所帶來的時(shí)延也相應(yīng)增大,在實(shí)際應(yīng)用中要根據(jù)系統(tǒng)對(duì)實(shí)時(shí)性的要求進(jìn)行折衷考慮。這些曲線為我們?cè)诮o定Turbo碼編譯碼器復(fù)雜度與時(shí)延要求的條件下,如何選擇交織器長(zhǎng)度以使Turbo碼的整體性能達(dá)到最佳,提供了參考依據(jù)。
圖5 碼率1/2時(shí)交織長(zhǎng)度對(duì)Turbo碼性能的影響Fig.5 Effects of different interleaving lengths on the performance of Turbo codeswith coding rate 1/2
設(shè)BSC信道的轉(zhuǎn)移概率為p,圖6給出了(37,21)RSC碼組成的碼率為1/2的Turbo碼在Z信道和BSC信道上的性能。由圖6可以看出, Turbo碼的誤比特率性能曲線也是隨著信道轉(zhuǎn)移概率的減小而下降[16](其中同時(shí)可以看出,在BER=10-5、迭代6次時(shí),Z信道的轉(zhuǎn)移概率p=0.138,而BSC信道的轉(zhuǎn)移概率小至p=0.07,可見,Turbo碼Z信道的性能優(yōu)于在BSC信道的性能。因此,如果將Turbo碼應(yīng)用到以BSC信道為主的通信系統(tǒng)中,則要采取相應(yīng)的措施(如使用無刪除碼、分集傳輸、附加交織器和動(dòng)態(tài)譯碼體系等方法)以提高Turbo碼在BSC信道的糾錯(cuò)性能。
圖6 Z信道與BSC信道上Turbo碼的性能[17]Fig.6 Perfor mance of Turbo codes over Z-channel and BSC channel[17]
本文結(jié)合非對(duì)稱Z信道的特點(diǎn),對(duì)Turbo碼編譯碼器的結(jié)構(gòu)進(jìn)行了分析和探討,首次對(duì)非對(duì)稱Z信道中的Turbo碼MAP譯碼算法進(jìn)行了分析。通過VC++6.0仿真了Turbo碼在Z信道上的性能,并進(jìn)一步對(duì)信道特性、碼率、交織長(zhǎng)度和迭代次數(shù)等參數(shù)變化引起的性能變化作了細(xì)致的研究。結(jié)果表明,本文提出的Z信道的Turbo碼譯碼算法可以獲得很好的BER性能。
[1] BERROU C,GLAV IEUX A,TH ITI MAJSH I MA P.Near Shannon limit error-correcting coding and decoding:Turbo-codes[C].ICC’93,Geneva,Switzerland,1993: 1064-1070.
[2] HANZO L,WOODARD J P,ROBERTSON P,Turbo decoding and detection for wireless applications[J].Proc. of the IEEE,2007,95(6):1178-1200.
[3] BENEDETTO S,MONTORSI G.Unveiling turbo-codes: Some results on parallel concatenated coding schemes [J].IEEE Trans.on Infor mation Theory,1996,42 (2):409-428.
[4] BERROU C.The ten-year-old turbo codes are entering into service[J].IEEE CommunicationsMagazine,2003, 41(8):110-116.
[5] Q I N Z,TEH Kah Chan.Iterative reduced-complexitymultiuser detection based on chase decoding for synchronous turbo-coded CDMA system[J].IEEE Journal on Selected Areas in Communications,2006,24(1):200-208.
[6] WU G,MA N,ZHU J.Spatial temporal turbo channel coding for 3GPP evaluation[C].IEEE W ireless Communications and Networking Conference(WCNC),2007: 88-93.
[7] ZHU G,ALAJAJ I F.Joint source-channel turbo coding for binaryMarkov sources[J].IEEE Trans.on W ireless Communications,2006,5(5):1065-1075.
[8] SUN J,VALENTIM C,Joint synchronization and SNR estimation for turbo codes in AWGN channels[J].IEEE Trans.on Communications,2005,53(7):1136-1144.
[9] BOUZEKR IH,M I LLER S L.An upper bound on turbo codes perfor mance over quasi-static fading channels[J]. IEEE CommunicationsLetters,2003,7(7):302-304.
[10] ROSNES E,YTREHUSO.Turbo decoding on the binary erasure channel:Finite-length analysis and turbo stopping sets[J].IEEE Trans.on Infor mation Theory, 2007,53(11):4059-4075.
[11] KLOVE T,OPR ISAN P,BOSE B.Diversity combining for the Z-channel[J].IEEE Trans.on Infor mation Theory,2005,51(3):1174-1178.
[12] GOLOMB SW.The limiting behavior of the Z-channel [J].IEEE Trans.on Information Theory,1980,26 (3):372.
[13] MOSKOW ITZ IS,GREENWALD S J,KANGM H.An analysis of the timed Z-channel[J].IEEE Trans.on Infor mation Theory,1998,44(7):3162-3168.
[14] 劉東華.Turbo碼原理與應(yīng)用技術(shù)[M].北京:電子工業(yè)出版社,2004:119-123.
[15] TALAKOUB S,SABETIL,SHAHRRAVA B,et al.An improved Max-Log-MAP algorithm for turbo decoding and turbo equalization[J].IEEE Trans.on Instrumentation andMeasurement,2007,56(3):1058-1063.
[16] POPOVSKI P,KOCAREV L,R ISTESKIA.Design of flexible-length S-random interleaver for turbo codes[J]. IEEE CommunicationsLetters,2004,8(7):461-463.
[17] L I U X,HU Y,ZHANGL.Design of a deterministic interleaver for turbo codes and its applications in self-similar traffic streams[J].Chinese Journal of Electronics, 2004,13(2):342-345.
Iterative Decoding Algorithm and Its Performance of Turbo Codes on the Asymmetric Z-Channel
L IU X ingcheng,ZHOU Jingying,ZHANG Xian
(Department of Electronic and Communications Engineering, Sun Yat-sen University,Guangzhou 510275,China)
The asymmetric Z-channel is a discrete memoryless channel with one of the input symbols trans mitted with noise.The maximum a posterior probability(MAP)decoding algorithm was analyzed, and a modified decoding algorithm on the asymmetric Z-channel was deduced.Based on the algorithm, simulations on the performance of turbo codes have been carried out,and the key issuesof simulations are discussed.The simulation results show that turbo codes can get excellent bit error rate performance on the asymmetric Z-channelwith our proposed decoding algorithm.
Z-channel;Turbo codes;MAP algorithm;decoding algorithm;bit error rate(BER)
TN911.22
A
0529-6579(2010)01-0029-05
自從1993年C.Berrou等人[1]提出Turbo碼以來,Turbo碼以其接近Shannon限的理論性能一直以來受到人們的普遍關(guān)注。Turbo碼的的應(yīng)用很廣泛,例如,移動(dòng)衛(wèi)星通信系統(tǒng)[2]、數(shù)字音頻廣播、數(shù)字視頻廣播、深空通信、UMTS/3GPP和CDMA等領(lǐng)域[3-6]。此外,Turbo碼技術(shù)也被應(yīng)用到信息隱藏,如視頻和圖像的加密和數(shù)字水印技術(shù),同時(shí)Turbo碼的思想也被用于分布式信源編碼和聯(lián)合信源信道編碼等領(lǐng)域[7]。
不同編碼方法的性能差異因信號(hào)傳輸信道的不同而有所區(qū)別。在利用MAP算法進(jìn)行Turbo碼譯碼時(shí)需要信道的信息,近年來在AWGN信道和衰落信道上的性能分析方法的論文很多[3-9],在二進(jìn)制擦除信道上Turbo碼的性能也有人做了研究[10]。然而,非對(duì)稱信道與之不同,非對(duì)稱錯(cuò)誤主要發(fā)生在光通信信道中。此外,在一些大規(guī)模集成電路在利用串行總線傳送信息時(shí),也會(huì)產(chǎn)生非對(duì)稱錯(cuò)誤[11]。這類錯(cuò)誤常用的信道模型就是非對(duì)稱Z信道模型[12-13]。本文首先分析了Turbo碼編譯碼器的結(jié)構(gòu)和原理,然后介紹了Z信道的模型和特點(diǎn),并分析和推導(dǎo)了Turbo碼在Z信道上的MAP譯碼算法,表明Turbo碼可以在Z信道上進(jìn)行迭代譯碼,最后進(jìn)行了計(jì)算機(jī)仿真,仿真結(jié)果也表明Turbo碼的迭代譯碼性能在Z信道上有優(yōu)異的表現(xiàn)。
2009-01-09
國(guó)家自然科學(xué)基金資助項(xiàng)目(60673086,60970041)
劉星成(1964年生)男,博士,副教授;E-mail:isslxc@mail.sysu.edu.cn.