通信原理与通信技术(第五版)(张卫钢)第7-12章 第8章 差错控制编码_第1页
通信原理与通信技术(第五版)(张卫钢)第7-12章 第8章 差错控制编码_第2页
通信原理与通信技术(第五版)(张卫钢)第7-12章 第8章 差错控制编码_第3页
通信原理与通信技术(第五版)(张卫钢)第7-12章 第8章 差错控制编码_第4页
通信原理与通信技术(第五版)(张卫钢)第7-12章 第8章 差错控制编码_第5页
已阅读5页,还剩80页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1讲授:张卫钢通信原理与通信技术2024.8TEXTBOOK选用教材23微信公众号08差错控制编码4问题:数字通信除了对波形失真不敏感外,还有一个优点就是可以利用编码这种“软”方法对信号传输中出现的错码进行检查甚至纠正。那么,检/纠错的机理是什么?如何实现呢?CONTENT目录差错控制方式差错控制编码的分类检错和纠错原理8.28.38.48.1线性分组码循环码8.68.78.5差错控制编码的概念常用的检错码结语8.86差错控制编码的概念8.18.1.1信源编码

因数字通信系统信源一般输出的是模拟信息(信号),所以信源编码器的主要任务就是“模/数转换”,比如PCM调制就是一种信源编码技术;若信源输出为离散信息(信号)(图1-6也可看作是一个数据通信系统),则信源编码器的主要任务就是把离散信息变成信息代码,可称之为“离/数转换”,比如,若离散信息“真”和“假”用符号“T”和“F”表示,则信源编码就是将符号“T”和“F”变换成“0”和“1”、“000”和“111”或其它信息码。显然,信源编码器的输出就是只包含信息的数字基带信号,简称信息码。因此,可定义:信息码:只携带通信信息的0、1序列。信源编码:把信源输出的信息变换成信息码的过程或方法。

无需赘言,信源译码是信源编码的逆过程。

不管是“模/数转换”还是“离/数转换”,都希望尽量减少编码冗余度(字长),以提高编码效率,进而提高通信系统的有效性(比如,上例中的编码应取0和1)。因此,信源编码遵循的原则就是编码字长尽量短或编码效率尽量高。7差错控制编码的概念8.18.1.2信道编码

不管是模拟通信系统还是数字通信系统,都存在因干扰和信道传输特性不好对信号造成的不良影响(见图8-1)。对模拟通信系统而言,信号波形发生的畸变会导致模拟信息失真并且畸变的波形很难纠正回来。因此,只能采取各种防干扰、抗干扰措施尽量将干扰降到最低程度以保证通信质量;而对数字通信系统来说,一定程度的波形畸变不会影响对数字信息的接收,因为我们只关心数字信号电平的高低而不太在乎其波形的失真(允许一定的“量变”),也就是说,数字通信系统对干扰或信道特性不良的宽容度比模拟通信系统大(这也就是数字通信比模拟通信抗干扰能力强的主要原因)。当然,若干扰或信道特性不好超过一定限度,波形失真的量变转化为质变,也会使数字通信系统产生误码,从而引起信息传输错误。8差错控制编码的概念8.18.1.2信道编码9

香农在1848年和1957年发表的《通信的数学理论》、《适用于有扰信道的编码理论某些成果》两篇论文中提出了关于有扰信道中信息传输的重要理论——香农第二定理。

对于一个给定的有扰信道,若该信道容量为C,则只要信道中的信息传输速率R小于C,就一定存在一种编码方式,使编码后的误码率随着码长n的增加按指数下降到任意小的值。或者说只要R<C,就存在传输速率为R的纠错码。

该定理虽然没有明确指出如何对数据信息进行纠错编码,也没有给出具有纠错能力的通信系统的实现方法,但奠定了信道编码的理论基础并从理论上指出了信道编码的努力方向。差错控制编码的概念8.18.1.2信道编码

根据香农定理可知,数字通信系统除了可采取与模拟系统同样的措施降低干扰和信道不良对信号造成的影响之外,还可通过对所传信息码的特殊处理检测或纠正错码,以进一步降低误码率,提高通信的可靠性,这种特殊处理就是“差错控制编码”技术。因此,数字通信系统可以从硬件上的抗干扰和软件上的差错控制编码两个途径提高通信系统的可靠性。10差错控制编码的概念8.18.1.2信道编码

