收藏 分享(赏)

TurboTurbo码的理论分析和研究.doc

上传人:dreamzhangning 文档编号:2284297 上传时间:2018-09-09 格式:DOC 页数:16 大小:494.50KB
下载 相关 举报
TurboTurbo码的理论分析和研究.doc_第1页
第1页 / 共16页
TurboTurbo码的理论分析和研究.doc_第2页
第2页 / 共16页
TurboTurbo码的理论分析和研究.doc_第3页
第3页 / 共16页
TurboTurbo码的理论分析和研究.doc_第4页
第4页 / 共16页
TurboTurbo码的理论分析和研究.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、Turbo 码的理论分析和研究摘要Shannon 编码定理指出:如果采用足够长的随机编码,就能逼近 Shannon 信道容量。但是传统的编码都有规则的代数结构,远远谈不上“随机”;同时,出于译码复杂度的考虑,码长也不可能太长。所以传统的信道编码性能与信道容量之间都有较大的差距。事实上,长期以来信道容量仅作为一个理论极限存在,实际的编码方案设计和评估都没有以Shannon 限为依据。1993 年两位法国教授 Berrou、Glavieux 和他们的缅甸籍博士生 Thitimajshima 在 ICC 会议上发表的 Near Shannon limit error-correcting codin

2、g and decoding: Turbo codes”,提出了一种全新的编码方式Turbo 码。它巧妙地将两个简单分量码通过伪随机交织器并行级联来构造具有伪随机特性的长码,并通过在两个软入/软出 (SISO)译码器之间进行多次迭代实现了伪随机译码。本文首先对 Turbo 码的编码原理进行了阐述和举例,进而重点讲解了 Turbo 码译码的原理,对比了 MAP 译码算法和 SOVA 译码算法。由以上的分析得出了很多重要的结论:如 Turbo 码采用反馈卷积码是为了获得更大的交织增益;Turbo 码的性能主要取决于它的有效自由距离;Turbo 码在低信噪比下具有近 Shannon 界纠错能力的原因

3、;自由距离较低引起 Turbo 码在中信噪比下出现纠错平台现象等等。关键词 编码定理 Turbo 码 并行级联卷积码 Turbo 码编码器 Turbo 码解码器一引言1. Turbo 码的发展现状Turbo 码由于其近 Shannon 界的突出纠错能力,成为近年信道编码理论研究的热点问题。其编码器由两个(或多个)带反馈的系统卷积码器经一交织器并行级联而成,接收端一般采用逐位最大后验概率译码器通过反复迭代循环来译码。Turbo 码有一重要特点是其译码较为复杂,比常规的卷积码要复杂的多,这种复杂不仅在于其译码要采用迭代的过程,而且采用的算法本身也比较复杂。这些算法的关键是不但要能够对每比特进行译码

4、,而且还要伴随着译码给出每比特译出的可靠性信息,有了这些信息,迭代才能进行下去。用于 Turbo 码译码的具体算法有:MAP(Maximum A Posterori)Max-Log-MAP、Log-MAP 和 SOVA(Soft Output Viterbi Algorithm)算法。MAP 算法是1974 年被用于卷积码的译码,但用作 Turbo 码的译码还是要做一些修改;Max-Log-MAP与 Log-MAP 是根据 MAP 算法在运算量上做了重大改进,虽然性能有些下降,但使得Turbo 码的译码复杂度大大的降低了,更加适合于实际系统的运用;Viterbi 算法并不适合Turbo 码的译

5、码,原因就是没有每比特译出的可靠性信息输出,修改后的具有软信息输出的 SOVA 算法,就正好适合了 Turbo 码的译码。这些算法在复杂度上和性能上具有一定的差异,这些算法的原理是对 Turbo 码研究的基础。仿真结果表明,在 AWGN 信道下,码率为 1 2 的 Turbo 码在达到误比特率(BER) 105 时, 0 E N b 仅为约 0.7dB (这种情况下达到信道容量的理想 0 E N b 值为 0db),远远超过了其他的编码方式,一时在信息和编码理论界引起了轰动。从此以后,Turbo 码得到了广泛的关注和发展,并对当今的编码理论和研究方法产生了深远的影响,信道编码学也随之进入了一个

