(1)差错控制的基本原理
为了使编码码字具有检错和纠错能力,应当按一定的规则在信息码元之后增加一些监督码元,使这些监督码元与被传送信息码元之间以某种确定的规则相互关联(约束),发送端完成这个任务的过程就称为差错控制编码;在接收端,按照既定的规则校验信息码元与监督码元的特定关系,来实现检错或纠错。
图7-1 信道编码的分类
(2)信道编码的分类
信道编码的分类方法有很多,彼此之间又互相涵盖。常见的分类方法如图7-1所示。
1)按照纠正差错的类型不同,可以分为纠正随机差错的纠错码和纠正突发差错的纠错码。前者主要针对产生偶发性的随机误码的信道,如高斯信道等;后者主要针对产生突发性连续误码的场合,如瞬时脉冲干扰或瞬间信号丢失等情况。
2)根据监督码元与信息码组之间的约束关系的不同,可以分为分组码和卷积码两大类。若本码组的监督码元仅与本码组的信息码元有关,而与其他码组的信息码元无关,则称这类码为分组码。若本码组的监督码元不仅和本码组的信息码元相关,而且还和与本码组相邻的前若干码组的信息码元也有约束关系,则这类码称为卷积码。
3)根据信息码元与附加的监督码元之间的检验关系,可分为线性码和非线性码。若编码规则可以用线性方程组来表示,则称为线性码。反之,若两者不存在线性关系,则称为非线性码。目前使用较多的信道编码都是线性码。
4)根据信息码元在编码之后是否保持原来的形式不变,可分为系统码与非系统码。在系统码中,编码后的信息码元序列保持不变;而在非系统码中,信息码元改变了原有的形式。在分组码情况下系统码与非系统码性能相同,因此更多地采用系统码,在卷积码的情况下有时非系统码有更好的性能。
5)根据构造编码的数学方法,可分为代数码、几何码和算术码。代数码建立在近世代数的基础上,理论发展最为完善。
6)根据码的功能可分为检错码、纠错码以及纠正删除错误的纠删码。检错码仅具备识别误码功能,而无纠正误码功能;纠错码不仅具备识别误码的功能,同时具备一定的纠正误码功能;纠删码则不仅具备识别误码和纠正一定数量误码的功能,而且当误码超过纠正范围时可把无法纠正的代码删除,或者再配合差错掩盖技术。但实际上这三类码并无明显区别,同一类码可在不同的译码方式下体现出不同的功能。
7)按照对每个信息码元的保护能力是否相等,可分为等保护纠错码与不等保护纠错码。
此外还有其他分类,在此不一一列举。在数字电视传输中常用的前向纠错(Forward Er-ror Correction,FEC)码有BCH码、RS码、卷积码和低密度校验(LDPC)码等。
2.BCH码
BCH码是由Bose、Chandhari和Hocquenghem三名科学家发明的一类能纠正多个随机误码的循环码,并以他们名字的第一个字母组合来命名。BCH码纠错能力强,构造方便,编译码方法简单,有严格的代数结构,在短、中等码长下其性能接近理论值。
BCH码可分为本原BCH码和非本原BCH码。本原BCH码的生成多项式g(x)中,含有最高次数为m的本原多项式,且码长为n=2m-1;而非本原BCH码的生成多项式中不含这种本原多项式,且码长n是2m-1的一个因子,即码长n一定除得尽2m-1。
BCH码的码长n与监督位、纠错个数t之间的关系如下:对于任一正整数m和t<m/2,必定存在一个码长n=2m-1,监督位数r=n-k≤mt,能纠正所有不大于t个随机错误的BCH码。若码长n=(2m-1)/i(i>1,且除得尽2m-1),则为非本原BCH码。
具有循环性质的汉明码就是纠正单个随机错误的本原BCH码。
3.RS码
RS(Reed-Solomon,理德-所罗门)码是一类具有很强纠错能力的多进制BCH码。
RS码与二进制BCH码的区别是:前者以符号为单位进行处理,后者则是对每个比特进行处理。RS编码这样做的好处是便于处理大量的数据。一般情况下,在一个RS码(n,k)中,每km比特为一组,每组包括k个符号,每个符号由m比特组成。
一个能纠t个符号错误的RS码有如下参数:
1)码长:n=(2m-1)符号,即m(2m-1)比特。
2)信息字段:k符号,即mk比特。
3)监督字段:r=n-k=2t符号,即m(n-k)比特。
4)最小码距:dmin=(2t+1)符号,即m(2t+1)比特。
由于分组码的Singleton限为dmin≤n-k+1,因此从这个意义上说,RS码是一个极大最小距离码。也就是说,对于给定的(n,k)分组码,没有其他码能比RS码的最小距离更大。RS码是Singleton限下的最佳码。这充分说明了RS码的纠错能力很强。除了有很强的纠正随机差错能力外,RS码还非常适合于纠正突发差错。它可以纠正的错误图样有:
●总长度为b1=(t-1)m+1比特的单个突发差错。
●总长度为b2=(t-3)m+3比特的两个突发差错。
●总长度为bi=(t-2i-1)m+2i-1比特的i个突发差错。(www.xing528.com)
RS码的超强纠错能力,使其广泛应用于众多通信系统以及光盘、磁记录等系统的编码方案之中。现有的数字电视地面广播国际标准也都选用了RS码。除了纠错能力强的优点外,一个(n,k)RS码的最小距离和码重分布完全由k和n两个参数决定,这非常便于根据指标设计和选择RS码,也是RS码广为应用的原因。
4.卷积码和维特比译码
(1)卷积码
分组码是把k个信息码元的序列编成n码元的码组,每个码组的n-k个监督码元仅与本码组的k个信息码元有关,而与其他各组码元无关。为了达到一定的纠错效果和编码效率,分组码的码组长度一般都比较大。编译码时必须把整个信息码组存储起来,由此产生的译码延时随n的增加而线性增加。
与分组码不同,卷积码编码后的每个(n,k)码段(也称子码)内的n码元不仅与本码组的k个信息码元有关,而且还与前面的N-1个码段的信息码元有关,各码段间不再是相互独立的,码段中互相关联的码元个数为nN。因此要用(n,k,N)三个参数表示卷积码。其中n表示码段长度;k表示码段中信息码元的个数,N为编码约束长度,用于表示编码过程中相互约束的码段个数;nN为编码过程中相互约束的码元个数。
卷积码的纠错性能随k的增加而增大,而差错率随N的增加而指数下降。由于卷积码的编码过程充分利用了码组间的相关性,因此在编码效率和复杂度相同的条件下,卷积码的性能优于分组码。
(n,k,N)卷积码的编码效率(码率)可表示为
RC=k/n
如果卷积码的各子码是系统码,则称该卷积码为系统卷积码。假如N=1,那么卷积码就是(n,k)分组码。
描述卷积码编码过程的方法有两种:解析表示法和图解表示法。其中,解析表示法又分为移位算子(延迟算子)多项式表示法和半无限矩阵表示法。图解表示法有三种:树图、状态转移图和网格图。
对于一般的(n,k,N)卷积码,可以得到以下结论:对应于每组k个输入比特,编码后产生n个输出比特;树图中每个节点引出2 k条支路;状态转移图和网格图都有2 k(N-1)种可能的状态。每个状态引出2 k条支路,同时也有2 k条支路从其他状态或本状态引入。
(2)维特比译码
卷积码的译码方法主要有代数译码和概率译码两种。代数译码根据卷积码自身的代数结构进行译码,计算简单;概率译码则在计算时考虑信道的统计特性,计算较复杂,但纠错效果好。随着硬件技术的发展,概率译码已成为主流。其中,维特比(Viterbi)译码为著名的概率译码算法,它采用最大似然准则,把接收码序列与所有可能的码序列做比较,选择一种码距最小的码序列作为最可能的发送序列。
(3)收缩卷积码
维特比译码器的复杂度随2 k(N-1)以指数级增长,为降低译码器的复杂度,常采用(2,1,N)卷积码,其编码效率为1/2。在数字视频通信这种传输速率较高的场合,要想得到较高的编码效率,有效的解决办法就是引入收缩卷积码。
收缩卷积码又称删余卷积码,就是通过周期性地删除低编码效率卷积编码器,如(2,1,N)输出序列中的某些特定位置的码元,来提高编码效率。在接收端译码时,再用特定的码元在这些位置进行填充,然后给(2,1,N)卷积码的维特比译码器进行译码。
5.分组交织和卷积交织
交织(Interleaving)技术的思想就是把连续成串出现的突发误码分散成便于纠正的随机误码,从而为正确译码创造更好的条件。
由于交织技术只打乱传送码元的排列次序,本身不需要另加监督码元,即不产生冗余码元,故传输效率不会降低。从严格意义上说,交织不是纠错编码,但是如果把编码器和交织器看成一个整体,则新构成的“交织码”具有了更好的纠错性能。在发送端,交织器将信道编码器输出的码元序列按一定规律重新排序后输出,进行传输或存储;在接收端进行交织的逆过程,称为解交织。解交织器将接收到的码元序列还原为对应发送端编码器输出序列的排序。
分组交织又称矩阵交织或块交织。编码后的码字序列被按行填入一个大小为m×n的矩阵,矩阵填满以后,再按列读出。同样,接收端的解交织器将接收到的信号按列填入m×n的矩阵,填满后再按行读出,然后送往译码器进行正常解码。这样,信道中的连续突发误码被解交织器以m比特为周期进行分隔再送往译码器,如果这m个错误比特处于信道编码的纠错能力范围内,则达到了消除错误突发的目的。
与分组交织器不同,卷积交织器不需要将编码序列分组,是一种连续工作的交织器,且比分组交织更为有效。
6.串行级联码
从香农定理可知,用编码长度n足够长的随机编码就可以无限逼近信道容量,但是随着n的增加,译码器的复杂度和计算量呈指数级增加,这是难以接受的。1966年,Forney在其博士论文中提出了级联编码的思想:如果把编码器、信道和译码器整体看做一个广义的信道,这个信道也会有误码。因此,还可以对它做进一步的编码,他将两个码长较短的子码串联构成一个长码,用复杂度的有限增加换取纠错能力的极大提高。
串行级联码的编译码结构如图7-2所示,信息序列分别经过外码和内码两重编码,形成级联码序列输出,在接收端同样需要经过两重译码来恢复信息。当信道有少量随机错误时,通过内码就可以纠正;如果信道的突发错误超出内码的译码能力,则由外码来纠正。由此可见,级联码适用于组合信道。由于内码译码器的错误往往是连续出现的,一般在内、外编码器之间需要一个交织器,接收端也相应地增加解交织器。
图7-2 串行级联码的编译码结构
级联码的组合方式很多,如外码采用RS码,内码用二进制分组码或卷积码,或内、外码都采用卷积码(当内码译码输出软信息时)。
7.低密度校验码
低密度校验(Low Density Parity Check,LDPC)码是一种基于稀疏校验矩阵的线性分组码,它同样是用一个生成矩阵G将待传输的信息元转换为码字。与生成矩阵G相对应的是校验矩阵。所谓低密度校验的含义是:LDPC码的校验矩阵H(n-k)×n是一个几乎全部由0组成的矩阵(即稀疏矩阵)。
Gallagher定义的(n,p,q)LDPC码是码长为n的码字,在它的校验矩阵H中,每一行和每一列中“1”的数目是固定的,其中每一列中“1”的个数是p,每一行中“1”的个数是q,q≥3,每一列之间“1”的重叠数目小于等于1。如果校验矩阵H的每一行是线性独立的,那么编码效率为(q-p)/q,否则编码效率是(q-p′)/q,其中p′是校验矩阵H中行线性独立的数目。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。