差错控制编码也叫信道编码,主要任务就是对信源编码器输出的信息码按一定数学规则加入一些携带错码信息的冗余码元(校验码元或监督码元),形成“信息+错码信息”的数据码,供收信端的信道译码器检出或纠正通信过程中出现的错码。因此,可定义:监督码元:附在信息码后面用以携带错码信息的码元。信道编码:按某种数学规则将信息码元与监督码元编排在一起的过程或方法。编码码型:信源编码器或信道编码器输出的数据码格式。

或者说,信道编码器的任务就是编制一种具有检/纠错能力的编码码型或数据序列。比如,数据序列11001100、10101010和1101001就是一种由3个码字构成的偶校验编码码型,其中,无下划线码元是信息码元,有下划线码元就是监督码元。11差错控制编码的概念8.18.1.2信道编码

信道编码码型与信源编码码型的形式相似,但编码规则不同。比如,第6章出现的自然码、折叠码和格雷码三种信源编码码型是按不同的码元排列规律编制的;而后面介绍的分组码和卷积码两种信道编码码型则是按码元之间的不同数学关系设计的。

可用图8-2描述信源编码和信道编码概念。图(a)的信源编码器将模拟信息转换为0-1代码序列(模-数转换);图(b)的信源编码器将数字信息A、B、C、D分别转换为00、01、10、11代码序列(离-数转换);两图的信道编码器都将信源编码器输出的单极性NRZ码转换为双极性归零码并附带1位偶校验码送到信道上(阴影码为校验码)。图(c)为类比图。

显然,信源编码的目的是将通信信息数字化,信道编码的目的是将通信信息可靠化。12差错控制编码的概念8.18.1.2信道编码

根据第6章可知,信道编码器输出的基带信号通常要经码型变换后才能送入信道传输(比如,图8-2中的单极性码变双极性码),即信道编码器后面要有一个码型变换器。可见,差错控制编码从数据码构造角度提高可靠性,而码型变换从数据码传输角度提高可靠性;差错控制编码注重数据码的内在规律性,而码型变换强调数据码的外在表现形式。二者虽然侧重点和方法不同,但实施对象和目的是一致的,且紧密相连都处在信号传输阶段(信道中)。因此,在概念上可把码型变换看作信道编码的一个分支,或者说,信道编码应该包含差错控制编码和码型变换两部分内容,这样,图1-6的系统功能才更加准确和完善。13差错控制编码的概念8.18.1.2信道编码

为了强调信道编码的差错控制功能,可把“码型变换”称为“线路编码”,这样,信道编码就等同于差错控制编码了。据此,数字/数据通信系统的编译码流程如图8-3所示。比如,信息字符“A”通过信源编码器变为原始单极性不归零码00;然后经过信道编码器变为具有奇校验功能的单极性不归零码001;最后经过线路编码器变成双极性归零码001。三个译码器完成编码器的逆变换任务。14差错控制编码的概念8.18.1.2信道编码综上所述,可以认为(1)信源编码模块实现信息到原始数字基带信号的转换。(2)信道编码模块实现原始数字基带信号到差错控制基带信号的转换。(3)线路编码模块实现差错控制基带信号到匹配信道基带信号的转换。15差错控制方式8.2

前向纠错(FEC)、检错重发(ARQ)和混合纠错(HEC)是常用的三种差错控制方式。16差错控制方式8.2

在前向纠错系统中,发信端将信息码经信道编码后变成含有纠错信息的码,然后通过信道发送出去;收信端收到这些码字后,根据与发信端约定好的编码规则,通过译码能自动发现并纠正因传输带来的数据错误。前向纠错方式只要求单向信道,因此适合于只能提供单向信道的场合和一点发送多点接收的广播方式。因为不需要给发信端反馈信息,所以接收信号的延时小、实时性好。这种系统的缺点是设备复杂且成本高。

检错重发系统的发信端将信息码编成含有检错信息的码字发送到信道,收信端收到一个码字后进行检验,将有无错码的结果通过反向信道反馈给发信端作为对发信端的应答。发信端根据收到的应答信号做出是继续发送新的数据还是把出错的数据重发的决定。检错重发系统根据工作方式又可分为三种,即停发等候重发系统、返回重发系统和选择重发系统。17差错控制方式8.218差错控制方式8.2

混合纠错方式是前向纠错方式与检错重发方式的结合,见图8-4(c)。其内层采用FEC纠正部分差错;外层采用ARQ重传那些虽已检出但并末纠正的差错。该方式在实时性和译码复杂性方面是前向纠错与检错重发方式的折衷,适用于环路延迟大的高速数据传输系统。19差错控制编码分类8.3

