




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
-.z碩士學(xué)位論文題目Turbo碼編/譯碼系統(tǒng)設(shè)計及其FPGA實現(xiàn)〔英文〕TheDesignofTurboCoding/DecodingSystemanditsImplementwithFPGA-.z摘要Turbo碼的出現(xiàn)是糾錯編碼史上的一個重大突破,它具有在低信噪比下接近Shannon理論極限的優(yōu)異譯碼性能,在許多通信系統(tǒng)中都有很大的應(yīng)用前景。本文主要研究的是Turbo碼的編碼和譯碼算法及其FPGA硬件實現(xiàn)。首先,介紹了課題的研究背景和Turbo譯碼的國外研究現(xiàn)狀;其次在介紹Turbo編譯碼原理的根底上對目前常用的各類譯碼算法進(jìn)展介紹和性能分析;接著主要研究Turbo碼譯碼器的設(shè)計,最后用硬件實現(xiàn)了其電路。本文分別對Turbo碼的MAP算法,Ma*-Log-MAP算法,Log-MAP算法、SOVA算法等進(jìn)展了推導(dǎo)。在深入分析譯碼算法的根底上,決定采用Log-MAP算法作為本系統(tǒng)的譯碼算法。在對該系統(tǒng)的硬件實現(xiàn)過程中,為了節(jié)約硬件資源和減少延時,對Log-MAP算法進(jìn)展了一些改進(jìn)。在系統(tǒng)設(shè)計中,根據(jù)FPGA技術(shù)的優(yōu)點(diǎn),采用“自上而下〞和“自下而上〞結(jié)合的設(shè)計方法,通過適當(dāng)?shù)哪K分割,將Turbo碼的譯碼器分為三大模塊:Log-MAP譯碼單元模塊、交織/解交織器模塊和控制信號產(chǎn)生模塊。本文針對編碼器中的延時模塊采用一種類似于交織器的方式來實現(xiàn)延時功能,使其精度更高,編碼效果更好。并對譯碼器進(jìn)展了研究,給出了一種查找表法來實現(xiàn)復(fù)雜的E函數(shù),此方法明顯的簡化了系統(tǒng)的運(yùn)算復(fù)雜度。在硬件實現(xiàn)Log-MAP算法過程中,通過巧妙地改變前向矢量的計算順序,減少了系統(tǒng)占用的硬件資源。最后利用QuartusII軟件對編譯碼系統(tǒng)做了計算機(jī)仿真,結(jié)果說明本系統(tǒng)實現(xiàn)的Turbo碼譯碼器的誤碼性能較好,具有一定的實用價值。關(guān)鍵詞:Turbo碼,Log-MAP算法,軟判決,F(xiàn)PGA-.zABSTRACTTheemergenceofTurbo-Codeisconsideredasthemoste*citingandpotentiallyimportantdevelopmentinthehistoryoferror-correctingcodes.IthasasuperiordecodingperformanceapproachingtheShannonlimitandhasbeenwidelyapplicatedinmanymunicationsystems.ThegoalofthispaperistostudyTurboencoding/decodingalgorithmanditshardwareimplementationwithFPGA.Firstly,itintroducesbackgroundofthesubjectandtheresearchsituationaboutTurbodecoding;Secondly,itintroducesthecurrentvariousdecodingalgorithmandanalyzestheirperformancerespectivelybasedonanalyzingtheencoding/decodingprincipleofTurbo-Code;thenstudiesthedesignoftheTurbodecoderwhichhardwarecircleissuccessfullyimplementedfinally.IncludingtheMAPalgorithm,Ma*-Log-MAPalgorithm,Log-MAPalgorithmandSOVAalgorithminTurbo-Codealgorithmisdeducedrespectivelyinthepaper.Onthebaseofin-depthanalysisofthedecodingalgorithm,theLog-MAPalgorithmasthedecodingalgorithminthesystemisselected.Intherealizationprocessofhardwareinthissystem,Log-MAPalgorithmhasbeenimprovedinordertosavethehardwareresourcesandreducedelay.InthedesignofTurbo-Codesystem,thebiningdesignmethodofboth"fromtoptobottom"and"frombottomtotop"isimplementedaccordingtoadvantageoftheFPGA,andthedecoderisdividedintothreeblocks:Log-MAPdecoder,interleaver/deinterleaverblockandtimingcontrolblock,throughappropriatesegmentationmodule.Inthispaper,asimilarinterleaverisusedbythedelaymoduleoftheencoderasanapproachtoachievedelayfunction,whichmakesitmoreprecise,effectiveandbetter.Meanwhile,inthestudyofthedecoder,alook-uptablemethodisgiventoachieveple*E-function,andthemethodsignificantlysimplifiesoperationple*ityofthesystem.IntheprocessoftheLog-MAPalgorithmimplementationwithhardware,thecalculationofvectorsequenceissubtlychanged,whichcanreducetheshareofthehardwareresources.Finally,encoding/decodingsystemissimulatedbytheQuartusIIsoftware,andtheresultshowsthatTurbo-Codesystemhasabettererrorperformanceandsomepracticalvalue.KeyWords:TurboCodes,Log-MAPAlgorithm,SoftDecision,FieldProgrammableGateArray-.z目錄TOC\o"1-4"\h\z\u摘要IABSTRACTII目錄III第一章緒論1§1.1Turbo碼編/譯碼方案的提出1§1.2Turbo碼的研究現(xiàn)狀2§1.3Turbo碼的研究展望3§1.4課題背景與本論文的主要工作及奉獻(xiàn)4§1.4.1選題背景4§1.4.2論文的構(gòu)造4第二章Turbo碼的根底知識5§2.1Turbo碼簡介5§2.2Turbo碼編碼器原理6§2.2.1Turbo碼編碼構(gòu)造6§2.2.2RSC分量編碼器8§2.3交織器10§2.4Turbo碼譯碼器原理14§2.5Turbo碼性能的分析16影響Turbo碼性能的因素16§2.5.2Turbo碼性能的物理解釋17§2.6本章小結(jié)18第三章Turbo碼譯碼算法19§3.1最大似然譯碼原則19§3.2MAP譯碼算法20§3.3Log-MAP算法和Ma*-Log-MAP算法25§3.4SOVA算法28§3.5幾種算法的比擬29§3.6本章小結(jié)31第四章Turbo碼編譯碼器的FPGA硬件實現(xiàn)方法32§4.1FPGA技術(shù)簡介32§4.1.1可編程邏輯器件32§4.1.2硬件描述語言33§4.1.3FPGA硬件設(shè)計環(huán)境33§4.2Turbo碼編譯碼方案確實定34§4.2.1RSC的生成多項式34§4.2.2交織器構(gòu)造確實定34§4.2.3編碼器構(gòu)造確實定35§4.2.4Turbo碼譯碼器構(gòu)造確實定35§4.3Turbo碼編碼器的FPGA實現(xiàn)36§4.3.1RSC編碼器模塊的實現(xiàn)36§4.3.2交織器模塊的實現(xiàn)36§4.3.3編碼器模塊的實現(xiàn)38§4.4Turbo碼譯碼器的FPGA實現(xiàn)39接收碼字的量化及其運(yùn)算40§4.4.2E函數(shù)的實現(xiàn)方案41§4.4.3Log-MAP譯碼器的FPGA實現(xiàn)42§分支矢量D模塊的實現(xiàn)43§分支矢量A模塊的實現(xiàn)44§分支矢量B模塊的實現(xiàn)46§對數(shù)似然概率的計算48§4.4.4Turbo譯碼器總體構(gòu)造的實現(xiàn)50§4.5本章小結(jié)51第五章仿真結(jié)果分析52§5.1Turbo編譯碼其系統(tǒng)仿真52§5.2系統(tǒng)仿真構(gòu)造分析53§5.3本章小結(jié)57第六章總結(jié)58參考文獻(xiàn)60致63碩士在讀期間的研究成果64-.z第一章緒論Turbo碼的提出對信道編碼領(lǐng)域的研究有著重要的意義。由于Turbo碼具有接近Shanon理論極限的性能[1],尤其是低信噪比下的優(yōu)異性能使Turbo碼在許多通信系統(tǒng)中都有非常大的應(yīng)用潛力。除了在深空通信、衛(wèi)星通信以及多媒體通信等領(lǐng)域的應(yīng)用外,Turbo碼在無線移動通信系統(tǒng)中的應(yīng)用是目前的研究熱點(diǎn)。本章主要介紹了Turbo碼的產(chǎn)生背景、開展現(xiàn)狀及本論文的工作安排。§1.1Turbo碼編/譯碼方案的提出隨著用戶對通信質(zhì)量和數(shù)據(jù)傳輸速率要求的不斷提高,通信技術(shù)和計算機(jī)技術(shù)在不斷的迅速開展,作為消除或降低信息傳輸錯誤有效手段之一的信道編碼也在不斷開展。在過去的50多年里,有關(guān)糾錯碼技術(shù)的研究已經(jīng)取得了許多驕人的成果。隨著信息時代的到來以及微電子技術(shù)的飛速開展,今天的糾錯碼已不再單純是一個理論上探討的問題,它已經(jīng)成為現(xiàn)代通信領(lǐng)域中不可或缺的一項標(biāo)準(zhǔn)技術(shù)。現(xiàn)代通信系統(tǒng)的復(fù)雜化以及通信業(yè)務(wù)的多樣化,要求通信系統(tǒng)能夠?qū)υ捯?、?shù)據(jù)、圖像等數(shù)據(jù)量大的信息實現(xiàn)高速實時傳輸,而且用戶對通信質(zhì)量的要求也在不斷提高。另外,移動通信的快速開展以及個人通信的全球化,使得對高速率數(shù)字移動通信等領(lǐng)域所采用糾錯編碼技術(shù)的要求越來越高。近年來,依據(jù)信道編碼定理,人們一直致力于尋找能滿足現(xiàn)代通信業(yè)務(wù)要求,構(gòu)造簡單、性能優(yōu)越的好碼,并在分組碼、卷積碼等根本編碼方法和最大似然譯碼算法的根底上提出了許多構(gòu)造好碼及簡化譯碼構(gòu)造復(fù)雜性的方法,提出了乘積碼、代數(shù)幾何碼、低密度校驗碼、分組卷積級聯(lián)碼等編碼方法和序列譯碼、逐組最正確譯碼、軟判決譯碼等譯碼方法以及編碼與調(diào)制技術(shù)相結(jié)合的網(wǎng)格編碼調(diào)制技術(shù)。雖然軟判決譯碼、級聯(lián)碼和編碼調(diào)制技術(shù)都對信道碼的設(shè)計和開展產(chǎn)生了重大影響,但是其增益與Shannon理論極限始終都存在2-3dB的差距。直到1993年在瑞士日瓦召開的國際通信會議上,C.Berrou,A.Glavieu*和P.Thitimasjshima提出了Turbo碼[2],這是一種可實現(xiàn)的編碼系統(tǒng),而且獲得了幾乎接近Shannon理論極限的譯碼性能[3]。Turbo碼一出現(xiàn),就在編碼理論界引起了轟動,成為自信息論提出以來最重大的研究進(jìn)展,Turbo碼的提出是信道編碼史上的一個重要里程碑。它優(yōu)異的性能引起了研究人員的極大興趣,并相繼在有關(guān)方面進(jìn)展積極的探索和研究.但由于幾位創(chuàng)造者僅給出了一定參數(shù)下的計算機(jī)仿真結(jié)果,而沒有嚴(yán)格的理論分析和解釋,所以近些年來在編碼界掀起了Turbo碼的研究熱潮。目前Turbo碼的研究主要分為設(shè)計與性能分析、理論研究以及應(yīng)用3個方面。Turbo碼之所以具有優(yōu)異的性能,交織器和譯碼算法起到了很大的作用,對于其應(yīng)用的研究也有很大的進(jìn)展?!?.2Turbo碼的研究現(xiàn)狀Turbo碼具有極其廣闊的應(yīng)用前景,是信道編碼界的一個突破,被稱為二十一世紀(jì)的糾錯編碼。從1995年開場,有關(guān)Turbo碼的文獻(xiàn)大量出現(xiàn),它已成為通信技術(shù)的新熱點(diǎn),目前Turbo碼的研究主要集中在以下幾個方面[4]:(1)Turbo碼的理論分析在介紹Turbo碼的首篇論文里,創(chuàng)造者Berrou僅給出了Turbo碼的根本組成和迭代譯碼的原理,而沒有嚴(yán)格的理論解釋和證明。所以,在研究的Turbo碼起步階段,其理論的研究就顯得尤為重要。(2)Turbo碼的設(shè)計Turbo碼由分量碼經(jīng)由交織器級聯(lián)而成。因此,分量碼和交織器設(shè)計得好壞就決定Turbo碼性能的關(guān)鍵因素。主要包括交織器的設(shè)計、碼的級聯(lián)方式、Turbo碼的性能分析等等。在性能分析中,主要對碼重分布及距離譜進(jìn)展分析。(3)軟輸出迭代譯碼算法Turbo碼的編碼過程實際上是一個利用強(qiáng)約束短碼構(gòu)成偽隨機(jī)長碼的過程,通過在分量譯碼器之間交換外部信息來提高性能。其譯碼算法主要有兩大類:一類是基于最大后驗概率〔MAP[5],Ma*imumAPosteriori〕的軟輸出算法。一類是基于Viterbi算法〔VA[6],ViterbiAlgorithm〕的軟輸出算法??紤]到Turbo碼在未來高速數(shù)據(jù)傳輸中的應(yīng)用,尋找延時小和復(fù)雜性低的軟判決譯碼算法始終是Turbo碼研究的重要課題。(4)Turbo碼的編碼調(diào)制技術(shù)利用Turbo碼調(diào)制(TurboCodeModulation)技術(shù)可以在不增加系統(tǒng)帶寬要求的條件下有效地提高編碼增益。將Turbo碼與TCM相結(jié)合來實現(xiàn)高增益高頻譜效率地編碼調(diào)制方案稱為Turbo-TCM。在與調(diào)制編碼技術(shù)相結(jié)合方面的改進(jìn)表達(dá)在:將柵風(fēng)格制編碼和Turbo碼結(jié)合可以得到大的編碼增益和高的帶寬效率,如將Turbo碼與OFDM調(diào)制、差分檢測技術(shù)相結(jié)合,具有較高的頻率利用率,可有效地抑制短波信道中多徑時延、頻率選擇性衰落、人為干擾與噪聲等帶來的不利影響,而且還有較低的譯碼復(fù)雜度。(5)Turbo碼原理及其應(yīng)用由于Turbo碼具有接近Shannon理論極限的性能,尤其是低信噪比下的優(yōu)異性能使Turbo碼在很多通信系統(tǒng)中都有非常大的應(yīng)用潛力。除了在深空通信、衛(wèi)星通信以及多媒體通信等領(lǐng)域的應(yīng)用以外,Turbo碼在無線移動通信系統(tǒng)中的應(yīng)用是目前的研究熱點(diǎn)。Turbo碼已經(jīng)成為第三代移動通信系統(tǒng)的標(biāo)準(zhǔn)之一[7-10],有關(guān)其關(guān)鍵技術(shù)的標(biāo)準(zhǔn)化已經(jīng)出現(xiàn)。此外,Turbo碼在文本傳輸和數(shù)據(jù)存儲等方面也有應(yīng)用。(6)Turbo譯碼器的實現(xiàn)**大利亞大學(xué)SmallWorld通信研究組最先開場開發(fā)Turbo碼編譯碼器并推出了Turbo碼產(chǎn)品。A.Chass、D.Garrett和K.Koora等人也分別在不同的數(shù)字芯片上設(shè)計實現(xiàn)了MA*-Log-MAP算法和SOVA算法。在Turbo碼編譯碼器設(shè)計過程中,最主要的是考慮數(shù)據(jù)處理速度和功耗。為降低譯碼器功耗,一個方法是減少平均的譯碼迭代次數(shù),根據(jù)每一幀數(shù)據(jù)得迭代次數(shù)和信噪比值來動態(tài)分配電壓,同時在允許的延時圍使譯碼速度放慢。目前,許多科研院所和大公司都在進(jìn)展Turbo碼編/譯碼芯片的開發(fā),如新加坡OKI公司的EMIK07,Altera公司的Turbo碼Ipcore等都宣稱開發(fā)出了相應(yīng)的產(chǎn)品,國也有很多高校和研究機(jī)構(gòu)在對Turbo碼編譯碼器的硬件實現(xiàn)進(jìn)展研究[11-14]。但從公布的技術(shù)指標(biāo)上看,都存在復(fù)雜度高、存儲量大、譯碼延時長、功耗大等缺點(diǎn)?!?.3Turbo碼的研究展望從1997年開場,Turbo碼和相關(guān)主題的國際會議每隔三年舉行一次。而從2003年以來,對于Turbo碼的研究越來越傾向于具體應(yīng)用。2006年的Turbo碼會議在德國慕尼黑與第六屆信源信道編碼會議一起舉行,Tubro碼會議的主要議題有:糾錯碼、Tubro碼和LDPC碼編碼和Turbo編碼調(diào)制、檢測和Turbo檢測、均衡和Tubro均衡、同步和Turbo同步、多用戶檢測界限、性能和收斂性算法和成員碼、交織和座標(biāo)圖、Fountani碼以及網(wǎng)絡(luò)編碼等。從中看到Turbo碼今后的開展方向,除了對編解碼器和交織器的新設(shè)計和改進(jìn)之外,更多研究將會投入到Turbo碼與其他技術(shù)的聯(lián)合應(yīng)用中去。Turbo碼作為信道編碼將與所要保護(hù)傳輸?shù)男旁幢旧硖攸c(diǎn)相結(jié)合,會對Tubro碼的設(shè)計提出不同的要求。例如語音、音頻、圖象、視頻和超文本數(shù)據(jù)對于傳輸信道的延遲抖動和可靠性都有著不同的要求,而視頻編碼技術(shù)中的各種分層編碼所產(chǎn)生的不同的碼流對傳輸?shù)囊笠膊槐M一樣。各種數(shù)據(jù)對平安性的要求也不一樣,因而Turbo碼與信源聯(lián)合編碼及不平等保護(hù)等技術(shù)的結(jié)合在實現(xiàn)上還有很多問題有待解決。雖然Turbo碼最早提出來的時候是為了深空和衛(wèi)星通信,但其價值遠(yuǎn)遠(yuǎn)超出了這個圍,因此Turbo碼在各種不同通信環(huán)境中的性能一直是研究的一個重點(diǎn)??v觀Turbo碼的開展現(xiàn)狀和要求,本人認(rèn)為需要進(jìn)一步研究的課題有:〔1〕最優(yōu)分量碼與交織器的聯(lián)合設(shè)計?!?〕低復(fù)雜性譯碼算法?!?〕譯碼迭代過程的優(yōu)化、收斂性以及迭代停頓準(zhǔn)則的設(shè)計。〔4〕聯(lián)合信道估計、多用戶檢測、均衡和譯碼算法?!?〕Turbo碼與高階調(diào)制技術(shù)的結(jié)合?!?〕Turbo碼編譯器的硬件實現(xiàn)。〔7〕Turbo碼在無線通信、移動通信以及多媒體通信中的應(yīng)用,特別是在移動網(wǎng)絡(luò)、IMT-2000及加密系統(tǒng)中的應(yīng)用等?!?.4課題背景與本論文的主要工作及奉獻(xiàn)§1.4.1選題背景本論文對所研究的Turbo碼編碼/譯碼器,通過系統(tǒng)功能模塊分割的設(shè)計方法,將整個系統(tǒng)模塊化、各模塊的分割,考慮到了其功能的完整性和靈活性。整個系統(tǒng)分為:MAP譯碼器模塊、交織器/解交織器模塊和時序控制模塊。利用Altera公司的QuartusII軟件,靈活運(yùn)用文本編輯器和圖形編輯器,對APE*2OK系列器件進(jìn)展編程[15],實現(xiàn)Turbo碼編碼器和譯碼器的功能。系統(tǒng)仿真結(jié)果證明了該編譯碼器有良好的性能,有相當(dāng)?shù)膶嵱脙r值?!煺撐牡臉?gòu)造本課題對Turbo碼編譯碼器的設(shè)計及其FPGA實現(xiàn)進(jìn)展了研究,全文分為六章,除第一章概述外,其余各章安排如下:第二章介紹了Turbo碼的根底知識。先介紹了編碼器構(gòu)造及其成員碼、交織器,然后介紹了Turbo碼譯碼器原理、分析了影響Turbo碼性能的幾種因素及其優(yōu)異性能的物理解釋,目的在于為后面Turbo碼的硬件設(shè)計提供相應(yīng)的理論根底。第三章詳細(xì)介紹了Turbo碼的譯碼算法,主要有MAP、Log-MAP、Ma*-Log-MAP、SOVA等。并分別對它們進(jìn)展了詳細(xì)的數(shù)學(xué)公式推導(dǎo),比擬了各種算法的特點(diǎn),綜合譯碼性能和實現(xiàn)復(fù)雜度考慮,從而根據(jù)實際情況選擇適合硬件實現(xiàn)的算法。第四章重點(diǎn)研究了Turbo碼的FPGA實現(xiàn)。本章首先介紹了FPGA技術(shù)的相關(guān)知識,然后從前面分析結(jié)果的根底上從硬件方面來實現(xiàn)Turbo碼編譯碼器。其中包括對交織器的硬件設(shè)計進(jìn)展了詳細(xì)介紹,對Turbo碼編碼器的硬件設(shè)計進(jìn)展了改進(jìn)。在譯碼器的設(shè)計中,采用了Log-MAP算法,對E函數(shù)、量化運(yùn)算、Log-MAP譯碼器的三個大模塊:分支度量、前向狀態(tài)矢量和后向狀態(tài)矢量等各模塊的實現(xiàn)進(jìn)展了詳細(xì)的介紹。對分塊并行Turbo碼算法的硬件設(shè)計進(jìn)展了初步的研究。第五章主要介紹了Turbo碼硬件仿真過程及其結(jié)果的分析。包括信源模型的建立、信道模型的建立,并根據(jù)仿真得到的結(jié)果進(jìn)展了分析。FPGA的仿真主要是用數(shù)據(jù)來表示,本文還用MATLAB仿真證明了前面分析的正確性。如仿真比擬幾種算法的譯碼效果,仿真比擬不同的交織器長度和量化長度時的譯碼效果。第六章總結(jié)了本論文的研究工作,介紹已經(jīng)做了哪些方面的工作,還有哪些缺乏,并進(jìn)一步提出了論文中還有待于深入研究的問題及方向。-.z第二章Turbo碼的根底知識1993年Turbo碼的編碼方案的提出,帶來了一種迭代譯碼的全新思想,使通過可譯編碼逼近信道容量成為可能。實踐中顯示,Turbo碼具有抗衰落、抗干擾性能,尤其適合功率受限的系統(tǒng),只要時延和復(fù)雜度允許,可在多種惡劣條件下提供接近極限的通信能力。本章將詳細(xì)的介紹Turbo碼的根本原理、編譯碼構(gòu)造、交織器的作用和分類、及性能分析等,為后面的設(shè)計提供了理論依據(jù)?!?.1Turbo碼簡介在現(xiàn)代通信系統(tǒng)中,為了保證各種數(shù)據(jù)在信道中可靠有效的傳輸,往往需要利用糾錯編碼技術(shù)。尤其隨著無線數(shù)字通信的開展和各種高速率、突發(fā)性強(qiáng)的業(yè)務(wù)的出現(xiàn),對糾錯碼技術(shù)提出了越來越高的要求[16]。Turbo碼編譯碼器實現(xiàn)的就是通信系統(tǒng)道編碼到信道譯碼這一階段的容,這也是最重要的局部,它的誤碼率對整個系統(tǒng)起決定性作用,Turbo碼所要研究的容就是圖2.1所示的信道編譯局部。圖2.1數(shù)字通信系統(tǒng)模型的信道局部糾錯碼起源于香農(nóng)1948年提出的香農(nóng)第二定理〔也稱信道編碼定理〕。根據(jù)香農(nóng)信道容量公式[1],實現(xiàn)可靠通信所允許的傳輸速率的上限為信道容量。在信道帶寬無限和功率受限的條件下,高斯白噪聲信道容量C表示為:〔2-1〕其中B表示帶寬,表示信道輸入帶限信號的平均功率。如果傳輸速率為,則有:〔2-2〕經(jīng)簡單變換得:〔2-3〕這就可以得到信道編碼定理:每個信道具有確定的信道容量C,對于小于C的碼率R,存在有速率為R碼長為n的分組碼及卷積碼,假設(shè)用最大似然譯碼,則隨著碼長的增加,其譯碼錯誤概率P可以任意小,即:和〔2-4〕其中和是大于0的系數(shù),和為正實函數(shù),稱為可靠性函數(shù)。上式說明在帶寬無限信道中,對于任何小于C的傳輸速率,可在碼率不變的前提下通過增加分組碼的長度n,使過失率為任意小,當(dāng)極限情況n趨于無窮,就可以實現(xiàn)高斯白噪聲下的無誤傳輸,稱為香農(nóng)限。即當(dāng)傳輸速率到達(dá)信道容量時,可靠通信所需的最小比特信噪比即香農(nóng)限為-1.6dB。香農(nóng)限成為設(shè)計信道編碼時試圖逼近的信噪比的下限,為實現(xiàn)有效可靠的通信奠定了理論根底。1993年,法國學(xué)者C.Berrou等人提出了一種稱為Turbo碼的新型編碼方案,由于它很好的應(yīng)用了Shannon信道編碼定理中的隨機(jī)性編、譯碼條件,從而獲得了幾乎接近Shannon理論極限的譯碼性能,從而引起極大的轟動,也使得Turbo碼的研究成為近年糾錯碼研究的一個熱點(diǎn)。傳統(tǒng)的Turbo碼是一類并行級聯(lián)的系統(tǒng)卷積碼,它由兩個經(jīng)交織器連接的子編碼器生成。Turbo碼的譯碼采用了軟輸入和軟輸出的譯碼算法和迭代譯碼的方法,使子譯碼器間可以互相傳遞信息,保證編碼信息的充分利用。兩個子譯碼器的輸出序列越不相關(guān),在譯碼端交換的互信息量就越大。根據(jù)C.Berrou等人仿真的結(jié)果,二元Turbo碼在速率R=1/2和碼長較長〔256×256〕的條件下,經(jīng)18次迭代得到了離理論極限約0.7dB的誤碼率性能。§2.2Turbo碼編碼器原理§Turbo碼編碼構(gòu)造典型的Turbo碼編碼如圖2.2所示。主要由分量編碼器、交織器以及刪余矩陣和復(fù)接器組成。兩個分量編碼器由碼率為R=1/2的RSC〔遞歸系統(tǒng)卷積碼〕組成,其構(gòu)造一般是一樣的,且輸入一樣的長度為N的信息序列,在送入第一個分量編碼器進(jìn)展編碼的同時作為系統(tǒng)輸出直接送到復(fù)接器,同時輸入序列經(jīng)過交織器交織后的交織序列送入第二個分量編碼器。其中,為交織映射函數(shù),N為交織長度,即信息序列長度。兩個分量編碼器輸入序列僅僅是碼元的輸入順序不同。兩個分量碼編碼器輸出的校驗序列分別為和。為提高碼率和系統(tǒng)頻譜效率,可以將兩個校驗序列經(jīng)過刪余矩陣刪余后〔得到〕再與系統(tǒng)信息一起經(jīng)過復(fù)接器構(gòu)成編碼序列。圖2.2典型的Turbo碼編碼器由線性分組碼的特性知道,碼字的最小距離是估計碼字性能的首要參數(shù)。對線性分組碼而言,碼字最小距離就是碼字集合中漢明重量最小的非零碼字的漢明重量。交織器和分量碼的結(jié)合可以確保Turbo碼編碼輸出碼字具有較高的漢明重量。在Turbo碼編碼器織器的作用是將信息序列中的比特順序重置。當(dāng)信息序列經(jīng)過第一個分量碼編碼器后輸出的碼字重量較低時,交織器可以使交織后的信息序列經(jīng)過第二個分量編碼器后以很大的概率輸出高重碼字,從而提高碼字的漢明重量,同時好的交織器還可以有效的降低校驗序列間的相關(guān)性。通過交織,編碼序列在長為2N或3N〔不經(jīng)過刪余〕比特的圍具有無記憶性,從而由簡單的短碼構(gòu)造成近似隨機(jī)長碼。因此,交織器設(shè)計的好壞在很大程度上影響著Turbo碼的性能。常用的交織方式有均勻交織、非均勻交織、偽隨機(jī)交織等,理論上,隨機(jī)交織的效果最好。對于數(shù)字通信領(lǐng)域日益緊的帶寬資源,提高碼率就意味著節(jié)省帶寬和降低通信費(fèi)用。刪余矩陣是目前提高Turbo碼碼率的主要方法,它可以通過刪除壓縮合并各成員編碼器地輸出校驗序列來調(diào)整Turbo碼編碼器的編碼速率。比方本文刪余后得到的是碼速為1/2的Turbo碼,假設(shè)校驗碼不刪余,則得到的是碼速為1/3的Turbo碼。理論上通過改變刪余矩陣可以得到任意碼速的Turbo碼。刪余單元的作用是調(diào)整編碼效率,為了提高碼率。實際中,一般使信息序列全部傳送,而校驗序列給予適當(dāng)?shù)膭h除。在接收端應(yīng)對接收序列進(jìn)展插,未被傳送的比特位用0填充,以保證序列的完整性。但是,當(dāng)碼率過高時,每個信息碼元對應(yīng)的校驗碼元數(shù)量減少,將導(dǎo)致譯碼端的糾錯性能降低。而碼率過低,又使得碼元傳輸效率過低,所以在調(diào)整編碼率時需做多方考慮,在編碼效率和糾錯性能間做折衷考慮。復(fù)用單元完成編碼的并/串轉(zhuǎn)換,使輸出適合信道的傳輸。復(fù)用后的輸出序列為。根據(jù)刪余方式,取值或。假設(shè)輸入信息序列為則編碼器使用圖2.2所示的遞歸系統(tǒng)卷積分量碼編碼后的系統(tǒng)輸出和校驗輸出分別為和假設(shè)假設(shè)經(jīng)過交織器交織后的輸入信息序列為則下面的遞歸系統(tǒng)卷積分量碼編碼后的校驗輸出為在未刪余時得到的碼率為1/3的輸出碼字采用刪余矩陣刪余后得到的碼率為1/2的輸出碼字為§RSC分量編碼器線性分組碼是一種常用的糾錯編碼,包括循環(huán)碼、BCH碼等。它們的共同特點(diǎn)是:一個碼字的監(jiān)視碼元僅與本碼組的信息碼元有關(guān),而與其它碼組的碼元無關(guān)。本節(jié)介紹的卷積碼是另一類編碼,它與分組碼的區(qū)別在于:本組的碼元不僅與當(dāng)前輸入的信息碼元有關(guān),而且還與以前的v時刻輸入的信息有關(guān)。卷積碼的糾錯能力隨著m(m=)的增加而增大,而過失率隨著v的增加而指數(shù)下降。在編碼效率與設(shè)備復(fù)雜度一樣的前提下,卷積碼的性能優(yōu)于分組碼,至少不低于分組碼。卷積碼有三個重要的特性:1.存儲長度v,v的值與卷積編碼器中延遲單元的個數(shù)相對應(yīng)。2.約束長度N=v+l。3.編碼效率。編碼效率定義為信息碼元個數(shù)與經(jīng)過編碼后總的碼元個數(shù)的比值。傳統(tǒng)卷積碼的編碼器不包含反響,因此可以等效為一個有限沖激響應(yīng)(FIR)濾波器,而遞歸系統(tǒng)卷積碼RSC(RecursiveSystematicConvolutionalEncoder)是一種特殊的卷積碼[17-18],由于存在反響,因此可以等效為一個無限沖擊響應(yīng)(IIR)濾波器。本文使用的分量編碼器如圖2.3所示,其生成多項式為(7,5)的遞歸系統(tǒng)卷積碼的編碼器,編碼速率為1/2。其輸出的碼元不僅與當(dāng)前時刻的信息元有關(guān),而且還與前v(本文使用v=2)個時刻的信息元有關(guān)。因此,在編碼過程中,每N個(N=v+1=3)相鄰的子碼之間有約束關(guān)系。圖2.3(7,5)的遞歸系統(tǒng)卷積碼的編碼框圖從圖可以知道輸入的編碼關(guān)系〔2-5〕〔2-6〕〔2-7〕即延時因子為〔2-8〕〔2-9〕由此得到生產(chǎn)多項式g1=,g2=.卷積碼可以用多種方法表示,一般有矩陣法、碼樹法、狀態(tài)圖法和柵格圖法等,可根據(jù)譯碼方法的不同而采取不同的表示方法。在Turbo碼中,用狀態(tài)圖和柵格圖來描述譯碼過程較為方便。由圖2.3遞歸系統(tǒng)卷積碼的編碼框圖可以看出,遞歸系統(tǒng)卷積碼編碼器是一個有限狀態(tài)機(jī),因此可以分別用圖2.4和圖2.5表示它的狀態(tài)轉(zhuǎn)換圖和柵格圖。圖2.4所給出的遞歸系統(tǒng)卷積編碼器對應(yīng)的狀態(tài)轉(zhuǎn)移圖,其中橢圓是編碼器所處的狀態(tài),箭頭的起點(diǎn)是初始狀態(tài),終點(diǎn)是輸入數(shù)據(jù)后的狀態(tài),射線上斜杠左邊1位是編碼器的輸入數(shù)據(jù),右邊2位是編碼器的輸出數(shù)據(jù)。因為圖2.4中的編碼器有兩個存儲器,〔即v=2〕所以編碼器共有4〔〕個狀態(tài),即S0=00,S1=10,S2=01,S3=11。例如,假設(shè)編碼器的初始狀態(tài)為S0,當(dāng)輸入信息為1時,編碼器的狀態(tài)就從S0轉(zhuǎn)移到狀態(tài)S1,,并輸出碼元C為11。假設(shè)輸入信息為0時,則編碼器停留在S0狀態(tài),輸出碼元C為00。這樣不斷輸入信息,編碼器狀態(tài)不停轉(zhuǎn)移,并相應(yīng)輸出一個子碼,它們就組成了編碼器的輸出碼序列。而圖2.5給出了圖2.4遞歸系統(tǒng)卷積編碼器所對應(yīng)的狀態(tài)轉(zhuǎn)移圖這個遞歸系統(tǒng)卷積碼的柵格圖構(gòu)造,圖中虛線表示輸入信息為0的狀態(tài)轉(zhuǎn)移,實線表示輸入信息為1的狀態(tài)轉(zhuǎn)移。這個柵格圖中的每一個分支給出三種信息:分支的狀態(tài)(當(dāng)前狀態(tài)和下一狀態(tài)),編碼器的輸入的信息比特和輸出校驗比特。圖中實線表示輸入信息比特為1,虛線表示輸入的信息比特為0。例如,對于圖中第一條實線,可知在這個分支上輸入的信息比特為1,編碼器的狀態(tài)從S0的00變到S1的10,并且編碼器的輸出為11(=l,=1)。對于圖中第一條實線,可知在這個分支上輸入的信息比特為0,編碼器的狀態(tài)從S0的00回到本身,并且輸出編碼00。一共有四個狀態(tài)S0-S3,它們之間互相轉(zhuǎn)換,其它細(xì)節(jié)就不多介紹了,從圖中可以看出。對于傳統(tǒng)的卷積碼來說,通過在數(shù)據(jù)幀的末尾嵌入v個零比特就可以迫使編碼器格圖回到全零狀態(tài)。但是對于遞歸系統(tǒng)卷積碼來說,由于它具有無限沖激響應(yīng)特性,因此僅靠嵌入v個零比特一般無法使遞歸系統(tǒng)卷積編碼格圖回到全零狀態(tài),此時可以通過解狀態(tài)變量方程得到所需的尾比特。例如在圖2.3中的構(gòu)造,根據(jù)式〔2-6〕知道,當(dāng)需要使編碼器狀態(tài)回到零,就是令d1等于零,得到:〔2-10〕這就是使編碼器回到零狀態(tài)所需的尾比特。圖2.5v=2的RSC編碼器的柵格圖§2.3交織器經(jīng)過研究發(fā)現(xiàn),Turbo碼之所以不同于以往的其它編碼,表現(xiàn)出了極佳的性能,其中一個重要原因就是采用了交織器。交織器的主要作用就是將原始數(shù)據(jù)序列打亂,使得交織前后數(shù)據(jù)序列的相關(guān)性減弱,這樣做很突出的一個優(yōu)點(diǎn)便是大大降低了數(shù)據(jù)突發(fā)錯誤的影響。在現(xiàn)代的高效編碼調(diào)制技術(shù)中,無論是級聯(lián)編碼還是Turbo編碼中都要使用交織器。從前面的描述知道,交織器的主要作用是減小突發(fā)過失的影響和改善信息序列的碼重特性。通常Turbo碼的自由距都不是很大,但是由于交織器的作用,使得Turbo碼和卷積碼相比,其重量近似的碼字?jǐn)?shù)目要小的多,從而使得在一定條件下Turbo碼的譯碼過失概率比卷積碼的過失概率低。交織器是Turbo碼的重要特征,在Turbo碼的幀長、碼率和約束長度一定的情況下,交織器的構(gòu)造決定了Turbo碼的譯碼性能,這是由于交織器的構(gòu)造影響著Turbo碼的重量分布。因此如何選擇交織器也成為Turbo碼系統(tǒng)設(shè)計的重要課題。下面給出了在Turbo碼織器的設(shè)計應(yīng)該遵循的設(shè)計準(zhǔn)則[19]:〔1〕最大程度地置亂原數(shù)據(jù)排列順序,防止置換前相距較近的數(shù)據(jù)在置換之后仍相距較近,特別要防止置換前相鄰的數(shù)據(jù)在置換后再次相鄰?!?〕盡可能防止與同一信息位直接相關(guān)的兩個分量編碼器中的校驗位均被刪除?!?〕對于不歸零的編碼器,交織器設(shè)計時要防止出現(xiàn)“尾效應(yīng)〞圖案?!?〕在滿足上述要求的交織器中選擇一個較好的交織器,使碼字之間的最小距離(或自由距離)盡可能大,而使碼重為的碼字?jǐn)?shù)要盡可能少,以改善Turbo碼在高信噪比時的性能。L.C.Perez等人的研究說明Turbo碼的漸近性能接近漸進(jìn)線,在高信噪比時出現(xiàn)錯誤平臺是小的引起的[20]。Turbo碼交織器有許多種,如分組交織器、螺旋交織器、奇偶交織器、隨機(jī)交織器、S-交織器、循環(huán)移位交織器、均勻交織器、“smile〞交織器、最優(yōu)周期交織器等等。這里我們介紹幾種典型的交織器。行列交織器行列交織器,即分組交織器,該交織器是將信息序列視為矩陣。通常采取以按行寫按列讀的方式實現(xiàn)碼元交織,交織后的碼元距離特性均勻分布,即交織前信息按行寫入,但是交織器矩陣交織后信息位按列讀出,從而實現(xiàn)行列置換。其特點(diǎn)是交織方式非常簡單,同時根據(jù)后面仿真結(jié)果可以看出,它對短序列譯碼效果較好,但交織后碼元的去相關(guān)不徹底。而解交織列順序?qū)懭耄许樞蜃x出。表2.1和表2.2表示交織器的交織與解交織的存儲器實現(xiàn)過程。分塊交織器的交織函數(shù)為:(2-11)表2.1行列交織器的交織過程表2.2行列交織器的解交織過程在糾錯編碼中,交織矩陣的行數(shù)叫做交織深度,交織矩陣的列數(shù)叫做交織跨度。分塊交織的特點(diǎn)是方式簡單、對短序列交織效果較好,但交織后對信息比特的去相關(guān)不徹底。偽隨機(jī)交織器與S隨機(jī)交織器在隨機(jī)交織器里,一個N比特的信息序列被輸入交織器里,然后被隨機(jī)讀出。理論上,信息序列之間的交織方式是變化的,以便更好地反映隨機(jī)性。但在實際應(yīng)用中,接收端必須能夠確定每一幀碼字序列的交織方式,就增加了傳輸?shù)呢?fù)擔(dān),因此完全隨機(jī)化交織并不是最正確的方式,一般使用的是偽隨機(jī)交織器[21-22]。偽隨機(jī)交織器通常在輸入信息序列較長時可以采用近似隨機(jī)的交織映射方式,每個長度為N的偽隨機(jī)交織器共有N!種可能的交織形式。但是對應(yīng)于N!種可能的交織形式,交織后有些元素之間的距離非常小,這樣會導(dǎo)致對*些錯誤序列相關(guān)行的離散度不夠。因此利用下面的S-隨機(jī)交織器可以局部解決這個問題。通常,隨機(jī)交織器是以*種方式產(chǎn)生一組隨機(jī)數(shù),決定信息序列在交織器中的排列方式,信息序列之間的交織方式是一樣的。隨機(jī)數(shù)可以這樣來產(chǎn)生:首先在從1到N之間等概率地隨機(jī)選擇一個整數(shù),作為信息序列中第一個比特在交織后的位置,然后從剩下的N-1個整數(shù)中等概率地隨機(jī)選擇一個整數(shù),作為信息序列中第二個比特在交織后的位置,依此類推,直到N個信息比特都進(jìn)展完。為了防止交織前相距較近的數(shù)據(jù)在交織后仍相距較近,可以把上述交織方式修改為S隨機(jī)交織,就是把上述隨機(jī)交織器加了一個約束。為了進(jìn)一步減小交織器的相關(guān)行的離散度,設(shè)計在偽隨機(jī)交織過程中相鄰的S個比特經(jīng)過交織后它們之間的距離至少為S,從而構(gòu)成了S-隨機(jī)交織器。每一個隨機(jī)產(chǎn)生的整數(shù)要和先前個選擇的整數(shù)比擬,如果當(dāng)前產(chǎn)生的隨機(jī)整數(shù)與先前個選擇的整數(shù)之差的絕對值小于的話,當(dāng)前產(chǎn)生的隨機(jī)整數(shù)就被拋棄,重新選擇,即:(2-12)考慮到算法的搜索實際,通常選擇.S-隨機(jī)交織器是一種公認(rèn)的性能良好的交織器。因為它能夠?qū)㈠e誤序列中相鄰比特在交織后擴(kuò)散,距離至少為S,從而使錯誤轉(zhuǎn)化為隨機(jī)錯誤,有利于卷積碼糾錯。信息序列越長,隨機(jī)數(shù)的產(chǎn)生越均勻,交織前后序列的相關(guān)性越小。隨著S值的增加,Turbo碼的性能不斷提高。但S值越大,條件越難滿足,交織器的設(shè)計就越困難。通常比擬好的S-隨機(jī)交織器的參數(shù)要滿足(2-13)其中N為交織長度。當(dāng)S大于這個值時一般難以收斂。3、分組螺旋交織器分組螺旋交織器的工作原理是:首先將數(shù)據(jù)序列按行的順序?qū)懭刖仃嚒财渲芯仃嚨男衜與列n互素〕,在交織時從矩陣的左上角開場向右下方向讀取數(shù)據(jù),每向下一行同時右移一位(即行索引遞增的同時列索引也遞增,增量步長為1)。在行的方向和列的方向分別對索引取模m和n,即假設(shè)令和分別表示第i個比特的行索引和列索引,則分組螺旋交織器的數(shù)據(jù)讀取順序是以行列順序依次寫入,然后在交織時從矩陣的左上角開場向右下方讀取數(shù)據(jù),每向下一行同時右移一位。它的表達(dá)式如下:(2-14)其中上述遞歸運(yùn)算的初值為i=0,1,2,…N-1.初始值.對于分組螺旋交織器,當(dāng)交織矩陣的大小為,且交織過程從左上角開場讀數(shù)據(jù);或者交織矩陣大小為,且交織過程中從左小角開場讀數(shù)據(jù)時,得到的分組螺旋交織器就是對稱交織器。本對稱交織器的交織器與解交織器完全一樣,下面關(guān)于對稱性的介紹時會有詳細(xì)說明。下面以長度為4×3螺旋交織器為例,其實也就是對稱螺旋交織器,詳細(xì)說明它的工作過程。如表2.3和2.4所示,把交織器的工作過程通過RAM的寫入與讀出表示非常清楚。表2.3寫入RAM的順序表2.4讀出RAM的順序相對于行列交織器而言,螺旋奇偶交織器有以下優(yōu)點(diǎn):1)對稱性交織器對稱性是指假設(shè)輸入序列的第i個比特經(jīng)過交織后成為輸出序列的第j個比特,則輸入序列中的第j個比特經(jīng)過交織后也一定輸出序列的第i個比特。這種性能使得交織器的交織序列和解交織序列完全一致,這就使得在硬件實現(xiàn)的時候可以用同一模塊來實現(xiàn)交織和解交織功能,從而減小占用的硬件資源。2)保奇偶性所謂保奇偶性是指原來處于奇數(shù)位或偶數(shù)位的信息比特,在交織后仍然位于新序列中的奇數(shù)位或者偶數(shù)位,從而實現(xiàn)對所有信息比特的等過失保護(hù)來提高譯碼性能。為了提高編碼效率,通常對Turbo碼的編碼輸出進(jìn)展刪余壓縮。如果采用不當(dāng)?shù)慕豢椃绞?,則有可能出現(xiàn)對信息為保護(hù)不均的情況,從而影響碼字的糾錯性能。螺旋奇偶交織器可以很好的保證交織器的保奇偶性。3)去相關(guān)性經(jīng)螺旋奇偶交織器交織后相鄰碼元距離很大,比行列交織器去相關(guān)更加徹底。這樣使交織后的碼元的碼距擴(kuò)大、相關(guān)性變小,Turbo碼的編碼輸出更近似隨機(jī)長碼。綜合交織后的效果和硬件實現(xiàn)的復(fù)雜度,本文Turbo碼的編譯碼器中決定選用這種交織器進(jìn)展交織與解交織?!?.4Turbo碼譯碼器原理Turbo碼獲得優(yōu)異性能的根本原因之一是采用了迭代譯碼,通過分量譯碼器之間軟信息的交換來提高譯碼性能。對于Turbo碼這樣的并行級聯(lián)碼,如果分量譯碼器的輸出為硬判決,則不可能實現(xiàn)分量譯碼器之間軟信息的交換。如果分量譯碼器能夠提供一個反映其輸出可靠性的軟輸出,則其它分量譯碼器也可以采用軟判決譯碼,從而系統(tǒng)的性能可以得到進(jìn)一步提高。為此,人們提出了軟輸出譯碼的概念和方法,即譯碼器的輸入輸出均為軟信息。軟輸出譯碼實現(xiàn)了解調(diào)器和分量譯碼器之間的軟信息轉(zhuǎn)移,系統(tǒng)性能可以得到很大改進(jìn)。在介紹Turbo碼譯碼器之前,首先介紹一下硬判決與軟判決的概念。硬判決和軟判決是指譯碼的時候?qū)邮盏降谋忍剡M(jìn)展量化的兩種形式。對于硬判決譯碼解調(diào)器供給譯碼器作為譯碼用的每個碼元只取0或1兩個值。在調(diào)相和相干解調(diào)系統(tǒng)中,假設(shè)0、1信號的電壓為,則相當(dāng)于匹配濾波器輸出端的判決門限取0。假設(shè)接收電壓的幅度小于0,則解調(diào)器輸出為0;假設(shè)大于或等于0,則輸出1。例如,采用調(diào)制電壓為士5V的BPSK調(diào)制,如果碼元為0,則調(diào)制成-1發(fā)送;假設(shè)碼元為1,則調(diào)制成+1。調(diào)制后的-1/+1在信道中傳輸,由于噪聲的影響,序列值會發(fā)生變換。如果在接收端收到3V和0.3V兩個脈沖電壓,硬判決方式會將這兩個脈沖都判決為二進(jìn)制信息1,盡管第二個脈沖看起來離二進(jìn)制1的標(biāo)準(zhǔn)還差很遠(yuǎn)。硬判決不可防止地會產(chǎn)生一些不恰當(dāng)?shù)呐袥Q,這種判決結(jié)果當(dāng)然會損失掉接收信號中所包含的有用信息。為了充分利用接收信號波形中的信息,使譯碼器能以更大的正確概率判決所發(fā)的碼字,就把解調(diào)器輸出的抽樣電壓進(jìn)展分層或量化。因而由解調(diào)器輸出供給譯碼器的值就不止兩個,而有Q(通常Q=)個。另一方面假設(shè)譯碼器直接利用解調(diào)器輸出的未量化的模擬電壓或其變換進(jìn)展譯碼,稱為模擬譯碼。無論譯碼器利用Q進(jìn)制序列譯碼,還是利用模擬量的模擬譯碼,統(tǒng)稱為軟判決譯碼(或簡稱軟譯碼)。通常,譯碼器利用附加的軟判決信息進(jìn)展軟譯碼時要比硬譯碼能得到額外的2~3dB的增益。Turbo碼譯碼器由兩個一樣的軟輸入軟輸出(SISO)譯碼器、交織器和相應(yīng)的解交織器組成,常用的Turbo碼譯碼構(gòu)造如圖2.6所示。其中SISO譯碼器的作用是完成RSC編碼器的譯碼,也是Turbo碼譯碼器中的核心模塊,其性能直接影響整個譯碼器的性能。軟輸入指的是譯碼模塊的輸入信息為經(jīng)過量化的解調(diào)數(shù)據(jù),而不是判決后的二進(jìn)制序列0和1。軟輸出則指的是譯碼模塊的輸出值也不是判決后的二進(jìn)制,對于接收序列進(jìn)展譯碼后得到一個似然概率值,因此最后在輸出之前還要經(jīng)過硬判決。Turbo碼譯碼器中的交織器與編碼器中的交織序列是一致的,在編碼器中,交織器的作用是使兩個RSC編碼器趨于相對獨(dú)立;而在譯碼器中,交織器和相應(yīng)的解交織器則是連接兩個SISO譯碼器的橋梁。譯碼器局部沒有包括量化,它是編碼器與譯碼器中間的局部。接收到的信息序列和校驗序列、都是經(jīng)過解調(diào)器解調(diào)和量化過的序列,而不是二進(jìn)制的0和1。這里沒有多做說明,在第三章的算法局部和第四章的量化局部將有詳細(xì)介紹。圖2.6Turbo碼的迭代譯碼構(gòu)造Turbo碼譯碼器的完整譯碼過程為:首先對從信道接收到的序列經(jīng)串/并轉(zhuǎn)換,別離出信息序列和校驗序列、〔對于碼速為1/3的Turbo碼,兩個RSC編碼器輸出的校驗序列被完全發(fā)送,因此在接收端不需要改動,而對于其它碼速的Turbo碼,比方1/2碼速的兩個校驗序列經(jīng)過刪余矩陣后,分別被刪除了局部校驗位,因此在接收端對應(yīng)位應(yīng)填0〕。譯碼器1輸入的是先驗概率信息,即是譯碼器2的外部信息的交織信息〔對于第一次迭代過程,初始值置0〕、接收的未編碼信息序列〔以交織器長度為單位幀長輸入〕和校驗序列,經(jīng)SISO1譯碼后輸出后驗概率〔即外部信息〕。由于外部信息與先驗信息及輸入響應(yīng)的系統(tǒng)信息無關(guān),而且譯碼器1沒有利用校驗序列,所以譯碼器1的輸出僅在交織后作為譯碼器的先驗信息輸入,而不能用作對信息序列的判決。而譯碼器2的輸入包含了經(jīng)過交織后的信息序列、校驗序列的數(shù)據(jù)和先驗信息,是譯碼器1的外部信息交織后的數(shù)據(jù)。經(jīng)過假設(shè)干次迭代后,譯碼器2的軟輸出〔似然函數(shù)比〕L2經(jīng)過解交織,并作硬判決,就得到輸入信息序列Turbo碼的譯碼輸出結(jié)果。上面介紹的譯碼過程可以概述如下:1、第一次迭代,首先采用SISO1譯碼,設(shè)先驗信息為0,譯碼輸出軟信息,同時計算得到外部信息。SISOl輸出的外部信息通過交織以后作為先驗信息送入SISO2譯碼,譯碼輸出軟信息L2的同時計算得到外部信息。2、第二次迭代,將第一次迭代過程中SISO2計算得到外部信息通過解交織作為先驗信息送入SISO1譯碼,譯碼輸出外部信息再次交織作為SISO2譯碼輸入先驗信息,再次譯碼輸出外部信息。3、如此不斷的迭代,直到符合迭代停頓準(zhǔn)則或者預(yù)先設(shè)定的迭代次數(shù),則迭代停頓。最后根據(jù)SISO2譯碼輸出的軟信息L2作硬判決得到譯碼比特序列,則本次譯碼過程完畢。Turbo碼譯碼兩個分量譯碼器采用的是軟輸入軟輸出(SISO)譯碼器,SISO譯碼算法的選擇是保證最正確譯碼的關(guān)鍵所在,也是Turbo譯碼器中的核心模塊。最大后驗概率(MAP)算法可以使Turbo譯碼的誤碼率最小,因此,MAP算法是Turbo碼的最正確譯碼算法,下一章將介紹這一算法的根本原理。§2.5Turbo碼性能的分析§影響Turbo碼性能的因素就Turbo碼在移動通信系統(tǒng)應(yīng)用來說,關(guān)注的焦點(diǎn)在以下三個方面,評價Turbo碼性能的標(biāo)準(zhǔn)也主要取決與以下幾個因素:1、迭代次數(shù)Turbo碼譯碼器需要屢次迭代才能有效發(fā)揮其優(yōu)越性,到達(dá)一定的誤碼率水平。但是隨著迭代次數(shù)的增加,BER性能提高幅度不斷的減小。在進(jìn)展一定次數(shù)的迭代后,BER趨向重合,出現(xiàn)平板效應(yīng)(Flooreffect)。對*一固定碼率而言,當(dāng)交織長度N較小時,BER僅在迭代3到5次后變化就很小。然而,隨著N的增大,迭代次數(shù)的增加就會帶來明顯的增益,這時讓BER重合所需要的迭代次數(shù)就會變多。并且隨著Turbo碼譯碼算法中迭代次數(shù)的增加,這必然會引人了較大的時延,這在傳輸實時數(shù)據(jù)業(yè)務(wù)(如圖象、IP、電視會議等)中是一個較嚴(yán)重的問題。通過研究說明,普通譯碼過程中迭代次數(shù)要到20~30次才能飽和,迭代的性能才可以充分發(fā)揮,這與實際應(yīng)用有矛盾。要在不影響譯碼性能的原則下,盡量減小迭代次數(shù),降低譯碼時延。2、交織長度在一樣信噪比、碼率、約束長度和迭代次數(shù)下,隨著交織長度N的增加,誤碼率BER下降。在高信噪比時,BER近似與交織長度成反比,因此交織長度對Turbo碼性能的影響不可忽略。當(dāng)交織長度很大時,因為碼字的隨機(jī)性,各種交織器的性能逐漸趨于一致。但在移動通信系統(tǒng)中,因為延時和硬件復(fù)雜性關(guān)系,交織器長度不可能很大。3、碼率R在一樣信噪比、交織長度、約束長度和迭代次數(shù)下,碼率R越小BER越低。當(dāng)碼率由1/2減小到1/3時,在BER為~附近可獲得0.5~0.8dB的編碼增益。4、生成多項式通常生產(chǎn)多項式對BER的影響不大,但隨著BER的下降它的影響將變得明顯。總的來說,約束長度N較大的碼生成多項式性能較好,但是它是以復(fù)雜度的指數(shù)增加為代價的。綜合硬件實現(xiàn)復(fù)雜度及Turbo碼性能考慮,一般人們選擇的約束長度N都不是很大。§Turbo碼性能的物理解釋C.Berrou在1993年提出Turbo碼時給出的是性能的模擬結(jié)果,而不是理論的分析。此后掀起了Turbo碼的熱潮,陸續(xù)有文章在一定程度上對Turbo碼的機(jī)理進(jìn)展理論的解釋,但直至目前,對Turbo碼的理論研究還遠(yuǎn)遠(yuǎn)不夠。Turbo碼的性能是由碼構(gòu)造、最小距離及距離譜等諸多因素決定,在計算誤比特率時,還與碼字中包含的信息比特數(shù)有關(guān)。對于Turbo碼,雖然理論上的定量分析還遠(yuǎn)沒有弄清,但粗略的物理解釋還是有一些研究的。已經(jīng)知道,一種編碼的誤碼性能取決于其碼距,如A和B兩個碼字距離越遠(yuǎn),把B錯譯為A的概率越小。Turbo碼采用并行構(gòu)造的級聯(lián)系統(tǒng)碼,兩個并行編碼碼分別對交織前后的信息序列進(jìn)展編碼,得到相應(yīng)的校驗序列。顯然,影響誤碼性能的主要是低重量的信息序列編碼后的校驗碼重。對于不同的低重量信息序列,經(jīng)過一次分量編碼(卷積碼)后的校驗重量是不同的,而單靠卷積碼的碼重是缺乏以提供接近極限的譯碼性能的。但假設(shè)大局部具有低校驗重量的信息序列經(jīng)交織后再次編碼可獲得較高的校驗重量。從上述物理解釋可直接得到一個重要結(jié)論:用遞歸碼作為分量碼要優(yōu)于非遞歸碼,在非遞歸碼的低重量信息序列編碼中,單錯事件(即錯誤路徑從離開到返回正確路徑只有一個信息位錯)的概率較大,而第一層碼中的單錯事件經(jīng)交織后也會在第二層碼中以很大的概率產(chǎn)生單錯事件。遞歸碼不會發(fā)生單錯事件,其雙錯事件的兩個錯碼經(jīng)交織后會離得很遠(yuǎn),從而產(chǎn)生很大的校驗位錯誤,因而從總的碼重分布來看更集中在平均碼重附近?!?.6本章小結(jié)本章詳細(xì)介紹了Turbo碼的根本知識。首先介紹了Turbo碼的原理,接著說明了編碼器的構(gòu)造,包括分量編碼器、交織器、刪余矩陣、復(fù)接器等。其中詳細(xì)介紹了分量編碼器的原理及其構(gòu)成、交織器的作用及各種交織器的特點(diǎn)。然后介紹了譯碼器的原理及其構(gòu)造,并通過構(gòu)造圖簡單說明了譯碼的過程。最后,分析了影響Turbo碼性能的因素,對其優(yōu)異性能給了一些物理解釋,并得出一些結(jié)論。-.z第三章Turbo碼譯碼算法Turbo碼的一個重要特點(diǎn)就是在譯碼時采用了迭代譯碼的思想,迭代譯碼的復(fù)雜性是隨著信息序列的大小增加而呈線性增長。為使Turbo碼到達(dá)比擬好的譯碼性能,分量碼譯碼必須采用SISO算法,從而實現(xiàn)迭代譯碼過程中軟信息在分量碼之間的交換。Fomey等人已經(jīng)證明了最優(yōu)的軟輸出譯碼器應(yīng)該是后驗概率(APP,APosterioriProbability)譯碼器,它是以接收信號為條件的*個特定比特傳輸概率。Turbo碼系統(tǒng)采用多級迭代的譯碼構(gòu)造,子譯碼器間是軟輸入、軟輸出的形式。子譯碼器中的SISO算法是最核心的容,所以本章介紹Turbo碼譯碼中常用的MAP算法及對數(shù)域上的簡化算法、SOVA譯碼算法,分析了各種算法的特點(diǎn),并從不同方面對Turbo碼性能進(jìn)展了改善?!?.1最大似然譯碼原則香農(nóng)編碼定理中已經(jīng)指出,除了隨機(jī)編碼外,采用最大似然譯碼算法也是獲得較低誤碼率的一個重要環(huán)節(jié)。假設(shè)信息序列為U,經(jīng)過編碼器編碼后發(fā)送的碼字序列為C,譯碼器接收碼字序列為R,譯碼器輸出的估值序列為,由于碼字M與C之間存在著一一對應(yīng)的關(guān)系,所以這等價于譯碼器根據(jù)R產(chǎn)生一個C的估值序列。顯然,當(dāng)且僅當(dāng)=C的時候,=M,這時譯碼器正確譯碼。如果譯碼器輸出的,則譯碼器產(chǎn)生了錯誤譯碼。之所以產(chǎn)生錯誤譯碼是由于信道干擾嚴(yán)重,超過了碼本身的糾錯能力〔這里不考慮設(shè)備故障及人為因素〕。當(dāng)給定接收序列R時,譯碼器的條件錯誤概率定義為:〔3-1〕所以譯碼器的錯誤概率為:〔3-2〕P(R)是接收R的概率,與譯碼方法無關(guān),所以譯碼錯誤概率最小的最正確譯碼原則是使P(R)〔3-3〕因此,如果譯碼器對輸入的碼元R,能在個碼字中選擇一個使,最大的碼字作為C的估值序列,則這種譯碼規(guī)則一定使譯碼器輸出錯誤概率最小,稱這種規(guī)則為最大后驗概率譯碼。由條件概率的貝葉斯公式〔3-4〕可知,假設(shè)發(fā)端發(fā)送每個碼字的概率均一樣,且由于與譯碼方法無關(guān),所以〔3-5〕對于離散無記憶信道而言〔3-6〕這里的碼字為,一個譯碼器的譯碼規(guī)則假設(shè)能在個碼字C中選擇一個使〔3-5〕式成為最大,則這種譯碼規(guī)則稱為最大似然譯碼〔MLD〕,稱為似然函數(shù),相應(yīng)的譯碼器稱為最大似然譯碼器,由于對數(shù)函數(shù)的單調(diào)性,因此〔3-5〕式與〔3-6〕式可以寫成,.〔3-7〕稱為對數(shù)似然函數(shù)或似然函數(shù)。對于離散無記憶信道,最大似然譯碼是使譯碼錯誤概率最小的一種最正確譯碼準(zhǔn)則或方法,但此時要求發(fā)端發(fā)送每一碼字的概率均相等,否則MLD不是最正確的,一般均認(rèn)為近似相等?!?.2MAP譯碼算法MAP算法最初由Bahl,Cocke,Jelinek和Raviv等在1974年提出的,為了紀(jì)念它的提出者,該算法也叫BCJR算法[23]。由于MAP算法實現(xiàn)起來比擬復(fù)雜,計算量非常大,因此在Turbo碼的出現(xiàn)之前并沒有得到廣泛應(yīng)用。直到1993年Turbo碼的創(chuàng)造者在其最初的Turbo迭代譯碼方案中采用了修正的MAP算法,人們才重新開場研究該算法,并證明了此算法是實現(xiàn)Turbo迭代譯碼最好的次最優(yōu)算法。MAP算法是基于碼字格圖的軟輸出譯碼算法,目的是使比特錯誤概率最小[24]。以碼速為1/2的串行譯碼器為例,設(shè)輸入編碼其的信息序列為N個互不相關(guān)的信息位,編碼其輸出序列為,其中,,為信息位,即;為編碼輸出校驗位。為加強(qiáng)對噪聲的抵抗能力,編碼輸出序列在送到高斯信道之前,先經(jīng)過二進(jìn)制調(diào)制,其映射關(guān)系為:〔3-8〕這樣碼元與字符構(gòu)成一一對應(yīng)的關(guān)系:,則在譯碼過程中可以通過對數(shù)似然比的正負(fù)號直接判定信息值。對于BPSK調(diào)制,發(fā)送符號與碼字的關(guān)系為〔3-9〕其中為編碼輸出信號,,,為k時刻的輸入信息比特,為k時刻編碼輸出碼字。在通信理論研究中,高斯信道模型是最重要的信道模型之一[25],因此一般在模擬時都采用該信道模型。接收信號用表示。其中〔3-10〕本文為了計算的方便,令=1,則〔3-11〕其中和服從均值為0,方差為的獨(dú)立同分布高斯隨機(jī)變量,、分別對應(yīng)于發(fā)送端的第k個系統(tǒng)比特和第k個信息校驗比特;、分別對應(yīng)于接收端的第k個接收系統(tǒng)信息序列和第k個接收校驗序列。在接收端,接收采樣經(jīng)過匹配濾波器之后得到的接收序列為,經(jīng)過串/并變換后得到下面3個序列。系統(tǒng)接收信息序列:用于分量譯碼器1〔與分量編碼器1相對應(yīng)〕的接收校驗序列:和用于分量譯碼器2〔對應(yīng)于分量譯碼器2〕的接收校驗序列:其中*些校驗比特在編碼過程過刪余矩陣被刪除,則在接收校驗序列的相應(yīng)位置以“0〞來填充。MAP算法的譯碼器采用串行譯碼。根據(jù)最大似然譯碼原理,如圖3.1所示。譯碼器的主要任務(wù)就是計算在接收采樣條件下不同發(fā)送符號的概率,即,而后將接收采樣判決為概率值最大的信息符號,即:〔3-12〕其中R為接收符號,為k時刻的輸入信息比特。圖3.1軟輸入軟輸出譯碼框圖MAP算法的目的時根據(jù)接收序列估計柵格圖上兩個時刻所以轉(zhuǎn)移的概率,并由此可求出每一個信息碼元的軟輸出〔似然概率比〕。對于每個被譯比特,其相應(yīng)的似然概率比為[26]:〔3-13〕根據(jù)的值進(jìn)展判決為:設(shè)k時刻編碼器的狀態(tài)為,我們得到:〔3-14〕為了計算,需要定義三個重要的參數(shù):,和。柵格圖中的每一個分支對應(yīng)的,和的值,本文分別把叫做前向狀態(tài)向量,叫做后向狀態(tài)向量,叫做分支向量。定義:〔3-15〕〔3-16〕根據(jù)貝葉斯公式可得:〔3-17〕〔3-18〕和可以通過迭代的方法求得,下面將詳細(xì)進(jìn)展介紹。首先說明怎樣計算,分支向量的表達(dá)式依賴于傳輸信道特性,在這里本人只研究對于加性高斯白噪聲〔AWGN〕信道。分支向量對應(yīng)柵格〔如圖2.4所示〕中從k時刻到k+1時刻,編碼器初始狀態(tài)為m,輸入信息比特為i的分支。在接收端收到的經(jīng)過信道后帶有噪聲的信息為,柵格圖中的每一個分支都有與之對應(yīng)的分支向量,對于AWGN信道有[27]:〔3-19〕式中K表示常數(shù),i表示編碼器k時刻的輸入=i,表示k時刻狀態(tài)為m,編碼器輸入為i時的編碼輸出,表示上一個分量譯碼器k時刻輸出的外部信息。叫做前向狀態(tài)向量,它代表在k時刻,當(dāng)輸入為i時,從狀態(tài)m轉(zhuǎn)移到下一狀態(tài)矢量,可通過下式計算:〔3-20〕是在前面定義過的分支矢量,表示編碼器當(dāng)前狀態(tài)為m且前一次輸入為j時編碼器的上一狀態(tài)。只要對進(jìn)展正確的初始化,所有的都能正確計算出來,一般把作如下初始化處理:,叫做后向狀態(tài)矢量,它表示在時刻k,當(dāng)輸入為i,從狀態(tài)m轉(zhuǎn)移到下一狀態(tài)的狀態(tài)矢量。它的表達(dá)式類似于,但是是通過反向迭代運(yùn)算得到的,即在時刻N(yùn)-1初始化,由時刻N(yùn)-1反向計算到時刻0,的遞推公式為:=〔3-21〕為以前定義過的分支向量,表示編碼器當(dāng)前狀態(tài)為m且輸入為i時編碼器的下一狀態(tài)。圖3.2表示了和遞推過程的柵格圖,向量時從前往后依次計算得到的,而向量的計算是從后往前逆向進(jìn)展的。只要正確初始化,可通過迭代計算所有的值。通常把做以下初始化:對于其它的所有m和i。圖3.2和遞推示意圖從上面的介紹我們知道,MAP算法的運(yùn)算步驟有:第一步:使用式3-19計算并存儲分支向量。第二步:在k=N-1時刻,初始化。第三步:從k=N-2時刻開場一直到k=0時刻,對每一狀態(tài)使用式3-21計算并存儲的值。第四步:在k=0時刻按照前面的方法初始化。第五步:從k=1時刻到k=N-1時刻對于每一狀態(tài)使用式3-20計算并存儲。第六步:有前面計算所的的每一時刻各個分支的,,,可計算從k=0到k=N-1時的。第七步:對每一個做硬判決得到。如果使用前文所定義的公式計算,,和,使用MAP算法計算得到一個信息比特所需的計算量如下:一計算需要:(1次加法和2次乘法)一計算需要:(1次加法和2次乘法)一計算需要:n次冪運(yùn)算和-l次乘法,n是每個信息比特經(jīng)過編碼后產(chǎn)生的總的碼字個數(shù),對于本文所用的編碼器n=2。―計算需要:1次對數(shù)和1次除法運(yùn)算,2(-1)次加法和2次乘法運(yùn)算。因此,對于每一個信息碼元譯碼時所需的運(yùn)算量為:一n+1次冪運(yùn)算(冪運(yùn)算和對
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 健身店長勞務(wù)合同標(biāo)準(zhǔn)文本
- 公司注冊安全合同標(biāo)準(zhǔn)文本
- 個人帶車送貨合同標(biāo)準(zhǔn)文本
- 凍庫維修服務(wù)合同樣本
- 產(chǎn)品銷售傭金合同范例
- 新生兒營養(yǎng)與喂養(yǎng)計劃
- 個人欠貨款合同樣本
- 學(xué)校心理健康與視力保護(hù)結(jié)合計劃
- 玉米生物農(nóng)藥開發(fā)與應(yīng)用-全面剖析
- 綠色建材在瓷磚中的應(yīng)用-全面剖析
- (完整版)有機(jī)太陽能電池課件2
- 電梯使用單位電梯使用和運(yùn)行安全管理制度
- 《博物館館藏文物管理庫房工作日志》示例
- 新中初中課程建設(shè)匯報材料
- 提高初中數(shù)學(xué)課堂教學(xué)有效性--教學(xué)論文
- 蓮中器樂演奏活動方案
- 固定資產(chǎn)及累計折舊審計程序表
- 0730土木工程概論 練習(xí)題答案
- 保監(jiān)〔2005〕22號標(biāo)準(zhǔn)
- 抗震支架力學(xué)計算書
- 注射用鹽酸丙帕他莫簡介
評論
0/150
提交評論