PCCC码(Turbo码)的编码和译码算法

2019-08-30 21:26

目 录

一、 概述 .................................................................... 1 二、 PCCC码的编码算法 .................................................................................................................... 3 三、 PCCC码的译码算法 .................................................................................................................. 13

一、 概述

虽然软判决译码、级联码和编码调制技术都对信道码的设计和发展产生了重大影响,但是其增益与Shannon 理论极限始终都存在2~3dB 的差距。因此,在Turbo 码提出以前,信道截止速率R0 一直被认为是差错控制码性能的实际极限,shannon 极限仅仅是理论上的极限,是不可能达到的。

根据shannon 有噪信道编码定理,在信道传输速率R 不超过信道容量C 的前提下,只有在码组长度无限的码集合中随机地选择编码码字并且在接收端采用最大似然译码算法时, 才能使误码率接近为零。但是最大似然译码的复杂性随编码长度的增加而加大,当编码长度趋于无穷大时,最大似然译码是不可能实现的。所以人们认为随机性编译码仅仅是为证明定理存在性而引入的一种数学方法和手段,在实际的编码构造中是不可能实现的。

在1993 年于瑞士日内瓦召开的国际通信会议(1CC,93)上,两位任教于法国不列颠通信大学的教授C.Berrou、A.Glavieux 和他们的缅甸籍博士生

P.thitimajshima 首次提出了一种新型信道编码方案——Turbo 码,由于它很好地应用了shannon 信道编码定理中的随机性编、译码条件,从而获得了几乎接近shannon 理论极限的译码性能。仿真结果表明,在采用长度为65536 的随机交织器并译码迭代18 次情况下,在信噪比Eb/N0≥0.7dB 并采用BPSK 调制时,码率为1/2 的Turbo 码在AWGN 信道下的误比特率≤10-5,达到了与Shannon 极限仅相差0.7dB 的优异性能(1/2 码率的Shannon 极限是0dB)。

Turbo 码又称并行级联卷积码 (PCCC,Parallel Concatenated Convolutional Code),它巧妙地将卷积码和随机交织器结合在一起,在实现随机编码思想的同时,通过交织器实现了由短码构造长码的方法,并采用软输出迭代译码来逼近最大似然译码。可见,Turbo 码充分利用了Shannon 信道编码定理的基本条件,因此得到了接近Shannon 极限的性能。

在介绍Turbo 码的首篇论文里,发明者Berrou 仅给出了Turbo 码的基本组成和迭代译码的原理,而没有严格的理论解释和证明。因此,在Turbo 码提出之初,其基本理论的研究就显得尤为重要。J.Hagenauer 首先系统地阐明了迭代译码的原理,并推导了二进制分组码与卷积码的软输入软输出译码算法。由于在Turbo 码中交织器的出现,使其性能分析异常困难,因此S.Benedetto 等人提出了均匀交织(UI,Uniform interleaver)的概念,并利用联合界技术给出了Turbo 码的平均性能上界。D.Divsalar 等人也根据卷积码的转移函数,给出了Turbo 码采用MLD 时的误比特率上界。对于Turbo 码来说,标准联合界在信噪比较小时比较宽松,

只有在信噪比较大时才能实现对Turbo 码性能的度量。因此,T.M.Duman、I.Sason 和D.Divsalar 等人在Gallager 限等已有性能界技术的基础上进行改进.扩展了Turbo 码性能界的紧致范围。D.Divsalar 等人还根据递归系统卷积码的特点提出了有效自由距离的概念,并说明在设计Turbo 码时应该使码字有效自由距离尽可能大。L.C.Perez 等人从距离谱的角度对Turbo 码的性能进行了分析,证明可以通过增加交织长度或采用本原反馈多项式增加分量码的自由距离来提高Turbo 码的性能。他们还证明了Turbo 码虽然自由距离比较小,但其小重量码字的数目较少,从而解释了低信噪比条件下Turbo 码性能优异的原因,并提出了交织器增益的概念。S.Dolinar 的研究表明,Turbo 码的最小距离码字主要由重量为2 的输入信息序列生成,是形成错误平台的主要原因。为提高高信噪比条件下Turbo 码的性能,就必须提高低重输入信息序列的输出码重。J.Seghers 系统地分析了Turbo 码的距离特性。由于交织器的存在,无法给出Turbo 码自由距离的严格数学表示,相应地也出现了许多分析和计算Turbo 码最小距离、重量分布和性能上限的方法。A.Ambroze 还构造了Turbo 码的树图,用来作为计算码字距离谱的工具。此外,R.M.Tanne、E.Offer 和K.Engdahl 分别从代数和统计的角度对Turbo 码进行了分析。考虑到Turbo 码的延时问题,E.K.Hall 等人提出了面向流的Turbo 码。也可以用其他系统模型采描述Turbo 码及其迭代译码过程:T.Richardson 把Turbo 码作为一个动力学系统进行描述;A.K.Khandani 则把Turbo 码考虑成一个周期性的线性系统; J.Laertyy, X.Ge 和F.R.Kschischang 描述了Turbo 码的图模型;在图模型的基础上, D.J.C.MaKay 等人证明了Turbo 码的校验矩阵与LDPC 码的校验矩阵是等价的,从而可以将Turbo 码看成一类特殊的LDPC。