根据不同的衡量标准,差错控制编码主要有如下分类。

(1)根据编码功能可分为检错码、纠错码和纠删码。只能完成检错功能的叫检错码;具有纠错能力的叫纠错码;既可检错也可纠错的是纠删码。

(2)根据信息码元与监督码元的关系可分为线性码和非线性码。满足线性关系的(监督码元是信息码元的线性组合)被称为线性码;不存在线性关系的就是非线性码。

(3)根据信息码元与监督码元的约束方式可分为分组码和卷积码。在分组码中,编码前先把信息序列分为k位一组,然后用一定规则附加m位监督码元,形成n=k+m位的码字,监督码元仅与本码字的信息码元有关而与其它码字的信息码元无关。但在卷积码中,码字中的监督码元不但与本码字信息码元有关,还与前面码字的信息码元有约束关系,就像链条那样一环扣—环,因此,卷积码又被称为连环码或链码。20差错控制编码分类8.3(4)根据信息码与监督码的排列形式分为系统码和非系统码。所有码字的k信息位和m监督位排列顺序一致且互不相混的是系统码,反之就是非系统码。(5)根据错码的形式可分为纠正随机错误码和纠正突发错误码。顾名思义,前者用于纠正因信道中随机干扰引起的误码,后者主要对付信道中出现的突发错误。(6)根据是否具有循环性可分为循环码和非循环码。若分组码中任一码字的码元循环移位后仍然是这组码的码字,则这组码就是循环码。反之,就是非循环码。

显然,一种编码可以具有多类性。本章主要介绍纠正随机错误的二进制线性分组码。21检错和纠错原理8.4先介绍数字通信中码元的两种错误形式。(1)随机差错,见图8-6(b)。也称为单比特差错,是由随机/起伏噪声引起的码元错误。其特点是码元中任意一位或几位发生从0变1或从1变0的错误是相互独立的,彼此之间没有联系;一般不会引起成片的码元错误。(2)突发差错,见图8-6(c)。由突发噪声引起的码元错误,比如闪电、电器开关的瞬态、磁带缺陷等都属于突发噪声。该错误的特点是各错误码元之间存在相关性,因此是成片出现,也就是说突发错误是一个错误序列,该序列的首部和尾部码元都是错的,中间的码元有错的也有对的,但错的码元相对较多,错误序列的长度(包括首和尾在内的错误所波及的段落长度)称为突发长度。22检错和纠错原理8.423检错和纠错原理8.4假设要发送一组具有四个状态的数据信息(一个电压信号的四个值,1V、2V、3V、4V)。我们首先要用二进制码对数据信息进行编码,显然,用2位二进制码就可完成,编码表如下:表8-12位二进制编码表数据信息1V2V3V4V数据编码00011011

从表8-1可见,任何一组码不管是一位还是两位发生错误,都会使该码字变成另外一组信息码,从而引起信息传输错误。可见,以这种编码形式得到的数字信号在传输过程中不具备检错和纠错的能力,这是我们所不希望的。24检错和纠错原理8.4

为了表8-1码的缺点,可在每个码字后面再加1位码元,变成3位码字。这样,在3位码字的8种组合中只有4组是许用码字,其余4种被称为禁用码字,编码表变成表8-2。表8-23位二进制编码表数据信息1V2V3V4V××××数据编码000011101110001010100111

在许用码字000、011、101、110中,右边加上的1位码元就是监督码元,它的加入原则是使码字中1的个数为偶数,这样监督码元就和前面2位信息码元发生了关系。这种编码方式称为偶校验(Evenparity),反之,如果加入原则是使码字中1的个数为奇数,则编码方式称为奇校验(Oddparity)。25检错和纠错原理8.4通过增加一位监督码元,可以检出1位或3位错误(3位出错的概率极小),但无法纠正错误。能否通过增加监督码元的位数来增加检错位数或实现纠错功能呢?比如在表8-2中再加1位监督码元变成4位编码(见表8-3),看看情况如何。表8-34位二进制编码表数据信息1V2V3V4V××××数据编码00000110101011000001001010001111

0100011110111101

