




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
TurboTurbo 码的编译码原理及码的编译码原理及 MATLABMATLAB 仿真仿真 摘要摘要纠错码技术作为改善数字通信可靠性的一种有效手段,在数字通信的各个领域中获得极为广泛的应用。Turbo 码是并行级联递归系统卷积码,在接近 Shannon 限的低信噪比下能获得较低的误码率,现已被很多系统所采用。本文分析了 Turbo 码编码译码的原理,为了使 Turbo 码仿真更容易,研究并建立了基于 Matlab 中 Simulink 通信模块的 Turbo 码仿真模型。使用所建立的模型进行仿真,结果表明,在信噪比相同的情况下,交织长度越大、迭代次数越多、译码算法越优,Turbo 码性能越好,设计实际系统时,应综合考虑各因素。关键词:Turbo 码;Simulink 仿真;交织长度;迭代次数AbstractAs an effective means to improve the reliability of digital communication, error correcting code technology is widely used in the field of digital communication.Turbo code is a parallel concatenated recursive systematic convolutional code, which can obtain lower bit error rate in the low SNR near Shannon limit,which is now used by many systems.In this paper,the principle of Turbo coding and decoding is analyzed,in order to make the Turbo Code simulation easier,a Turbo code simulation model based on Simulink module of Matlab is studied. Simulation result using the established model shows that the longer interleaving length,the more iteration times and the better decoding algorithm bring the better Turbo code performance with the same SNR value.Keywords:Turbo code;Simulink simulation;Interleaving length;Iteration times;引言引言根据 Shannon1有噪信道编码定理,在信道传输速率 R 不超过信道容量 C 的前提下,只有在码组长度无限的码集合中随机地选择编码码字并且在接收端采用最大似然译码算法时,才能使误码率接近为零。但是最大似然译码的复杂性随编码长度的增加而加大,当编码长度趋于无穷大时,最大似然译码是不可能实现的。所以人们认为随机性编译码仅仅是为证明定理存在性而引人的一种数学方法和手段,在实际的编码构造中是不可能实现的。直到 Turbo 的出现,人们才改变了这种看法。1993 年,Claud Bernou 等人在国际通信会议(ICC 93)上提出了并行级联卷积码(PCCC)即 Turbo 码,由于它很好地应用了Shannon 信道编码定理中的随机性编译码条件,从而获得了几乎接近 Shannon 理论极限的译码性能。Turbo 码巧妙地将两个简单分量码通过伪随机交织器并行级联来构造具有伪随机特性的长码,并通过在两个软输入/软输出( SISO)译码器之间进行多次迭代实现了伪随机译码。采用迭代译码的方法来提高通信系统的译码性能是 Turbo 码的最大特点。Turbo 码的编码器、译码器结构繁琐,是一种非常复杂的信道编码方案,这使得对 Turbo 码的理论分析十分困难,且只能对运算复杂度作宏观分析,对 Turbo 码的具体实现并没有一个清楚的度量。因此,使用计算机对 Turbo 码进行仿真分析是十分必要的。本文分析了 Turbo 码编码译码的原理,考虑到 Turbo 码系统编译码的数据处理量很大,利用生成矩阵对信息序列进行编码、译码时的迭代计算等等,都涉及了矩阵运算,故采用 Matlab/Simulink 来进行建模仿真。1 Turbo 码编码原理码编码原理1.1Turbo 码的编码结构码的编码结构Turbo 码的典型编码器如图 1 所示,Turbo 码编码器主要由分量编码器、交织器复接器组成。分量码一般选择为递归系统卷积(RSC,Recursive Systematic Convolutional)码2,当然也可以是分组码(BC, Block Code)、非递归卷积(NRC,Non-Recursive Convolutional)码以及非系统卷积(NSC,Non-Systematic Convolutional)码,但从后面的分析将看到,分量码的最佳选择是递归系统卷积码。通常两个分量码采用相同的生成矩阵,当然分量码也可以是不同的。以分量码为 RSC 为例,分量编码器为递归系统卷积码(RSC)编码器。第一个 RSC 之前不使用交织器,后续的每个 RSC 之前都有一个交织器与之对应。一个 Turbo 编码器中原则上可采用多个 RSC,但通常只选用 2 个,因为过多的 RSC 分量编码器将使得译码非常复杂而难以实现。通常的 Turbo 码编码器中,长度为 N 的信息序列在送入第一个分量编码 ku器的同时作为系统输出直接送至复接器,同时经过一个 N 位交织器,形成一个新 skx ku序列(长度与内容没变,但比特位置经过重新排列。与分别传送到两个分量码 ku ku ku编器(RSC1 与 RSC2)。一般情况下,两个分量码编码器的结构相同,生成分量码校验序列和。与未编码的信息序列经过复接后,生成 Turbo 码序列,将 pkx1 pkx2 ku ku skx kc编码序列调制后,即可发射进入信道传输。 ku skx kc pkx1 ku图1 Turbo码的编码器结构2.2 递归系统卷积码(递归系统卷积码(RSC)纠错编码是将k位的输入信息码元编成n位的输出信道码元,在编码中,可以采用一定的算法,使输出码元中的k位与输入码元一致。这样,输入码元与输出码元有明显的对应关系,这种码称为系统码。系统码中一致的这k位数据称为信息位3,输出码元其余的分量编码器 CRS1n-k位称为校验位,不满足这种关系的码称为非系统码。同样的,卷积码可以分为系统卷积(SC,Systematic Convolutional)码与非系统卷积(NSC,Non-Systematic Convolutional)码两大类。以下图2的(2,1,2)卷积码为例,设时刻k的输入码元为,输出码元为和,kdkXkY则输出码元与输入码元的关系为 kYkd kX 图2 卷积码 (2-1)10121KiikikkkkdgdddX (2-2)1022KiikikkkdgddY式中,的系数,的系数。ig11Gig22G非递推系统卷积码,约束长度K=3,但码生成多项式为Gl=4,G2=5。它的输出码元与输入码元的关系为 (2-3)kkdX (2-4)1022KiikikkkdgddY系统码的结构比非系统码的简单,模2加法器和连线的数量都比非系统码的要少。RSC码是由一个NSC码编码器通过反馈,并使等于输入信息比特而构成的。kXkd对RSC编码器,移位寄存器输入不再是数据比特,而是一个新的二元变量。如果kdka=,输出为式(2-4),其中由代替,而由下式递推计算kXkdkYkdkaka (2-5)11Kiikikkarda式中 (2-6)iigr1式(2-5)可写为 (2-7)10Kiikikard下面讨论为什么选择RSC编码器作为Turbo码的子编码器。首先,RSC码具有系统码的优点。因为系统码在从码字恢复出信息序列时无需求逆,这一特性使用户在译码时无需变换码字而直接对接收的码序列进行译码。所以,RSC码对于NSC码而言译码简单、快速。其次,还可以从Turbo码重量分布的角度给予解释。通过观察递归卷积码与非递归卷积码的低重量信息序列所产生的码字的分布情况,可以发现二者之间有明显的不同,低重量的输入信息序列经过非递归卷积编码器之后,只能产生低重量的监督码元序列,低重量码字的增加将严重影响Turbo码的性能,而低重量的信息序列经过递归卷积编码之后,输出的监督码元的重量分布在一个很宽的范围之内,这是由其反馈特性所造成的。因此,用非递归卷积码所构造的Turbo码的性能比较差,Turbo码需要递归卷积码实现。最后,从差错控制编码4的相关文献中也可知,在对比实验中,非系统卷积码(NSC)的BER性能在高信噪比时比约束长度相同的非递归系统码要好,而在低信噪比时情况却正好相反13。递归系统卷积(RSC)码综合了NSC码和系统码的特性,虽然它与NSC码具有相同的trellis结构和自由距离,但是在高码率的情况下,对任何信噪比,它的性能均32R比等效的NSC码要好。由于系统递归卷积码具有以上特点,并且能改善误码率,所以通常选择RSC码作为Turbo码的子编码器。NSC的可由生成算子和来描述,也可将其表示为矩阵形式1111g1012gRSC可以表示为。NSC中的第一个支路输出被反馈到了输入端,21,ggG 12, 1ggG 从而引起了生成矩阵形式上的变化。RSC的矩阵表达式中,1对应着输出的系统信息序列,对应着编码器的前馈输出,对应着反馈到输入端的成分。2g1g研究指出 RSC 的原始生成多项式的基础上加上适当的反馈,往往能获得好码,因为应用了反馈之后,可以获得最大长度的编码序列,根据分组码的知识,我们知道这给码序列增加了随机性,从而能获得更好的误比特率。2.3 交织器交织器交织器其实是通信系统中进行数据处理而采用的一种技术,交织器从其本质上来说就是一种实现最大限度的改变信息结构而不改变信息内容的器件,也就是使在信道传输过程中所突发产生集中的错误最大限度的分散化4,不规则化。我们设X为交织器的输入,Y为交织器的输出,I就是交织器,所以。一般的应用交织器往往都是有延时的, XIY 我们有必要引入一个新的概念:交织器的延时,它是指在时刻i,输出的与此时此刻或iy以前的输入有关,且,用式子来表示就是,相应的ijxjiiI0iIi为交织器的最小延时。iIiti0minmin交织器是Turbo码编码器主要的组成部分,也是Turbo码的重要特征之一。线性码的纠错译码性能实质上是由码字的重量分布决定的,Turbo码也是线性码,所以其性能也是由码字重量分布决定的,由于交织器实际上决定了Turbo码的重量分布,所以,给定了卷积编码器后,Turbo码的性能主要是由交织器决定的。在低SNR时,交织器的大小将直接影响着Turbo码的差错性能。因为交织长度大时,两个子编码器接收的输入序列的相关性就可以很低,就越有利于译码迭代,从而使得迭代结果越准确。在高SNR时,是Turbo码的低重量码字、最小汉明距离或距离谱决定着它可以达到的BER性能,所以交织器的设计显著的影响着低重量码字或距离谱,重量分布是反映纠错码性能的重要指标5,所谓具有好的重量分布,就是要尽量减少低重量的码字的数量。如果没有交织器的作用,Turbo码的两个子编码器的输入就相同。如果其中一个经编码后产生低重量的码字,那么该序列在经过第二个字编码器输出后也会产生低重量的码字。反之,加入交织器,由于交织器对输入序列进行了置换,使得数据在进入第二个编码器之前被打乱,也就改变了原来信息的排列方式,所以Turbo码的两个子编码器同时产生低重量输出的可能性就更小了,也就是说交织器减小了Turbo码产生低重量码字的概率,从而可以使Turbo码有比较好的纠错性能6。在Turbo码中,交织器的这种使输入码元符号的顺序尽可能随机分布的作用,将使码元符号之间的相关性减弱,使进入各个子译码器的信息序列之间不相关。这种去相关的结果使得各个子译码器可以彼此独立的工作。彼此独立进行译码的结果是,软判决信息可以互相利用,判决结果也因此逐渐准确。从而,使Turbo码译码器的性能远远好于其它类型的译码器,包括其他类型的级联译码器。但是,由于交织器的存在,使得Turbo码存在一定的时延,数据帧越长,延时越大。而且交织器的长度会对Turbo码的译码性能有很大的影响,交织深度越大,译码的误码率越低,传输质量越高。所以,对于那些允许有较大时延的业务,Turbo码的作用就可以得到充分的发挥。但是,对于那些不允许有较大时延的业务,Turbo码的应用却受到了限制。3 Turbo码译码3.1 Turbo 码的译码结构码的译码结构通常情况下,Turbo码编码器使用两个分量RSC,编码输出包含了信息序列(在译码端常常被称为系统信息或系统比特)和两个分量RSC编码器输出的校验信息序列。对接收到的观测序列进行译码的时候,根据编码结果,把译码器分解为两个独立的译码器DECl和DEC27,分别跟两个RSC分量编码器相对应。为了得到对原始信息的最优估计,两个译码器分别对系统信息和两个校验序列进行译码时,应该相互利用校验序列所含的信息,采用迭代译码,通过分量译码器之问软信息的交换来提高译码性能,这也是Turbo码获得优异性能的根本原因之一。图3 Turbo码的译码结构以码率为1/3的Turbo码为例,编码输出信号为 (3-1)pkskkxxX,对于BPSK调制,输出信号与编码码字 (3-2)pkskkccC,Lc分量译码器1+交织器交织器分量译码器2解交织器解交织器硬判决之间满足关系 (3-3)12kskCEX假定接收信号为 (3-4)pkskkyyY,式中 (3-5)kskskixy (3-6)kpkpkqxy和是服从均值为0,方差为的独立同分布高斯随机变量。kikq20N在接收端,接收采样经过匹配滤波之后得到的接收序列 (3-7)NRRRR,.,21经过串并转换后得到如下三序列:系统接收信息序列 (3-8)sNsssyyyY,.,21用于DECl的接收校验序列 (3-9)pNpppyyyY112111,.,用于DEC2的接收校验序列 (3-10)pNpppyyyY222212,.,若其中某些校验比特在编码过程中通过删余矩阵被删除,则在接收校验序列的相应位置以“0”填充。上述3个接收序列、和,经过信道置信度加权后作为系统sYpY1pY2cL信息序列,信息序列和送入译码器。对于噪声服从分布Ics;Icp;1Icp;2N(0,No2)的AWGN信道来说,信道置信度定义为 (3-11)04NELsc对于第k个被译比特,Turbo译码器中每个分量译码器都包括系统信息、校验Icsk;信息和先验信息。其中先验信息由另一个分量译码器生成的外部Icipk; kiau kiau信息经过解交织后的对数似然比值。译码输出为对数似然比,其中 keiu,3Ouik;i=l,2。在迭代过程中,分量译码器1的输出可表示为系统信息、先验信息Ouk;1Icsk;和外部信息之和的形式 kau1 keu1=+ (3-12)Ouk;1Icsk; kau1 keu1式中 (3-13) kekIauu21为交织映射函数。 kI在第一次迭代时 (3-14) 02keu从而 (3-15) 01kau由于分量译码器1生成的外部信息与先验信息和系统信息无 keu1 kau1Icsk;关,故可以在交织后作为分量译码器2的先验信息输入,从而提高译码的准确性。同样,对于分量译码器2,其外部信息为输出对数似然比减去系统 keu2Ouk;2信息(经过交织映射)和先验信息的结果,即 IcskI; kau2=- (3-16) keu2Ouk;2 IcskI; kau2式中= (3-17) kau2 kIeu1外部信息解交织后反馈为分量译码器1的先验输入,完成一轮迭代译码。 keu2随着迭代次数的增加,两个分量译码器得到的外部信息值对译码性能提高的作用越来越小,在达到一定的迭代次数后,译码性能不再提高。这时根据分量译码器2的输出对数似然比经过解交织后再进行硬判决即得到译码输出。3.2 译码中软信息的确定译码中软信息的确定首先我们来讨论硬判决和软判决的概念和区别。硬判决和软判决是指译码的时候对接收到的比特进行量化的两种形式。硬判决译码中,从信道接收到一个比特,即对其进行量化,判断其观测值是0或者1,然后进入译码器进行译码计算。软判决译码中,接收到一个比特的信息,并不立即对其进行量化而得到观测值,而是根据多个比特依照它们之间的相关性而进行判决。理想的软判决译码中,量化是基于无限比特的,而且从信道接收到的序列值立即进入信道译码器参与译码计算8。假设信息序列经过信道编码得到编码序列,采用BPSK调制方式,如果码元为0,则调制成-1发送,若码元为1,调制成+1。调制后的-1/+1序列在信道中传输,由于噪声的影响,序列的值会发生变化。如果我们在接收端接收到3V和0.3V两个脉冲电压,硬判决方式会将这两个脉冲都判决为二进制信息1,尽管第二个比特看起来离二进制1的判断标准还差很远。硬判决不可避免地会产生一些不恰当的判决,一旦作出判决,结果是不能更改和修正的。软判决则避免了这种情况,从信道接收到的序列不经过判决,直接进入译码器,由译码器分离出信息的先验概率参与译码,通过多个码元之间的相关性,计算得到一个软输出,再根据这个软输出作出最后的判决,得二进制译码比特。Turbo码译码时使用的是SISO(Soft In Soft Out)译码器,即译码器输入输出都为软信息,对软信息这一概念有两种解释:(1)假设输出比特为1的概率是,而为0的概率是这些概率信息即7 . 01 p 3 . 00 p称为软信息9。由于,故可判定此输出比特为1。 01pp(2)软信息的另一种定义为信道输出的非量化模拟值。假设在0,1之间,若信道输出值为0.753,可以判定此输出比特为1的可能性要大于为0的可能性,在实际应用中为硬件实现提供了方便,通常将信道输出的模拟值进行一定级数(通常大于2)的量化。例如信道输出的模拟量经过A/D变换的量化输出值即代表了信道输出为1和为0的概率,用3个比特来代表0-7级量化电平,如果输出实数值靠近第7级量化电平,即可判定此输出信息为1的概率很高,而为0的概率却很低,反之亦然。上边两种解释的实质是一样的,都利用了信道提供的传输可靠性信息,即信息的先验概率10。利用这种软信息进行译码判决的技术即称为软判决技术,软信息能够为译码器提供由信道产生的附加可靠性信息。以二进制信息传输为例,如果在解调器输出端即对解调信息进行判决为0或为1,并将此判决送给译码器,即采用硬判决译码方式。硬判决方式没有充分利用信道提供的可靠性信息,而是将其完全忽略,故其译码性能远不如软判决译码。译码输出端也存在软信息的问题,编码端的级联结构使得译码器包含两个或者多个成员译码器,各成员译码器之间通过译码信息的传递来进行级联的译码,如果成员译码器能够输出软信息,就可以提供给另一个成员译码器作为输入软信息,通过软信息的相互传递而使译码性能提高。Turbo码采用软输入软输出的译码结构。图4是软输入软输出译码器的示意图。从信道接收到的观测序列经过分解得到系统信息和校验信息,与先验信息(由另一个成员译码器提供)一起进入成员译码器参与译码,得到信息比特的对数似然比LLR,再据此作最后的判决得到译码序列。图4 软输入软输出译码示意图3.3 Turbo 码的译码算法码的译码算法Turbo码的一个重要特点就是在译码时采用了迭代译码的思想,迭代译码的复杂性仅是随着信息序列的大小增加而线性增长。与译码复杂性随码字长度增加呈指数形式增长的最优MID相比,迭代译码具有更强的可实现性。已有研究表明,基于最优译码算法的迭代译码与MID相比,是一种次最优译码。但采用迭代方式的Turbo码译码可以达到接近Shannon理论极限的性能。实际上,这类并行级联码之所以成为Turbo码,就是因为在译码器中存在反馈,类似于涡轮机的工作原理。在迭代进行过程中,通过分量译码器之间互相交换软比特信息来提高译码性能。Forney等人已经证明了最优的软输出译码器应该是后验概率(APP,A Posteriori Probability)译码器,它是以接收信号为条件的某个特定比特传输概率。Turbo码的译码算法主要分为基于最大后验概率(MAP)的算法11和基于软输出Viterbi译码算法两大类。MAP系列包括MAP算法、对数域Log-MAP算法以及其简化算法Max-Log-MAP算法。Viterbi系列算法包括Viterbi算法、改进的SOVA算法、采用滑窗的SOVA算法等。Viterbi系列算法是针对序列进行译码的算法,运算量较小,采用滑窗后还可以减小时延,系统信息校验信息先验信息SISO译码器易于工程实现。MAP类算法是针对比特进行译码的算法,运算量较大,但是性能比Viterbi算法好。3.3.1 Log-MAP 算法算法Log-MAP算法是MAP算法的一种转换形式,实现要比MAP算法简单。为推导Log-MAP算法,需要把MAP算法中的变量都转换为对数的形式,从而把乘法运算都转换为加法运算,同时译码器的输入输出相应地修正为LLR形式,再把得到的算法进行必要的修改就得到了Log-MAP算法。下面推导Log-MAP算法。在Log-MAP算法中,、和与MAP算法中的、和相对 eMk sAk sBk ek sk sk应,它们之间满足对数关系=ln (3-18) eMk ek=ln (3-19) sAk sk=ln (3-20) sBk sk首先分析对数路径度量的计算。在MAP算法的推导中己知,表达式中 eMk ek根据是否与边e有关而取值为1或0;概率的取值由信息比特的先eXpkKX esesPskEk验信息来决定。 kau对于噪声方差为的AWGN信道忽略常数项,有:20N (3-21)对于 AWGN 信道,有1212222ln000pkpkskskspkpkskskkkcycyNENxyNxyXYp (3-22)类似地,有 (3-23) 得到对数域上的路径度量计算式 (3-24) kkskEkkkXYpesespeeMlnlnln注意,式(3-24)仅在和之间存在传递时成立。 esEk essk尽管第二个分量码的系统比特序列在编码过程中没有传输,但它实际上是第一个分量码的系统比特序列经过交织后的比特序列。因为译码器的系统输入是通过对接Icsk;收信号的系统比特加权得到的,故可以通过对第一个分量码的进行交织来得到Icsk;1第二个分量码的;这样,第一个分量码和第二个分量码对于信息比特都有其相Icsk;2应的和。从而在计算前向路径量度和后向路径量度时两个分Icsk;Icpk; sAk sBk量译码器可以采用相同的计算公式。由于MAP算法中和的递推运算中存在指数和计算(由在AWGN信道上 sk sk ek的计算引入),所以在Log-MAP算法中引入操作,其定义为 *max (3-25) eefeeflnmax*通常可以对上述操作进行变形,对于两个变量的情况(x和y),有 *maxyxfyxeyxeeyxcyxyx,max1ln,maxln,max*假定编码器的起始状态和结束状态分别为和,则对应于Log-MAP算法,前、后0SNS向路径度量的递归计算初值分别为pkspkkpkkpkyNEIcpIcpIc04; 0; 1ln;jksssksksskskskssksksskNsskNsskskkskskyNEExypExypyExpyExpYExpYExpIcpIcpIc0114lnlnln; 0; 1ln; (3-26) (3-27) 在实际数值计算时,可以用一个的值较大来代替。如果编码寄存器在编码结束时状态未知,则初值可以设为或其它常数 (3-28) 0sBN根据上述推导,可以得到信息比特完整的对数似然比输出信息。代入的表达式,并提取通项,得到 eMk (3- esBcIcesAesBcIcesAIcuOuEkkpkpkskkeeuEkkpkpkskkeeuskkak12;21max12;21max;101129)由式(3-29)可以看出,输出对数似然比信息是先验信息、系统信息Ouk; kau与外部信息(剩余部分)之和。Icsk;由于两个分量译码器使用相同的系统信息,因此需要与处理先验信息Icsk;一样,将其从中分离出来,仅以外部信息作为先验信息用于下一轮译码。 kauOuk;类似地,也可以得到码字符号的译码输出概率对数似然比。将Log-MAP算法中的简化为通常的最大值运算,即为MAX-Log-MAP算法。 *max3.3.2 软输出软输出 Viterbi 算法算法 SOVASOVA算法也称为软输出的维特比算法(Soft-Output Viterbi Algorithms),它是在Viterbi算法的基础上改进而来的。由于在Turbo码出现之前,Viterbi算法已经广泛应用于工程之中,因此和其他几种算法相比,SOVA算法更适用应用于工程中。SOVA算法是Hagenauer在1989年出来的。他将Viterbi算法进行了改进,改进后的算法 其他, 000SssA 其他, 0sBNNSs不仅能得到最大似然路径,而且能计算出每个信息比特的后验概率,这样就使Viterbi算法可以级联使用22。SOVA算法是对传统的Viterbi算法做了两点改进:首先,在计算路径的度量时,考虑了先验信息,并且让先验信息在两个分量译码器之间传递;其次,算法可以以后验概率的形式为每一个信息比特提供软输出。Viterbi算法的基础是寻找能够使后验概率最大的状态序列,即: (3-30)kyPkySPkySPjjskjsk/,这里代表在幸存路径上的状态序列,这个状态序列在k时刻的状态为S,表skSkyj示k时刻前的接收序列。由于是已知的,因此要使上式最大,只要让最kyjkySPjsk,大,这就是k时刻的度量。这个度量可以通过循环递推的方式计算,即k时刻的度量等于k-1时刻的度量乘以在k-1时刻的状态的已知的情况下k时刻的状态为S并kySPjsk,且输出为的概率,即:ky= (3-31)kySPjsk,1,1kySPjsk,sysPk如果令度量为log因此有: sksMkySPjsk,=+log (3-32) sksM 1sksM,sysPk这样就得到了SOVA算法中的支路度量的计算公式:=log (3-33)pM,sysPk4 Matlab 仿真及结果仿真及结果4.1 Turbo 码仿真系统的实现码仿真系统的实现Turbo 码是经过模拟仿真来的,而不是根据既定的设计准则得到的。许多研究者正寻找其工作机理以便更好为 Turbo 码的构造提供理论依据。至到现在 Turbo 码的研究成果很大一部分是通过对各种参数的模拟性能结果中得到的。模拟仿真时,衡量其编码性能的好坏主要以误码率 BER(Bit Error Rate)来的。仿真中使用加性高斯白噪声信道(AWGN)模型,因为它易于构建,也是具有代表性的信道模型之一,同时假设使用 BPSK 调制方式。根据Turbo 码系统的结构特点,将整个 Turbo 编译码系统合理地划分成多个模块,使用MATLAB 通过模块化设计实现了可以用于计算机模拟的 Turbo 编译码系统。系统所包涵的模块具体划分为:主程序、信道模型子程序、交织子程序、RSC 编码子程序、使用不同的算法进行译码的译码子程序等。仿真中使用加性高斯白噪声信道(AWGN)模型,因为它易于构建,也是具有代表性的信道模型之一,同时假设使用 BPSK 调制方式。根据 Turbo 码系统的结构特点,本文将整个 Turbo 编译码系统合理地划分成多个模块,使用 MATLAB 通过模块化设计实现了可以用于计算机模拟的 Turbo 编译码系统。系统所包涵的模块具体划分为:主程序、信道模型子程序、交织子程序、RSC 编码子程序、使用不同的算法进行译码的译码子程序等。主程序控制着整个系统的流程。主程序首先完成对系统的先期设置,包括分量 RSC的生成矩阵、帧大小(即交织器的大小)、迭代次数、使用何种译码算法等等。然后,随即生成信息源,调用各子程序完成编码、传输以及译码的过程。 0 , 1仿真中使用加性高斯白噪声信道(AWGN)模型,因为它易于构建,也是具有代表性的信道模型之一,同时假设使用 BPSK 调制方式。根据 Turbo 码系统的结构特点,本文将整个 Turbo 编译码系统合理地划分成多个模块,使用 MATLAB 通过模块化设计实现了可以用于计算机模拟的 Turbo 编译码系统。系统所包涵的模块具体划分为:主程序、信道模型子程序、交织子程序、RSC 编码子程序、使用不同的算法进行译码的译码子程序等。交织子程序供主程序调用,主要完成对信息比特序列进行位置的随机置换,并提供给 RSC2 进行编码。对每帧进行置换的格式将保存下来,以便在译码过程中进行正确的解交织。RSC 编码子程序供主程序调用,完成编码。网格图生成子程序供译码子程序调用,用于生成给定生成矩阵对应的网格图。对一帧编码的子程序供 RSC 编码子程序调用,用于对一帧的信息比特编码。对一位信息比特编码子程序供对一帧编码的子程序调用,用于对单个输入比特进行编码。信道模型及复用调制子程序供主程序调用,用于生成信道模型,将两个 RSC 分量编码器编码序列和信息序列进行复用,根据需要的码率组成整个编码器的编码结果,然后使用 AWGN 信道模型将编码序列进行调制,模拟进入信道传输。译码前解复用子程序供主程序调用,用于从模拟信道接收观测序列,并将观测序列解复用,分解成系统比特序列和两个校验序列。译码子程序同主程序调用,用于实现具体的译码算法,对观测序列进行译码。4.2 Turbo 码的仿真结果及分析码的仿真结果及分析影响 Turbo 码性能的参数很多,这里分别就不同的译码算法、迭代次数、交织长度对Turbo 码性能的影响进行分析,给出仿真结果。4.2.14.2.1 不同译码算法对不同译码算法对 TurboTurbo 码的性能影响码的性能影响图 6 给出了采用不同译码算法下的 Turbo 码仿真结果。Turbo 码码率为 1/3,Log-Map 算法和 MAX-Log-Map 算法译码迭代次数为 3。从图中可以观察到 Log-MAP 译码算法性能明显要优于 MAX-Log-MAP 和 SOVA。在误码率为 104 时,Log-MAP 译码算法比MAX-Log-Map 译码算法好 0.4dB,比 SOVA 好 2dB 以上。Max-Log-MAP 算法用到了近似公式,故性能比 Log-MAP 有所下降。验证了译码算法性能 MAPLog-MAPMAX-Log-MAPSOVA 的结论。SOVA 算法虽然性能是几种算法中最差的,但复杂性较低易于实现。在实际运用中,要结合具体的情况,权衡硬件的复杂度和性能要求,选择合适的译码算法。 图 6 不同译码算法对 Turbo 码的影响4.2.24.2.2 迭代次数迭代次数 图 7 迭代次数对 Turbo 码的影响图 7 给出了不同迭代次数下,Turbo 码的误比特率与信噪比的关系曲线,采用 MAX-Log-MAP 算法,码率为。31从图 7 所示的仿真结果可以看出,随着迭代次数的增加,Turbo 码的误比特率曲线不断降低并趋于收敛;而且随着信噪比的增加,迭代对误比特率性能的影响越来越明显。这是 Turbo 码通过迭代译码充分利用冗余信息来提高编译码性能这一特点的反映。最初,迭代译码的增益较高,但随着迭代次数的增加,译码增益增长相对缓慢,虽然继续增加迭代次数可以提高 Turbo 码的性能,但权衡迭代所需要的时间、性能改善的幅度,我们通常都选取合适的迭代次数。 4.2.34.2.3 交织长度交织长度 图 8 交织长度对 Turbo 码的影响图 8 给出了不同交织长度下,Turbo 码的误比特率与信噪比的关系曲线。从图 8 中可以看出,交织长度越大,性能就越好,而且交织长度对性能的影响是很大的,这是由于交织器的存在所产生的所谓交织增益,使得 Turbo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国茶艺师中级面试预测题解析与备考指南
- 2025年中国建筑集团招聘面试宝典与模拟题答案
- 2025年传媒行业新媒体运营人才招聘面试指南与模拟题
- 2025年人工智能领域面试指南专业模拟题及答案解析
- 2024-2025学年新教材高中化学 第1章 化学反应的热效应 第2节 反应热的计算说课稿 新人教版选择性必修第一册
- 中医外科门诊管理办法
- 2025年农村社会治理创新实践案例分析模拟题及答案集编
- 2024年二年级品生下册《影子的探索》说课稿 北师大版
- 虚拟组合库存管理办法
- Unit 4 Agood read Reading 说课稿2024-2025学年牛津译林版八年级英语下册
- 工程保修管理措施与承诺事项
- 幼儿园卫生保健实施方案
- 2025年环保知识竞赛考试题库200题(附答案)
- 消除艾滋病、梅毒和乙肝母婴传播项目工作制度及流程(模板)
- TCTBA 001-2019 非招标方式采购代理服务规范
- 《挠曲电理论及应用》笔记
- 2025年泉州医学高等专科学校高职单招职业适应性测试近5年常考版参考题库含答案解析
- 小学样园图书室安全事故应急预案(3篇)
- 幼教培训课件:《幼儿园游戏环境-聚焦材料投放优化游戏环境》
- 2025年陕建华山路桥集团招聘笔试参考题库含答案解析
- 小学生倾听课件
评论
0/150
提交评论