6、新的阶段。2. Turbo 码的研究及应用现状Turbo 码提出两年之内就被首次硬件芯片实现,并一直受到理论研究者和实验科学家的重视。从 1997 年开始,Turbo 码和相关主题的国际会议每隔三年举行一次。第一次会议(1997 年)主要议题集中在编码器串并设计、交织器设计、解码器算法上,当时已经有人提出用 DSP 进行实时 Turbo 解码。在这个会议前后已经有了最早采用 Turbo码的商用通信系统。第二次会议(2000 年)的主要内容在分析和提高 Turbo 码的性能上,并且出现了关于 Turbo 码在衰落信道等非高斯信道上的研究。也有不少的研究在为实现Turbo 码的 DSP 解码而需要

7、做的简化解码复杂度的问题。对于 Turbo 码在传送不同信源的研究也在逐步进行中。第三次会议(2003 年)时,Turbo 码和其他相关通信技术的结合与应用被更多的关注,多用户检测、与 BLAST 的结合、多天线信道解码等具体的应用问题也被更多的提到。关于硬件电路和软件实现也是热点之一。有关“类 Turbo”码技术,如低密度校验(LDPC )码技术又重新被提出。在 Turbo 码提出十年左右的时候,它已经发展的比较完善,并且进入应用服务领域。由于 Turbo 码的优越性能,研究者在将它用于应用系统上作出了很多努力。例如移动卫星通信系统、数字音频广播、数字视频广播、深空通信、深空网、UMTS/3

8、GPP、CDMA 等系统。除此之外,Turbo 码技术也被应用到信息隐藏领域,例如视频和图象的加密和数字水印技术上。Turbo 码的思想也被用于分布式信源编码的研究和信源信道联合编码技术中。目前,Turbo 码的理论和应用研究仍在进行,这些研究将主要集中在如下几个方面:1)最优分量码与交织器的联合设计。2)低复杂性译码算法。3)译码迭代过程的优化,收敛性以及迭代停止准则的设计。4)联合信道估计/多用户检测 /均衡和译码算法。5)Turbo 码与高阶调制技术的结合。6)Turbo 编译码器的硬件实现。7)Turbo 码在无线通信,移动通信以及多媒体通信中的应用,特别是在移动通信网络,IMT-20

9、00 及加密系统中的应用等等。Turbo 码的出现是差错编码领域的一个里程碑。它在高速信息传输方面有着不可比拟的优势,也比传统编码有着更适应未来发展的前景。但 Turbo 码也存在着一些亟待解决的问题,例如译码算法的改进、复杂性的降低、译码延时的减小等。随着 Turbo 码用于实际通信系统的需要及软硬件技术的提高,这方面的问题在不久的将来一定会得到改进和完善。Turbo 码也必将在众多领域有更广阔的天地。二、Turbo 码的理论分析和研究1. Turbo 码的提出C.E.Shannon 在其“通信的数学理论 ”一文中提出并证明了著名的有噪信道编码定理,他在证明信息速率达到信道容量可实现无差错传

10、输时引用了 3 个基本条件:1) 采用随机性编译码。2) 编码长度 L 趋于无穷,即分组的码组长度无限。3) 译码过程采用最佳的最大似然译码(ML)方案。在信道编码的研究与发展过程中,基本上是以后两个条件为主要方向的。而对于条件1) ,虽然随机选择编码码字可以使获得好码的概率增大,但是最大似然译码器的复杂度随码字数目的增大而加大,当编码长度很大时,译码几乎不可能实现。因此,多年来随机编码理论一直是作为分析和证明编码定理的主要方法,而如何在构造码上发挥作用却并未引起人们的足够重视。直到 1993 年,Turbo 码的发现,才较好的解决了这一问题,为Shannon 随机码理论的应用研究奠定了基础。