1110100101010011显然,简单地增加一位监督码元并没有提高检错与纠错能力,那么,检错与纠错能力到底与什么有关呢?在回答这个问题之前,先介绍两个新概念——码元的汉明(Hamming)距离和码元的汉明重量。26检错和纠错原理8.4研究表明,一种编码方式的检错和纠错能力与许用码字中的最小码距有关,即(1)在一个码字内要想检出e位误码,要求最小码距为(8.4-1)(2)在一个码字内要想纠正t位误码,要求最小码距为(8.4-2)(3)在一个码字内要想纠正t位误码,同时检测出e位误码(e>t),要求最小码距为(8.4-3)汉明距离:两个码字中对应码位上码元不同的位数,简称码距或汉明距。27检错和纠错原理8.4所谓能纠正t位误码,同时检测出e位误码的意思是指当错码不超过t位时,错码能够自动纠正,当错码超过t位时,则不能纠正错误,但仍可检测出e位误码,这正是混和检错纠错的控制方式。显然,要提高编码的纠、检错能力,不能仅靠简单地增加监督码元位数(即冗余度),更重要的是要加大最小码距(即码字之间的差异程度),而最小码距的大小与编码的冗余度是有关的。最小码距增大,码元的冗余度就增大,但码元的冗余度增大,最小码距不一定增大。因此,一种编码方式具有检错和纠错能力的必要条件是信息编码必须有冗余,而检错和纠错能力的大小由最小码距决定。另外,检错要求的冗余度比纠错要低。28【例8-1】设有一编码集为1100110,0111010,1011101。求最小码距。若用于检错,能检出几位错码?若用于纠错,能纠正几位错码?若用于混合纠检错,能纠、检几位错码?【解】因为三个码距分别为检错和纠错原理8.4,,所以,最小码距若用于检错,则由

可得,即能检出3位错码;若用于纠错,则由可得,即能纠正1位错码;若用于混合纠检错,则由可得,,即能纠正1位错码,同时检出2位错码。29检错和纠错原理8.4(8.4-4)

显然,编码的冗余度越大,编码效率就越低,即通信系统可靠性的提高是以降低有效性(编码效率)来换取的,而差错控制编码的努力方向就是寻找好的编码方法,在一定的差错控制能力要求下,使得编码效率尽量高,译码方法尽量简单。汉明重量:一个码字中非零码元的个数,简称码重。比如,码字100110的码重为3,0110的码重是2。它反映一个码字中“1”和“0”的“比重”。编码效率:信息码位数k与差错控制码位数n之比,用表示。30几种常用的检错码8.58.5.1奇偶校验码

奇偶校验码是数据通信中最常见的一种简单检错码,其编码规则是:把信息码先分组,形成多个许用码字,在每一个许用码字最后(最低位)加上—位监督码元即可。加上监督码元后使该码字中1的数目为奇数的编码称为奇校验码,为偶数的编码称为偶校验码。根据编码分类,可知奇偶校验码属于一种检错、线性、分组系统码。

奇偶校验码的监督关系可用以下公式进行表述。

对于偶校验码必须保证(8.5-1)(8.5-2)31几种常用的检错码8.5对于奇校验码必须保证(8.5-3)(8.5-4)根据奇偶校验的规则可以看到,当码字中的误码为偶数时,校验失效。因此,简单的奇偶校验码只能检测出奇数个位发生错误的码字。

假设两个码字同为奇数(或偶数)码字,如果两组码只有1位不同,则它们的奇偶性就不同,这与假设相矛盾;如果两组码有2位不同,则它们的奇偶性不变。再假设两个码字奇偶性不同,如果两组码只有1位不同,则它们就变成奇偶性相同的码,这与假设相矛盾;如果两组码有2位不同,则它们的奇偶性不变。换句话说,因为构造不出码距为1的奇偶校检码,所以,奇偶校验码的最小码距只能为2。32几种常用的检错码8.58.5.2水平奇偶校验码

为克服上述简单奇偶校验码检错能力不高且不能检测突发错误的缺点,可以将经过简单奇偶校验编码的码字按行排列成方阵,每一行是一个码字,若有n个码字则方阵就有n行。

如果按码字逐行传输的话,则检错能力没有改变。但若发信端按列传输:000100111010010010101…1001011(如表中箭头所示),收信端按列接收后再按行还原成发信端的方阵,然后按行进行偶校验,则纠错能力就会发生变化。

观察该表可见,因为是逐列发送,在一列中不管出现几个误码(偶数个或奇数个),对应在每一行都只是一位误码,所以都可以通过水平偶校验检验出来;但对于每一行(一个码字)而言仍然只能检出所有奇数个错误。与简单奇偶校验编码相比,这种方法的最大优点是可以检出所有长度小于行数(码字数)的突发错误。33几种常用的检错码8.534几种常用的检错码8.58.5.3二维奇偶校验码

