turbo码编译器fpga设计与实现_第1页
turbo码编译器fpga设计与实现_第2页
turbo码编译器fpga设计与实现_第3页
turbo码编译器fpga设计与实现_第4页
turbo码编译器fpga设计与实现_第5页
已阅读5页,还剩79页未读 继续免费阅读

turbo码编译器fpga设计与实现.pdf 免费下载

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

文档简介

哈尔滨F科人学硕十学位论文III摘要1993年,TURBO码的提出,以其接近SHANNON极限的优异的性能在编码界引起了轰动,并成为研究的热点。随着研究的不断深入和技术的发展,目前,TURBO码已经应用到很多实际通信系统中。同时,如何实现TURBO码编译码器成为了人们研究的重点。论文以基于FPGA实现TURBO码编译码器为研究目标,首先分析了TURBO码的基本编译码原理和3GPP标准的TURBO码编码结构。然后分析了MAP译码算法,LOGMAP译码算法和MAXLOGMAP译码算法,接着仔细分析了对系统性能影响的各个参数并逐一进行选择,最后对各个选择的系统进行仿真,对仿真的结果进行比较论证,确定满足系统性能要求的各个参数。论文在系统仿真分析论证的基础之上,进行了TURBO码编码器的设计实现和硬件测试,选择MAXLOGMAP译码算法进行了TURBO码译码器的FPGA设计实现和硬件测试。最后完成整个通信系统的搭建和调试。主要针对FPGA实现的数据量化、定点数据表示方式、MAXLOGMAP算法子译码器关键运算单元的FPGA设计和译码的时序控制进行了深入研究,完成了固定译码长度的TURBO码译码器的FPGA设计实现,并利用MODELSIM和MATLAB分别对译码器进行了时序功能验证和FPGA定点仿真测试。关键词TURBO码;FPGA;MAXLOGMAP译码算法哈尔滨I科人学硕十学位论文ABSTRACTSINCETURBOCODEWASPROPOSEDIN1993,ITHASRECEIVEDGREATAUEMIONANDBECOMEARESEARCHHOTSPOTDUETOITSNEARSHANNONLIMITEDGOODCODINGPERFORMANCEWITHTHECONTINUOUSRESEARCHANDTHEDEVELOPMENTOFTECHNIQUE,TURBOCODEHASBEGUNTOAPPLYINTHEREALCOMMUNICATIONSYSTEMSNOW,HOWTOIMPLEMENTTHETURBOENCODERANDDECODERWITHHARDWAREEFFECTIVELYHASBECOMEARESEARCHHOTSPOTINORDERTOIMPLEMENTTHETURBOENCODERANDDECODERBASEDONFPGA,FIRSTLY,THISTHESISHASANALYZEDTHEPRINCIPLESOFTURBOCODEANDTHE3GPPTURBOENCODERSECONDLY,THISTHESISHASCARRIEDONDETAILEDTHEORYANALYSISMAPALGORITHM,LOG。MAPALGORITHMANDMAXLOGMAPALGORITHM,ANDHASALSOANALYZEDTHEMAJORFACTORSAFFECTINGTHETURBOCODINGPERFORMANCEWITHMATLABSIMULATIONSANDTHIRDLYITDETERMINEDTHEFACTORSTHOSEMETPERFORMANCEDEMANDEDTHROUGHSIMULATIONBASEDONANALYSISANDCOMPARISONTHERESULTSOFSIMULATION,THISTHESISHASDESIGNEDTHETURBOENCODERANDVERIFIEDTHEENCODERITHASADOPTEDMAX_LOGMAPDECODINGALGORITHMTOCARRYONTHEDESIGNANDIMPLEMENTATIONOFTURBOCODEBASEDONFPGAANDVERIFIEDITANDFINALLYHASDESIGNEDTHEWHOLECOMMUNICATIONANDDEBUGGEDITDATAQUANTIZMION,FIXEDPOINTPRESENTATION,THEFPGADESIGNOFKEYCOMPUTEMODULESINMAXLOGMAPSUBDECODERANDTIMESEQUENCECONTROLINTURBODECODEROF3GPPSTANDARDHAVEBEENDISCUSSEDFINALLY,AFIXEDDECODINGLENGTHTURBOENCODERANDDECODERBASEDONFPGAHASBEENDESIGNED,ANDFUNCTIONTIMINGVERIFICATIONANDFPGAFIXEDPOINTSIMULATIONHASBEENSEPARATELYCARRIEDONWITHMODELSIMANDMATLAB。KEYWORDSTURBOCODE;FPGA;MAXLOGMAPALGORITHM哈尔滨工程大学学位论文原创性2声明本人郑重声明本论文的所有工作,是在导师的指导下,由作者本人独立完成的。有关观点、方法、数据和文献的引用已在文中指出,并与参考文献相对应。除文中己注明引用的内容外,本论文不包含任何其他个人或集体已经公开发表的作品成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。作者签字日期二。留年F月F7E1日期厶。吝年F月F哈尔滨T稗大学硕十学何论文第1章绪论在现代数字通信系统中,为了保证各种数据在信道中可靠、有效地传输,往往要利用纠错编码技术。近年来,随着近年来,随着无线数字通信的发展及各种高速率、突发性强的新业务的出现,研究并利用好的纠错码技术就越来越显得非常必要。尤其是在一些频带或功率受到限制的系统中,这种必要性更为突出。11课题的背景及研究意义1948年香农SHANNON在他的开创性论文通信的数学理论1中,首次阐明了在有扰信道中实现可靠通信的方法,提出了著名的有扰信道编码定理,奠定了纠错编码理论的基石。从SHANNON信道编码定理可知,在信息传输速率R不大于信道容量C的情况下,从码组长度趋于无穷大的码集合中随机的选取编码码字,并且在接收端译码采用最大似然译码算法时,译码错误率可趋于零。这种无差错传输必须满足以下3个基本条件1采用随机性编译码。2编码长度L_,即分组的码组长度无限。3译码过程采用最佳的最大似然译码ML方案。虽然该定理仅仅是一个存在性定理,没有给出具体实现差错控制编码的方法,但却从理论上给出了纠错码的理论极限,同时也指明了纠错码研究的方向和目标。1993年,在瑞士日内瓦召开的国际通信会议ICC93上CBERROU,AGLAVIEUX和PTHITIMAJSHIMA提出了一种震惊整个编码界的新型信道编码方案小LRBO到21。仿真结果表明,在采用长度为65536的随机交织器并迭代译码18次的情况下,信噪比等于07DB,采用BPSK调制,码率L2的TURBO哈尔滨T程大学硕七学位论文码在加性高斯白噪声信道上的误比特率达到10一,和SHANNON极限仅相差07DB,从而掀起了研究TURBO码的热潮。TURBO码经过了经过了十多年的发展,无论是编码方案还是译码算法方面的研究都相对很成熟。随着对TURBO码的理论和实践研究的不断深入和通信技术的飞速发展,由于TURBO码优异的性能,TURBO码已经逐步广泛应用到实际的各种通信规范和通信系统中。空间数据标准咨询委员会CONSULTATIVECOMMITTEEFORSPACEDATASTANDARD,CCSDS已将L6状态TURBO码列为一个新的信道编码标准,支持12、13、14和16码犁31,2003年后,美国国家航空和宇宙航行局NASA与欧洲空间局ESA支持该标准。TURBO码被卫星通信标准INMARSAT采用作为一种新的多媒体传输业务。在个人移动通信领域,3GPP正式将TURBO码作为IMT2000的高速数据通信的信道标准之一。其中被国际电联采用的、具有代表性的3个3G标准WCDMA,CDMA2000和TDSCDMA均在信道编码中使用了TURBO码,用以传输高速率、高质量的通信业务。代表性的4G标准LTE,UMB和WLMAX也采用TURBO码做为信道编码方案之一。本文就是基于这种背景,在低信噪比信道情况下,信道编码采用高码率的TURBO码,采用连续相位调制如MSK,在归一化信噪比低于2DB时,要求系统误码率低于104。以此为设计的性能指标,来实现整个通信系统。本文主要研究TURBO码编译码的FPGA设计与实现。12TURBO码的研究现状121TURBO码的算法研究TURBO码,又称并行级联卷积码PCCC,它是由CBERROU等在93年的ICC国际会议上提出的一种新型信道编码方案。由于其优异的性能,引起了编码界的强烈关注。2哈尔滨T程大学硕士学位论文一方面,TL曲O码的优异性能来源于其独特的编码结构和软输入译码。CBERROU选用的TURBO码编码器包括两路码率为12的递归系统卷积码RSC子编码器与一个随机交织器。两路子编码器对同一帧输入信息进行编码,但由于随机交织器的存在,编码器各自的信息输入顺序不同。随机交织器保证了子编码器之间编码的独立性H1。SHANNON信息论中长期以来被忽视的随机编码的思想在这里得到了体现。通过随机交织器,原始输入的信息序列顺序被随机打乱,这样编码输出也呈现随机特性,起到随机编码的作用。CBERROU选用的交织器长度为65535比特。只有当全部的信息比特到达后,编码器才能开始编码工作,这是分组码的特点。1995年,SVIRID引用了分组码的性能分析方法分析TURBO码的性能瞪1,那么TURBO码就可以看成一种特殊的线性分组码。65535比特的信息长度是一个很长的长度,应该说是一种“长码“。这样,TURBO码的编码结构使SHANNON信息论中的随机化长码思想得以实现。在早期的译码方式中,接收端一般对接收符号先判决为“0”,“1”这样的二进制符号或者二进制符号表示的多进制符号,然后输出到译码单元。译码单元没有任何关于这些硬判决符号的可靠性消息。若把接收符号量化后再传输给译码单元,这些量化输入包含了接收收符号的可靠度信息,我们称之为“软输入SOFTINPUT“。这些“软输入”能带来更好的译码性能。在卷积码的软输入维特比译码中,这种“软输入”所带来的译码增益得到了体现。TURBO码借鉴了这种译码方式,输入到子译码器的都是接收符号的量化输入。另一方面,TURBO码的优异性能还体现在于迭代软输出译码算法的思想。在译码时,两路子译码器间软输出信息不断相互交换,循环迭代完成译码。子译码器采用BCJR算法,也就是MAP译码算法最大后验概率译码算法。这样,TURBO码的译码算法使SHANNON信息论中的最佳的最大似然译码ML方案思想得以实现。TURBO码优异的误比特率BER性能使其成为近百年来纠错码研究领域的一个热点。目前,TURBO码已经从简单的试验室仿真过渡到实际应用阶3哈尔滨ULJ程大学硕士学位论文段,如TURBO码已经在深空通信,卫星通信以及多媒体通信等领域得到了广泛应用;此外,TURBO码在文本传输和数据存储等方面的也有应用。目前TURBO码已被ITU2T确定为第三代移动通信IMT2000编码方案之一,在2003年发布的IEEE80216以及后来的IEEE80216E标准中,卷积TURBO码也成为信道编码方案之一。同时,TURBO码在数字电视、数字广播、第四代移动通信系统中也有着非常光明的应用前景。TURBO码迭代译码的思想还逐渐被应用到其他领域,诸如迭代均衡技术,迭代与多用户检测相结合、迭代与高效调制技术相结合,此外迭代译码技术还应用于信道编码与有记忆调制的级联系统。TURBO码本身也出现了一些变体,1996年,MACKAY提出来低密度校验码1。TURBO码在拥有优异性麓的丽时,也壶于在其很长码长的迭代译码过程中信息序列和外信息序列需经过反复的交织与解交织,从而导致非常大的译码延时。同时崮译码器熬结构决定了其译码算法具有较大觞运算量。这些也是由TURBO码本身的编译码体制决定的。这在实时要求比较高时,就限制了它的应焉。因此如何减小译码时延、快速高效地实现TURBO码编译码系统具有重要的研究价值和应用前景。当翦主要从两方面减小译码时延一方面是在译码算法上做一些改进,TURBO码译码基本算法主要是最大簧验概率算法MAP弼和软输出维特泌算法SOVA灏。MAP算法是一种最优算法,但其运算量非常大,加之运算中的非线性运算不利用硬件实现,嚣悉一般只媚手理论分析,为此人们提出了次最优算法LOGMAP算法及MAXLOGMAP算法网。SOVA算法虽然性能不如MAP算法,但因其计算量比较低,便于硬件实现的优点瑟颇受人们青睐。根据以上的几种基本算法,不少学者也提出了很多改进算法,如由MAP算法改进过来的滑窗MAPSWMAP算法UM,FMAP算法LLOGMAP进行改进的线性拟合法21CONSTANTLOG。MAP算法131;由MAXLOG,MAP改进来的SW2MODIFIEDMAXLOGMAP算法N小,MAXFLOGMAP算法;由SOVA4哈尔滨T程人学硕士学傅论文算法改进的如双向SOVA、SMSOVA算法、NEWSOVA算法N卯、BISOVA算法H61等等。这些改进是通过简化计算量,在纠错性能和实现复杂度上做了一定的折中,以达到所要求的纠错性能并保证译码时延减小。另一个方面是通过增加译码器的数量以减小译码时延,即在译码端使用NN2个译码处理器并行译码以减小译码延时。国内外都有不少的科研成果。如国外的JAHMINGHSU等人于1998年在“一种并行TURBO码译码方案中提磁来并行译码方案露。在该方案中,使用了帧分裂并且在分裂处重叠部分信息比特,该编码的纠错优劣性能和重叠的比特数相关。后来不少学者陆续提供了各种改进方案,如UDASGUPTA等入提出的“使用软输出T算法的并行TURBO码译码【L81。2001年,LIPING提出了“TURBOSPC单校验码,它的译码复杂度比TURBO码低很多瑟霹。SEOKHYUNYOON等人于2004年在“并行TURBO码译码”一文中使用图形分析了几种现有的并行TURBO码译码方案蹦,并结合“双流“操作提出了自己鹩新并行TURBO码方案。国内也有一些科研单位研究了并行TURBO码译码并取得一定的成果。南京邮电学院的刘拣等入于20睨年在“TURBO码并行译码算法的研究”搿中,将TURBO码译码和图论结合起来,利用BAYESIAN网络图模型描述了TURBO码的译码过程,基于模型使用PEARL的信息传播算法,建立了TURBO码的并行译码算法。两南交大的万科等人于2003年提出了一种基于帧分裂和篱笆图归零处理斡译码方案瑟引搬,该方案对编码器的两令分量帧分裂和篱笆图归零处理,并在译码端对边界计算条件进行了调整。清华大学的XIUJUNZHANG于2003年提毒了一种荠行融BO码译码方法融L,该方法可以节省存储空闻和提高译码效率,但会损失定的纠错性能。哈尔滨工程大学的赵旦峰等人于2004年提出分块并行译码方案瞄1,该方案将帧长分成几个子块,并行译码方案,该方案性能较好,但是实现起来复杂度较高。S哈尔滨T程大学硕十学能论文122TURBO码的硬件实现现状TURBO码的良好性能受到了科学界的广泛重视,欧蓑国家投入了大量的入力,物力和财力对其进行研究,并取得了重大成就,TURBO码芯片国外已经形成产品,并应用到军事侦察卫星的回传等领域。美阑JPLJETPROPULSIONLABORATORY试验室设计了JPL型TURBO码译码芯片,采用MAP算法,误码率为LO,延时为3S。JPL型芯片已经应用在侦察卫星中;美国的AHA公司设计的AHA4501型是最早用集成电路实现的TURBO码产品,最高信道速率达到36MBS,AHA4540型最高信道速率达到300MBSI捌。目前,国内还没有TURBO码产品问世,但有很多科研机构和科研人员正在进行这方面的研究。唇前,TURBO码编译码器的硬孛实现主要有三种方案1使用DSP器件实现。TMS32054X系列是德州仪器公司TI推出高性能、低功耗的定点芯片,丽且它带有VITERBI译码秀瓣速器,有实现VI钯内I译码算法的专用指令。用该芯片实现基于SOVA算法的TLLRB0码译码器。另外,骶公司推出的TMS32G5416在片上除了有高性能的数字信号处理内核外,另外集成了用于维特比译码的协处理器VCP,TURBO码译码的协处理器TCP。这样可以给系统开发带来缀大的方便,以及足够鲶灵活性。2使用FPGA器件实现。现场可编程FJ阵列FPGA器件由于其毒常适合进行乘法和累加MAC等重复性的运算,因此非常适合进行高速数字信号处理任务。可以震VHDL或者VERILOGHDL等硬件描述语言来实现TURBO码的编译码算法。由于这种方法的编解码器性能取决与采用的算法,器彳牛本身的性麓以及程序编写的效率,所以设计者可以根据采用的算法选用器件。这个方案对设计者来说是非常方便、灵活和省时的。由于考虑到实现的复杂性实现的复杂性,翳前来说,大多数设计采用的算法都是SOVA或者MAXLOG。MAP算法,常用的器件有XILINX公司产品和ALTERA公司的芯片。为了熊够让设计者节省开发时闻,缩短开发6哈尔滨下程大学硕学位论文周期,减少开发风险,FPGA芯片的研发公司为TURBO码解码专门设计了IPCORE,这些IPCORE集成了设计这所需要的复杂逻辑,并预先定义和验证了的模块。例如XILINX公司的IPCORE支持帧长40“5114,工作频率可达40M,吞吐量可达2MBS,迭代次数可配置。这使采用FPGA实现TURBO码译码变的更加方便了。但是,这些IPCORE都是需要付很昂贵的价格才能使用的,并且是得不到源代码的。一般的研发项圈难以承受。3用专用芯片实现。目前,随着对TURBO码研究的逐渐升温,以及TURBO码应用的逐渐广泛,一些半导体厂家也开始推出自己的专用TURBO码编解码芯片。其中ADVANCEDHARDWARE公司的单芯片TURBO乘积谒TPC前向纠错FEC编解码器ASTROLE能以O25O95的编码率处理高达36MBS的编码数据。可以支持2KBS和4KBS码组长度。可以工作予全双工和半双工模式。另外,新加坡OKI公司也推出了用于TURBO码编解码的EMIK07。然而这些专震ASIC芯片一般价格较高,丽置还有一定起定数量要求。因此,对于项目的前期样机研发来说是不宜采用的方案。13本文主要内容和结构本文以基于TURBO码信道编码的通信系统实现为研究目标,分析了对系统性能影响的参数,然后根据不同的生成多项式,交织器,帧长组合面成的各种系统进行了深入的仿真分析论证。确定满足性能指标的各个参数值。在此基础上,完成基于FPGA的TURBO码编译码器的设计和测试。最后完成了信源,调制,信道,解调用软件实现,TURBO码编译码用硬件实现的整个通信系统的搭建。本文具体内容安排如下第L章主要介绍课题研究背景、意义及目前研究现状。第2章主要介绍TURBO码的基本编译码原理和编译码算法,然后根据对系统性能影响的各个参数进行详细的论证和仿真分析。最后确定满足整个系统性能指标情况下的编译码予系统中的各个参数值,为后面FPGA设计提供7哈尔滨工程大学硕士学位论文理论基础和技术参数。第3章主要对TURBO码编译码器的FPGA实现设计和测试。对TURBO编译码器的关键运算单元的结构设计,编译码器的时序控制逻辑的设计做了详细的贪绍,完成各个功能模块的设计,仿真,验证。最后给出了TURBO码编译码器的测试方案和最终的硬件下载和测试结果。第4章详细介绍了整个测试系统的搭建和测试工作,其中的信源,MSK调制,信道,MSK解调采用采用VISUALC软件实现,TURBO码编译码用硬件实现。最后给出了整个系统的测试方案和测试结果。8哈尔滨T程大学硕十学L7论文IIIII第2章TURBO编译码算法和系统仿真论证TURBO优异的译码性能源皇于它独特的编码结构和迭代译码的愚想。本章详细地介绍基本的TURBO码编码结构和迭代译码过程,并详细介绍TURBO码译码算法,最后对系统各个参数进行分析,对系统进行仿真分析论证,确定满足系统性能指标的各个参数值。21TURBO码编码原理211TURBO码的编码结构1993年,CBERROU等入最襁提出酶TURBO码编码器采用的是著行级联卷积码结构1,即PCCCPARALLELCONCATENATEDCONVOLUTIONALCODES。它主要由主要毒两个递麴系统卷积码RSC,RECURSIVESYSTEMATICCONVOLUTIONALCODES分量编码器、交织器、删余矩阵和复接器组成。图21所示,即为一典型的PCCC编码结构。图21PCCC编码绪构在TMBO玛编码过程中渊,长度必N的信息序列岳露;在送入第一个分量编码器的同时作为系统输出K直接送至复接器,同时函。经过交织器,后的交织后序列函。送入第二个分量编码器。其中胛J酝,0K黑NL。,必交织映射函数,为交织长度。两个分量码的输入信息序列的内容是完全O哈尔滨JT程大学硕学位论文一致的,只是信息码元的输入顺序不同。两个分量编码器对应的输出为校验序列P和K尹。为提高传输速率和系统频带利用率,可以将两个校验序列经过删余矩阵删余校验位后得到F再与系统输出K一起经过复接器构成TURBO码编码器输出码字序列溆。212RSC递归系统卷积码在TURBO码编码器中,为了得到趸好的编码性能,我们一般采用递超系统卷积码RSC作为分量编码器。和传统的卷积码相比较,递归系统卷积码最大的特点是它存在着反馈。常用的RSC编码器一般由2缀移位寄存器构成,用生成多而式表示为GDLL,测卜”表示系统比耗G。表L98W”示为反馈多项式,GLD表示为前向多项式,GOP和G,用八进制数表示,图22所示为生成多项式为7,5的递归系统卷积码。213交织器图227,5递归系统卷积码在很早以前,人们已经将交织器产生的交织编码应用于通信系统中。其中最典型的应用是采角纠随枫错误的信道纠错谒来纠正突发形式麓错误。另外一个应用是在级联码系统的内码和外码之间,利用交织器尽可能分散外译码器输出麴突发错误,使进入内译码器靛错误基本上是随机的。LO哈尔滨一L程大学硕士学能论文在N曲O码的编译码系统中,交织器扮演着一个非常重要的角色,它的主耍作用是将输入信息序列比特顺序重置,减小分量码输出的校验比特之间的相关性,同时提高输出校验序列的码重,从而在迭代译码过程中降低误比特率。C。BE糟OU等人在提出TURBO码时就绘出了设计性能较好的交织器的特点和基本原则田I1通过增加交织器的长度,可以使译码性能得到提高;2交织器应该使输入序列尽可能地随机化,从而避免编码生成低重码字的信息序列在交织后仍旧生成低重码字,导致TURBO码的自由距离减小。2,14删余矩阵测余的露的是为了尽量提葱码字的码率焉达至L套鲶错误概率的传输。勰图21所示,两个分量编码器输出的校验比特扛J和KPJ通过删余矩阵周期性的删除一些校验眈特后就褥到了校验序列扛;B,甄2P;。通过设置不围的删余矩阵,我们可以得到不同的码率。删余矩阵PIIL,L1】,P210,1L】,P310,0L】分别对应的码率为13,25,12。在实际通信系统中用的最多的是L3和12码率。215归零处理在MAP译码算法中,前向递推掰。J和后向递推从S的初始条件值,一般都是要根据RSC分量编码器的初始状态和编码结束状态而确定的。对于普通的非系统卷积编码器,很容易将其初始状态和结束状态置为一已知状态,院如零状态。面对于TURBO编码器,由于采用了递归结构,其分量编码器需要额外的结尾处理才能达到结束于零状态。对于不同的TURBO码编码器的归零处理,一般都赋予不砑的递推初始僮。对分量码的不嗣归零处理,对TURBO码的译码性能有不同的影响,其中双归零对应的性能最好。哈尔滨丁程大学硕学能论文;掌IIIYIIIIIIIIIIIIIII黼茹;I;眷黼薯;III誊茹麓薯2163GPP标准的TURBO码编码器前面介绍了普遍的TURBO码编码结构,下面具体介绍一下3GPP协议中TURBO码编码器,本文中的TURBO码编译码算法和仿真和FPGA实现,都是围绕着该编码器进行的。21613GPP标准的TURBO码编码维构3GPP标准的TURBO码编码器结构如图2。3所示,整个编码器豳两个RSC分量编码器和一个内交织器组成口91。其中分量编码器采用生成多项式为13,15,码率为12的RSC编码器,没有删余矩阵,所以3GPP标准的TURBO码编码器码率为13。输入信息序列每,菇,。,X符,直接逶过RSCL生成信息序列K和校验比特序列舷,经过内交织器詹的信息序列K通过RSC2产生校验比特序列馘J,并按序输出编码码字一,Z。,ZL,X,Z,Z,靠,茗二。奔朔RSEL獠郧I出一内交织器。龠RSC2龠三墨斗一、_匿233GPP标准熬TURBO玛编码结构12哈尔滨T程大学硕士学能论文21623GPP标准的TURBO码的归零3GPP标准中的TURBO码编码器在每一帧数据编码完成时,需要对两个分量编码器迸行归零处理。当编码开始时,编码器的3个移位寄存器都处于“0”状态,随着信息序列的移入,寄存器的状态随之改交。当编码结束时,如图23编码结构所示,每个RSC分量编码器的输入端开关向反馈端虚线端闭合,根据RSC分量编码器的移位寄存器状态,形成反馈妇零码字,从丽使分量编码器回到“0状态,同时输出归零尾码字序列X川,Z鬈。,奴2,Z封2,X拦3Z茁3,XKL孑KLXK2Z置2XR3孑K3。21633GPP标准的TURBO码交织方案为适应移动通信信道的要求,3GPP标准的TURBO码内交织器渊,采用了独具特色的分级交织算法,不同的帧长有不同的交织图样,交织深度为405114。具体算法步骤见文献【3国。22TURBO码译码源理与TURBO码的编码结构相比较,TURBO码的译码过程就显得更为复杂。图24所示为TURBO码的译码结构,其译码器主要包括予译码器1、子译码器LALYKLPYD图2。4TURBO玛译码结构13哈尔灏一1程大学硕士学能论文2、交织器和解交织器。TURBO妈的译码过程是一个循环迭代译码的过程,首先,接收到的信道信息序列被解复为信息位序列K,予译码器1校验位序列侈和子译码器2校验位序列侈尹三顼。对予子译码器1,信息位亭列K;子译码器量校验位序列拟P和先验信息位序列仁口,前一次迭代子译码器2输出的外信息位序列扛G经过解交织后得到,对于第一次迭代犯口。O输入子译码器L,经过译码运算得到子译码器1的外信息位序列LE,;,经过交织器后褥到子译码器2的先验信息位序列扛口,连同交织质的信息位序列溉,子译码器2校验位序列,输入子译码器2,经过译码运算得到子译码器2的外信息位序列LE;,经过解交织器后得到子译码器L的下一次迭代酶先验信息位序列扛Q,至此完成一次迭代译码过程。当循环迭代译码达到一定迭代次数后,停止迭代运算,子译码器2的软输出信息序列解交织后通过硬判决得到译码后信息序列K;,从瑟完成整个译码过程。23TURBO码译码算法TURBO码译码算法主要分为嚣大类,一类是由VITERBI演化丽来的SOVA算法,另一类是性能优异的MAP算法,以及由MAP算法延伸而来的LOGMAP算法和MAXLOMAP算法。SOVA算法具有最低的译码复杂度,但是性能最差,并且译码性能不够稳定。MAP算法具有最优的译码性能,但是内于计算中存在着大量的乘法和指数运算,译码复杂度高,不便于硬件实现,通常作为理论分析的参考。LOGMAP算法和MAXLOGMAP算法都是由MAP算法简化丽来,通过将原来的运算转化到对数域进行,从而将乘法14哈尔滨丁程人学硕学伉论文运算变成了加法运算,避免了指数运算,降低了译码复杂度驺11P2。就译码性能丽言,LOGMAP算法仅次于MAP算法,MAXLOGMAP算法次于LOGMAP算法但要好于SOVA算法。就译码复杂度而畜,MAXLOGMAP算法的译码复杂度低于LOGMAP算法,更易于硬件实现P31。231MAP译码算法1974年BAHL,COCKE,JELINEK和RAVIV共同提出了最大后验概率MAP译码算法,也是以他们命名的著名的BCJR算法。它是基于网格的软输入软输出译码算法,译码准则是在噪声信道下对马尔可夫过程的状态或输入输出进行逐一饿计。下面,本文将完整丽详缨遗推导MAP译码算法。图25为MAP子译码器,输入信息序列YYFYL,Y2,YI,Y。其中,此I,YFJ。表示信息序列的帧长,三口瓴怒关于韵先验信息,三Q;是关于壤的对数似然比。为其定义如下醚AP子译码器图25MAP子译码器嘉圳扎剁沼一三0。三IN22对于BPSK调制,在加性高斯自噪声AWGN信道上的输入输出关系15哈尔溟J1程大学硕士宁位论又以厄2X一1十以23群厄2一1以F24其中,2一L,2X爹一L力已调双极性编码符号,O,L,ES为每一码字簸量,通常取疋1,嚣;,P为独立同分布的嵩斯噪声样值,其均值为0,方差2NO2。MAP译码器的圈的就是要根据式22,按照下列规则进行JR咖器然协5,下面我们将利用BCJR算法对式22的计算进行详细的推导。根据BAYES规则和联合概率性质,式22可以写为LU女INLNP0。L,YFYP芦浆雾PS川协6P慨,S,。蹦,PIV限6、式26中,求和是对所有由U1或材女0弓F起的S川专S的状态转移进行的,SK一,代表网格图的后一1时刻的状态,代表网格图的K时刻的状态。为了表示简单,文中后面将用S表示露一1时刻的状态,S表示K时刻的状态。为了计算五饥就要计算P圆“S,瓯S,YI,可按如下进行PG,S,Y,PG,S,夕,Y。,必;27由BAYES规则,并假定信道为无记忆信道,式27又可写为16喻尔溟1程大学帧十掌佗论文PG,S,Y,嚣尸是。L,S,Y,魄DJPG,最J,攻P苎LLSPS,S,J,LKF,PYK芝;LS。P玫,SL,罗;_P0,罗越2。8拳P乏,IS尸。,SIS尸G,Y。1等反G心,S搿。一。G式28中ARK_1GPG,Y一129反GP坛;IS210YKS,JP。,SIS211其中,式29,210,211分别定义为前向递推,后向递推和状态S和状态S之间的分支转移概率。将式272II代入式26可得的对数似然比|I的表达式嚷一,G以G,葶孱GZ也乩夏11K巧网习确2地II。K,叫U2311前向递推由式29前向递推的定义,根据BAYES规则,无记忆信道的特点和联合概率的性质,可以将式29进行如下推导17哈尔溟R程大学硕七学何论文口。SPB,Y、P,Y1,Y。;P,S,YYZP,Y。L,Y。PG,罗_213P佟,Y2L葶。夕G,Y_款G,S。G。一,0由于RSC分量编码器初始状态为零状态,故前向递推的初始条件值为口。G三I芸协通常情况下,为了防止前向递推计算溢出,需要对前向递推值进行归一化处理玩搿。G瑾。O21523。1。2后向遂推由式210后向递推的定义,和前向递摊相似,迸仃如卜于匡导;腓三擞KP,S弦J尹甑,必弦夕Y墨;峨蹦;P眇埘2舶尹Y竺,IS。尹眇。,S|S反O。玩,S由前面介绍的3GPP标准的TURBO码编码器可知,在每一帧数据编码结束时,两个RSC分量编码器都要进行了归零处理,所以后向递推的初始条件18哈尔滨T释人学硕十学位论文值为夕B三二三C2一,7,通常情况下,为了防止薏向递推计算溢出,露样需要对后向递推值进行归一化处理反G屈G鼠G2182313分支转移概率从上述推导可以看出,要计算前向递推,后向递推和,。的对数似然比LU;,都需要分支转移概率G,S的僮。下殛将详缨的推导分支转移概率的计算。由式211分支转移概率以,S的定义和BAYES删,则有其中,材。为引起状态瓯一。S到状态SKS转移所必需的输入比特,P如。是“。的先验概率,P。L,S等效于尸。L以,由信道转移概率决定。其中,以为状态瓯。,S到状态瓯S转移所对应的发送码字。由于是无记忆信道,则有夕Y。L,S箍P。L故1”IPY舣L220L1粕和Y甜是发送码字和接收码字鲰中相互独立的眈特位,雅表示发送码字坼和接收码字,的码字长度。假定发送码字以经过BPSK调制,通过19072S、I,LP0PPA;捋势SS苫0FOP妖协,杪P尸户LLLLII哈尔滨T程大学硕士学能论文均值为0,方差为口2NO2的加性高斯白噪声AWGN信道,则有户帆丽1EX攻告时叫221式220,E。表示每一发送比特的能量。并结合式219和式220可得P。IKJ。密去唧专柚2三蠡1妻B裂训协捌2丽唧卜参喜K22也挑嘤C轴PB秘0嘤2南燃P告别协23磐唧旧202喜X;A2沼24,式223只依赖于信道SNR值和接收码字Y材的幅值,式224只依赖于信道SNR的值。所以对于式221来说,这两项都相当于是常数。为了计算分支转移概率S,S,还需要计算关于致的先验概率PQ。由译码器的先验信息反0。的定义式21可以推池圳地翱地蕊高弦25,南式225可得20哈尔滨T程人学硕十学能论文P也1瓦EXP翮LAU,2126由式226PUIO则有地。而翮1227盘式226,式227可得到尹0式228中盹粼协28,3广雨未硼Q2”式229只依赖于“。的对数似然比,和“是0或是1没有关系。由式219229,分支转移概率以G,S可以写为敬O,S嘤C蹴EXP纸髫。渺E文争陲Y内E2瑚,式229中,C婴,和C躁不依赖于“。和发送码字奴,所以在计算甜。的对数似然比五0。时从分子、分母中同时删去,又因为YK;,鳄,靠E,XF,所以式230可以简写为以EXP鼬如EX牾鼢叫鳄231若定义戌G,JEXPG秽FXF2;定义信道可靠值髓4蛾虬;D为信道衰落因子,对于加性高斯白噪声信道,BPSK调制而言,衰落因子A1,方差盯2NO2。所以式231又可写为2L哈尔滨T程大学硕十学何论文纸G,SEX4壤三握O;喜S成1。成0,S2322314对数似然比前面三个小节,本文就前向递推,后向递榷和分支转移概率进行了详细的推导,现将式215,218和2。32代入式212中,则可以推导出魄的对数似然比五纸为五IN壤一,一L瓯O,0OSS233LAUKLC联LEUK式233中,第一项为前一个译码器为厝一个译码器提供的关于U。的先验信息,第二项为信道信息值,第三项为计算产生的外信息。在TURBO迭代译码的计算过程中,需要子译码器的外信息90;,通常是先计算出封。的对数似然比三K,再减去上一个子译码器提供的先验信息帮接收到的信道信息得到,如式234LEU;三0女一LAU。一LC虻234232LOGMAP译码算法由231节可以看出,MAP译码算法中存在着大量的乘法运算和指数运算,要用硬件实现这些运算,将常的匿难。所数,在硬件实现TURBO译码器时都不会采用MAP译码算法。为了降低译码复杂度,便于硬件实现,通常将MAP译码计算转化到对数域上来进行,从而将乘法变为了加法,避免,孱訾反文一0IW尔须I程大掌坝士宁能论文了指数运算。本文中采用取负对数的近似计算方法351,那么加法运算就转化成了MAX等效运算一LNP吖P”YMAXG,J,MING,Y一1N1EI扣Y1235函数MINX,Y和卜一夕L可以通过减法器和数据选择器来实现,函数GFZINOE一2236下蘧将详细阐述MAP算法通过取负对数转化到对数域运算形成LOGMAP译码算法的步骤令以G蕊一LNCR。G237吃G一LNFLKG238玟G一INYKS,S239盘前向递推公式213,式237可以写为40一LN缸。G一1NL。以LKX一文莩EXPO“一;GP。O,S24。脚0茁一,反,S游同理,由后向递推公式216,分支转移概率公式232可将式238和式2。39改写为BK一;G一L珏饭一;0一1N反段G。,S片,、241一IN|EEX玉慨魏,S泐;哗幢O轨苫舅I竹刀I獗I程灭7坝下子何抛义D。B,S一LNP。G,J一N一山EXP羚YIXKYK,NEXP。五口。EXP等OKYK5X参Y2_42二一魄勋瓴一了LC陬IS魏苫FY善前扁递推和后向递推的初始条件值式2。14和式217可以改写为彳。O彳K氐OFOL00S0S0S0S0243244前向递推项和后向递推项的归一化公式2一15和218可以改写为箴G坑G一MINBOJ2452。46将式237,式238和式239代入式212,则关于U。的对数似然比上0。可以写为以魄一;GY。G,S反引N甚I阿孤硼芝EXP_0哦G,S玩G勘州N薹磊可再耳蕊翮筑菇嚣MAX。0川玻B壤G一M舻AX,KS卜域B致O剪疆0P七彳,L、N罾,一、L,S,L,蠢、L,04哈尔滨下稗大学硕十学位论文利用式245和式246分别对前向递推项和后向递推项进行归一化处理,则式247关于“。的对数似然比三他改写为三瓴M驴AX。阮一。G仇G,J反G一M铲AX。伍一心NS箴G233MAXLOGMAP算法248LOGMAP算法将MAP舁法运算转化到对数域上来进行,并利用雅可比等式235简化了运算。为了更进一步的降低译码复杂度,将雅可比等式235后面的修正项函数去掉,即令Z0,则此戗运算就简化成了求最小值运算一LNE一。PYMAXX,YMINX,力249则式340,式341和式348可以改写为以GMINA。一。GD。G,J250BK_GMIN暖GD。G,S251三0。M驴IN。7AK一。G。见G,J鼠G”一鼍弹伍一。G哦5反G”25224系统仿真论证中各个参数的分析本文结合了通信系统的要求调制采用MSK,信道编码码率为12,在归一化信噪比SNR2DB时,系统的误码率要达到104。以此为目标,这里的信道编码采用性能优异的TURBO码,深入分析了对系统性能影响的各个因素,进行分析和仿真论证。确定满足系统性能要求的系统参数。本文就对系统性能影响的因素如编码器的生成多项式、交织器类型、迭代次数、译码算法等进行深入的分析和论证。然后对多种预选方案进行仿真,并分析论证仿真25哈尔滨下程大学硕十学位论文暑1IIII薯ILL誓;I;警葺I;赫;茹;警茹;I;眷薯;茹蔷;笛篇;I;薯;眷喾;薯茹IIL结果,确定满足系统性能指标的各个参数值。2。4。1算法生成多项式的选择本文考虑了一些常见的通信系统采用的TURBO码生成多项式,如CDMA2000采用的多项式是13,15,13,17,WCDMA采用的多项式是13,15,CCSDS采用的多项式是23,25,23,33,23,37,还有其他常见的生成多项式7,5,15,13,15,17,3L,33,37,27。当然还有相关长度更大的生成多项式,由于它们的译码实现复杂度随相关长度呈指数增加的,故这里没有考虑。由此,共有11种备选方案。242归零处理MAP译码算法中,前向递推G和后向递推反G的初始递推值一般是型山SNRFDBI图27归零方式对译码性能的影响根据分量编码器的初始状态和编码后的结束状态决定的。在本章中已给出了哈尔滨1程大学硕十学位论文对于编码器不同归零处理方式所对应的前后向递推初始值。图27为编码器不同归零处理对译码性能影响的仿真比较。从图中可以看出,对TURBO码编码器进行魑零处理,能改善译码性能。3条误码率涟线中,不归零的TURBO码性能略差于两种进行过归零处理的TURBO码,双归零的TURBO码性能又略好于单归零的TURBO码。在本文采用的编码方案中,在每一帧编码数据结束时,分别对两个分量编码器进行了归零处理。2A3交织器的选择在TURBO码的编译码系统中,交织器扮演着一个非常重要的角色,它的主要作用是将输入信息序列比特顺序重嚣,减小分量码输出的校验比特之间的相关性,起到随机编码的终用,同时提高输出校验序列的码重,扶瑟在迭代译码过程中降低误比特率。由于分组交织器的抗周期性错误性能差,分组螺旋交织器去相关性不彻底,这里没用采用它们作为备选方案,而是采用性能最好的几种伪随机交织器作为备选方案。如WCDMA采用的3GPP交织器,CDMA2000采用的交织器,S随机交织器。244帧长的选择在辎同译码算法和迭代次数的条件下,帧长越长,TURBO码静译码性能就越好。但是帧长越长,虽能褥到更好的译码性能,却增加了TURBO码的译码时间,同样增加了TURBO码的译码延时,降低了TURBO码译码器的数据处理速度。所以,在实际工程应用中,帧长所带来的编码增益与同时带来的译码延时,要根据实际需求,进行折中选择。由于本系统要求的帧长不长。综合考虑,这里仿真采用三种帧长256,512,1024作为备选方案。哈尔滨T程大学硕十学伉论文245调制解调的选择由于MSK调制有两种调制方案带差分编码和不带差分编码。它们的误玛率性能如图28所示。为提高整个逶信系统的性能,这里采孀了不带差分编码的MSK调制方案。图28MSK调制方案性能比较圈246译码算法的选择在3种译码算法中,MAP译码算法具有最优的译码性能,在低信噪比的情况下,仍具有优异的译码性能,随着信噪比的增加,误码率快速的下降;随着迭代次数的增加,误码率蘸线也快速的收敛。LOGMAP译码算法是MAP译码算法在对数域上的等效简化算法,译码性能和MAP译码算法相当,但便于硬件实现。MAXLOGMAP译码算法在3种译码算法中,性能最差,随哈尔滨L程大学硕士学傅论文着信噪比的增加,误码率下降的速度和前两种算法相比较要慢,随着迭代次数的增加,误码率麓线收敛的速度也较慢。要硬件实现TURBO码译码器,MAP译码算法,复杂度高,计算量大,现有的技术条件下,应不予考虑。LOGMAP译码算法译码性能和MAP译码算法相当,性能优异而且便于硬件实现,译码性能要求非常高的场合可以考虑。MAX。LOGMAP算法和LOGMAP算法相比较,从译码性能上来说,MAXLGOMAP译码算法要差一些,但是从其总体译码性能来说,已具有非常好的译码性

温馨提示

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

评论

0/150

提交评论