11、Turbo 码,又称为并行级联卷积码(PCCC ) ,它通过在编码器中引入随机交织器,使码字具有近似随机的特性;通过分量码的并行级联实现通过短码(分量码)构造长码(Turbo 码) ;在接受端虽然采用了次最优的迭代算法,但分量码采用的是最优的最大后验概率译码算法,同时通过迭代过程可使译码接近最大似然译码。综合上述分析可见,Turbo码充分考虑了 Shannon 信道编码定理证明时所假设的条件,从而获得了接近 Shannon 理论极限的性能。模拟结果表明,如果采用大小为 65535 的随机交织器,并进行 18 次迭代,则在 Eb/No=0.7dB 时,码率为 1/2 的 Turbo 码在 AWG

12、N 信道上的误码率(BER)=10 -5,接近了 Shannon 限(1/2 码率的 Shannon 限时 0dB) 。Turbo 码就目前而言,已经有了很大的发展,在各方面也都走向了实际应用阶段。同时,迭代译码的思想已经广泛应用于编码、调制、信号检测等领域。本文首先介绍 Turbo 码的基本编码方案以及编码器的各个组成部分,然后简单介绍Turbo 迭代译码方案。2. Turbo 码的编码Turbo 码的最大特点在于它通过在编译码器中交织器和解交织器的使用,有效地实现了随机性编译码的思想,通过短码的有效结合实现长码,达到了接近 Shannon 理论极限的性能。Turbo 码编码器是由两个递归系

13、统卷积码(RSC )编码器通过一个随机交织器并行连接而成的,编码后的校验位经过删余阵,从而产生不同码率的码字。见图 2-1。 复 接 删余矩阵 分 量 编 码 器 1 交 织 器 分 量 编 码 器 2 图 2-1 Turbo 码编码器结构框图在 Turbo 码编码过程中,信息序列 u=u1,u2,uN经过一个 N 位交织器,形成一个新序列 u1=u1,u2,uN(长度与内容没变,但比特位置经过重新排列) 。u 与 u1 分别送到两个分量编码器,同时 u 作为系统输出 Xs 直接送至复接器。一般情况下,这两个编码器结构相同,生成序列 Xp1 与 Xp2。为了提高码率,序列 Xp1 与 Xp2

14、需要经过删余矩阵,采用删余技术从这两个校验序列中周期地删除一些校验位,形成校验位序列 Xp。X p 与未编码序列Xs 经过复用调制后,生成 Turbo 码序列 X。编码器中交织器的使用是实现 Turbo 码近似随机编码的关键。交织器实际上是一个一一映射函数,作用是将输入信息序列中的比特位置进行重置,以减小分量编码器输出校验序列的相关性和提高码重。删余矩阵的作用是提高编码码率,其元素取自集合0,1。矩阵中每一行分别与两个分量编码器相对应,其中“0”表示相应位置上的校验比特被删除,而“1”则表示保留相应位置的校验比特。下面通过一个具体实例来说明 Turbo 码的编码过程。如图 2-2 是一个码率为

15、 1/3 的 Turbo 码编码器的组成框图:Yk1 Shift Register RC Encoder Shift Register RC Encoder N-bit Interlaver Turbo Code Encoder Input Outpts Xk (N-bit lock) Yk2 dk 图 2-2 一个码率为 1/3 的 Turbo 码编码器这个编码器是基于(2,1,4)RSC (递归系统卷积码)的 Turbo 码编码器,分量码是码率为 1/2 的寄存器级数为 4 的(2,1,4)RSC 码,生成多项式为(1+D+D 2+D3+D4,1+D4) 。假设输入序列为 (10)kd(2

16、.1)则第一个分量码的输出序列为 (10)kXkY(2.2)假设经过交织器后信息序列变为 (10)kd(2.3)第二个分量码编码器所输出的校验位序列为 2(10)kY(2.4)则得到 Turbo 码序列为 (1,0,0,1)(2.5)若要将码率提高到 1/2,可采用一个删余矩阵,如 0P,表示分别删除1kY中位于偶数位的校验比特和 2kY中位于奇数位的校验比特。与系统输出 kX复接后得到Turbo 码序列为 (1,0,0,1)(2.6)同样,也可以通过在码字中增加校验比特的比率来提高 Turbo 码的性能。图 2-3 是 M 维 Turbo 编码器的一般性结构。以下如无特殊说明,所讨论的 Tu