在上述水平奇偶校验编码的基础上,若再加上垂直奇偶校验编码就构成二维奇偶校验码。比如对表8-4的7个码字再加上一行就构成二维偶校验码,如表8-5所示。35几种常用的检错码8.58.5.4群计数码

奇偶校验码是通过添加监督位将码字的码重配成奇数或偶数。而群计数码的编码原则是先算出信息码字的码重,然后用二进制计数法将码重作为监督码元添加到信息码字的后面。表8-6群计数码码字信息码元监督(校验)码元码字101011011000101码字201010100100100码字300110000110100码字411000111000101码字500111111111000码字600010011110101码字711101100000101该码属于非线性分组系统码,除了能检出码字中奇数个错误之外,还能检出偶数个0变1或1变0的错误。除了无法检出1变0和0变1成对出现的误码外,可以检出其它所有形式的错误。368.5.5恒比码几种常用的检错码8.5

恒比码的编码原则是从确定码长的码字中挑选那些“1”和“0”个数的比值一样的码字作为许用码字。这种码通过计算接收码字中“1”的个数是否正确,就可检测出有无错误。表8-7五单位保护电码表阿拉伯数字编码阿拉伯数字编码001101500111101011610101211001711100310110801110411010910011

不难看出这种码的最小码距是2,它能够检出码字中所有奇数个错误和部分偶数个错误。该码也是非线性分组码,但不是系统码,其主要优点是简单,适用于对电传机或其它键盘设备产生的字母和符号进行编码。37线性分组码8.6

对于信源输出的2k个离散消息,信源编码器可以用k位二进制码对它们进行编码,形成2k个具有k位码元的码字,这些码字被称为信息码字,通常用矩阵D表示。

若在每个k位信息码字后面添加m位码元,就会形成2k个n位码字(n=k+m)。而添加的m个码元不携带欲传送的信息,被称为监督码元或校验码元。定义分组码:由信息码字附加监督码元后所构成的码字集合,通常用矩阵C表示。线性分组码:信息码元与监督码元满足一组线性方程的分组码。

显然,如果分组码的各码字之间没有关系的话(彼此独立或线性无关),则对于大的k值或n值,编码设备会极为复杂,因为编码设备必须储存2k个字长为n的码字。鉴于此,需要构造码字之间有某种关系的分组码,使得2k个码字中的一些码字可以通过另一些码字的组合得到,从而降低编码的复杂性,线性分组码应运而生。定义:8.6.1线性分组码的概念38

线性分组码有两个重要特性:(1)封闭性。即任意两个许用码字之模2和仍为—许用码字,这个性质隐含着线性分组码必须包含全零码字这一结论;(2)码字的最小码距等于非零码的最小码重。利用这一特性,可以迅速方便地找出一种线性分组码的最小码距,从而判断该码的检/纠错能力。线性分组码8.6不能用线性方程组描述的分组码就是非线性分组码。通常,把长度为n,有2k个码字的线性分组码称为“(n,k)线性码”。8.6.1线性分组码的概念39

在(n,k)码中,虽然有2k个码字,但因为有了线性条件,2k个码字中只有k个独立,其余的都可以通过这k个独立码字的线性组合而得到(模2加),因此,编码设备不再需要储存2k个字长为n的码字,而只需保存k个线性无关的码字即可。线性分组码8.6比如,一个,的分组码共有8个码字,可记为,其中,,为信息码,其余为监督码。若该分组码每个码字中的各位满足线性条件8.6.1线性分组码的概念40线性分组码8.6则对3个信息码字001、010和100可构造出3个线性无关的分组码字0011101、0100111和1001110。其余四个码字(不包含全零码字0000000)均可由这三个码字线性组合而成:0111010=0011101+0100111;1010011=0011101+1001110;1101001=0100111+1001110;1110100=0011101+0100111+1001110。因此,对于该(7,3)码,编码设备只需存储、和三个码字即可。8.6.1线性分组码的概念41设有一(n,k)线性分组码,其中信息码为

,码字格式及类比图见图8-8(a)和(b)。把具有这种结构的线性分组码称为线性分组系统码。线性分组码8.68.6.1线性分组码的概念42线性分组码8.6

(8.6-1)

