《数字电视技术.pptx》由会员分享,可在线阅读,更多相关《数字电视技术.pptx(94页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 1)随机差错信道 信道中,码元出现差错与其前、后码元是否出现差错无关,每个码元独立地按一定的概率产生差错。从统计规律看,可以认为这种随机差错是由加性高斯白噪声AWGN(Additive White Gaussian Noise)引起的,主要的描述参数是误码率pe。第1页/共94页 2)突发差错信道 信道中差错成片出现时,一片差错称为一个突发差错。突发差错总是以差错码元开头,以差错码元结尾,头尾之间并不是每个码元都错,而是码元差错概率大到超过了某个标准值。通信系统中的突发差错是由突发噪声(比如雷电、强脉冲、时变信道的衰落等)引起的。存储系统中,磁带、磁盘物理介质的缺陷或读写头的接触不良等造成的
2、差错均为突发差错。实际信道中往往既存在随机差错又存在突发差错。第2页/共94页 2.分组码和卷积码 在分组码中,编码后的码元序列每n位为一组,其中k位是信息码元,r位是附加的监督码元,r=n-k,通常记为(n,k)。分组码的监督码元只与本码组的信息码元有关。卷积码的监督码元不仅与本码组的信息码元有关,还与前面几个码组有约束关系。第3页/共94页 3.线性码和非线性码 若信息码元与监督码元之间的关系是线性的,即满足一组线性方程,则称为线性码;反之,两者若不满足线性关系,则称为非线性码。4.系统码和非系统码 在编码后的码组中,信息码元和监督码元通常都有确定的位置,一般信息码元集中在码组的前k位,而
3、监督码元位于后r=n-k位。如果编码后信息码元保持原样不变,则称为系统码;反之称为非系统码。第4页/共94页 5.码长和码重 码组或码字中编码的总位数称为码组的长度,简称码长;码组中非零码元的数目称为码组的重量,简称码重。例如“11010”的码长为5,码重为3。第5页/共94页 6.码距和最小汉明距离 两个等长码组中对应码位上具有不同码元的位数称为汉明(Hamming)距离,简称码距。例如,“11010”和“01101”有4个码位上的码元不同,它们之间的汉明距离是4。在由多个等长码组构成的码组集合中,定义任意两个码组之间距离的最小值为最小码距或最小汉明距离,通常记作dmin,它是衡量一种编码方
4、案纠错和检错能力的重要依据。以3位二进制码组为例,在由8种可能组合构成的码组集合中,两码组间的最小距离是1,例如“000”和“001”之间,因此dmin=1;如果只取“000”和“111”为准用码组,则这种编码方式的最小码距dmin=3。第6页/共94页 对于分组码,最小码距dmin与码的纠错和检错能力之间具有如下关系:在一个码组集合中,如果码组间的最小码距满足dmine+1,则该码集中的码组可以检测e位错码;如果满足dmin2t+1,则可以纠正t位错码;如果满足dmint+e+1,则可以纠正t位错码,同时具有检测e位错码的能力。第7页/共94页 7.线性分组码 (1)封闭性,即任意两个准用码
5、组之和(逐位模2加)仍为一个准用码组。(2)两个码组之间的距离必定是另一码组的重量,因此码的最小距离等于非零码的最小重量。(3)线性码中的单位元素是A=0,即全零码组,因此全零码组一定是线性码中的一个元素。(4)线性码中一个元素的逆元素就是该元素本身,因为A与它本身异或结果为0。第8页/共94页4.1.2 循环码 1.定义 循环码是一种系统码,通常前k位为信息码元,后r位为监督码元。它除了具有线性分组码的一般性质以外,还具有循环性,也就是说当循环码中的任一码组循环移动一位以后,所得码组仍为该循环码的一个准用码组。第9页/共94页 2.多项式表示 数码用多项式来表示是一种比较直观的方法,如5位二
6、进制数字序列11010可表示为124123022121020=11010 通常在编码中,以x表示系数只取0、1的多项式的基,则上述位二进制序列可表示为1x41x30 x21x10 x0=x4x3x 这种以多项式的系数表示二进制序列的方法给编码处理带来了方便,一个(n,k)循环码的k位信息码可以用x的k-1次多项式来表示,即A(x)=ak-1xk-1+ak-2xk-2+a2x2+a1x+a0 (4-1)式中,an-1a0为多项式的0、1系数值;x表示多项式的基,x的次数n-10表示了该位在码中的位置。第10页/共94页 3.编码 循环码的编码规则是:把k位信息码左移r位后被规定的多项式除,将所得
7、余数作校验位加到信息码后面。规定的多项式称为生成多项式,用G(x)表示。要将A(x)左移r位,只要将A(x)乘上xr,得到xrA(x)。用生成多项式G(x)除xrA(x),便可得到余数R(x),即 xrA(x)=G(x)Q(x)+R(x)两边加上R(x),得 xrA(x)+R(x)=G(x)Q(x)+R(x)+R(x)第11页/共94页 因为R(x)+R(x)=0,所以有xrA(x)+R(x)=G(x)Q(x)(4-3)上式表明xrA(x)+R(x)可被生成多项式G(x)除尽。用这种编码方法能产生出有检错能力的循环码(n,k)。在发送端发出信号U(x)=xrA(x)+R(x),如果传送未发生错
8、误,则收到的信号必能被G(x)除尽,否则表明有错。第12页/共94页4.1.3 BCH码 BCH码是根据码的3个发明人Bose、Chaudhuri和Hocquenghem命名的。BCH码解决了生成多项式与最小码距之间的关系问题。根据所要求的纠错能力,可以很容易地构造出BCH码。它们的译码也比较简单,因此是线性分组码中应用最为普遍的一类码。BCH码分为本原BCH码和非本原BCH码。第13页/共94页 本原BCH码的码长n=2m-1,m为任意正整数。本原BCH码的生成多项式G(x)含有最高次数为m次的本原多项式。最高次数为m的本原多项式必须是一个能除尽x2m-1-1的既约因式,但除不尽xr-1,r
9、2m-1。例如当m=3时,2m-1=8-1=7,此时最高次数为3次的本原多项式有两个:x3+x2+1和x3+x+1,它们都除得尽x7-1,但除不尽x6-1、x5-1、。非本原BCH码的码长n是2m-1的一个因子,即码长n一定除得尽2m-1。且非本原BCH码的生成多项式中不含本原多项式。BCH码的码长n与监督位、纠错能力之间的关系如下:对任一正整数m和t,tm/2,必存在一个码长n=2m-1,监督位不多于mt位,能纠正所有小于或等于t位随机错误的二进制本原BCH码。表4-1为部分本原BCH码。第14页/共94页表4-1 部分本原BCH码 第15页/共94页表4-1 部分本原BCH码 第16页/共
10、94页4.1.4 级联编码 1.级联码 信道中由噪声引起的误码一般分为两类,一类是由随机噪声引起的随机性误码,一类是由冲击噪声引起的突发性误码。在实际通信信道中出现的误码是混合型误码,是随机性误码和突发性误码的混合。纠正这类混合误码,要设计既能纠随机性误码又能纠突发性误码的码。交错码、乘积码、级联码均属于这类纠错码。而性能最好、最有效、最常采用的是级联码。级联码是一种由短码构造长码的特殊的、有效的方法。通常由一个二进制的(n1,k1)码c1(为内编码)和另一个非二进制的(n2,k2)码c2(为外编码)就能组成一个简单的级联码。一般外编码c2采用RS码,内编码c1采用分组码或卷积码。图4-1是级
11、联码编、解码方框图。第17页/共94页图4-1 级联码编、解码方框图 第18页/共94页 在编码时,首先将k1k2个二进制信息元(码元)划分为k2个码字,每个码字有k1个码元,把码字看成是多进制码中的一个符号。k2个码字编码成(n2,k2)RS码(详见4.3节)的外码c2,它有k2个信息符号,n2-k2个监督符号。每一个码字内的k1个码元按照二进制分组码或卷积码编成(n1,k1)的内码c1,它有k1个信息码元,n1-k1个监督码元。这样构成总共有n1 n2个码元的编码(n1n2,k1k2)。若内码与外码的最小距离分别为d1和d2,则它们级联后的级联码最小距离至少为d1d2。级联码编、译码也可分
12、为两步进行,其设备仅是c1与c2的直接组合,显然它比直接采用一个长码构成时设备要简单得多。以RS码为外码、卷积码为内码的级联编码对随机性误码和突发性误码有很强的纠错能力,接收端经纠错译码后一般可达到10-1010-11比特误码率。第19页/共94页 2.乘积码 假设信息比特先经(n,k)分组编码,然后做一次“行”进“列”出的交织后再送入信道。这里,n-k校验比特增加了冗余度,交织器起噪声均化作用,它对突发差错的随机化非常有效。如果做进一步研究,可发现“行”进“列”出交织器将“行”的顺序转变成了“列”的顺序。但在上述情况下,原先“行”的顺序是(n,k)分组码的码字,改为“列”的顺序后就不是码字了
13、,这种未经编码的列序显然对差错控制不利。若将码块的行和列都加以编码,则行和列都有了冗余度,纠错能力一定会提高,正是这样一条思路导致了乘积码的产生。第20页/共94页 图4-2所示是典型的乘积码码阵图。其中,水平方向的行编码采用了系统的(nx,kx,dx)线性分组码Cx,垂直方向的列编码采用了系统的(ny,ky,dy)线性分组码Cy。根据信息的性质,整个码阵可分割成4块:信息块、行校验块、列校验块、校验之校验块。乘积码有两种传输和处理数据的方法,一种是按行(或列)的次序逐行(或逐列)自左至右传送,另一种是按码阵的对角线次序传送数据。这两种方法所得的码是不一样的。但是,对于按行或按列传输的乘积码,
14、只要行、列采用同样的线性码来编码,那么无论是先对ky个行编码再对nx列编码,还是先对kx个列编码再对ny行编码,右下角(nx-kx)(ny-ky)的校验之校验(checks on checks)位所得的数据是一样的。第21页/共94页图4-2 乘积码码阵图 第22页/共94页图4-3 与乘积码等效的级联码 第23页/共94页4.1.5 前向纠错 信道编码常用的差错控制方式有前向纠错FEC(Forward Error Correction)、检错 重 发 ARQ(Automatic Repeat Request)、反 馈 校 验(IRQ)和 混 合 纠 错HEC(Hybrid Error Cor
15、rection)。数字电视中的差错控制采用前向纠错方式,在这种方式中,接收端能够根据接收到的码元自动检出错误和纠正错误。纠错编码的基本思想是在所要传输的信息序列上附加一些码元,附加的码元与信息码元之间以某种确定的规则相关联。接收端按照这种规则对接收的码元进行检验,一旦发现码元之间的确定关系受到破坏,便可通过恢复原有确定关系的方法来纠正误码。数字电视的前向纠错包括四个部分,即能量扩散(Energy Dispersal)、RS编码、交织(Interleaving)和卷积编码(Convolutional Coding)。第24页/共94页4.2 能 量扩散 4.2.1 能量扩散的作用 能量扩散也称为
16、随机化、加扰或扰码。在数字电视广播过程中会出现码流中断或码流格式不符合MPEG-2的TS流结构的情况,导致调制器发射未经调制的载波信号;当数字基带信号是周期不长的周期信号时,已调波的频谱将集中在局部并含有相当多的高电平离散谱。结果对处于同一频段的其它业务的干扰超过了规定值。另外,信源码流中可能会出现长串的连“0”或连“1”,这将给接收端恢复位定时信息造成一定困难。第25页/共94页 为消除上述两种情况,可将基带信号在随机化电路中进行能量扩散,信号扩散后具有伪随机性质,其已调波的频谱将分散开来,从而降低对其它系统的干扰;同时,连“0”码或连“1”码的长度缩短,便于接收端提取比特定时信息。第26页
17、/共94页4.2.2 能量扩散的实现 实现能量扩散功能的是随机化电路,也称为伪随机码发生器或M序列发生器,由带有若干反馈线的m级移位寄存器组成。M序列有下列基本特性:(1)由m级移位寄存器产生的M序列,其周期为2m-1。(2)除全0状态外,m级移位寄存器可能出现的各种不同状态都在M序列的一个周期内出现一次;M序列中“0”、“1”码的出现概率基本相同,在一个周期内,“1”码只比“0”码多一个。第27页/共94页 (3)若将连续出现的“0”或“1”称为游程,则M序列一个周期中共有2m-1个游程,其中长度为1的游程占12,长度为2的游程占14,长度为3的游程占18,还有一个长度为m的连“1”码游程和
18、一个长度为m-1的连“0”码游程。DVB规定的伪随机码生成多项式为 G(x)1+x14+x15 第28页/共94页图4-4 DVB随机化和去随机化电路 第29页/共94页4.3 RS 编 码 4.3.1 RS码基础 1.定义 RS码是里德所罗门(Reed-Solomon)码的简称,是一类纠错能力很强的多进制BCH码。BCH码的码元都是取0或1的二进制码,如果BCH码的每一码元是2m进制中的一个m重元素,就称为多进制BCH码或RS码。在(n,k)RS码中,输入信号每km比特为一码字,每个码元由m比特组成,因此一个码字共包括k个码元。一个能纠正t个码元错误的RS码的主要参数如下:(1)字长n=2m
19、-1码元或m(2m-1)比特。(2)监督码元数n-k=2t码元或m2t比特。(3)最小码距dmin=2t+1码元或m(2t+1)比特。第30页/共94页 2.伽罗华域 伽罗华域(Galois Field)是由2m个符号及相应的加法和乘法运算所组成的域,记为GF(2m)。例如,两个符号“0”和“1”,与模2加法和乘法一起,组成二元域GF(2)。要定义GF(2m)中的所有元素,可从两个符号(“0”和“1”)及一个m次多项式P(x)开始。现在引入一个新符号,并设P()=0。如果适当选择P(x),可使的从02m-2次幂各不相同,且2m-1=1。这样,0,1,2,2m-1就构成了GF(2m)中的全部元素
20、,而且每一元素还可以用其它元素之和表示。例如,在m=4及P(x)=x4+x+1时,P()=4+1=0,即4=+1,则的各次幂分别为 第31页/共94页,2,3,4=+1,5=(+1)=2+,6=(2+)=3+27=(3+2)=4+3=3+1,8=(3+1)=4+2+=2+1=2+19=(2+1)=3+,10=(3+)=4+2=2+1,11=(2+1)=3+12=(3+2+)=4+3+2=3+2+113=(3+2+1)=4+3+2+=3+2+1,14=(3+2+1)=3+115=(3+1)=+1=1 第32页/共94页 3.由纠错能力确定RS码 对于一个长度为2m-1的RS码组,其中每个码元都可
21、以看成是伽罗华域GF(2m)中的一个元素。最小码距为dmin的RS码生成的多项式具有如下形式:g(x)=(x+)(x+2)(x+dmin-1)(4-5)其中,就是GF(2m)的本原元素。例如,要构造一个能纠正3个错误码元,码长n=15,m=4的RS码,则可以求出该码的最小码距为7个码元,监督码元数为6,因此是一个(15,9)RS码,其生成多项式为g(x)=(x+)(x+2)(x+3)(x+4)(x+5)(x+6)=x6+10 x5+14x4+4x3+6x2+9x+6 从二进制码的角度来看,这是一个(60,36)码。第33页/共94页 RS码能够纠正t个m位二进制错误码组。至于一个m位二进制码组
22、中到底有1位错误,还是m位全错了,并不会影响到它的纠错能力。从这一点来说,RS码特别适合于纠正突发错误,如果与交织技术相结合,它纠正突发错误的能力则会更强。因此RS码广泛应用于既存在随机错误又存在突发错误的信道上。第34页/共94页4.3.2 数字电视中的RS码 在数字电视中,一个符号是一个8 b的字节,因此总共有28256种符号,这256种符号组成伽罗华域GF(28)。用8次本原多项式P(x)=x8+x4+x3+x2+1来定义GF(28),GF(28)的非0元素可用P(x)一个根的幂0、2、254表示。定义在伽罗华域GF(28)上的RS码是码长n=28-1=255的本原BCH码。作为BCH码
23、,它是一种具有生成多项式的循环码。对于能纠正t=8个字节错误的RS(255,239)码,码间的最小距离为2t+1=17,其生成多项式g(x)为 g(x)=(x+)(x+2)(x+16)(4-6)第35页/共94页 对于每一个RS码c=(c254,c253,c1,c0),可用如下码字多项式表示:c(x)=c254x254+c253x253+c1x+c0(4-7)每一个码字多项式c(x)都是g(x)的倍式,即 c(x)=m(x)g(x)(4-8)其中,m(x)是最高为238次的多项式。要生成RS(255,239),由式(4-3)可得 x16m(x)+r(x)=g(x)q(x)第36页/共94页式中
24、:q(x)是用g(x)除x16m(x)所得的商式;r(x)是余式,其次数不大于15。上式的左边是g(x)的倍式,可以作为码字多项式:c(x)=x16m(x)+r(x)若将m(x)作为由239个信息字节组成的信息多项式,将r(x)作为由16个校验字节组成的校验多项式,则由式(4-10)可见,信息字节和校验字节在RS(255,239)码中前后分开,不相混淆,形成系统RS码。第37页/共94页 RS编码就是要用多项式除法找到用g(x)除x16m(x)所得的余式r(x),从而确定校验字节。对于截短的RS(204,188)码,由于附加的51个0字节位于m(x)的高位,在做除法时可不予考虑,就用188个信
25、息字节组成信息多项式作为m(x)即可。RS(204,188)编码器电路如图4-5所示。生成多项式g(x)作为除式,其系数由式(4-6)计算出来并存放在数组g(i)(i=0,1,,16)中。被除式是信息多项式x16m(x),其系数存放在数组in(i)(i=16,17,203时为信息字节;i=0,1,15时为0)中。第38页/共94页图4-5 RS(204,188)编码电路 第39页/共94页 该电路的工作过程如下:(1)开始运算时,16级移位寄存器(图中用Z-1表示)全部清0。第一个移位节拍后,被除多项式的最高次项X203的系数in(203)首先进入移位寄存器的最左一级。经过16次移位后in(2
26、03)进入到移位寄存器的最右一级,此时自右至左移位寄存器中的内容为in(203),in(202),in(188)。(2)in(203)输出与g(16)-1相乘得temp,第17次移位后,temp反馈到后面各级移位寄存器中,使各级移位寄存器的内容为原内容加上tempg(i)(i=0,1,,15)。此时移位寄存器中自左至右的内容为in(187)+tempg(0),in(188)+tempg(1),in(202)+tempg(15)。第40页/共94页 (3)依此类推,经过204次移位后,完成整个除法运算,移位寄存器中的内容就是余式r(x)的系数。得到了余式r(x)的系数后,也就得到了校验字节c15
27、,c0。将这些校验字节加在信息字节之后,就得到了204 B的码字,从而完成了编码。上述加法和乘法运算是在伽罗华域GF(28)上进行的,已经随机化的数据的每个字节映射成伽罗华域GF(28)中的一个元素,256个元素中除0和1之外都是由本原多项式(x)=8+4+3+2+1推算出来的。GF(28)中=02H,表4-2列举出了14个元素和字节二进制数之间的映射关系和推导过程。用类似的方法可以得出表4-3,8位二进制数的字节表示和GF(28)元素的幂次对照表。第41页/共94页表4-2 GF(28)中元素和二进制字节之间的映射关系和推导过程 第42页/共94页 伽罗华域GF(28)中的加法运算0+7+7
28、+6+6+3=0+3=0000 0001+0000 1000=0000 1001=223。伽罗华域GF(28)中的乘法运算23=5,元素相乘时,只需将指数相加再对255取模即可。例如2536=259=4。第43页/共94页表4-3 8位二进制数的字节表示和GF(28)元素 第44页/共94页表4-3 8位二进制数的字节表示和GF(28)元素 第45页/共94页表4-3 8位二进制数的字节表示和GF(28)元素 第46页/共94页4.4 交 织4.4.1 分组交织 交织也称交错,是对付突发差错的有效措施。突发噪声使信道中传送的码流产生集中的、不可纠正的差错。如果先对编码器的输出码流做顺序上的变换
29、,然后作为信道上的符号流,则信道噪声造成的符号流中的突发差错有可能被均匀化,转换为码流中随机的、可纠正的差错。第47页/共94页 交织分为分组交织和卷积交织。分组交织比较简单,对一个(n,k)分组码进行深度为m的分组交织时,把m个码组按先行后列排列成一个mn的码阵。码元aij的下标i为行号,下标j为列号,排列成a11、a12、a1n、a21、a22、a2n、am1、am2、amn形式。规定以先列后行的次序和自左至右的顺序传输,即以a11、a21、am1、a12、a22、am2、a1n、a2n、amn的顺序传输。接收端的去交织则执行相反的操作,把收到的码元仍排列成a11、a12、a1n、a21、
30、a22、a2n、am1、am2、amn形式,以行为单位,按(n,k)码的方式进行译码。第48页/共94页 经过交织以后,每个(n,k)码组的相邻码元之间相隔m-1个码元。因此,当接收端收到交织的码元后,若仍恢复成原来的码阵形式,就把信道中的突发错误分散到了m个(n,k)码中。如果一个(n,k)码可以纠正t个错误(随机或突发),则交织深度为m时形成的 mn 码阵就能纠正长度不大于mt的单个突发错误。显然,交织方法是一种时间扩散技术,它把信道错误的相关性减小,当m足够大时就把突发错误离散成随机错误。第49页/共94页4.4.2 卷积交织 卷积交织比上述分组交织要复杂。DVB采用的是卷积交织,DVB
31、的交织器和去交织器如图4-6所示。交织器由I=12个分支组成,在第j(j0,1,,I-1)分支上设有容量为jM个字节的先进先出(FIFO)移位寄存器,图中的M17,交织器的输入与输出开关同步工作,以1 B位置的速度进行从分支0到分支I-1的周期性切换。接收端在去交织时,应使各个字节的延时相同,因此采用与交织器结构类似但分支排列次序相反的去交织器。为了使交织与去交织开关同步工作,在交织器中要使数据帧的同步字节总是由分支0发送出去,这由下述关系可以得到保证:NIM1217204(4-11)第50页/共94页图4-6 DVB的卷积交织器和去交织器 第51页/共94页输出顺序输入顺序第52页/共94页
32、 卷积交织器用参数(N,I)来描述,图4-6 所示的是(204,12)交织器。很容易证明,在交织器输出的任何长度为N的数据串中,不包含交织前序列中距离小于I的任何两个数据。I称为交织深度。对于(204,188)RS码,能纠正连续8 B的错误,与交织深度I=12相结合,可具有最多纠正12896 B长的突发错误的能力。I越大,纠错能力越强,但交织器与去交织器总的存储容量S和数据延时D与I有关:S=D=I(I-1)M (4-12)在DVB中,交织位于RS编码与卷积编码之间,这是因为卷积码的维特比译码会出现差错扩散,引起突发差错。第53页/共94页4.5 卷积编码 3.5.1 编码器 卷积码编码器由移
33、位寄存器和加法器组成。输入移位寄存器有N段,每段有k级,共Nk位寄存器,负责存储每段的k个信息码元;各信息码元通过n个模2加法器相加,产生每个输出码组的n个码元,并寄存在一个n级的移位寄存器中移位输出。编码过程是输入信息序列与由移位寄存器和模2加法器之间连接所决定的另一个序列的卷积,因此称为卷积码。通常N称为卷积码的约束长度(Constraint Length)。卷积码用(n,k,N)表示,其中n为码长,k为码组中信息码元的个数,编码器每输入k比特,输出n比特,编码率为R=k/n。第54页/共94页 约束长度不以码元数为单位而以分组为单位,这是因为编码和译码时分组数一定而相关码元数不同,编码时
34、相关码元数是Nk,译码时相关码元数是Nn。显然以分组为单位来定义约束长度更方便。图4-7(a)为(2,1,3)卷积编码器的结构。图中没有画出延时为零的第一级移位寄存器,并用转换开关代替了输出移位寄存器。它的编码方法是:输入序列依次送入一个两级移位寄存器,编码器每输入一位信息bi,输出端的开关就在c1、c2之间切换一次,输出c1,i和c2,i,其中 c1,i=bi+bi-1+bi-2(4-13)第55页/共94页即c1的生成多项式g1(x)为 g1(x)=x2+x1+1c2,i=bi+bi-2(4-14)即c2的生成多项式g2(x)为 g2(x)=x2+1 设寄存器M1,M2的起始状态为全零,则
35、编码器的输入、输出时序关系见图4-7(b)。第56页/共94页图4-7(2,1,3)卷积编码器(a)编码器结构;(b)输入、输出时序关系 第57页/共94页图4-8(2,1,3)卷积码树状图 第58页/共94页图4-9(2,1,3)卷积码网格图 第59页/共94页图4-10(2,1,3)卷积码编码过程和状态变化 第60页/共94页图4-11(2,1,3)卷积码的状态转移图 第61页/共94页 注意在有些资料中把N-1称为卷积码的约束长度,卷积码则记为(n,k,N-1),即本节介绍的(2,1,3)卷积码被称为(2,1,2)卷积码,数字电视中常用的(2,1,7)收缩卷积码被称为(2,1,6)收缩卷
36、积码。本书为了与国家标准GB/T17700-1999(卫星数字电视广播信道编码和调制)中收缩卷积码(2,1,7)的表示一致,把卷积码的约束长度定义为N。第62页/共94页4.5.2 维特比译码 卷积码的译码方法分为代数译码和概率译码两大类。前者的硬件实现简单,但性能较差。后者利用了信道的统计特性,译码性能好,但硬件复杂,常用的有维特比(Viterbi)译码。维特比译码比较接收序列与所有可能的发送序列,选择与接收序列汉明距离最小的发送序列作为译码输出。通常把可能的发送序列与接收序列之间的汉明距离称为量度。如果发送序列长度为L,就会有2L种可能序列,需要计算2L次量度并对其进行比较,从中选取量度最
37、小的一个序列作为输出。因此,译码过程的计算量将随着L的增加呈指数增长。第63页/共94页 维特比译码使用网格图描述卷积码,每个可能的发送序列都与网格图中的一条路径相对应。如果发现某些路径不可能具有最小量度,就放弃这些路径,在剩下的幸存路径中选择。对于(n,k,N)卷积码,网格图中共有2k(N-1)种状态,每个节点(状态)有2k条支路引入,也有2k条支路引出。以全零状态为起点,由前N-1条支路构成的2k(N-1)条路径互不相交。从第N条支路开始,每条路径都将有2k条支路延伸到下一级节点,而每个节点也将汇聚来自上一级不同节点的2k条支路。维特比译码算法的基本步骤为:对于网格图第i级的每个节点,计算
38、到达该节点的所有路径的量度,即在前面i-1级路径量度的基础上累加第i条支路的量度,从中选择量度最小的幸存路径。第64页/共94页(a)0 0(b)0 1(c)1 0(d)1 1 k=1 2 3 4M0M100(1)00(0)00(1)11(1)10(1)01(2)10(0)10(0)11(2)01(2)01(2)11(1)11(1)01(1)(2)(3)(2)(5)(2)(4)(3)(4)假定接收到的数据为:c1c2=10,00,10,00第65页/共94页 DVB-S采用(2,1,7)卷积码,(2,1,7)码有2664种状态,即S0S63,状态号为M625M524M423M322M221M1
39、20,状态转移如表4-4所示。表4-4(2,1,7)卷积码编码状态转移表 第66页/共94页4.5.3 收缩卷积码 维特比译码器的复杂性随2k(N-1)指数增长,为降低译码器的复杂性,常采用(2,1,N)卷积码,其编码比率(也称为编码率、码率)为12。在数字图像通信这种传输速率较高的场合,又希望编码比率比较高,有效的解决办法就是引入收缩卷积码。收缩卷积码(Punctured Convolutional Codes)也译为删余卷积码,通过周期性地删除低效率卷积编码器,如(2,1,N)编码器输出序列中某些符号来实现高效率编码。在接收端译码时,再用特定的码元在这些位置进行填充,然后送给(2,1,N)
40、码的维特比译码器译码。收缩卷积码的性能可以做到与最好码的性能非常接近。第67页/共94页 DVB-S采用基于(2,1,7)的收缩卷积码,如图4-12所示。编码比率可以是12、23、34、56、78,收缩卷积码的码表如表4-5所示。图4-12(2,1,7)收缩卷积码的产生 第68页/共94页表4-5(2,1,7)收缩卷积码的码表 第69页/共94页*4.6 Turbo 码 4.6.1 串行与并行级联分组码 交织器与级联码结合可构成码字非常长的编码。在串行级联分组码SCBC(Serially Concatenated Block Code)中,交织器插在两个编码器之间,如图4-13所示。前后两个码
41、都是二进制线性系统码,外码是(p,k)码而内码是(n,p)码。块交织的长度选为N=mp,这里m对应于外码码字的数目。编码和交织的具体过程如下:mk位信息比特经外编码器变为N=mp位编码比特,这些编码比特进入交织器,按交织器的置换算法以不同的顺序读出。交织器输出mp编码比特,然后分隔成长度为p的分组送入内编码器,这样,mk位信息比特被SCBC编成了mn的码块。最终的编码率是R=k/n,它是内、外编码器编码率的乘积。然而,串行级联分组码SCBC的分块长度是mn比特,它比不使用交织器的一般级联码的分块长度要大得多。第70页/共94页图4-13 串行级联分组码编码方框图 第71页/共94页 用类似办法
42、可构成并行级联分组码PCBC(Parallelly Concatenated Block Code)。图4-14是这种编码器的基本结构框图,它由两个二进制编码器组成,两编码器可以相同也可以不同。这两个编码器是二进制、线性、系统的,用(n1,k)、(n2,k)来表示。块交织器的长度N=mk,由于信息比特仅传送一次,因此PCBC总的分组长度是n1+n2-k,编码率是R=k(n1+n2-k)。解码采用软输入软输出(SISO)的最大后验概率MAP(Maximum Aposterriori Probability)算法迭代执行。带交织器的级联码与MAP迭代译码相结合,可使在中等误码率(如10-410-5
43、)时的编码性能非常接近香农限。第72页/共94页图4-14 并行级联分组码编码方框图 第73页/共94页4.6.2 串行与并行的级联卷积码 1.Turbo码 带交织的并行级联卷积码PCCC(Parallelly Concatenated Convolutional Codes)也叫Turbo码,Turbo编码器的基本结构如图4-15所示,它由两个并联的递归系统卷积码RSC(Recursive Systematic Convolutional)编码器组成,并在第二个编码器前面串接了一个交织器。Turbo编码器的编码率是R=13。通过对编码器输出的冗余校验比特的删余压缩(puncturing)处理
44、,我们可以获得较高的编码率,比如12或23。第74页/共94页 输入信息序列XS(x1,x2,xN)经过交织器形成信息序列XS,XS和XS分别送到两个RSC编码器产生校验序列XP1,XP2,删除器周期性地从XP1,XP2中删除一些校验位形成校验序列XP。未编码信息序列XS和校验序列XP复合形成Turbo码序列X(XS,XP)。Turbo码编码器中的两个RSC编码器的结构和普通系统卷积码的不同,它采用递归型结构,其生成多项式为G(D)1,(1+D2)/(1+D+D2),结构如图4-15所示。第75页/共94页图4-15 Turbo编码器的基本结构 第76页/共94页 2.Turbo码的迭代译码
45、Turbo码优异的性能在很大程度上是在充分利用软判决信息和迭代译码的条件下得到的。Turbo码译码器的基本结构如图4-16所示,它由两个串行级联的软输入软输出(SISO)译码器(DECl,DEC2)、两个随机交织器和一个随机解交织器组成,其中交织器和编码器中所用的交织器相同。接收端的解调器产生软判决序列Y(YS,YP1,YP2);第77页/共94页图4-16 Turbo码迭代解码器的基本结构 第78页/共94页 影响Turbo码性能的一个重要因素是交织长度,有时也称为交织增益。使用足够大的交织器,采用MAP迭代译码,Turbo码的性能可以非常接近香农限。例如,码率12、块长N=216、每比特译
46、码迭代18次的Turbo码,在差错概率10-5时所需的SNR可达0.6 dB。带有大交织器的Turbo译码的主要缺点是迭代译码算法固有的译码时延和复杂计算。构成带交织的级联卷积码的第二种方法是串行级联卷积码SCCC(Serially Concatenated Convolutional Codes)。在误码率低于10-2时,SCCC显示了比PCCC更好的性能。第79页/共94页 3.Torbo-TCM码 图4-17所示是一种Turbo-TCM码编码器,信息序列经两个带交织的并行级联卷积编码器产生一个系统Turbo码。Turbo编码的二进序列被适当复合,其中校验比特序列被删余以取得所需编码率,再
47、将数据和校验序列进行交织,这样产生的输出被连接到符号映射器。将编码比特映射到调制信号点的典型方法是使用格雷(Gray)映射法,即将编码分解为同相分量I和正交分量Q。第80页/共94页图4-17 Turbo-TCM码编码器第81页/共94页 图4-18是与上述Turbo-TCM编码方案对应的解码器方框图。以接收到的每个I与Q符号为基础,接收器计算出各系统比特和各校验比特的对数似然比LLR(Logarithm Likelihood Ratio)或MAP。经解交织、解删余、解复用后,这些系统和校验比特的对数量度信息被送入标准的二进Turbo解码器中。第82页/共94页图4-18 Turbo-TCM码
48、解码器方框图 第83页/共94页4.6.3 Turbo码交织器 1.行列式分组交织器 传统的行列式分组交织是将信息序列视为NM矩阵,然后采取逐行输入、逐列输出的方式实现码元交织,或用变换公式表示为x=j、y=i。交织后码元的距离特性呈均匀分布。这种交织器实现简单,交织后对码元的去相关不彻底,由于本身的周期特性,对周期性差错的抗御能力也较低。图4-19(a)、(b)分别是交织前、后元素位置的示意图。第84页/共94页图4-19 行列式分组交织的元素映射(a)元素原来位置;(b)行列式分组交织后元素映射位置;(c)先入后出行列式分 第85页/共94页 螺旋式分组交织器也将信息比特序列视为NM矩阵,
49、但采取从左至右依对角方向读入再按行写出的方式进行交织。这样虽比行列式分组交织略为复杂,但交织后相邻码元距离很大,当信息序列为N(N1)矩阵时,相邻码元距离N,比行列式分组交织去相关彻底。图4-20(a)、(b)分别是螺旋式分组交织前、后元素位置的示意图。第86页/共94页图4-20 螺旋式分组交织的元素映射(a)元素原来位置;(b)螺旋式分组交织后元素映射位置 第87页/共94页 2.对角线随机交织器 随机交织器按地址产生方式的不同,可分为对角线式和读表式随机交织。对角线式随机交织是Berrou提出的。设交织块是MM正方块,其中M是2的幂,即M=2m(m2)。交织规律为x=(M2+1)(i+j
50、)mod Mk=(i+j)mod 8 y=P(k)(i+j)-1 mod M 第88页/共94页 3.读表式随机交织器 读表式随机交织是给序列中的每一比特位都赋予随机产生的映射地址,然后用查表的方式实现码元交织。图4-21为读表式随机交织的元素映射示意图。使用这种交织器,会使编码所需存储量增加,但交织后码元间的相关性将大大降低。第89页/共94页图4-21 读表式随机交织的元素映射 第90页/共94页 4.用于删余Turbo码的奇偶交织器 删余可以提高Turbo码的编码率。但是,当采用不恰当的交织方式时,删余有可能使信息序列中的某些比特位在水平和垂直方向都有对应的校验位送往信道,而另外一些比特