17、rbo 码均是指由两个分量码构成 PCCC。交 织 器 1 分 量 编 码 器 1 分 量 编 码 器 M 分 量 编 码 器 2 交 织 器 M 交 织 器 2 图 2-3 Turbo 码编码器的一般性结构3. Turbo 码的译码Turbo 码获得优异性能的根本原因之一是采用了迭代译码,通过分量译码器之间软信息的交换来提高译码性能。一个由两个分量码构成 Turbo 码的译码器是由两个与分量码编码器对应的译码单元和交织器与解交织器组成的,将一个译码单元的软输出信息作为下一个译码单元的输入,为了获得更好的译码性能,将此过程迭代数次。这就是Turbo 码译码器的基本工作原理。3.1 Turbo

18、码译码器的组成Turbo 码译码器的基本结构如图 3-1 所示。De-interlaver Interlaver Interlaver Threshold RSC Decoder De-interlaver RSC Decoder Lk1 Lk2 Ln1 Ln2 yk1 k yk2 Xx xk Xn n dk Turbo Code Decoder Outpt Input 图 3-1 Turbo 码译码器框图由两个软输入软输出(SISO)译码器 DEC1 和 DE2 串行级联组成,交织器与编码器中所使用的交织器相同。译码器 DEC1 对分量码 RSC1 进行最佳译码,产生关于信息序列 u中每一比

19、特的似然比信息,并将其中的“外信息”经过交织送给 DEC2,译码器 DEC2 将此信息作为先验信息,对分量码 RSC2 进行最佳译码,产生交织后信息序列中每一比特的似然比信息,然后将其中的“外信息”经过解交织后送给 DEC1,进行下一次译码。这样经过多次迭代,DEC1 或 DEC2 的外信息趋于稳定,似然比渐进值逼近于对整个码的最大似然译码,然后对此似然比进行硬判决,即可得到信息序列 u 的每一比特的最佳估值序列 。在描述具体的迭代译码过程之前,先说明几个符号的意义。 kPA码字符号或信息符号的概率信息;kL码字符号或信息符号的概率对数似然比(LLR)信息;eA外部对数似然比信息;aL先验对数

20、似然比信息;u 信息符号;c 码字符号;以码率为 1/2 的 Turbo 码为例,编码输出信号为 ,spkkXx对于 BPSK 调制,输出信号与编码码字 ,spkkCc之间满足关系 21kskXE(3.1.1)假定接收信号为 ,()spkkYy其中skkpyxiq(3.1.2)ki和 q是服从均值为 0,方差为 No/2 的独立同分布高斯随机变量。在接收端,接受采样经过匹配滤波之后得到的接收序列 12,NR经过串并转换后得到如下三序列:系统接收信息序列 12,sssNYy用于 DEC1 的接收校验序列 112,ppN和用于 DEC2 的接收校验序列 2221,pppNYyy若其中某些校验比特在

21、编码过程中通过删余矩阵被删除,则在接收校验序列的相应位置以“0”填充。于是,两个译码器的输出序列分别为 1122:,spdecY为了使译码后的比特错误概率最小,根据最大后验概率准则,Turbo 译码器的最佳译码策略是,根据接收序列计算后验概率(APP) 12(),kkPuY。但这对于稍长一点的码计算复杂度太高。在 Turbo 码译码方案中,巧妙地采用了一种次最优的译码规则,将 1Y和 2分开考虑,由两个分量译码器分别计算后验概率 和 ,1,akL2,akPuYL然后通过 DEC1 和 DEC2 之间的多次迭代,使他们收敛于 APP 译码的 ,从而1接近 Shannon 极限。3.2 Turbo

