《通信课件8.ppt》由会员分享,可在线阅读,更多相关《通信课件8.ppt(32页珍藏版)》请在优知文库上搜索。
1、第第8章章 差错控制原理差错控制原理v差错:差错:通常把接收数据与发送数据不一致的现象称为传输差错,简称为差错。8.1 差错产生原因及差错类型差错产生原因及差错类型v干扰:干扰:脉冲干扰、随机噪声干扰、人为干扰等。v噪声噪声两类:随机噪声和脉冲噪声。v随机噪声:随机噪声:时时处处存在,幅度较小,频带宽。差错是随机的、离散的,是一种随机独立差错。v脉冲噪声:强度大,差错成串出现,即无错则已,有错一片。是一种突发性差错。v混合差错:上两种噪声同时引起的差错。8.2 差错控制基本原理差错控制基本原理v差错控制:差错控制:在通信过程中产生错误时,能有效地检测出错误,并进行纠正,这种方法叫检错与纠错,统
2、称为差错控制。v差错控制方案差错控制方案:v(1)纠错编码:)纠错编码:传输的数据单元带有足够的冗余信息,在接收端发现并自动纠正传输错误。v(2)检错编码)检错编码:传输的数据单元仅带有足以使接收端发现差错的冗余信息,但不能确定错误位置,因而不能纠正错误,只能发现错误。v第一种方案优越,但系统复杂,成本高,应用场合受限。v第二种方案简单,容易实现,编译码速度快,通过重传纠正错误,常用。82差错控制基本原理差错控制基本原理v为什么要在传输的数据单元中增加冗余码元呢?例:v三位二进制码有八种不同组合,000,001,010,011,100,101,110,111。v选择四种作为许用码组许用码组,用
3、来传输信息;另四种作为禁用码组禁用码组。发送000,传输中变为001,010或100。就判定发生了错误。变为111禁用码组。也判定发生了错误。不能发现两位错误。v上述编码只能检测错误,不能纠正错误。收到100,无法判定哪一位码发生错误造成的。000,110,101三者错一位都可变为100。v例:选两个许用码组,000,111,其余为禁用码组。收端可以检测两位以下的错误,或纠正一位错误。v 当收到100时,若认为只有一位错误,则可以纠正为000。111任何一位错误都不可能变为100;若错码不超过两位,两种可能:000错一位变为100,或者111错两位变为100,因而只能检错不能纠纠错。8.3 差
4、错控制编码差错控制编码v检错码:能在译码中发现错误的编码;v纠错码:在译码中不仅能发现错误还能自动纠正错误的编码。v1 奇偶校验奇偶校验v分为两种:奇校验编码和偶校验编码。v偶校验编码:无论信息位有多少位,校验位只有一位,码组中“1”的个数为偶数,要满足关系式v va0-校验位,-模2加运算。在收端,将码组中各位进行模2加,结果为“1”,有错误;为“0”,无错。v 奇校验编码:码组中校验位只有一位,码组中“1”的个数为奇数,要满足关系式v v两者的校验能力相同,只能检测出奇数个错误,不能检测偶数个错误。v分为:垂直奇偶校验、水平奇偶校验和垂直水平奇偶校验。0021aaann0021aaann0
5、021aaann1021aaann8.3 差错控制编码差错控制编码v(1)垂直奇偶校验垂直奇偶校验v也称为字符奇偶校验,在字符代码v后面附加一奇偶校验位,如图。字符 012345678b0000000001b1000011110b2001100110b3010101011b4111111111b5111111111b6000000000b7偶011010010奇1001011018.3 差错控制编码差错控制编码v(2)垂直水平奇偶校验垂直水平奇偶校验v能检测全部奇数个差错和大部分偶数个差错。标出的差错能检测出来,标出的差错同时出现时则检测不出来,即矩形差错检测不出来。v标出的错误可以得到纠正。
6、v实现容易,应用广泛。8.3 差错控制编码差错控制编码v2 循环冗余校验循环冗余校验 v 又称CRC码,检错能力强,实现容易,应用广泛。v 从数学的角度讲,所有的数都可以用多项式来表示,例如 v 125=1102+2101+5100v 1,2,5 多项式的系数。v二进制数10111,可表示为以x为基的多项式v x4+x2+x+1v系数对应着二进制数10111。v 长度为n的二进制序列,与以x为基的n-1次多项式之间具有一一对应的关系。8.3 差错控制编码差错控制编码v n=3:0 0 0 0v 0 0 1 1v 0 1 0 xv 0 1 1 x+1v 1 0 0 x2v 1 0 1 x2+1v
7、 1 1 0 x2+x v 1 1 1 x2+x+1v长度为长度为n的码组可用一个的码组可用一个x的的n-1次多项式表示,码组中每位码的次多项式表示,码组中每位码的数值就是数值就是n-1次多项式中相应的系数值,这个对应的多项式就称次多项式中相应的系数值,这个对应的多项式就称为为数据多项式数据多项式。8.3 差错控制编码差错控制编码v原理:原理:v将发送数据比特序列作为多项式T(x)的系数,选定一k次幂的生成多项式G(x)。用x k乘T(x),得T(x)x k。然后用G(x)去除T(x)x k,得一个余数多项式R(x)。将余数多项式加到数据多项式T(x)之后,作为发送序列。收端用同一G(x)去除
8、接收序列多项式T(x)x k,得计算余数多项式R(x)。如果R(x)与R(x)相同,传输无错;否则传输有错。v校验过程校验过程:a 发端,T(x)乘以x k.意味着将T(x)对应的数据比特序列左移k位。b T(x)x k 除以G(x),v Q(x)商,R(x)余数多项式。v c c 将T(x)x k+R(x)所对应的比特序列作为一个整体发送发送。v d d 收端,对接收序列所对应的多项式T(x)x k 进行运算)()()()()(xGxRxQxGxxTk8.3 差错控制编码差错控制编码v R(x)=R(x),传输正确;R(x)R(x),传输有错。v实际的CRC校验码生成采用二进制模2算法得到。
9、加法不进位,减法不借位,即异或操作。v例:va 发送数据序列 110011;vb G(x)=x4+x3+1,k=4,对应的序列 11001;vc 发送数据序列左移4位为 1100110000;vd 做除法 )()()()()(xGxRxQxGxxTk8.3 差错控制编码差错控制编码v 1 0 0 0 0 1 Q(x)v G(x)-1 1 0 0 1)1 1 0 0 1 1 0 0 0 0 T(x)x k v 1 1 0 0 1 v 1 0 0 0 0 v 1 1 0 0 1 v 1 0 0 1 R(x)ve 带有校验的发送序列:v 110011 1001v 发序列 校验序列vf 校验 若没有发
10、生差错,接收端收序列能被同一生成多项序列整除8.3 差错控制编码差错控制编码v v 1 0 0 0 0 1v 1 1 0 1)1 1 0 0 1 1 1 0 0 1v 1 1 0 0 1v 1 1 0 0 1v 1 1 0 0 1v 0v3 校验和校验和v 也是基于冗余校验。v 发端将数据单元分成长度为n(通常是16)的比特分段,这些分段相加,其结果仍然为n比特长。总和求反,作为校验字段附加到数据单元的末尾。v.过程:8.3 差错控制编码差错控制编码v发端vl 数据单元分成k段,每段n比特;vl 所有段相加求和;vl 对和取反得校验和;vl 将校验字和段附加到数据单元末尾与数据一起发送。v收端
11、vl 接收数据分成长度为n比特的段;vl 所有段相加求和;vl 对和取反;vl 结果为0,接收数据;否则拒绝。v例;发送16位数据10101001 00111001,采用8位校验和。8.3 差错控制编码差错控制编码v解:解:将数据按8位分段,相加求和v 1 0 1 0 1 0 0 1v +0 0 1 1 1 0 0 1v 1 1 1 0 0 0 1 0 和 v求反 0 0 0 1 1 1 0 1 校验和 v发送比特序列:10101001 00111001 00011101v 数据 校验和v接收无差错,对其分段、求和、取反应为0。v分段求和v 1 0 1 0 1 0 0 1v 0 0 1 1 1
12、 0 0 1v 和 +0 0 0 1 1 1 0 1v 1 1 1 1 1 1 1 1v 取反 0 0 0 0 0 0 0 08.3 差错控制编码差错控制编码v结果为0,传输正确。v若发生多位错误,如变为10101111 11111001 00011101,粗体粗体的为错误位。三段相加 v 1 0 1 0 1 1 1 1v 1 1 1 1 1 0 0 1v +0 0 0 1 1 1 0 1 v 1 1 1 0 0 0 1 0 1v +1 进位 v 和 1 1 0 0 0 1 1 0v 取反 0 0 1 1 1 0 0 1v结果不为0,传输错误.v结论:结论:若两分段对应位具有相反值的错误,如变
13、为00101001 10111001 00011101,粗体粗体的为错误位。三段相加8.3 差错控制编码差错控制编码v 0 0 1 0 1 0 0 1v 1 0 1 1 1 0 0 1v +0 0 0 1 1 1 0 1 v 1 1 1 1 1 1 1 1 和v取反 0 0 0 0 0 0 0 0 v结果为0,不能检测这种错误。v校验和能检测所有奇数个错误以及大多数偶数个错误。v结论:结论:如果某一段中的一个或多个比特被破坏,并且在下一个分段中具有相反值的对应位也被破坏,这些列的和将不变,因此收方将检测不出这些错误。一个比特的反相被另一个分段对应位具有相反值的比特反相所抵消,该差错是不可检测的
14、。8.3 差错控制编码差错控制编码v4卷积码卷积码v 分组码:分组码:k个信息码元划分为一组,由这k个码元按照一定的规则产生r个监督位,构成一个长度nkr的码组。监督码元仅监督本码组中的信息码元。v 卷积码:卷积码:是一种非分组码,编码器产生的n个码元,不仅取决于k位信息码元,而且还取决于前m1个码组。卷积码构造简单,性能优越,应用:前向纠错(FEC)。v(1)编码编码v卷积码符号(n,k,,N),n码长,k信息位长度,N相互关联的码组数。例:编码器如图。krn2v每输入一个信息位bi,移位寄存器就右移一位。监督位紧跟此信息位之后输出,如下图。输出端转换开关的功能是轮流输出bi与ci。监督位是
15、由移位寄存器的信息位6,3,2,1模2加形成的。该卷积码的参数为k1,n2,N6,约束长度N12。v(2)解码解码v方法:代数解码和概率解码。v代数解码是利用编码本身的代数结构进行解码,不考虑信道的统计特性。概率解码要利用信道的统计特性。v代数解码又称为门限解码。门限解码对于约束长度较短的卷积码非常有效,而且设备简单。工作原理8.3 差错控制编码差错控制编码 v v v监督码元序列与实际接收的相应监督码元进行模2加运算,结果为校正子。v当信息位发生错误时,仅当它位于信息移位寄存器的6,3,2,1时才使校正子等于“1”。这时的校正子序列为100111;反之,当监督位发生错误时,校正子序列为100
16、000。当校正子序列中出现第一个“1”时,表示检测出一个错误.8.3 差错控制编码差错控制编码8.3 差错控制编码差错控制编码v后面几个校正子则指出是信息位还是监督位错误。v (3)卷积码的图解表示)卷积码的图解表示v卷积码可用树状图、网格图等表示。va 树状图树状图v以(2,1,3)卷积码为例。v(2,1,3)卷积码编码器如图。v v v v vm1,m2移位寄存器,起始状态均为0,即b1b2b3为000。c1,c2与b1b2b3的关系:v c1 b1b2 b3v c2 b1b3 8.3 差错控制编码差错控制编码vb1代表当前输入信息位,b2b3代表移位寄存器存储的以前的信息位。下表示出了编码器的状态。当b11,因b2b300,输出c1c211;当第2个信息位仍为1,这时b11,b3b201,c1c201,依此类推。为了保证输入的全部信息位11010都能通过移位寄存器,还必须在信息位后加3个0。v v对应于图1.21编码器,树状图如下。仍用a,b,c,d表示b3b2的4种可能状态,即a表示b3b2=00,b表示b3b2=01,c表示b3b2=10,d表示b3b2=11。从节点a开始,