(8.6-2)8.6.2线性分组码的编码根据图8-8,可将分组码和信息码用向量或矩阵表示为则每一个分组码码字可以由信息码元的线性组合而成,即有43线性分组码8.6上述各式描述了一个分组码码字与一个信息码码字之间的关系。8.6.2线性分组码的编码44线性分组码8.6将上述C与D的n个关系式用矩阵表示为即C=D·G

(8.6-3)G称为生成矩阵,是一个k×n阶矩阵,具体形式为8.6.2线性分组码的编码45线性分组码8.6该矩阵又可分解为两个子矩阵(8.6-4)8.6.2线性分组码的编码46线性分组码8.6其中Ik是k×k阶单位阵,Q为k×m阶矩阵,即这样,分组码C又可表示为C=D[IkQ](8.6-5)上述各式中的C和D可以是由一个码字构成的行向量,也可以是由2k个行向量构成的2k×n阶分组码矩阵或2k×k阶信息码矩阵。8.6.2线性分组码的编码47线性分组码8.68.6.2线性分组码的编码典型生成矩阵:能够分块为Ik和Q的生成矩阵G。需要强调的是,(1)生成矩阵G的行数和列数分别是信息码D的位数k和分组码C的位数n。(2)上述各式中的C和D可以是由一个码字构成的行向量,也可以是由2k个行向量构成的2k×n阶分组码矩阵和2k×k阶信息码矩阵。

式(8.6-3)说明,(n,k)线性码完全由生成矩阵G的k行元素决定,即任何一个分组码码字都是G元素的线性组合。因(n,k)线性码中的任何k个线性无关码字都可用来构成生成矩阵G,故G的各行都线性无关。若各行之间有线性相关的,就不可能由G生成2k个不同码字了。其实,G的各行本身就是一个码字。若给定k个线性无关码字,则可直接构成G矩阵并生成其余码字。非典型生成矩阵:不能够分块为Ik和Q的生成矩阵G。48

由典型生成矩阵G产生的线性分组码C是系统码,其特征是前k位元素与信息码完全相同,我们常用的是典型生成矩阵。非典型生成矩阵G所产生的线性分组码C就是非系统码。非典型生成矩阵通过矩阵初等行变换也可以转化为典型生成矩阵。个元素(非系统码要存储(矩阵)生成相应的分组码码字(分组码矩阵),从而降低了编码复杂性,提高了编码效率。因系统码的编/译码器比较简单且检/纠错性能与非系统码相同,故我们只讨论系统码。系统码编码器只需存储个),就可根据信息向量线性分组码8.68.6.2线性分组码的编码49线性分组码8.6【例8-2】给定一个(7,4)线性分组码的生成矩阵:若信息码为d=[1101],求该信息码的线性分组编码C。【解】根据式(8-6)可得8.6.2线性分组码的编码50线性分组码8.6即对信息码[1101]的线性分组编码为[0001101]。注意:矩阵乘法采用模2乘和模2加。上式也可写成:8.6.2线性分组码的编码由以上讨论可知,编码前的信息码字共有2k种组合,而编码后的码字因附加了m位校验码元而有种组合,显然,,说明C与D的关系不唯一。因此,优选矩阵Q就可得到既有较强检/纠错能力,又容易实现且编码效率较高的一种线性分组码。51线性分组码8.6

为了评价线性分组码的差错控制能力,只需求出分组码中非零码的最小码重(等于码字的最小码距),然后利用式(8.4-1)、(8.4-2)和(8.4-3)计算即可。【例8-3】已知线性(6,3)码的生成矩阵为,求:两组线性分组码及其差错控制能力。8.6.2线性分组码的编码52线性分组码8.6【解】因为k=3,所以信息码码字矩阵(3×8阶)为则由式(8-6)可得出分组码码字矩阵分别为8.6.2线性分组码的编码53线性分组码8.6,可见,分组码C1的前3位与信息码不完全相同,是非系统码;而分组码C2的前3位与信息码完全相同,是系统码。不考虑全零码,C1和C2的最小码重都为3,即最小码距dmin=3。根据式(8.4-1)、(8.4-2)和(8.4-3)可知两组分组码都能够检2位错,纠1位错,但不能同时纠1位错检1位错。

8.6.2线性分组码的编码54下面简要介绍译码原理。从式(8.6-4)式可得线性分组码8.6C=D[IkQ]=[DDQ]=[DCm](8.6-6)Cm=DQ(8.6-7)式(8.6-7)两边模二加Cm,可得:DQ⊕Cm=0,该式可变为矩阵相乘形式,即(8.6-8)令,则有。其中是m×k

