第二章 Turbo码原理简介.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Turbo码原理简介 1993年C.Berrou、A.Glavieux和P.Thitimajshiwa首先提出了称之为Turbo码的并行级联编译码方案。Turbo码性能取决于码的距离特性。线性码的距离分布同于重量分布,如果低重量的输入序列经编码得到的还是低重量的输出序列,则距离特性变坏。该特性对于块码来说不存在问题;然而对于卷积码,则是个非常严重的问题。因为卷积码的距离特性是影响误码率的一个非常重要的因素。 在Turbo码中,利用递归系统卷积码(RSC)编码器作为成员码时,低重量的输入序列经过编码后可以得到高重量的输出序列。同时交织器的使用,也能加大码字重量。实际上,Turbo码的目标不是追求高的最小距离,而是设计具有尽可能少的低重量码字的码。Turbo码由两个递归系统卷积码(RSC)并行级联而成。译码采用特有的迭代译码算法。 1 Turbo码编码原理 典型的Turbo码编码器结构框图如图2所示:由两个反馈的编码器(称为成员编码器)通过一个交织器I并行连接而成。如果必要,由成员编码器输出的序列经过删余阵,从而可以产生一系列不同码率的码。例如,对于生成矩阵为g=[g1,g2]的(2,1,2)卷积码通过编码后,如果进行删余,则得到码率为1/2的编码输出序列;如果不进行删余,得到的码率为1/3。一般情况下,Turbo码成员编码器是RSC编码器。原因在于递归编码器可以改善码的比特误码率性能。 2 编码 方案中使用的Turbo码为1/3码率的并行级联码,它的编码器由两个相同的码率为1/2的RSC编码器及交织器组成,如图4所示。 由于与非递归卷积码相比,递归卷积码产生的码字重量更大,所以这里采用了两个相同的系统递归卷积码(RSC)。信息序列分成相同的两路,第一路经过RSC编码器1,输出系统码及校验码。另一路先通过交织器进行交织,使信息序列在1帧内重新排列顺序,然后经过RSC编码器2得到系统码和对应的校验码,由于该系统码和实际上都是原信息序列,只是排列顺序不同,在接收端完全可以通过对进行交织得到,因此在传输过程中可以省去,而只保留对应的校验位。在具体实现中, RSC编码器2的输入是通过对RSC编码器1的系统输出进行交织来得到的。再经过并/串转换,作为整个Turbo码编码器的输出。对应于每1位信息比特,该编码器输出3位,因此其码率为1/3。如果采用了奇偶删余,即在并/串转换时,在校验位奇位上取,偶位上取或反之,则码率可升为1/2。 由于RSC编码器不能如非递归编码器一样通过输入连“0”序列来使编码器复位(网格终止),因此通过设计如图8所示的A、B间的开关来控制编码器终止,当一帧结束时,开关由A打到B,则经过m时刻后,编码器复位,可以对下一帧数据进行编码。这里m=2。只有RSC编码器1(外编码器)进行了网络终止,RSC编码器2保持开放。 译码 由于Turbo码是由两个或多个成员码经过不同交织后对同一信息序列进行编码。译码时,为了更好地利用译码器之间的信息,译码器应该利用软判决信息,而不是硬判决信息。因此,一个有两个成员码构成的Turbo码的译码器是由两个与成员码对应的译码单元和交织器与解交织器组成的,将一个译码单元的软输出信息作为下一个译码器单元的输入,为了进一步提高译码性能,将此过程迭代数次。这就是Turbo码的迭代译码算法的原理。 Turbo码可以利用多种译码算法,如最大似然译码MAP、Log-MAP算法、Max-log-MAP算法和SOVA算法等。图所示为Turbo码迭代译码器的结构。 Turbo码译码器为串行结构,两个编码器所产生的校验信息通过串并转换被分开,分别送到对应的译码器输入端。首先,第一级译码器根据系统位信息L(ys|u)和第一级编码器的校验位信息L(y1|x1)得到输出信息(此时译码器2外信息Le[C2](u)=0),输出信息包含两部分,一部分是由译码器根据码字相关性提取出来的外信息,用Le[C1](u)表示;另一部分来自于系统位对应的信道输出,在传递给下一级译码器之前,被减去。Le[C1](u)在交织之后被送到译码器2作为先验信息,译码器2因此根据校验位信息、系统位信息和Le[C1](u)这三者共同做出估计,得到输出信息L(u),L(u)在减去Le[C1](u)+ L(ys|u)之后,得到译码器2的外信息Le[C2](u),它在解交织之后,反馈给第一级译码器作为先验信息,结合Le[C2](u),译码器1重新做出译码估计,得到改善的外信息。而此时的外信息又可以传递到译码器2,如此往复,形成迭代过程。最终,当达到预先设定的迭代次数或满足迭代结束条件时,译码结束,取L(u)的符号作为最终硬判决输出。 a)SOVA译码算法 传统Viterbi算法用来计算卷积码的最大似然(ML)序列,只提供硬判决输出。但在级联系统中,前级硬判决实

文档评论(0)

0520 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档