turbo码编译码系统设计及其fpga实现毕业论文_第1页
turbo码编译码系统设计及其fpga实现毕业论文_第2页
turbo码编译码系统设计及其fpga实现毕业论文_第3页
turbo码编译码系统设计及其fpga实现毕业论文_第4页
turbo码编译码系统设计及其fpga实现毕业论文_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

硕士学位论文题目TURBO码编/译码系统设计及其FPGA实现(英文)THEDESIGNOFTURBOCODING/DECODINGSYSTEMANDITSIMPLEMENTWITHFPGA摘要TURBO码的出现是纠错编码史上的一个重大突破,它具有在低信噪比下接近SHANNON理论极限的优异译码性能,在许多通信系统中都有很大的应用前景。本文主要研究的是TURBO码的编码和译码算法及其FPGA硬件实现。首先,介绍了课题的研究背景和TURBO译码的国内外研究现状;其次在介绍TURBO编译码原理的基础上对目前常用的各类译码算法进行介绍和性能分析;接着主要研究TURBO码译码器的设计,最后用硬件实现了其电路。本文分别对TURBO码的MAP算法,MAXLOGMAP算法,LOGMAP算法、SOVA算法等进行了推导。在深入分析译码算法的基础上,决定采用LOGMAP算法作为本系统的译码算法。在对该系统的硬件实现过程中,为了节约硬件资源和减少延时,对LOGMAP算法进行了一些改进。在系统设计中,根据FPGA技术的优点,采用“自上而下”和“自下而上”结合的设计方法,通过适当的模块分割,将TURBO码的译码器分为三大模块LOGMAP译码单元模块、交织/解交织器模块和控制信号产生模块。本文针对编码器中的延时模块采用一种类似于交织器的方式来实现延时功能,使其精度更高,编码效果更好。并对译码器进行了研究,给出了一种查找表法来实现复杂的E函数,此方法明显的简化了系统的运算复杂度。在硬件实现LOGMAP算法过程中,通过巧妙地改变前向矢量的计算顺序,减少了系统占用的硬件资源。最后利用QUARTUSII软件对编译码系统做了计算机仿真,结果表明本系统实现的TURBO码译码器的误码性能较好,具有一定的实用价值。关键词TURBO码,LOGMAP算法,软判决,FPGAABSTRACTTHEEMERGENCEOFTURBOCODEISCONSIDEREDASTHEMOSTEXCITINGANDPOTENTIALLYIMPORTANTDEVELOPMENTINTHEHISTORYOFERRORCORRECTINGCODESITHASASUPERIORDECODINGPERFORMANCEAPPROACHINGTHESHANNONLIMITANDHASBEENWIDELYAPPLICATEDINMANYCOMMUNICATIONSYSTEMSTHEGOALOFTHISPAPERISTOSTUDYTURBOENCODING/DECODINGALGORITHMANDITSHARDWAREIMPLEMENTATIONWITHFPGAFIRSTLY,ITINTRODUCESBACKGROUNDOFTHESUBJECTANDTHERESEARCHSITUATIONABOUTTURBODECODINGSECONDLY,ITINTRODUCESTHECURRENTVARIOUSDECODINGALGORITHMANDANALYZESTHEIRPERFORMANCERESPECTIVELYBASEDONANALYZINGTHEENCODING/DECODINGPRINCIPLEOFTURBOCODETHENSTUDIESTHEDESIGNOFTHETURBODECODERWHICHHARDWARECIRCLEISSUCCESSFULLYIMPLEMENTEDFINALLYINCLUDINGTHEMAPALGORITHM,MAXLOGMAPALGORITHM,LOGMAPALGORITHMANDSOVAALGORITHMINTURBOCODEALGORITHMISDEDUCEDRESPECTIVELYINTHEPAPERONTHEBASEOFINDEPTHANALYSISOFTHEDECODINGALGORITHM,THELOGMAPALGORITHMASTHEDECODINGALGORITHMINTHESYSTEMISSELECTEDINTHEREALIZATIONPROCESSOFHARDWAREINTHISSYSTEM,LOGMAPALGORITHMHASBEENIMPROVEDINORDERTOSAVETHEHARDWARERESOURCESANDREDUCEDELAYINTHEDESIGNOFTURBOCODESYSTEM,THECOMBININGDESIGNMETHODOFBOTH“FROMTOPTOBOTTOM“AND“FROMBOTTOMTOTOP“ISIMPLEMENTEDACCORDINGTOADVANTAGEOFTHEFPGA,ANDTHEDECODERISDIVIDEDINTOTHREEBLOCKSLOGMAPDECODER,INTERLEAVER/DEINTERLEAVERBLOCKANDTIMINGCONTROLBLOCK,THROUGHAPPROPRIATESEGMENTATIONMODULEINTHISPAPER,ASIMILARINTERLEAVERISUSEDBYTHEDELAYMODULEOFTHEENCODERASANAPPROACHTOACHIEVEDELAYFUNCTION,WHICHMAKESITMOREPRECISE,EFFECTIVEANDBETTERMEANWHILE,INTHESTUDYOFTHEDECODER,ALOOKUPTABLEMETHODISGIVENTOACHIEVECOMPLEXEFUNCTION,ANDTHEMETHODSIGNIFICANTLYSIMPLIFIESOPERATIONCOMPLEXITYOFTHESYSTEMINTHEPROCESSOFTHELOGMAPALGORITHMIMPLEMENTATIONWITHHARDWARE,THECALCULATIONOFVECTORSEQUENCEISSUBTLYCHANGED,WHICHCANREDUCETHESHAREOFTHEHARDWARERESOURCESFINALLY,ENCODING/DECODINGSYSTEMISSIMULATEDBYTHEQUARTUSIISOFTWARE,ANDTHERESULTSHOWSTHATTURBOCODESYSTEMHASABETTERERRORPERFORMANCEANDSOMEPRACTICALVALUEKEYWORDSTURBOCODES,LOGMAPALGORITHM,SOFTDECISION,FIELDPROGRAMMABLEGATEARRAY目录摘要IABSTRACTII目录III第一章绪论111TURBO码编/译码方案的提出112TURBO码的研究现状213TURBO码的研究展望314课题背景与本论文的主要工作及贡献4141选题背景4142论文的结构4第二章TURBO码的基础知识521TURBO码简介522TURBO码编码器原理6221TURBO码编码结构6222RSC分量编码器823交织器1024TURBO码译码器原理1425TURBO码性能的分析16251影响TURBO码性能的因素16252TURBO码性能的物理解释1726本章小结18第三章TURBO码译码算法1931最大似然译码原则1932MAP译码算法2033LOGMAP算法和MAXLOGMAP算法2534SOVA算法2835几种算法的比较2936本章小结31第四章TURBO码编译码器的FPGA硬件实现方法3241FPGA技术简介32411可编程逻辑器件32412硬件描述语言33413FPGA硬件设计环境3342TURBO码编译码方案的确定34421RSC的生成多项式34422交织器结构的确定34423编码器结构的确定35424TURBO码译码器结构的确定3543TURBO码编码器的FPGA实现36431RSC编码器模块的实现36432交织器模块的实现36433编码器模块的实现3844TURBO码译码器的FPGA实现39441接收码字的量化及其运算40442E函数的实现方案41443LOGMAP译码器的FPGA实现424431分支矢量D模块的实现434432分支矢量A模块的实现444433分支矢量B模块的实现464434对数似然概率的计算48444TURBO译码器总体结构的实现5045本章小结51第五章仿真结果分析5251TURBO编译码其系统仿真5252系统仿真结构分析5353本章小结57第六章总结58参考文献60致谢63硕士在读期间的研究成果64第一章绪论TURBO码的提出对信道编码领域的研究有着重要的意义。由于TURBO码具有接近SHANON理论极限的性能1,尤其是低信噪比下的优异性能使TURBO码在许多通信系统中都有非常大的应用潜力。除了在深空通信、卫星通信以及多媒体通信等领域的应用外,TURBO码在无线移动通信系统中的应用是目前的研究热点。本章主要介绍了TURBO码的产生背景、发展现状及本论文的工作安排。11TURBO码编/译码方案的提出随着用户对通信质量和数据传输速率要求的不断提高,通信技术和计算机技术在不断的迅速发展,作为消除或降低信息传输错误有效手段之一的信道编码也在不断发展。在过去的50多年里,有关纠错码技术的研究已经取得了许多骄人的成果。随着信息时代的到来以及微电子技术的飞速发展,今天的纠错码已不再单纯是一个理论上探讨的问题,它已经成为现代通信领域中不可或缺的一项标准技术。现代通信系统的复杂化以及通信业务的多样化,要求通信系统能够对话音、数据、图像等数据量大的信息实现高速实时传输,而且用户对通信质量的要求也在不断提高。另外,移动通信的快速发展以及个人通信的全球化,使得对高速率数字移动通信等领域所采用纠错编码技术的要求越来越高。近年来,依据信道编码定理,人们一直致力于寻找能满足现代通信业务要求,结构简单、性能优越的好码,并在分组码、卷积码等基本编码方法和最大似然译码算法的基础上提出了许多构造好码及简化译码结构复杂性的方法,提出了乘积码、代数几何码、低密度校验码、分组卷积级联码等编码方法和序列译码、逐组最佳译码、软判决译码等译码方法以及编码与调制技术相结合的网格编码调制技术。虽然软判决译码、级联码和编码调制技术都对信道码的设计和发展产生了重大影响,但是其增益与SHANNON理论极限始终都存在23DB的差距。直到1993年在瑞士日内瓦召开的国际通信会议上,CBERROU,AGLAVIEUX和PTHITIMASJSHIMA提出了TURBO码2,这是一种可实现的编码系统,而且获得了几乎接近SHANNON理论极限的译码性能3。TURBO码一出现,就在编码理论界引起了轰动,成为自信息论提出以来最重大的研究进展,TURBO码的提出是信道编码史上的一个重要里程碑。它优异的性能引起了研究人员的极大兴趣,并相继在有关方面进行积极的探索和研究但由于几位发明者仅给出了一定参数下的计算机仿真结果,而没有严格的理论分析和解释,所以近些年来在编码界掀起了TURBO码的研究热潮。目前TURBO码的研究主要分为设计与性能分析、理论研究以及应用3个方面。TURBO码之所以具有优异的性能,交织器和译码算法起到了很大的作用,对于其应用的研究也有很大的进展。12TURBO码的研究现状TURBO码具有极其广阔的应用前景,是信道编码界的一个突破,被称为二十一世纪的纠错编码。从1995年开始,有关TURBO码的文献大量出现,它已成为通信技术的新热点,目前TURBO码的研究主要集中在以下几个方面41TURBO码的理论分析在介绍TURBO码的首篇论文里,发明者BERROU仅给出了TURBO码的基本组成和迭代译码的原理,而没有严格的理论解释和证明。所以,在研究的TURBO码起步阶段,其理论的研究就显得尤为重要。2TURBO码的设计TURBO码由分量码经由交织器级联而成。因此,分量码和交织器设计得好坏就决定TURBO码性能的关键因素。主要包括交织器的设计、码的级联方式、TURBO码的性能分析等等。在性能分析中,主要对码重分布及距离谱进行分析。3软输出迭代译码算法TURBO码的编码过程实际上是一个利用强约束短码构成伪随机长码的过程,通过在分量译码器之间交换外部信息来提高性能。其译码算法主要有两大类一类是基于最大后验概率(MAP5,MAXIMUMAPOSTERIORI)的软输出算法。一类是基于VITERBI算法(VA6,VITERBIALGORITHM)的软输出算法。考虑到TURBO码在未来高速数据传输中的应用,寻找延时小和复杂性低的软判决译码算法始终是TURBO码研究的重要课题。4TURBO码的编码调制技术利用TURBO码调制TURBOCODEMODULATION技术可以在不增加系统带宽要求的条件下有效地提高编码增益。将TURBO码与TCM相结合来实现高增益高频谱效率地编码调制方案称为TURBOTCM。在与调制编码技术相结合方面的改进体现在将栅格调制编码和TURBO码结合可以得到大的编码增益和高的带宽效率,如将TURBO码与OFDM调制、差分检测技术相结合,具有较高的频率利用率,可有效地抑制短波信道中多径时延、频率选择性衰落、人为干扰与噪声等带来的不利影响,而且还有较低的译码复杂度。5TURBO码原理及其应用由于TURBO码具有接近SHANNON理论极限的性能,尤其是低信噪比下的优异性能使TURBO码在很多通信系统中都有非常大的应用潜力。除了在深空通信、卫星通信以及多媒体通信等领域的应用以外,TURBO码在无线移动通信系统中的应用是目前的研究热点。TURBO码已经成为第三代移动通信系统的标准之一710,有关其关键技术的标准化已经出现。此外,TURBO码在文本传输和数据存储等方面也有应用。6TURBO译码器的实现南澳大利亚大学SMALLWORLD通信研究组最先开始开发TURBO码编译码器并推出了TURBO码产品。ACHASS、DGARRETT和KKOORA等人也分别在不同的数字芯片上设计实现了MAXLOGMAP算法和SOVA算法。在TURBO码编译码器设计过程中,最主要的是考虑数据处理速度和功耗。为降低译码器功耗,一个办法是减少平均的译码迭代次数,根据每一帧数据得迭代次数和信噪比值来动态分配电压,同时在允许的延时范围内使译码速度放慢。目前,许多科研院所和大公司都在进行TURBO码编/译码芯片的开发,如新加坡OKI公司的EMIK07,ALTERA公司的TURBO码IPCORE等都宣称开发出了相应的产品,国内也有很多高校和研究机构在对TURBO码编译码器的硬件实现进行研究1114。但从公布的技术指标上看,都存在复杂度高、存储量大、译码延时长、功耗大等缺点。13TURBO码的研究展望从1997年开始,TURBO码和相关主题的国际会议每隔三年举行一次。而从2003年以来,对于TURBO码的研究越来越倾向于具体应用。2006年的TURBO码会议在德国慕尼黑与第六届信源信道编码会议一起举行,TUBRO码会议的主要议题有纠错码、TUBRO码和LDPC码编码和TURBO编码调制、检测和TURBO检测、均衡和TUBRO均衡、同步和TURBO同步、多用户检测界限、性能和收敛性算法和成员码、交织和座标图、FOUNTANI码以及网络编码等。从中看到TURBO码今后的发展方向,除了对编解码器和交织器的新设计和改进之外,更多研究将会投入到TURBO码与其他技术的联合应用中去。TURBO码作为信道编码将与所要保护传输的信源本身特点相结合,会对TUBRO码的设计提出不同的要求。例如语音、音频、图象、视频和超文本数据对于传输信道的延迟抖动和可靠性都有着不同的要求,而视频编码技术中的各种分层编码所产生的不同的码流对传输的要求也不尽相同。各种数据对安全性的要求也不相同,因而TURBO码与信源联合编码及不平等保护等技术的结合在实现上还有很多问题有待解决。虽然TURBO码最早提出来的时候是为了深空和卫星通信,但其价值远远超出了这个范围,因此TURBO码在各种不同通信环境中的性能一直是研究的一个重点。纵观TURBO码的发展现状和要求,本人认为需要进一步研究的课题有(1)最优分量码与交织器的联合设计。(2)低复杂性译码算法。(3)译码迭代过程的优化、收敛性以及迭代停止准则的设计。(4)联合信道估计、多用户检测、均衡和译码算法。(5)TURBO码与高阶调制技术的结合。(6)TURBO码编译器的硬件实现。(7)TURBO码在无线通信、移动通信以及多媒体通信中的应用,特别是在移动网络、IMT2000及加密系统中的应用等。14课题背景与本论文的主要工作及贡献141选题背景本论文对所研究的TURBO码编码/译码器,通过系统功能模块分割的设计方法,将整个系统模块化、各模块的分割,考虑到了其功能的完整性和灵活性。整个系统分为MAP译码器模块、交织器/解交织器模块和时序控制模块。利用ALTERA公司的QUARTUSII软件,灵活运用文本编辑器和图形编辑器,对APEX2OK系列器件进行编程15,实现TURBO码编码器和译码器的功能。系统仿真结果证明了该编译码器有良好的性能,有相当的实用价值。142论文的结构本课题对TURBO码编译码器的设计及其FPGA实现进行了研究,全文分为六章,除第一章概述外,其余各章安排如下第二章介绍了TURBO码的基础知识。先介绍了编码器结构及其成员码、交织器,然后介绍了TURBO码译码器原理、分析了影响TURBO码性能的几种因素及其优异性能的物理解释,目的在于为后面TURBO码的硬件设计提供相应的理论基础。第三章详细介绍了TURBO码的译码算法,主要有MAP、LOGMAP、MAXLOGMAP、SOVA等。并分别对它们进行了详细的数学公式推导,比较了各种算法的特点,综合译码性能和实现复杂度考虑,从而根据实际情况选择适合硬件实现的算法。第四章重点研究了TURBO码的FPGA实现。本章首先介绍了FPGA技术的相关知识,然后从前面分析结果的基础上从硬件方面来实现TURBO码编译码器。其中包括对交织器的硬件设计进行了详细介绍,对TURBO码编码器的硬件设计进行了改进。在译码器的设计中,采用了LOGMAP算法,对E函数、量化运算、LOGMAP译码器的三个大模块分支度量、前向状态矢量和后向状态矢量等各模块的实现进行了详,IKDRM,KIAM,KIBM细的介绍。对分块并行TURBO码算法的硬件设计进行了初步的研究。第五章主要介绍了TURBO码硬件仿真过程及其结果的分析。包括信源模型的建立、信道模型的建立,并根据仿真得到的结果进行了分析。FPGA的仿真主要是用数据来表示,本文还用MATLAB仿真证明了前面分析的正确性。如仿真比较几种算法的译码效果,仿真比较不同的交织器长度和量化长度时的译码效果。第六章总结了本论文的研究工作,介绍已经做了哪些方面的工作,还有哪些不足,并进一步提出了论文中还有待于深入研究的问题及方向。第二章TURBO码的基础知识1993年TURBO码的编码方案的提出,带来了一种迭代译码的全新思想,使通过可译编码逼近信道容量成为可能。实践中显示,TURBO码具有抗衰落、抗干扰性能,尤其适合功率受限的系统,只要时延和复杂度允许,可在多种恶劣条件下提供接近极限的通信能力。本章将详细的介绍TURBO码的基本原理、编译码结构、交织器的作用和分类、及性能分析等,为后面的设计提供了理论依据。21TURBO码简介在现代通信系统中,为了保证各种数据在信道中可靠有效的传输,往往需要利用纠错编码技术。尤其随着无线数字通信的发展和各种高速率、突发性强的业务的出现,对纠错码技术提出了越来越高的要求16。TURBO码编译码器实现的就是通信系统中信道编码到信道译码这一阶段的内容,这也是最重要的部分,它的误码率对整个系统起决定性作用,TURBO码所要研究的内容就是图21所示的信道编译部分。图21数字通信系统模型的信道部分纠错码起源于香农1948年提出的香农第二定理(也称信道编码定理)。根据香农信道容量公式1,实现可靠通信所允许的传输速率的上限为信道容量。在信道带宽无限和功率受限的条件下,高斯白噪声信道容量C表示为(21)20LOG1/SCBBITSN其中B表示带宽,表示信道输入带限信号的平均功率。如果传输速率为S,则有TRC(22)20LOG1BECBN经简单变换得(23)/00MIN21LN216LCBBBEDBN这就可以得到信道编码定理每个信道具有确定的信道容量C,对于小于C的码率R,存在有速率为R码长为N的分组码及卷积码,若用最大似然译码,0,NKM则随着码长的增加,其译码错误概率P可以任意小,即和(24)BNERAE01CNERCE其中和是大于0的系数,和为正实函数,称为可靠性函数。上式表BACBC明在带宽无限信道中,对于任何小于C的传输速率,可在码率不变的前提下通过增加分组码的长度N,使差错率为任意小,当极限情况N趋于无穷,就可以实现高斯白噪声下的无误传输,称为香农限。即当传输速率达到信道容量时,可靠通信所需的最小比特信噪比即香农限为16DB。香农限成为设计信道编码时试图逼近的信噪比的下限,为实现有效可靠的通信奠定了理论基础。1993年,法国学者CBERROU等人提出了一种称为TURBO码的新型编码方案,由于它很好的应用了SHANNON信道编码定理中的随机性编、译码条件,从而获得了几乎接近SHANNON理论极限的译码性能,从而引起极大的轰动,也使得TURBO码的研究成为近年纠错码研究的一个热点。传统的TURBO码是一类并行级联的系统卷积码,它由两个经交织器连接的子编码器生成。TURBO码的译码采用了软输入和软输出的译码算法和迭代译码的方法,使子译码器间可以互相传递信息,保证编码信息的充分利用。两个子译码器的输出序列越不相关,在译码端交换的互信息量就越大。根据CBERROU等人仿真的结果,二元TURBO码在速率R1/2和码长较长(256256)的条件下,经18次迭代得到了离理论极限约07DB的误码率性能。22TURBO码编码器原理221TURBO码编码结构典型的TURBO码编码如图22所示。主要由分量编码器、交织器以及删余矩阵和复接器组成。两个分量编码器由码率为R1/2的RSC(递归系统卷积码)组成,其结构一般是相同的,且输入相同的长度为N的信息序列,在送入第一个分量U编码器进行编码的同时作为系统输出直接送到复接器,同时输入序列经过SKCKU交织器交织后的交织序列送入第二个分量编码器。其中,U,01NINN为交织映射函数,N为交织长度,即信息序列长度。两个分量编码器输入序列I仅仅是码元的输入顺序不同。两个分量码编码器输出的校验序列分别为和。1PKC2PK为提高码率和系统频谱效率,可以将两个校验序列经过删余矩阵删余后(得到)再与系统信息一起经过复接器构成编码序列。SKCC图22典型的TURBO码编码器由线性分组码的特性知道,码字的最小距离是估计码字性能的首要参数。对线性分组码而言,码字最小距离就是码字集合中汉明重量最小的非零码字的汉明重量。交织器和分量码的结合可以确保TURBO码编码输出码字具有较高的汉明重量。在TURBO码编码器中交织器的作用是将信息序列中的比特顺序重置。当信息序列经过第一个分量码编码器后输出的码字重量较低时,交织器可以使交织后的信息序列经过第二个分量编码器后以很大的概率输出高重码字,从而提高码字的汉明重量,同时好的交织器还可以有效的降低校验序列间的相关性。通过交织,编码序列在长为2N或3N(不经过删余)比特的范围内具有无记忆性,从而由简单的短码构造成近似随机长码。因此,交织器设计的好坏在很大程度上影响着TURBO码的性能。常用的交织方式有均匀交织、非均匀交织、伪随机交织等,理论上,随机交织的效果最好。对于数字通信领域日益紧张的带宽资源,提高码率就意味着节省带宽和降低通信费用。删余矩阵是目前提高TURBO码码率的主要方法,它可以通过删除压缩合并各成员编码器地输出校验序列来调整TURBO码编码器的编码速率。比如本文删余后得到的是码速为1/2的TURBO码,若校验码不删余,则得到的是码速为1/3的TURBO码。理论上通过改变删余矩阵可以得到任意码速的TURBO码。删余单元的作用是调整编码效率,为了提高码率。实际中,一般使信息序列全部传送,而校验序列给予适当的删除。在接收端应对接收序列进行内插,未被传送的比特位用0填充,以保证序列的完整性。但是,当码率过高时,每个信息码元对应的校验码元数量减少,将导致译码端的纠错性能降低。而码率过低,又使得码元传输效率过低,所以在调整编码率时需做多方考虑,在编码效率和纠错性能间做折衷考虑。复用单元完成编码的并/串转换,使输出适合信道的传输。复用后的输出序列为。根据删余方式,取值或。,SPKKCKC1PKC2若输入信息序列为0U则编码器使用图22所示的递归系统卷积分量码编码后的系统输出和校验输出分别为和10SKC10PKC若假设经过交织器交织后的输入信息序列为U则下面的递归系统卷积分量码编码后的校验输出为2PK在未删余时得到的码率为1/3的输出码字1,0,10,C采用删余矩阵删余后得到的码率为1/2的输出码字为0P1,0,10C222RSC分量编码器线性分组码是一种常用的纠错编码,包括循环码、BCH码等。它们的共同特点是一个码字的监督码元仅与本码组的信息码元有关,而与其它码组的码元无关。本节介绍的卷积码是另一类编码,它与分组码的区别在于本组的码元不仅与当前输入的信息码元有关,而且还与以前的V时刻输入的信息有关。卷积码的纠错能力随着MM的增加而增大,而差错率随着V的增加而指数下降。在编码效率与设2V备复杂度相同的前提下,卷积码的性能优于分组码,至少不低于分组码。卷积码有三个重要的特性1存储长度V,V的值与卷积编码器中延迟单元的个数相对应。2约束长度NVL。3编码效率。编码效率定义为信息码元个数与经过编码后总的码元个数的比值。传统卷积码的编码器不包含反馈,因此可以等效为一个有限冲激响应FIR滤波器,而递归系统卷积码RSCRECURSIVESYSTEMATICCONVOLUTIONALENCODER是一种特殊的卷积码1718,由于存在反馈,因此可以等效为一个无限冲击响应IIR滤波器。本文使用的分量编码器如图23所示,其生成多项式为7,5的递归系统卷积码的编码器,编码速率为1/2。其输出的码元不仅与当前时刻的信息元有关,而且还与前V本文使用V2个时刻的信息元有关。因此,在编码过程中,每N个NV13相邻的子码之间有约束关系。图237,5的递归系统卷积码的编码框图从图可以知道输入的编码关系(25)123DUD(26)(27)PC即延时因子为(28)21UD(29)PC由此得到生产多项式G1,G22020卷积码可以用多种方法表示,一般有矩阵法、码树法、状态图法和栅格图法等,可根据译码方法的不同而采取不同的表示方法。在TURBO码中,用状态图和栅格图来描述译码过程较为方便。由图23递归系统卷积码的编码框图可以看出,递归系统卷积码编码器是一个有限状态机,因此可以分别用图24和图25表示它的状态转换图和栅格图。图24所给出的递归系统卷积编码器对应的状态转移图,其中椭圆内是编码器所处的状态,箭头的起点是初始状态,终点是输入数据后的状态,射线上斜杠左边1位是编码器的输入数据,右边2位是编码器的输出数据。因为图24中的编码器有两个存储器,(即V2)所以编码器共有4()个状态,即2VS000,S110,S201,S311。例如,若编码器的初始状态为S0,当输入信息为1时,编码器的状态就从S0转移到状态S1,,并输出码元C为11。若输入信息为0时,则编码器停留在S0状态,输出码元C为00。这样不断输入信息,编码器状态不停转移,并相应输出一个子码,它们就组成了编码器的输出码序列。而图25给出了图24递归系统卷积编码器所对应的状态转移图这个递归系统卷积码的栅格图结构,图中虚线表示输入信息为0的状态转移,实线表示输入信息为1的状态转移。这个栅格图中的每一个分支给出三种信息分支的状态当前状态和下一状态,编码器的输入的信息比特和输出校验比特。图SKXPKX中实线表示输入信息比特为1,虚线表示输入的信息比特为0。例如,对于图中第一条实线,可知在这个分支上输入的信息比特为1,编码器的状态从S0的00变到S1的10,并且编码器的输出为11L,1。对于图中第一条实线,可知在这个SKXPK分支上输入的信息比特为0,编码器的状态从S0的00回到本身,并且输出编码00。一共有四个状态S0S3,它们之间互相转换,其它细节就不多介绍了,从图中可以看出。对于传统的卷积码来说,通过在数据帧的末尾嵌入V个零比特就可以迫使编码器格图回到全零状态。但是对于递归系统卷积码来说,由于它具有无限冲激响应特性,因此仅靠嵌入V个零比特一般无法使递归系统卷积编码格图回到全零状态,此时可以通过解状态变量方程得到所需的尾比特。例如在图23中的结构,根据式(26)知道,当需要使编码器状态回到零,就是令D1等于零,得到(210)23UD这就是使编码器回到零状态所需的尾比特。图25V2的RSC编码器的栅格图23交织器经过研究发现,TURBO码之所以不同于以往的其它编码,表现出了极佳的性能,其中一个重要原因就是采用了交织器。交织器的主要作用就是将原始数据序列打乱,使得交织前后数据序列的相关性减弱,这样做很突出的一个优点便是大大降低了数据突发错误的影响。在现代的高效编码调制技术中,无论是级联编码还是TURBO编码中都要使用交织器。从前面的描述知道,交织器的主要作用是减小突发差错的影响和改善信息序列的码重特性。通常TURBO码的自由距都不是很大,但是由于交织器的作用,使得TURBO码和卷积码相比,其重量近似的码字数目要小的多,从而使得在一定条件下TURBO码的译码差错概率比卷积码的差错概率低。交织器是TURBO码的重要特征,在TURBO码的帧长、码率和约束长度一定的情况下,交织器的结构决定了TURBO码的译码性能,这是由于交织器的结构影响着TURBO码的重量分布。因此如何选择交织器也成为TURBO码系统设计的重要课题。下面给出了在TURBO码中交织器的设计应该遵循的设计准则19(1)最大程度地置乱原数据排列顺序,避免置换前相距较近的数据在置换之后仍相距较近,特别要避免置换前相邻的数据在置换后再次相邻。(2)尽可能避免与同一信息位直接相关的两个分量编码器中的校验位均被删除。(3)对于不归零的编码器,交织器设计时要避免出现“尾效应”图案。(4)在满足上述要求的交织器中选择一个较好的交织器,使码字之间的最小距离或自由距离尽可能大,而使码重为的码字数要尽可能少,以改善TURBO码MINDMIND在高信噪比时的性能。LCPEREZ等人的研究表明TURBO码的渐近性能接近渐进MIND线,在高信噪比时出现错误平台是小的引起的20。INTURBO码交织器有许多种,如分组交织器、螺旋交织器、奇偶交织器、随机交织器、S交织器、循环移位交织器、均匀交织器、“SMILE”交织器、最优周期交织器等等。这里我们介绍几种典型的交织器。1、行列交织器行列交织器,即分组交织器,该交织器是将信息序列视为矩阵。通常采取MN以按行写按列读的方式实现码元交织,交织后的码元距离特性均匀分布,即交织前信息按行写入,但是交织器矩阵交织后信息位按列读出,从而实现行列置换。其特点是交织方式非常简单,同时根据后面仿真结果可以看出,它对短序列译码效果较好,但交织后码元的去相关不彻底。而解交织列顺序写入,行顺序读出。表21和表22表示交织器的交织与解交织的存储器实现过程。分块交织器的交织函数为2111MOD1/,ININIC表21行列交织器的交织过程表22行列交织器的解交织过程在纠错编码中,交织矩阵的行数叫做交织深度,交织矩阵的列数叫做交织跨度。分块交织的特点是方式简单、对短序列交织效果较好,但交织后对信息比特的去相关不彻底。2、伪随机交织器与S随机交织器在随机交织器里,一个N比特的信息序列被输入交织器里,然后被随机读出。理论上,信息序列之间的交织方式是变化的,以便更好地反映随机性。但在实际应用中,接收端必须能够确定每一帧码字序列的交织方式,就增加了传输的负担,因此完全随机化交织并不是最佳的方式,一般使用的是伪随机交织器2122。伪随机交织器通常在输入信息序列较长时可以采用近似随机的交织映射方式,每个长度为N的伪随机交织器共有N种可能的交织形式。但是对应于N种可能的交织形式,交织后有些元素之间的距离非常小,这样会导致对某些错误序列相关行的离散度不够。因此利用下面的S随机交织器可以部分解决这个问题。通常,随机交织器是以某种方式产生一组随机数,决定信息序列在交织器中的排列方式,信息序列之间的交织方式是相同的。随机数可以这样来产生首先在从1到N之间等概率地随机选择一个整数,作为信息序列中第一个比特在交织后的位置,然后从剩下的N1个整数中等概率地随机选择一个整数,作为信息序列中第二个比特在交织后的位置,依此类推,直到N个信息比特都进行完。为了避免交织前相距较近的数据在交织后仍相距较近,可以把上述交织方式修改为S随机交织,就是把上述随机交织器加了一个约束。为了进一步减小交织器的相关行的离散度,设计在伪随机交织过程中相邻的S个比特经过交织后它们之间的距离至少为S,从而构成了S随机交织器。每一个随机产生的整数要和先前个选1S择的整数比较,如果当前产生的随机整数与先前个选择的整数之差的绝对值小于1的话,当前产生的随机整数就被抛弃,重新选择,即212I21212,ISIC考虑到算法的搜索实际,通常选择SS随机交织器是一种公认的性能良好的交织器。因为它能够将错误序列中相邻比特在交织后扩散,距离至少为S,从而使错误转化为随机错误,有利于卷积码纠错。信息序列越长,随机数的产生越均匀,交织前后序列的相关性越小。随着S值的增加,TURBO码的性能不断提高。但S值越大,条件越难满足,交织器的设计就越困难。通常比较好的S随机交织器的参数要满足213/21N其中N为交织长度。当S大于这个值时一般难以收敛。3、分组螺旋交织器分组螺旋交织器的工作原理是首先将数据序列按行的顺序写入矩阵MN(其中矩阵的行M与列N互素),在交织时从矩阵的左上角开始向右下方向读取数据,每向下一行同时右移一位即行索引递增的同时列索引也递增,增量步长为1。在行的方向和列的方向分别对索引取模M和N,即若令和分别表示第I个比特的IRIC行索引和列索引,则分组螺旋交织器的数据读取顺序是以行列顺序依次写入,然后在交织时从矩阵的左上角开始向右下方读取数据,每向下一行同时右移一位。它的表达式如下2141ODMIIRCN其中上述递归运算的初值为I0,1,2,N1初始值0,RC对于分组螺旋交织器,当交织矩阵的大小为,且交织过程从左上角开1始读数据;或者交织矩阵大小为,且交织过程中从左小角开始读数据时,N得到的分组螺旋交织器就是对称交织器。本对称交织器的交织器与解交织器完全相同,下面关于对称性的介绍时会有详细说明。下面以长度为43螺旋交织器为例,其实也就是对称螺旋交织器,详细说明它的工作过程。如表23和24所示,把交织器的工作过程通过RAM的写入与读出表示非常清楚。表23写入RAM的顺序表24读出RAM的顺序相对于行列交织器而言,螺旋奇偶交织器有以下优点1对称性交织器对称性是指若输入序列的第I个比特经过交织后成为输出序列的第J个比特,则输入序列中的第J个比特经过交织后也一定输出序列的第I个比特。这种性能使得交织器的交织序列和解交织序列完全一致,这就使得在硬件实现的时候可以用同一模块来实现交织和解交织功能,从而减小占用的硬件资源。2保奇偶性所谓保奇偶性是指原来处于奇数位或偶数位的信息比特,在交织后仍然位于新序列中的奇数位或者偶数位,从而实现对所有信息比特的等差错保护来提高译码性能。为了提高编码效率,通常对TURBO码的编码输出进行删余压缩。如果采用不当的交织方式,则有可能出现对信息为保护不均的情况,从而影响码字的纠错性能。螺旋奇偶交织器可以很好的保证交织器的保奇偶性。3去相关性经螺旋奇偶交织器交织后相邻码元距离很大,比行列交织器去相关更加彻底。这样使交织后的码元的码距扩大、相关性变小,TURBO码的编码输出更近似随机长码。综合交织后的效果和硬件实现的复杂度,本文TURBO码的编译码器中决定选用这种交织器进行交织与解交织。24TURBO码译码器原理TURBO码获得优异性能的根本原因之一是采用了迭代译码,通过分量译码器之间软信息的交换来提高译码性能。对于TURBO码这样的并行级联码,如果分量译码器的输出为硬判决,则不可能实现分量译码器之间软信息的交换。如果分量译码器能够提供一个反映其输出可靠性的软输出,则其它分量译码器也可以采用软判决译码,从而系统的性能可以得到进一步提高。为此,人们提出了软输出译码的概念和方法,即译码器的输入输出均为软信息。软输出译码实现了解调器和分量译码器之间的软信息转移,系统性能可以得到很大改进。在介绍TURBO码译码器之前,首先介绍一下硬判决与软判决的概念。硬判决和软判决是指译码的时候对接收到的比特进行量化的两种形式。对于硬判决译码解调器供给译码器作为译码用的每个码元只取0或1两个值。在调相和相干解调系统中,若0、1信号的电压为,则相当于匹配滤波器输出端的判决门限取0。若接收SE电压的幅度小于0,则解调器输出为0;若大于或等于0,则输出1。例如,采用调制电压为士5V的BPSK调制,如果码元为0,则调制成1发送;若码元为1,则调制成1。调制后的1/1在信道中传输,由于噪声的影响,序列值会发生变换。如果在接收端收到3V和03V两个脉冲电压,硬判决方式会将这两个脉冲都判决为二进制信息1,尽管第二个脉冲看起来离二进制1的标准还差很远。硬判决不可避免地会产生一些不恰当的判决,这种判决结果当然会损失掉接收信号中所包含的有用信息。为了充分利用接收信号波形中的信息,使译码器能以更大的正确概率判决所发的码字,就把解调器输出的抽样电压进行分层或量化。因而由解调器输出供给译码器的值就不止两个,而有Q通常Q个。另一方面若译码器直接利用解调器2M输出的未量化的模拟电压或其变换进行译码,称为模拟译码。无论译码器利用Q进制序列译码,还是利用模拟量的模拟译码,统称为软判决译码或简称软译码。通常,译码器利用附加的软判决信息进行软译码时要比硬译码能得到额外的23DB的增益。TURBO码译码器由两个相同的软输入软输出SISO译码器、交织器和相应的解交织器组成,常用的TURBO码译码结构如图26所示。其中SISO译码器的作用是完成RSC编码器的译码,也是TURBO码译码器中的核心模块,其性能直接影响整个译码器的性能。软输入指的是译码模块的输入信息为经过量化的解调数据,而不是判决后的二进制序列0和1。软输出则指的是译码模块的输出值也不是判决后的二进制,对于接收序列进行译码后得到一个似然概率值,因此最后在输出之前还要经过硬判决。TURBO码译码器中的交织器与编码器中的交织序列是一致的,在编码器中,交织器的作用是使两个RSC编码器趋于相对独立;而在译码器中,交织器和相应的解交织器则是连接两个SISO译码器的桥梁。译码器部分没有包括量化,它是编码器与译码器中间的部分。接收到的信息序列和校验序列、都是经过解调器SKY1PKY2解调和量化过的序列,而不是二进制的0和1。这里没有多做说明,在第三章的算法部分和第四章的量化部分将有详细介绍。图26TURBO码的迭代译码结构TURBO码译码器的完整译码过程为首先对从信道接收到的序列经串/并转换,分离出信息序列和校验序列、(对于码速为12,NRSKY1PKY21/3的TURBO码,两个RSC编码器输出的校验序列被完全发送,因此在接收端不需要改动,而对于其它码速的TURBO码,比如1/2码速的两个校验序列经过删余矩阵后,分别被删除了部分校验位,因此在接收端对应位应填0)。译码器1输入的是先验概率信息,即是译码器2的外部信息的交织信息(对于第一次迭代过程,1EL2AL初始值置0)、接收的未编码信息序列(以交织器长度为单位帧长输入)和校验序SKY列,经SISO1译码后输出后验概率(即外部信息)。由于外部信息与先验信1PKY1A息及输入响应的系统信息无关,而且译码器1没有利用校验序列,所以译码器2PKY1的输出仅在交织后作为译码器的先验信息输入,而不能用作对信息序列的判决。而译码器2的输入包含了经过交织后的信息序列、校验序列的数据和先验信2SKY2PK息,是译码器1的外部信息交织后的数据。经过若干次迭代后,译码器2ELE1AL2的软输出(似然函数比)L2经过解交织,并作硬判决,就得到输入信息序列TURBO码的译码输出结果。U上面介绍的译码过程可以概述如下1、第一次迭代,首先采用SISO1译码,设先验信息为0,译码输出软信息,同时计算得到外部信息。SISOL输出的外部信息通过交织以后作为先验信息送1AL1AL2EL入SISO2译码,译码输出软信息L2的同时计算得到外部信息。2AL2、第二次迭代,将第一次迭代过程中SISO2计算得到外部信息通过解交织作为先验信息送入SISO1译码,译码输出外部信息再次交织作为SISO2译码输EA入先验信息,再次译码输出外部信息。2L2AL3、如此不断的迭代,直到符合迭代停止准则或者预先设定的迭代次数,则迭代停止。最后根据SISO2译码输出的软信息L2作硬判决得到译码比特序列,则本次译U码过程结束。TURBO码译码两个分量译码器采用的是软输入软输出SISO译码器,SISO译码算法的选择是保证最佳译码的关键所在,也是TURBO译码器中的核心模块。最大后验概率MAP算法可以使TURBO译码的误码率最小,因此,MAP算法是TURBO码的最佳译码算法,下一章将介绍这一算法的基本原理。25TURBO码性能的分析251影响TURBO码性能的因素就TURBO码在移动通信系统应用来说,关注的焦点在以下三个方面,评价TURBO码性能的标准也主要取决与以下几个因素1、迭代次数TURBO码译码器需要多次迭代才能有效发挥其优越性,达到一定的误码率水平。但是随着迭代次数的增加,BER性能提高幅度不断的减小。在进行一定次数的迭代后,BER趋向重合,出现平板效应FLOOREFFECT。对某一固定码率而言,当交织长度N较小时,BER仅在迭代3到5次后变化就很小。然而,随着N的增大,迭代次数的增加就会带来明显的增益,这时让BER重合所需要的迭代次数就会变多。并且随着TURBO码译码算法中迭代次数的增加,这必然会引人了较大的时延,这在传输实时数据业务如图象、IP电话、电视会议等中是一个较严重的问题。通过研究表明,普通译码过程中迭代次数要到2030次才能饱和,迭代的性能才可以充分发挥,这与实际应用有矛盾。要在不影响译码性能的原则下,尽量减小迭代次数,降低译码时延。2、交织长度在相同信噪比、码率、约束长度和迭代次数下,随着交织长度N的增加,误码率BER下降。在高信噪比时,BER近似与交织长度成反比,因此交织长度对TURBO码性能的影响不可忽略。当交织长度很大时,因为码字的随机性,各

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论