5.通信数据基础(下)

9.差错控制(难点/重点)

概念:差错控制指接收方在接收到一个信号后,判断这个信号是否在传输过程中有误。

组成:分为检错和纠错

  • 检错:只能检查出错误,不能进行纠错
  • 纠错:能检查出错误,并对检出的出错位进行修正

考点1:什么是码距?怎么求?

两码字间--编码过程中,一码字从一个码字转化为另一码字需要变化的二进制位数(1的个数)

怎么求?看1的位数;若同一组中有多个码距,以最小的那组码距为准

考点2:码距与检错、纠错的关系?

d >=e+1 (e为检错位数) 码距d为2时,只可检错有1位,而无法确定是哪一位出错,自然无法进行纠错

d>=2t+1 (t为可检错位数) 码距为3时,可检错有2位,但要满足纠错位只有一位,必然只有一种情况。

因此,要想纠错。方法就是拉大编码之间的“码距”。

---------------------------------------------------------------------------------------------------------------------------------

拉大码距的方式:

  • 奇偶校验:分为奇校验和偶校验
  1. 奇校验:检错码=信息字段+检验字段(补0或1) ,检错码中的1个数为奇数
  2. 偶校验:检错码=信息字段+检验字段(补0或1) ,检错码中的1个数为偶数。

信号先经模2加运算(奇偶校验)处理的码再通过信道进行传输,若接收方收到信号后,依然按照偶校验的模2加方式进行运算。若检错码经模2加运算为0,说明没有出错;若接收方经模2加运算后发现为1,则说明信号在传输过程中出错。但偶校验只有检错能力,而没有纠错能力(因为任何一位出错都可能导致模2加为1,所以奇偶校验码无法定位纠错)

  • 海明校验:考试中最常考!!!

概念:加入k位的检验码,产生2的K次方-1个校验信息。(能够指出m+k位中的任一位码元出错的情况)

海明校验特点:m+k

注意:校验位越少越好,能满足校验的需求就好。

监督关系式的构建:↓

B1:2^0,包含于后面的B3、B5、B7、B9等,因此B1参与后面的监督, 可作为后面数的监督式。

接收方:按照校验式的校验规则进行判断。

比如:下图 原来正确C1 C2 C3 C4 正确应该为:0000,结果呈现:1101.说明有校验位出错,但C3是对的。如何确定哪个校验位出错?如何矫正呢?

step:1.C3正确,那么对应的C3后面的码元都是正确的,对比C1 C2 C4,排除掉正确的码元,然后它们3个共有的往往就是出错的校验位,然后对其进行校正即可。 比如:图中的B11。

纠正原则:0矫正变1,1矫正后变0。

  • 差错控制-CRC校验

操作编码:用户信息+检验信息(与前面2者同)

关键点:用生成多项式(类似短除法)计算出校验位的值。其中,生成多项式的最高幂次 决定了CRC校验码的位数。

怎么算?

根据生成多项式,用短除法进行运算。要求被除数要根据生成式进行变形;

变形的依据:根据生成式的对应位置的位数有无幂次。有幂次为1,无幂次为0. 比如:图中

注意:

1.被除数的编码位数是最高幂次+1位

2.常数的幂为0,所以编码为1。

用模2除 ,来计算出真正的校验位。

模2除:不进位,也不退位,逐一进行比较。规定:同为0,异为1(异或运算)

校验码的计算:

发送方:将经过模2除得到的4位校验位:0011放在原码的最后面

接送方:同样是经过模2除运算。若经模2除运算,结果余数为0,接受的码没有出错;反之出错。

CRC校验出错后的处理?

CRC只能检错,不能纠错。所以CRC一般只用来检错,当接收方使用CRC校验发现接受的数据出错(余数不为0),一般会要求发送方重发一次,而不是自己进行纠错。

此外, CRC在以太网中应用很多,802.3令牌环网等(后续章节会说)


说明:以上材料均为本人在哔哩哔哩网站上学习整理所成,文章仅为自己学习记录复习使用。参考视频资料视频资源系希赛团队老师讲解,若笔记表述或内容有误,诚盼指正!

希望更多资料的uu,可以移步B站自行查找哦!

猜你喜欢

转载自blog.csdn.net/m0_68399221/article/details/124549483