阶矩阵,可用P表示,即或8.6.3线性分组码的译码55线性分组码8.6则有(8.6-10)通常,把H称为一致校验矩阵或一致监督矩阵。具有形式的H矩阵称为典型形式的监督矩阵。由典型形式的监督矩阵及信息码元很容易算出各监督码元。

线性代数理论告诉我们,典型形式监督矩阵各行一定是线性无关的,因此,由它可以得到m个独立的监督位。非典型形式的监督矩阵可以通过行运算或列互换化为典型形式,除非非典型形式监督矩阵的各行不是线性无关的。

比较式(8.6-4)和式(8.6-10)可见,借助式(8.6-9)可由校验矩阵H可以求得生成矩阵G,反之亦然。8.6.3线性分组码的译码56线性分组码8.6将式(8.6-6)和HT代入式(8.6-8)可得CHT=0

(8.6-11)

该式说明任何码字和校验矩阵H的转置相乘,其结果为m位零向量。设收信端接收码字为R,将R带入式(8.6-11)计算。若结果为零,说明没有错码,即R=C。可见,校验矩阵能够检测码字的正确性,“校验”之名由此而来。可以推导出校验矩阵H与生成矩阵G满足GHT=HGT=0(8.6-12)设行向量R=[r1

r2

…rn]是收信端收到的码字。因为信道干扰会产生误码,则接收向量R和发送向量C就会有差别。若用向量E=[e1

e2

…en]表示这种差别,则三者的关系为E=R+C(8.6-13)8.6.3线性分组码的译码57线性分组码8.6这里的“+”号仍为模2加。若R中的某一位ri与C中的相同位ci一样时,E中的ei=0;若不同(即出现误码),则ei=1。可见向量E能够反映误码情况,因此,称之为错误向量或错误图样。E的码重就是误码的个数,因此,希望E的码重越小越好。式(8.6-13)也可写为

(8.6-14)定义矩阵S为R的伴随式

(8.6-15)则由式(8.6-11)、(8.6-14)和(8.6-15)得S=(E+C)HT=EHT+CHT=EHT

(8.6-16)式(8.6-16)表明伴随式S只与错误图样E有关而和发送码字无关。8.6.3线性分组码的译码58线性分组码8.6

当通信双方确定了信道编码后,生成矩阵G和与之紧密相关的监督矩阵H也就随之而定。对于收信端而言,它可以知道生成矩阵G、监督矩阵H以及接收到的行向量R。

为了译码,收信端先利用式(8.6-15)求出伴随式S,然后利用式(8.6-16)解出错误图样E,最后根据式(8.6-13)或(8.6-14)解出发送码字C。图8-9给出编码与译码示意图。【例8-4】设发送序列为11010100111,接收序列为01101011011.求差错图样和突发长度。解:由式8.6-10得错误图样E=R+C=11010100111+01101011011=10111111100可见,E中的第一个“1”到最后一个“1”共有9个码,因此,突发长度为9。8.6.3线性分组码的译码59

汉明码是由美国数学家汉明(RichardWesleyHamming)于1950年提出的一种可纠正1位随机错码的线性分组码。前面出现的汉明距离、汉明重量都是他提出的概念。汉明码的主要参数如下:(1)码字长度:。(2)信息码长度:。(3)监督码长度:,是不小于3的任意整数。(4)最小码距:。(5)纠错能力:纠正1位随机错码或检测2位随机错码。(6)编码效率:。显然,若字长很大,则接近于1。线性分组码8.68.6.4汉明码60循环码8.78.7.1循环码的概念

循环码也是一种分组码,前k位为信息码元,后r位为监督码元。它除了具有线性分组码的封闭性之外,还有一个独特的循环特性,即任一许用码字经过循环移位后(左移或右移)所得到的码字仍为一许用码字。用代数编码理论可把循环码字中各码元当作一个多项式的系数,即把一个长为n的码字表示为(8.7-1)循环码:任一码字向左/向右循环移动任意位后仍是其中一个码字的(n,k)线性码。61循环码8.7c(x)称为码多项式,变量x称为元素,其幂次对应元素的位置,它的系数即为元数的取值(我们不关心x本身的取值),系数之间的加法和乘法仍服从模2规则。比如一个(7,3)循环码(见表8-8)中第7个码字为(1100101),则该码字可表示为(8.7-2)表8-8一种(7,3)循环码的全部码字码字序号信息位c1c2c3监督位c4c5c6c7码字序号信息位c1c2c3监督位c4c5c6c71000000051001011200101116101110030101110711001014011100181110010可见,该码的信息位与监督位排列顺序一致、分明,因此是一种系统码。62循环码8.7对一组4位信息码字,附加3位监督码元可编成两种(不只两种)循环码见表8-9。表8-9(7,4)循环码码字码字序号信息码k1k2k3k4系统码c1c2c3c4c5c6c7非系统码c1c2c3c4c5c6c71000000000000000000200010001011000101130010001011000101104001100111010011101501000100111010110060101010110001001117011001100010111010801110111010011000191000100010110110001010011001110101001111101010100111001110121011101100010001011311001100010111010014110111010011111111151110111010011000101611111111111110100163循环码8.7