22、 码的译码算法关于 和 的求解,目前已有多种方法,它们构成了 Turbo 码1,akPuYL2,akuYL的不同译码算法。下面分别简单介绍。3.2.1 分量码的最大后验概率译码(MAP)如图 3-2 所示 SISO 译码器,它能为每一译码比特提供对数似然比输出。 ()kLu skY p MAP 译 码 器 La(uk) 图 3-2 SISO 译码器框图MAP 译码器的输入序列为 ,其中, 。12,NkNYyy ,()spkky是关于 的先验信息, 是关于 的对数似然比。它们的定义如下:()akLuk()kLuk(1)ln0akkpu(3.2.1)(3.2.2)1()()lNkkyLupMAP

23、译码器的任务就是求解式(3.2.2),然后按照下列规则进行判决:(3.2.3)1()0kkuLu下面就对式(3.2.2)的计算方法进行推导。根据 Bayes 规则,式(3.2.2)可以写为(3.2.4)11111(,)111(,)0(,)/()ln0,)/(l,)/(kk Nkk NksuksupuypLSsypp式中,求和是对所有由 (或 )引起的 的状态转移进行的。1kkS可以按下式计算:11(,)NkkpSsy(3.2.5)11,k NkkkkkpsypssAA式中:为前向递推;1,kksSs为后向递推;1NkkspySs为 s和 s 之间的分支转移概率。1,k考虑到 RSC 编码器等价

24、于一个马尔可夫源,在状态 已知时,在 k-1 时刻以后发生1kS的事件与以前输入无关。因此,可得(3.2.6)1 11 1 1 (,),kkkks kkkkskkkkks spSsypSysys AA(3.2.7) 11 1(), ,NksNkkkks spSyssySs AA至于分支转移概率 ,可从其定义得到:,(3.2.8)1 1, kkkkkkkspSspysPupy式中, 是 的先验概率, 由信道转移概率决定。Puu为防止溢出,有必要对 和 进行归一化。ksk令 (3.2.9)11()kkkkNspy因为 ,所以11(,)kkkspySy(3.2.10)kks将式(3.2.6)带入上式

25、,并分子分母同除以 ,得到1kpy(3.2.11)1 1 1,/ ,kk kks sk ks sy 考虑到 ,于是有1 111/NkNkkpypyyp (3.2.12)11 1111111 ,()/,/,/,kkskNNkkks kskkskks ssyppysps 合并式(3.2.5)和(3.2.9) 得:(3.2.13)111 11(,) ,/Nk Nkk kpypyspys A将上式代入(3.2.4),分子分母同乘以因子 ,便得到最终计算公式:k(3.2.14)1(,)1(,)0,(ln,kkkksukkksusLA这样就完成了分量码的 MAP 译码算法的推导。 和 的递推示意图如图 3

26、-3ksk所示。S S1 S0 S1 S0 0,k k kS 1k 10kS 1k 1k 图 3-3 和 的递推示意图ksk假定分量编码器的初始状态和结束状态已知,则递归的初值可设为:和 (3.2.15)0(,)N01Ns若结束状态未知,则后向递推的初值为:(3.2.16)1/2,Nss其中 V 为编码器的寄存单元数。利用 Bayes 规则,从式(3.2.3)可以看出(3.2.17)1 1()()()()lnlnln()000N Nakkkk kpyupupyuLu L式中, 是关于 的先验信息。在迭代译码方案中, 是由前一级译码器的外akk ()ak信息经交织或解交织得到的。为了迭代继续进行

27、,当前译码器应从上式的第一项中提取新的外信息,作为下一级译码器的先验信息。式(3.2.1)可以写为(3.2.18)(1)(1)lnln0akkkpupuL从上式,可得:(3.2.19)exp/2akkPuAuL式中, ,为常量。1expkakAL对于 ,根据 , ,可得kyu,()spky,sppkkxux222222expexpexskkkspspkkkkspkkkuypdyuyuBA结合式(3.2.8),可得(3.2.20)2,exp/2expspakkkkkuysABuL 若定义 ;对于噪声服从分布 N(0,No )的 AWGN 信道,定1,e2epkcky义信道可靠性值 。则上式可以写

28、为:04/csLEN(3.2.21)11,exp22,aspkkkckcksekkckuLyLx A结合式(3.2.14)和上式,得(3.2.22)1,ekkksaskckk sLuyLuA第一项是信道值,第二项是前一级译码器提供的先验信息,第三项是可送给后继译码器的外部信息。对于图 3-1 所示的 Turbo 译码器,如果分量码译码器均采用上述 MAP 算法,则整个迭代中软信息的转移过程为: 1212DECDECMAP 算法的引入使组成 Turbo 码的两个编码器均可采用性能优异的卷积码,同时采用了反馈译码结构,实现了软输入软输出,递推迭代译码,使编译码过程实现了伪随机化,并简化了最大似然译

29、码算法,使其性能达到了逼近 Shannon 限。但 MAP 算法存在几个难以克服的缺点:(1) 译码延迟很大。(2) 计算时既要有前向迭代又要有后向迭代。(3) 与接收一组序列(交织器大小)成正比的存储量等。3.2.2 Log-MAP 算法Log-MAP 算法是 MAP 的一种简化形式,实现比较简单。就是把 MAP 算法中的变量都转换为对数形式,从而把乘法运算转换为加法运算,同时译码器的输入输出相应的修正为对数似然比形式。再把得到的算法进行必要的修改就得到了 Log-MAP 算法。下面简单介绍。在 Log-MAP 算法中, 与 MAP 算法中的 , 和,kkkMsAs和 B,ksks相对应,它

30、们之间满足对数关系。引入 max*()操作,其定义为: ks()()lnmax*feef从而(3.2.23)1 1,l,n, ,l , ,max*kkkkkksskkk kkssMsA AsMsssB Ak=B根据上式和式(3.2.22)可得计算式:(3.2.24)12ax*mskckkpckkskckksLuyLuAyxBss将 Log-MAP 算法中的 max*()简化为通常的最大值运算,即为 Max-Log-MAP 算法。3.2.3 SOVA 算法SOVA 算法是 Viterbi 算法的改进类型。它的译码过程是在接受序列的控制下,在码的篱笆图上走编码器走过的路径。运算量较小,适合工程运用

31、;但性能降低。在此不作详细介绍,有需要可参见参考文献。4结束语Turbo code 的出现为编码理论和实践带来了一场革命。在理论上,Turbo code 不仅有着不同于以往的结构,而且它给我们带来了迭代译码的思想,使通过可译编码逼近信道容量成为可能。目前,Turbo 码已作为第三代移动通信系统的信道编码方案之一;而且,在国际海事卫星组织最新公布的 INMARSAT-phoneM4 中,就是以 Turbo 码为核心技术来实现压缩频带的高速数据传输的;由于 Turbo 码的译码采用了迭代译码的思想,因此可以把它推广到 CDMA 多用户检测中 ,实现基于 Turbo 码译码原理的 CDMA 多用户检测接收机。可以说,只要时延和复杂度允许,Turbo 码可在各种恶劣条件下提供接近极限的通信能力,有望出现在未来的各种通信系统中。参考文献1纠错码原理与方法,王新梅、肖国镇,西安电子技术大学出版社,西安.2Turbo 码原理应用技术,刘东华,电子工业出版社,北京.3用于 Turbo 迭代译码的 log-MAP 算法的简化,刘东华 ,唐朝京,电子与信息学报, Vol.23 No.12Dec.2001 p:13401347.4Turbo 码的原理、设计与应用研究.电信技术研究, 刘东华,唐朝京,2002 年第二期 p:121.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报