二、 PCCC码的编码算法

输入:信源消息u(消息分组u) 输出:码字v 处理:

信源输出为一系列二进制数字0和1。在分组码中,这些二进制信息序列分成

固定长度的消息分组(message blocks)。每个消息分组记为u,由k个信息位组成。因此共有2k种不同的消息。编码器按照一定的规则将输入的消息u转换为二进制n维向量v,这里n >k。此n维向量v就叫做消息u的码字(codeword)、码字矢量或码向量(code vector)。 因此,对应于2k种不同的消息,也有2k种码字。这2k个码字的集合就叫一个分组码(block code)。若一个分组码可用,2k

个码字必须各不相同。因此,消息u和码字v存在一一对应关系。由于n符号输出码字只取决于对应的k比特输入消息,即每个消息是独立编码的,从而编码器是无记忆的,且可用组合逻辑电路来实现。

定义:一个长度为n,有2k个码字的分组码,当且仅当其2k个码字构成域GF(2)上所有n维向量组成的向量空间的一个K维子空间时被称为线性(linear)(n, k)码。

卷积码是把信源输出的信息序列,以k0个(k0通常小于k)码元为一段,通过编码器输出长为n0 (≥ k0)的码段。但是该码段的n0-k0个校验元不仅与本组的信息元有关,而且也与其他前m段的信息元有关,称m为编码存贮,因此卷积码用(n0,k0, m)表示。

卷积码与分组码不同,在进行编码时,本组的校验元不仅与本组的信息元有关,而且还与以前各时刻输入至编码器的信息组有关。同样,在卷积码译码过程中,不仅从此时刻收到的码组中提取译码信息,而且还要利用以前或以后各时刻收到的码组中提取有关信息。正是由于在卷积码的编码过程中,充分利用了各组之间的相关性,因此,在与分组码同样的码率和设备复杂性条件下,无论从理论上还是从实际上均已证明卷积码的性能至少不比分组码差,且实现最佳和准最佳译码也较分组码容易。为简便起见,我们以(2,1,2)卷积码为例,对其进行说明。

输入D1D21输出2

图1 (2,1,2)卷积码编码器

图3-2中给出了一个二进制卷积码的编码器,若每一时间单位输入编码器一个新信息元mI,且存储器内数据右移一位,则mI一方面将数据送入存储器,另一方面与刚才存储器中的两个数据按图中的规则进行运算,则此时刻得到两个输出码元cI(1)、cI(2),组成一个子码送入信道。由图可知输入与输出的关系是

(1)??ci?mi?2?mi?1?mi (1-1) ?(2)??ci?mi?2?mi在每一时间单位送入编码器k0 (这里为1)个信息元,编码器就送出相应的n0 (这里为2)个码元组成一个子码cI送入信道。在卷积码中,这n0个码元组成的子码cI,也称为卷积码的一个码段或子组,上式中的“+”是模2和。

由式(3-1)可知,输入与输出码元之间是线性关系,所以这类编码器输出的卷积码是线性码,称m为编码存储,它表示输入的信息组在编码器中存储的时间数,称m+1=N为编码约束度,说明编码过程中互相有约束关系的码元个数。同样,在卷积码译码过程中,不仅要根据此时刻输入到译码的子码,而且还要根据以后很长一段时间,如m’段时间内收到的各子码,才能译出一个子码的信息元,通常m’>m。称m??1?Nd为译码约束度,称n0Nd为译码约束长度,它们分别表示译码过程中互相有约束的码段或码元个数。

从式(3-1)中还可看出,输出的码元中,不一定与输入的码元相等,所以这样的码是非系统码。当然,如果输出的码段中的某一位码元与输入的码元固定相等,则这样的码为系统码。

总之,在卷积码的各码段之间,不论是编码还是译码,都不是每段各自处理,而是与前后m或m?段有关,所以卷积码通常用(n0,k0,m)表示,k0/n0?R,称为卷积码的码率。

1. Turbo 码的编码

Turbo 码的编码结构可以分为并行级联卷积码(PCCC)、串行级联卷积码(SCCC)和混合级联卷积码(HCCC)三种,如图1所示。


PCCC码(Turbo码)的编码和译码算法.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:《教育技术应用》教学大纲

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: