差错控制方法?

如题所述

第1个回答  2020-04-14
最常用的
差错控制
方法有奇
偶校验
法、
循环冗余校验
法和
汉明码
等。这些方法用于识别数据是否发生传输错误,并且可以启动校正措施,或者舍弃传输发生错误的数据,要求重新传输有错误的
数据块
。  1.
奇偶
校验法
  
奇偶校验
法是一种很简单并且广泛使用的校验方法。这种方法是在每一字节中加上一个奇偶
校验位
,并被传输,即每个字节发送九位数据。数据传输以前通常会确定是奇校验还是偶校验,以保证发送端和接收端采用相同的校验方法进行
数据校验
。如果校验位不符,则认为传输出错。
  奇校验是在每个字节后增加一个附加位,使得“1”的总数为奇数。奇校验时,校验位按如下规则设定:如果每字节的
数据位
中“1”的个数为奇数,则校验位为“0”若为偶数,则校验位为“1”。奇校验通常用于
同步传输
。而偶校验是在每个字节后增加一个附加位,使得“1”的总数为偶数。偶校验时,校验位按如下规则设定:如果每字节的数据位中“1”的个数为奇数,则校验位为“1”;若为偶数,则校验位为“0”。偶校验常用于
异步传输
或低速传输。
  校验的原理是:如果采用奇校验,发送端发送的一个
字符编码
(含校验位)中,“1”的个数一定为奇数个,在接收端对接收字符二进制位中的“1”的个数进行统计,若统计出“1”的个数为偶数个,则意味着传输过程中有1位(或奇数位)发生差错。事实上,在传输中偶然—位出错的机会最多,故
奇偶校验法
经常采用。
  然而,奇偶校验法并不是一种安全的检错方法,其
识别错误
的能力较低。如果发生错误的位数为奇数,那么错误可以被识别,而当发生错误的位数为偶数时,错误就无法被识别了,这是因为错误互相抵消了。数位的错误,以及大多数涉及偶数个位的错误都有可能检测不出来。它的缺点在于:当某一数据分段中的一个或者多位被破坏时,并且在下一个数据分段中具有相反值的对应位也被破坏,那么这些列的和将不变,因此接收方不可能检测到错误。常用的奇偶校验法为垂直奇偶校验、水平奇偶
校验和
水平垂直奇偶校验。
  2.
垂直奇偶校验
  垂直奇偶校验是在垂直方向上以列的形式附加上校验位。数据格式及其发送顺序:
  设垂直奇偶校验的编码效率为R,则:式中,m为码字的
定长
位数,n为码字的个数。  
  垂直奇偶校验又称为纵向奇偶校验,它能检测出每列中发生的奇数个错误,偶数个错误,因而对差错的
漏检率
接近1/2。
  3.
水平奇偶校验
  水平奇偶校验是在水平方向上以行的形式附加上校验位。
  设水平奇偶校验的编码效率为R,则:式中,m为码字的定长位数,n为码字的个数。
  
  水平奇偶校验又称为横向奇偶校验,它不但能检测出各段同一位上发生的奇数个错误,而且还能检测出突发长度≤m的所有突发错误,其漏检率要比垂直奇偶校验法低,但是实现水平奇偶校验时,一定要使用数据缓冲器。
  4.
水平垂直奇偶校验
  水平垂直奇偶校验是在结合水平奇偶校验和垂直奇偶校验的基础上形成的一种校验方法。它是在一批字符传送之后,另外增加一个称为“方块校验字符”的检验字符,方块校验字符的
编码方式
是使所传输字符代码的每个纵向列中位代码的“1”的个数成为奇数(或偶数)。
  
  式中,m为码字的定长位数,n为码字的个数。
  设水平垂直奇偶校验的编码效率为R,则:
  水平垂直奇偶校验又称为纵横奇偶校验。它能检测出传输过程中发生的所有3位或3位以下的错误、奇数个错误、大部分偶数个错误以及突发长度≤m+1的突发错误,可使
误码率
降至原误码率的百分之一到万分之一,有较强的检错能力,但是有部分偶数个错误不能检测出来。水平垂直奇偶校验还可以自动纠正差错,使误码率降低2~4个
数量级
,适用于中、低速
传输系统
和反馈重传系统,被广泛用于通信和某些计算机外部设备中。
  5.
循环冗余校验法
  循环冗余校验(CRC,Cyclic
Redundancy
Check)法由分组线性码的分支而来,主要应用于二元码组。它是利用除法及
余数
的原理来作错误侦测(Error
Detecting)的。
  这是一种比较精确、安全的检错方法,能够以很大的可靠性识别传输错误,并且编码简单,误判概率很低,但是这种方法不能够校正错误。循环冗余校验法在通信系统中得到了广泛的应用,特别适用于传输数据经过有线或无线接口时识别错误的场合。下面重点介绍循环冗余校验法
相似回答