差错控制码编码原理
差错控制编码基本原理
差错控制编码基本原理
以下是差错控制编码的基本原理:
1.编码器:编码器是负责添加冗余码的模块。
它将待发送的数据分割成块,并根据特定的编码规则生成冗余码。
常用的差错控制编码技术包括奇偶校验、循环冗余检验码(CRC)、海明码等。
2.冗余码:冗余码是编码器生成的额外信息,用于检测和纠正差错。
冗余码通常通过对数据进行其中一种计算生成,能提供额外的冗余信息以便于差错检测和纠正。
不同的冗余码具有不同的性能特点,如比特错误检测能力、纠正能力等。
3.传输:编码器将原始数据和冗余码一同发送给接收方。
传输介质可能会引入噪声、干扰和差错,可能会导致数据发生变化。
4.解码器:解码器负责接收和解码接收到的数据。
它使用相同的编码规则对接收到的数据进行解码,并生成相应的冗余码。
5.比较和校验:解码器将解码后的数据和接收到的冗余码进行比较和校验。
如果冗余码与接收到的数据一致,说明数据未发生错误。
否则,说明数据发生了差错。
6.纠错:当解码器检测到差错时,纠错算法会尝试恢复或修正接收到的数据。
纠错的能力取决于所使用的具体差错控制编码技术。
一般来说,能够检测到错误的位数并进行纠正的编码技术能够提供更好的纠错能力。
总结来说,差错控制编码通过添加冗余码在传输数据时提供了差错检测和纠正的能力。
它的基本原理是在发送方使用编码器对数据进行编码,添加冗余码;接收方使用解码器对接收到的数据进行解码,并进行差错检
测和纠正。
不同的差错控制编码技术具有不同的特点,可根据实际需求选择合适的编码技术来提高数据传输的可靠性。
差错控制编码要点
2024/2/9
2
第3页/共67页
10.1 差错控制编码的基本原理
常用的差错控制方式
1. ARQ(Automatic Repeat Request)方式 (自动请求重发或检错重发)
发端发送出可以发现错误的码字。经过传输到接 收端译码后,如果没有发现错误,则输出。如果发现 错误,则自动请求发端重发,直到正确接收到码字为 止。
2024/2/9
11
第12页/共67页
10.1 差错控制编码的基本原理
码间距离d 及检错纠错能力 码字:由信息位和监督位组成的一组码元。
用C = ( cn-1 cn-2 … c0 )表示。
(许用码、禁用码) 码元: 组成码字的元素,用Ci表示。 码长:码字中码元的个数,用n表示。
码组:由多个许用码组成的一组码字。
2024/2/9
7
第8页/共67页
10.1 差错控制编码的基本原理
香农有扰信道编码定理:
在有扰信道中只要信息的传输速率R小于信道容 量C,总可以找一种编码方法,使信息以任意小的差 错概率通过信道传送到接收端,即误码率Pe可以任意 小,而且传输速率R可以接近信道容量C。但若R > C, 在传输过程中必定带来不可纠正错误,不存在使差错 概率任意小的编码。
9
第10页/共67页
10.1 差错控制编码的基本原理
减小误码率Pe的两种途径:
(1)n 及 R一定时,增加信道容量C。由图可见,E(R) 随C的增加而增大。由信道容量公式知, 增加C, 可通过增加S和B来实现;
(2)在C及 R一定的情况下,增加n可以使Pe指数减小。
2024/2/9
10
第11页/共67页
我国电传机传输汉字采用的是“5中取3” 恒比码,其码长 为5,码字中“1”的个数为3。这种码我国称为保护电码。码长 为5的二进制数共有32种组合,选择其中含有3个“1”的组合作 为许用码,为10个。
第7章差错控制编码
第7章 差错控制编码
7.2.2 行列监督码(二维奇偶校验码)
行列监督码(又称二维奇偶校验码、方阵码),它是垂直奇 偶校验与水平奇偶校验的组合,其发现差错的能力很强。这 种码是将若干码字排列成矩阵,在每行和每列的末尾均加监 督码(奇监督或偶监督)。
例如
1100101100010100110001011000011001110101…… 为用户要发送的信息序列,现将每8个码元分成一 组编成方阵,对方阵的行与列都进行偶数监督,则 在发送端编成如表7-1所示的方阵。
息码为10101,码后的码字为1010110101; 当信息码有偶数个“1”时,则监督码是信息码的反码,如
信息码为11011,则编码后的码字为1101100100。
第7章 差错控制编码
监督码的解码规则如下:
解码时先将接收码组中信息码和监督码对应码位模2相加, 得到一个合成码。 若接收的信息码中有奇数个“1”,则此合成码就是检验 码; 若接收的信息码中有偶数个“1”,则校验码为合成码的 反码。 观察校验码中“1”的个数,就能判决信码是否有错并纠 正错误。
信道中差错的类型:
随机差错:由随机噪声导致,表现为独立的、稀疏 的和互不相关发生的差错。
突发差错:相对集中出现,即在短时段内有很多错 码出现,而在其间有较长的无错码时间段,例如由 脉冲干扰引起的错码或信道特性产生的衰落等。
第7章 差错控制编码
7.1.2 差错控制方式 常用的差错控制方式:
➢ 检错重发(ARQ)
7.1.3 纠错码的分类
1)按差错控制编码的功能分:检错码、纠错码 2)按信息码与监督码间的检验关系分:
线性码、非线性码 3)按信息码与监督码间的约束关系分:分组码、卷积码 4)按信息码的编码前后的形式分:系统码、非系统码 5)按信道差错类型分:随机纠错码、突发纠错码 6)按用于差错编码的数学方法分:
差错控制编码基本原理
军械工程学院信息工程系
随机 信道 • •
错码随机出现
错码之间统计独立 错码成串集中出现
例如,含有正态分 布的白噪声的信道
突发 信道 • •
混合 信道 •
主要原因是脉冲干扰
例如,电火花产生 的干扰
存在随机错码及突发错码,且不可忽略
反馈校验(feedback checkout)
发送端
接收端
将收到的码元与发 出的信码进行比对
2 4种 4种 4种 2 检1位错
3 2种 2种 6种 3 检2位或纠1 位错
1位错码
(011) (001)
2位错码
0
A(000) (010) (110)
1
(100)
2
3
汉明距离
e
(101)
d0 e 1
d0
000
011
0 A 1 2 B 3
汉明距离
2
010
000 0 A 1 2 3 B
汉明距离
111
3
010
0
1
2
3
4
5
6
7
汉明 距离
A
t
t
B
d0 2t 1
d0
0 At
1
2
3
4
t 5
5 B
6
7
汉明距离
A
1
B
t e
t
11111 00000 0 A 1 2 3 4 5 B
5
000
001 010 011 100 101 110
000
晴
云 阴
001雨 个码的码组集合, 全部是许用码组。 100 雪
差错控制编码
2.差错控制编码2.1. 引言什么是差错控制编码(纠错编码、信道编码)?为什么要引入差错控制编码?差错控制编码的3种方式?本章主要讲述:前向纠错编码(FEC)、常用的简单编码、线性分组码(汉明码、循环码)、简单介绍RS码*、BCH码*、FIRE码*、交织码,卷积码极其译码、TCM编码*。
一、什么是差错控制编码及为什么引入差错控制编码?在实际信道上传输数字信号时,由于信道传输特性不理想及加性噪声的影响,接收端所收到的数字信号不可避免地会发生错误。
为了在已知信噪比情况下达到一定的误比特率指标,首先应该合理设计基带信号,选择调制解调方式,采用时域、频域均衡,使误比特率尽可能降低。
但若误比特率仍不能满足要求,则必须采用信道编码(即差错控制编码),将误比特率进一步降低,以满足系统指标要求。
随着差错控制编码理论的完善和数字电路技术的发展,信道编码已经成功地应用于各种通信系统中,并且在计算机、磁记录与存储中也得到日益广泛的应用。
差错控制编码的基本思路:在发送端将被传输的信息附上一些监督码元,这些多余的码元与信息码元之间以某种确定的规则相互关联(约束)。
接收端按照既定的规则校验信息码元与监督码元之间的关系,一旦传输发生差错,则信息码元与监督码元的关系就受到破坏,从而接收端可以发现错误乃至纠正错误。
研究各种编码和译码方法是差错控制编码所要解决的问题。
二、差错控制的三种方式1、检错重发(ARQ)检错重发:在接收端根据编码规则进行检查,如果发现规则被破坏,则通过反向信道要求发送端重新发送,直到接收端检查无误为止。
ARQ系统具有各种不同的重发机制:如可以停发等候重发、X.25协议的滑动窗口选择重发等。
ARQ系统需要反馈信道,效率较低,但是能达到很好的性能。
2、前向纠错前向纠错(FEC):发送端发送能纠正错误的编码,在接收端根据接收到的码和编码规则,能自动纠正传输中的错误。
不需要反馈信道,实时性好,但是随着纠错能力的提高,编译码设备复杂。
差错控制编码的基本原理
差错控制编码的基本原理你想啊,在咱们这个信息的世界里,数据就像一个个调皮的小精灵,到处跑来跑去。
可是呢,在传输的过程中,这些小精灵可能就会迷路或者出岔子,就像你给朋友传个小纸条,路上被风吹破了一角啥的。
这时候差错控制编码就像一个超级保镖闪亮登场啦。
差错控制编码呢,其实就是给这些信息小精灵穿上一层特殊的保护衣。
比如说咱们有原始的信息,就像你要送出去的精美小礼物。
这个原始信息可能是一串简单的数字或者字母啥的。
但是直接就这么送出去,它很脆弱的哦。
于是呢,咱们就根据一定的规则,给这个原始信息加上一些额外的东西,这就像是给小礼物包上一层又一层的漂亮包装纸。
这些额外加的东西可不是随便加的,是按照特定的算法来的呢。
打个比方哈,假如咱们的原始信息是“101”,通过差错控制编码的规则,可能就变成了“101110”。
这里面后面的“110”就是咱们给原始信息加上的保护部分。
为啥要这么加呢?这就涉及到它的神奇之处啦。
当这个加了保护衣的信息在传输过程中遇到了干扰,比如说被雷劈了一下信号(当然这是夸张啦),某个数字可能就变了。
如果没有差错控制编码,那接收方收到错误的信息就蒙圈了,根本不知道是啥。
但是有了这个编码就不一样啦。
接收方知道这个编码的规则呀,它就可以根据收到的信息,去检查有没有错误。
就像你朋友收到那个被风吹破一角的纸条,但是因为你之前和他有个小暗号(就像差错控制编码的规则),他就能大概猜出纸条上原来完整的内容。
而且差错控制编码还有不同的类型呢。
有一类叫检错码,这个就像是一个小侦探。
它能发现信息在传输过程中有没有出错,但是它不知道具体哪里错了。
就像你发现小礼物的包装纸破了个洞,你知道有问题,但还不清楚里面的礼物到底坏没坏。
还有一类叫纠错码,这个就更厉害啦,它不但能发现错误,还能把错误给纠正过来。
这就好比你朋友收到纸条,发现有个地方模糊不清,但是根据你们的暗号,他能准确地把模糊的字给还原出来。
在实际的通信系统里,差错控制编码可重要啦。
第6章 差错控制编码
指在若干接收码元中知道有一个或一些是错的,
但不一定知道该错码的准确位置。采用这种差错
控制方法需要具备双向信道。
第6章 差错控制编码技术
检错重发法(ARQ)原理方框图
第6章 差错控制编码技术
ARQ方式的主要优点:
(1)只需要少量的多余码元就能获得极低的
输出误码率;
lim
s
c lim
s
B log 2 (1
s ) n0 B
第6章 差错控制编码技术
(2) 减小噪声功率N (或减小噪声功率谱密度n0)可以增加信 道容量,若噪声功率趋于零(或噪声功率谱密度趋于零),则信 道容量趋于无穷大,即:
s lim 0 c lim 0B log 2 (1 N ) N N
及代码选择由某一事先确定的规则来决定,收端接收到这
样的编码后,根据已知的规则,对接收信息进行检验,发 现、纠正和删除错误。下面我们举例说明差错控制编码的 原理。
第6章 差错控制编码技术
假设要发送一组具有八个状态的数据信息
“000”(晴),“001”(云),“010”(阴), “011”(雨),“100”(雪),“101”(霜), “110”(雾),“111”(雹)。我们首先要用二 进制码对数据信息进行编码,显然,用3位二进制
1在一个码组内要想检出e位误码要求最小码距为mine12在一个码组内要想纠正t位误码要求最小码距为min2t13在一个码组内要想纠正t位误码同时检测出e位误码et要求最小码距为minte1差错控制编码技术显然要提高编码的纠检错能力不能仅靠简单地增加监督码元位数即冗余度更重要的是要加大最小码距即码组之间的差异程度而最小码距的大小与编码的冗余度是有关的最小码距增大码元的冗余度就增大但码元的冗余度增大最小码距不一定增大
第八章 差错控制编码
第八章 差错控制编码
8.1 引言 8.2 差错控制编码的基本原理 8.3 常用的简单编码 8.4 线性分组码
返回
8.2 差错控制编码的基本原理
二、最小码距d0与纠错能力的关系: 1、重复码:用来发送天气预报 举例: 结论:纠错能力与码的位数有关。怎么样的关系呢? 2、最小码距d0与纠错能力的关系:
(1) 检测e个随机错误,则要求码的最小距离d0≥e+1; (2) 纠正t个随机错误, 则要求码的最小距离d0≥2t+1; (3) 纠正t个同时检测e个随机错误,则要求码的最小距离 d0≥t+e+1, (e>t)。 三、差错控制编码的分类: 从用途、监督关系、码字结构、信息处理等方面分类
8.4
线性分组码
一、什么是线性分组码? 1、基本概念 分组码:先给信息码分组,然后给每组信息码附加若干监督码的编码。 代数码:建立在代数学基础上的编码。
线性码:信息位与监督位由线性代数方程组联系在一起。是代数码 线性分组码:信息码分组后,定长信息码与监督码由线性代数方程 组联系在一起而形成的编码。如汉明码、循环码等。 2、两个重要性质 (1)封闭性:任何两个许用码字之和,仍为一许用码字。
接收端 100 (禁用码组)
错一个
发送端
000
肯定出错了,且能纠错
A、若错一位,则能确定发端的码。
接收端 100
错一个 错两个
发送端 000 111
北京理工大学《通信原理》第11章-差错控制编码
但是这种码不能发现一个码组中的两个错码,因为发生两
个错码后产
检错和纠错
上面这种编码只能检测错码,不能纠正错码。例如,当接收码 组为禁用码组“100”时,接收端将无法判断是哪一位码发生了 错误,因为晴、阴、雨三者错了一位都可以变成“100”。
要能够纠正错误,还要增加多余度。例如,若规定许用码组只 有两个:“000”(晴),“111”(雨),其他都是禁用码组, 则能够检测两个以下错码,或能够纠正一个错码。
例如:“000”(晴),“001”(云),
“010”(阴),“011”(雨),
“100”(雪),“101”(霜),
“110”(雾),“111”(雹)。
其中任一码组在传输中若发生一个或多个错码,则将变 成另一个信息码组。这时,接收端将无法发现错误。
12
第11章差错控制编码
若在上述8种码组中只准许使用4种来传送天气,例如:
若码组A中发生两位错码,则其位置不会超出以O点为圆 心,以2为半径的圆。因此,只要最小码距不小于3,码 组A发生两位以下错码时,
不可能变成另一个准用 码组,因而能检测错码 的位数等于2。
0123
A
B 汉明距离
e
d0
19
第11章差错控制编码
同理,若一种编码的最小码距为d0,则将能检测(d0 - 1)个错码。 反之,若要求检测e个错码,则最小码距d0至少应不小于( e + 1)。
N - 码组的总位数,又称为码组的长度(码长), k - 码组中信息码元的数目, n – k = r - 码组中的监督码元数目,或称监督位数目。
16
第11章差错控制编码
分组码的码重和码距
码重:把码组中“1”的个数称为码组的重量,简称码重。 码距:把两个码组中对应位上数字不同的位数称为码组
数字通信:差错控制编码(纠错码)
差错控制的基本原理 在信息码上附加一定位数的监督码元,使其与信息位按某 种规则相互关联;
若数据在传输过程中发生差错,关联关系被破坏,从而可 检出和/或纠正错误。
第 10 章 差错控制编码 差错控制编码的分类
线性码:
信息码与监督码之间的关系为线性关系;
非线性码:信息码与监督码之间的关系为非线性关系。
1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1 1 1 0 1 1 0 1 1 0 1 1
当信息位为0001时, (1)试求其后的监督位。 (2)监督矩阵H
第 10 章 差错控制编码
解:
G ( 1) A a6 a5 a4 a 3
强干扰引起。
混合错误:以上两种误码及产生原因的组合。
第 10 章 差错控制编码
10.1.2 差错控制类型
1、检错重发 (ARQ Automatic Repeat Request ):在发送端采用 具有检错功能的编码,接收端发现出错后自动请求重发. 有以下三种方式: 停止---等待ARQ
第 10 章 差错控制编码 具有回拉功能的连续ARQ
奇偶监督码
二维奇偶监督码(略,见附录)
恒比码
第 10 章 差错控制编码
10.2.1 奇偶监督码 奇偶监督码:在信息码元后附加一位监督位,使 得码组中奇偶监督码“1”的个数为偶数或奇数。
对k位码元 校验位 a1a2a3 ...ak ak 1 a1 a2 a3 ... ak ak 1 a1 a2 a3 ... ak 1
第 10 章 差错控制编码 (1)
A a5 a4 a3 G
信息码 000 001 010 011 100 101 110 111
现代通信技术讲义第四章 差错控制编码
第四章 差错控制编码4.1概述 4.1.1基本概念1、差错控制编码原因:数字信号在传输,由于受到噪声的干扰,产生误码。
在很多通信场合,要求无误码传输。
如(1)两个计算机只的数据传输;(2)多址卫星通信中各站的站址编码信息; (3)各种遥控或武器控制的信息传输。
2、差错控制编码的基本思想差错控制编码在通信系统中也称为信道编码,意味为适应信道传输而进行的编码。
编码思想是对信息序列进行某种变化,使原来彼此独立、相关性极小的信息码元产生某种相关性。
使接收端利用这种规律性来检查或进而纠正信息码元在信道传输过程中所造成的差错。
3、差错类型1)随机差错:差错是相互独立、不相关的。
存在这种差错的信道是无记忆信道或随机信道,如卫星通信,错误比较分散。
2)突发差错:差错成串出现,错误与错误之间有相关性。
即一个错误往往要影响到后面的一串码字。
如短波和散射信道产生的差错,错误比较集中。
4、错误图样若发送数字序列S 为: 1 1 1 1 1 1 1 1 1 1 接收数字序列R 为: 1 0 0 1 0 0 1 1 1 1 则错误图样定义为 E=S ⊕R ,⊕为逻辑加,或异 此时错误图样E 为: 0 1 1 0 1 1 0 0 0 0 显然,知道错误图样E ,就可以确定它属于那类错误。
定义:错误密度M=错误之间的总码元数第一个错误至最后一个错误之间的误码数第一个错误至最后一个规定M=4/5时,表明为突发性差错。
在编码技术中,码的设计与错误性质有关。
因为纠随机错误的码很有效时,往往对纠突发差错的效果不佳。
反之亦然。
而事实上,而者往往是同时存在的。
设计时以一种为主,最好二者兼顾。
4.1.2差错控制方式1、前向纠错方式(FEC )特点:(1)收端能发现差错,且能纠错。
(2)译码实时性好,但是译码设备较复杂。
应用:一个用户对多个用户的同时通信。
如:移动通信特别适合。
2、自动请求重传方式(ARQ)特点:(1)收端只能检错,不能纠错(2)收端发现错误,控制发端重新发送,直至正确(3)译码实时性茶,但是译码设备简单。
第8章差错控制编码技术
4. 汉明码
汉明码是一类常见的线性分组码,是 一种能够纠正单个错误的完备码。要纠正 码组中的单个错误,则要求与单个错误图 样对应的伴随式各不相同,且不能为全零。 若码长为n,监督码元的个数为r,则要求 2 r-1≥n。码组为汉明码时取等号。即用来 纠正单个错误时,汉明码所用的监督码元 个数最少,效率最高。
第八章 差错控制编码技术
8.1 8.2 8.3 8.4 8.5 8.6 8.7
差错控制编码的基本概念 线性分组码 循 环 码 卷 积 码 网格编码调制(TCM) Turbo码 差错控制编码对系统性能的改善
8.1 差错控制编码的基本概念
1. 差错控制的工作方式
按照噪声或干扰的变化规律,可把信道分 为三类:随机信道、突发信道和混合信道。 恒参高斯白噪声信道是典型的随机信道, 其中差错的出现是随机的,而且错误之间 是统计独立的。具有脉冲干扰的信道是典 型的突发信道,错误是成串成群出现的, 即在短时间内出现大量错误。
在收端采用维特比算法执行最大似然 检测。编码网格状图中的每一条支路对应 于一个子集,而不是一个信号点。检测的 第一步是确定每个子集中的信号点,在欧 氏距离意义下,这个子集是最靠近接收信 号的子集。 图8-11描述了最简单的传输2比特码字 的8PSK四状态TCM编码方案。它采用了 效率为1/2的卷积码编码器,对应的格图如 图8-12所示。
(2) 循环码的译码
原则上纠错可按下述步骤进行: ① 用生成多项式g(x)去除接收码 组 B(x)=A(x)+E(x), 得 出 余 式 r (x); ② 按余式r(x)用查表的方法或通 过某种运算得到错误图样E(x),就可以 确定错码位置。 ③ 从B(x)中减去E(x),便得到 已纠正错误的原发送码组A(x)。
差错控制编码 差错控制编码
差错控制编码差错控制编码
差错控制编码是一种用来检查和纠正数据传输可能出现的差错的编码技术。
它的核心思路是在传输的数据中植入一些冗余信息,以用来检查和纠正数据传输可能出现的错误。
差错控制编码有Cyclic Redundancy Check (CRC)环形冗余校验码,CRC环形冗余校验码是一种非常简单的差错控制编码,它采用多项式来进行数据传输时出现的错误监测;还有Hamming Code,它是一种常用的编码技术,通过添加一定数量的检验位来识别和纠正错误;还有纠错编码,它是一种可以检测和纠正传输的误码的编码方法,它的工作原理是利用比特错误以及二进制编码表示,以纠正和校验当前接收到的数据等等。
总的来说,差错控制编码可以有效地减少传输数据的出错率,保证传输数据的正确性,提高数据传输的稳定性,以及提升数据传输的安全性等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.垂直奇偶校验码: 编码原理:
(1)将整个发送的数据块分为定长为m 的n 个组,一般m 为字符位数或位数的倍数,一组称为一个码字。
(2)每组末位按“1”的个数位奇数或者偶数的规律加一个
校验位j
r (
n j ,3,2,1=)
,使得每组包括校验位在内“1”的个数为奇数或偶数。
为偶数的称为偶校验,为奇数的称为奇校
验。
(ij
b 为一个比特位,运算为二进制运算)
校验位计算为: 偶校验 mj j j j b b b r +++= 21n
j ,3,2,1= 奇校验
121++++=mj j j j b b b r n
j ,3,2,1=
举例说明:
每一列代表一个码字:
1
011111001101
偶校验计算的校验位为:0111 奇校验计算的校验位为:1000
校验能力:只能检测每列码字中的奇数个错误,所有偶数个错误全部漏检。
实现方法:用硬件和软件均可,可以边发送边产生冗余位,接收时可以边接收边去掉冗余位。
2.水平奇偶校验码 编码原理:
(1)将整个发送的数据块分为定长为m 的n 个组,一般m 为字符位数或位数的倍数,一组称为一个码字。
(2)将n 个码字排成一个矩阵,对各个码字相应横向位进行奇偶校验。
(校验位的生成与垂直奇偶校验码生成方式一致)。
偶校验 in i i i b b b r +++= 21m i ,3,2,1= 奇校验 121++++=in i i i b b b r m i ,3,2,1=
(3)发送时将所有码字发送完后发送校验位。
举例说明: 奇 偶
每一列代表一个码字:
1
011111001101
01
0 1
10
1
校验能力:可以检测各个码字同一位上的奇数位错,对于长度小于或等于m 的突发错误,由于分布在不同行中,可以检测到。
实现方式:用硬件和软件均可,需要借助存储器。
3.水平垂直奇偶校验
编码原理:同时进行垂直和奇偶校验。
(过程略)
校验能力:冗余度大,具有更强检错能力。
可检验3位以下的全部错误,所有奇数位错,突发长度小于或等于m+1的突发错误以及绝大多数偶数位错。
4、斜奇偶校验
编码原理:在水平垂直奇偶校验码的基础上,按照斜对角线的方向计算出校验位。
校验能力:冗余位更多,编、译码较为复杂,校验能力更强。
正反码:
举例说明:
码长n=10,信息位k=5,校验位r=5,若信息位为11001,校验位为11001,码字为1100111001;若信息位为10001,校验位为01110,码字为1000101110。
纠错规则:
若发送码字1100111001,
接收码字1100111001(传输中无错),
合成码为11001+11001=00000,
接收码信息位有3个1,校验码为00000。
据上表,没有发生错误。
接收码字1000111001
合成码为10001+11001=01000,
接收码信息位有偶数个1,校验码为合成码的反码10111,据上表,信息位第二位出错。
(同学自己举例说明其他情况)。
循环冗余校验码 1、码多项式
如果把一个码字中的各位看作是一个多项式的系数,则长为n 的码字)(0121c c c c C n n --=可以表示为一个多项式:
1
2
2
1
1
)(c x c x c x c x C n n n n ++++=----
该多项式称为码字的码多项式。
如:码字11001的码多项式为:
110011)(3
4
1
2
3
4
++=⋅+⋅+⋅+⋅+⋅=x x
x x x x x C
2、多项式的按模运算
在CRC 中,常需要进行码多项式的运算,运算规则为按模2运算。
若任意的n 次多项式)(x T 被一个k 次多项式)(x k 除,得到商式)(x Q 和余式)(x R (次数必然小余k ),则表示为
)()()()(x R x Q x k x T +=。
3、循环冗余码
长为n 的码,信息位为k 位的码记为(n ,k )码。
若一个码字集合满足以下两个条件:
(1)循环性:码集中的任一个码字向左或右循环一位,得到的新的码字,仍为码集中的码字。
(2)封闭性:码集中任意两个码字之和仍为码集中的码字。
则称此码集为(n ,k )循环码。
例:)(0121c c c c C n n --=是码集中的码字,)(1210c c c c C n -=是码集中的码字,全零码字必然是码集中的码字。
4、循环冗余码的生成多项式
定理1 在循环冗余码(n ,k )中,存在且只有一个(n -k )次的码多项式
1
2
2
2
2
)(g x g x g x g x x G k n k n k
n +++++=-----
满足:
(1)此循环冗余码中任一多项式都是)(x G 的倍式;
(2)任意一个(n -1)次或(n -1)次以下的,又是)(x G 倍
式的多项式必定是此循环码中的一个码多项式。
(生成多项式的寻找有严密的代数背景,略) 5、循环冗余码的编码
一般是已知信息位,根据信息位求冗余位。
信息位为)(0121c c c c K k k --=,码多项式为
1
2
2
1
1
)(c x c x c x c x K k k k k ++++=----
冗余位为)
(021r r r R k n k n ----=,码多项式为
012
21
1)(r x r x
r x
r x R k n k k n k n ++++=-------
码字为)(0210121r r r c c c c T
k n k n k k ------=,码多项式为
)()()(x R x K x x T k n +=- (1)
码字是生成多项式)(x G 的倍式,则
)()()(x Q x G x T = (2) 由(1)(2)两式得
)()(x R x K x k n +-=)()(x Q x G
即 )(x K x k n -=)()()(x R x Q x G +
所以用)(x K x k n -去除以生成多项式)(x G 得到的余式就是码字的校验位。
编码算法:
(1)用k n x -乘以信息位对应的码多项式)(x K ;
(2)用生成多项式)(x G 去除)(x K x k n -,得余式)(x R ; (3)将)(x R 对应的码字加在信息位后发送即可。
6、循环冗余码的译码 (1)检错过程
发送方发送码字)(x T ,设接收方接收码字为)('x T ,根据
)()()(x Q x G x T =
若)('x T =)(x T ,则有
)()()('
x Q x G x T =
即)('x T 除以)(x G 没有余式。
若)('x T <>)(x T ,则)('x T 除以)(x G 有余式,接过收到的码字
出错。
据此译码过程可知出现错误。
注意:有时)('x T <>)(x T ,)('x T 除以)(x G 也没有余式,这种情况说明错误超过该编码的检错能力,每一种码的检错能力与生成多项式选择有关。
(2)纠错过程
对于每一种编码,由其生成多项式可得到码的检错能力在某一个范围内,即该码可检m 位错,纠s 位错。
在这个范围内可得到一个特定的错误模式,当余式)(x R 与这些错误模式存在一一对应关系时,便可以纠错。