可见,对于16个信息码字,系统码和非系统码都具有16个相同的编码码字,但与信息码的对应(映射)关系不一样。系统码的前4位都是信息码,而后3位都是监督码元,二者泾渭分明。非系统码从第5组开始就“乱”了,虽然每组信息码仍有一个确定的编码码字与之对应,但已经没有了系统码那种泾渭分明的结构。因一般只研究系统码,故可直接说循环码是一种系统码。注意:对于一个(n,k)线性码C,根据不同方法(生成矩阵)可以有包含系统码和非系统码在内的多种编码形式,但系统码是唯一的,其余的都是非系统码。64循环码8.78.7.2循环码的生成如果在循环码的个码字中,取出一个前面位皆为“0”的码字,用次数为的多项式表示,则根据循环性可知,、、

...均是码字,而且这个码字是线性无关的。因此,可以用它们构成此循环码的生成矩阵。【定理1】在一个循环码中,存在唯一的次码多项式,它的形式为

(8.7-3)一旦确定了,全部循环码就被确定了,因此,也被称为生成多项式。这样,循环码的生成矩阵就可以写为65循环码8.7(8.7-4)例如,在表8-8所给出的循环码中,,,。可见,唯一的一个四次多项式。

代表的码字是第二个码字0010111,其对应的码多项式就是生成多项式将此代入式(8.7-4),得到

(8.7-5)8.7.2循环码的生成66循环码8.7即有(8.7-6)与式(8.6-4)相比较,它不符合形式,即该生成矩阵不是典型形式,但是可通过线性变换转换为典型形式的生成矩阵。根据式(8.6-3),可以写出该循环码码字为(8.7-7)8.7.2循环码的生成67循环码8.7【定理2】在循环码中,所有的码多项式都能被整除。该定理表明下式成立(8.7-8)由式(8.7-8)可以看出:(1)任一循环码多项式都是的倍式,即能被整除。由此推论:任一次数不大于的多项式与的乘积都是码多项式。(2)若找到并已知,就可生成全部码字。显然,鉴别一个接收码字是否是原码字,只要验证它是否能被整除即可。因此,定理2为循环码的编码和译码提供了依据和方法。8.7.2循环码的生成68循环码8.7那么如何寻找生成多项式呢?

【定理3】循环码的生成多项式是的因式。由定理3可知,从的因式分解中可以找出一个()次且常数项不为零的因式作为n位长循环码的生成多项式。例如,可以分解为(8.7-9)为了求(7,3)循环码的生成多项式,要从上式中得到一个四次因式。不难看出,这样的因式有两个,即8.7.2循环码的生成69循环码8.7(8.7-10)(8.7-11)以上两式都可作为生成多项式用。不过,选用的生成多项式不同,产生的循环码字也不同。用式(8.7-11)作为生成多项式产生的码即为表8-9所列的循环码。8.7.2循环码的生成70循环码8.78.7.3循环码的编码循环码可以按下面的思路编码:(1)根据给定的值选定生成多项式;(2)根据定理2的式,就可以对给定的信息码进行编码。但这样生成的码并非系统码。根据系统码的概念,系统码码多项式为

(8.7-12)71循环码8.7根据定理2,系统码的码多项式可以写成(8.7-13)可见,构造系统循环码时,只需将信息码多项式升次幂(乘以)变为,然后用除以,所得的余式即为监督码元多项式。因此,系统循环码的编码过程就是用除法求余的过程。8.7.3循环码的编码72循环码8.7第二步:用除,得到商和余式,即(8.7-14)第三步:将加进即得编出的码字(8.7-15)第一步:用乘。根据上述原理,系统循环码编码步骤可归纳如下:8.7.3循环码的编码73循环码8.7【例8-5】已知一种(7,3)循环码的全部码字为0000

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论