第4章 信道编码,4.1 概述 4.2 能量扩散 4.3 RS编码 4.4 交织 4.5 卷积编码 *4.6 Turbo码,4.1 概 述,4.1.1 信道编码基础 1. 随机差错和突发差错 信道中的噪声分为加性噪声和乘性噪声加性噪声叠加在有用信号上,它与信号的有无及大小无关,即使信号为零,它也存在这类噪声有无线电、工频、雷电、火花、电脉冲干扰等乘性噪声是对有用信号调幅,信号为零时,噪声干扰影响也就不存在了这类噪声有线性失真、交调干扰、码间干扰以及信号的多径时变干扰等 由于噪声不确定, 因此只能用随机信号或随机过程的理论来研究它们的统计特性不同类型的信道加不同类型的噪声构成了不同类型的信道模型就噪声引发差错的统计规律而言,可分为随机差错信道和突发差错信道两类1) 随机差错信道 信道中,码元出现差错与其前、 后码元是否出现差错无关,每个码元独立地按一定的概率产生差错从统计规律看, 可以认为这种随机差错是由加性高斯白噪声AWGN(Additive White Gaussian Noise)引起的,主要的描述参数是误码率pe2) 突发差错信道 信道中差错成片出现时,一片差错称为一个突发差错。
突发差错总是以差错码元开头,以差错码元结尾,头尾之间并不是每个码元都错,而是码元差错概率大到超过了某个标准值 通信系统中的突发差错是由突发噪声(比如雷电、 强脉冲、 时变信道的衰落等)引起的存储系统中,磁带、磁盘物理介质的缺陷或读写头的接触不良等造成的差错均为突发差错 实际信道中往往既存在随机差错又存在突发差错2. 分组码和卷积码 在分组码中,编码后的码元序列每n位为一组,其中k位是信息码元,r位是附加的监督码元,r=n-k, 通常记为(n,k) 分组码的监督码元只与本码组的信息码元有关 卷积码的监督码元不仅与本码组的信息码元有关,还与前面几个码组有约束关系 ,3. 线性码和非线性码 若信息码元与监督码元之间的关系是线性的,即满足一组线性方程,则称为线性码;反之,两者若不满足线性关系, 则称为非线性码 4. 系统码和非系统码 在编码后的码组中,信息码元和监督码元通常都有确定的位置,一般信息码元集中在码组的前k位,而监督码元位于后r=n-k位 如果编码后信息码元保持原样不变,则称为系统码; 反之称为非系统码5. 码长和码重 码组或码字中编码的总位数称为码组的长度, 简称码长; 码组中非零码元的数目称为码组的重量,简称码重。
例如“11010”的码长为5, 码重为36. 码距和最小汉明距离 两个等长码组中对应码位上具有不同码元的位数称为汉明(Hamming)距离,简称码距例如,“11010”和 “01101”有4个码位上的码元不同,它们之间的汉明距离是4 在由多个等长码组构成的码组集合中,定义任意两个码组之间距离的最小值为最小码距或最小汉明距离,通常记作dmin,它是衡量一种编码方案纠错和检错能力的重要依据以3位二进制码组为例, 在由8种可能组合构成的码组集合中,两码组间的最小距离是1, 例如“000”和“001”之间,因此dmin=1;如果只取“000”和“111”为准用码组,则这种编码方式的最小码距dmin=3对于分组码,最小码距dmin与码的纠错和检错能力之间具有如下关系:在一个码组集合中,如果码组间的最小码距满足dmin≥e+1,则该码集中的码组可以检测e位错码;如果满足dmin≥2t+1, 则可以纠正t位错码;如果满足dmin≥t+e+1,则可以纠正t位错码,同时具有检测e位错码的能力7. 线性分组码 (1) 封闭性, 即任意两个准用码组之和(逐位模2加)仍为一个准用码组 (2) 两个码组之间的距离必定是另一码组的重量, 因此码的最小距离等于非零码的最小重量。
(3) 线性码中的单位元素是A=0, 即全零码组, 因此全零码组一定是线性码中的一个元素 (4) 线性码中一个元素的逆元素就是该元素本身,因为A与它本身异或结果为04.1.2 循环码 1. 定义 循环码是一种系统码,通常前k位为信息码元,后r位为监督码元它除了具有线性分组码的一般性质以外,还具有循环性,也就是说当循环码中的任一码组循环移动一位以后, 所得码组仍为该循环码的一个准用码组2. 多项式表示 数码用多项式来表示是一种比较直观的方法, 如5位二进制数字序列11010可表示为 1×24+1×23+0×22+1×21+0×20=11010 通常在编码中,以x表示系数只取0、1的多项式的基,则上述5位二进制序列可表示为 1×x4+1×x3+0×x2+1×x1+0×x0=x4+x3+x 这种以多项式的系数表示二进制序列的方法给编码处理带来了方便, 一个(n,k)循环码的k位信息码可以用x的k-1次多项式来表示,即 A(x)=ak-1xk-1+ak-2xk-2+…+a2x2+a1x+a0 (4-1) 式中,an-1~a0为多项式的0、1系数值;x表示多项式的基,x的次数n-1~0表示了该位在码中的位置。
3. 编码 循环码的编码规则是:把k位信息码左移r位后被规定的多项式除, 将所得余数作校验位加到信息码后面 规定的多项式称为生成多项式,用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),因为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), 如果传送未发生错误, 则收到的信号必能被G(x)除尽, 否则表明有错4.1.3 BCH码 BCH码是根据码的3个发明人Bose、Chaudhuri和Hocquenghem命名的 BCH码解决了生成多项式与最小码距之间的关系问题根据所要求的纠错能力, 可以很容易地构造出BCH码它们的译码也比较简单, 因此是线性分组码中应用最为普遍的一类码。
BCH码分为本原BCH码和非本原BCH码本原BCH码的码长n=2m-1, m为任意正整数本原BCH码的生成多项式G(x)含有最高次数为m次的本原多项式最高次数为m的本原多项式必须是一个能除尽x2m-1-1的既约因式,但除不尽xr-1,r<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,t<m/2,必存在一个码长n=2m-1,监督位不多于mt位,能纠正所有小于或等于t位随机错误的二进制本原BCH码表4-1为部分本原BCH码表4-1 部分本原BCH码,表4-1 部分本原BCH码,4.1.4 级联编码 1. 级联码 信道中由噪声引起的误码一般分为两类,一类是由随机噪声引起的随机性误码,一类是由冲击噪声引起的突发性误码 在实际通信信道中出现的误码是混合型误码,是随机性误码和突发性误码的混合。
纠正这类混合误码, 要设计既能纠随机性误码又能纠突发性误码的码交错码、乘积码、级联码均属于这类纠错码而性能最好、最有效、最常采用的是级联码 级联码是一种由短码构造长码的特殊的、有效的方法通常由一个二进制的(n1,k1)码c1(为内编码)和另一个非二进制的(n2,k2)码c2(为外编码)就能组成一个简单的级联码一般外编码c2采用RS码,内编码c1采用分组码或卷积码图4-1是级联码编、 解码方框图图4-1 级联码编、 解码方框图,在编码时,首先将k1×k2个二进制信息元(码元)划分为k2个码字,每个码字有k1个码元,把码字看成是多进制码中的一个符号k2个码字编码成(n2,k2)RS码(详见4.3节)的外码c2,它有k2个信息符号,n2-k2个监督符号每一个码字内的k1个码元按照二进制分组码或卷积码编成(n1,k1)的内码c1,它有k1个信息码元,n1 - k1个监督码元 这样构成总共有n1× n2个码元的编码(n1×n2, k1×k2)若内码与外码的最小距离分别为d1和d2, 则它们级联后的级联码最小距离至少为d1×d2级联码编、译码也可分为两步进行,其设备仅是c1与c2的直接组合,显然它比直接采用一个长码构成时设备要简单得多。
以RS码为外码、卷积码为内码的级联编码对随机性误码和突发性误码有很强的纠错能力,接收端经纠错译码后一般可达到10-10~10-11比特误码率2. 乘积码 假设信息比特先经(n,k)分组编码,然后做一次“行”进“列”出的交织后再送入信道这里,n-k校验比特增加了冗余度,交织器起噪声均化作用,它对突发差错的随机化非常有效如果做进一步研究,可发现“行”进“列”出交织器将“行”的顺序转变成了“列”的顺序 但在上述情况下,原先“行”的顺序是(n,k)分组码的码字,改为“列”的顺序后就不是码字了,这种未经编码的列序显然对差错控制不利若将码块的行和列都加以编码,则行和列都有了冗余度,纠错能力一定会提高,正是这样一条思路导致了乘积码的产生图4-2所示是典型的乘积码码阵图其中,水平方向的行编码采用了系统的(nx,kx, dx) 线性分组码Cx, 垂直方向的列编码采用了系统的(ny,ky,dy)线性分组码Cy根据信息的性质,整个码阵可分割成4块:信息块、行校验块、列校验块、校验之校验块 乘积码有两种传输和处理数据的方法,一种是按行(或列)的次序逐行(或逐列) 自左至右传送, 另一种是按码阵的对角线次序传送数据。
这两种方法所得的码是不一样的 但是,对于按行或按列传输的乘积码,只要行、列采用同样的线性码来编码, 那么无论是先对ky个行编码再对nx列编码,还是先对kx个列编码再对ny行编码,右下角(nx-kx)×(ny-ky)的校验之校验(checks on checks)位所得的数据是一样的图4-2 乘积码码阵图,图4-3 与乘积码等效的级联码,4.1.5 前向纠错 信道编码常用的差错控制方式有前向纠错FEC(Forward Error Correction)、 检错重发ARQ(Automatic Repeat Request)、反馈校验(IRQ)和混合纠错HEC(Hybrid Error Correction) 数字电视中的差错控制采用前向纠错方式, 在这种方式中, 接收端能够根据接收到的码元自动检出错误和纠正错误纠错编码的基本思想是在所要传输的信息序列上附加一些码元,附加的码元与信息码元之间以某种确定的规则相关联 接收端按照这种规则对接收的码元进行检验,一旦发现码元之间的确定关系受到破坏,便可通过恢复原有确定关系的方法来纠正误码 数字电视的前向纠错包括四个部分,即能量扩散(Energy Dispersal)、RS编码、交织(Interleaving)和卷积编码(Convolutional Coding)。
4.2 能 量扩散,4.2.1 能量扩散的作用 能量扩散也称为随机化、加扰或扰码 在数字电视广播过程中会出现码流中断或码流格式不符合MPEG-2的TS流结构的情况,导致调制器发射未经调制的载波信号;当数字基带信号是周期不长的周期信号时,已调波的频谱将集中在局部并含有相当多的高电平离散谱结果对处于同一频段的其它业务的干扰超过了规定值 另外,信源码流中可能会出现长串的连“。