01计算机组成原理与体系结构

11-校验码

2021-07-22 450 6

简介 图解奇偶校验、CRC、海明校验的原理

1. 校验码的分类

upfile


2. 奇偶校验

upfile

    奇偶校验码的编码方法是:由若干位有效信息(如一个字节),再加上一个二进制位(校验位)组成校验码。

    奇校验:整个校验码(有效信息位和校验位)中“1”的个数为奇数。

    偶校验:整个校验码(有效信息位和校验位)中“1”的个数为偶数。

    奇偶校验,可检查1位的错误,不可纠错。

    如果有偶校验,CPU读取存储的数据时,它会再次把前信息位中存储的数据相加,然后根据校验位的1或者0,判断整个信息是否已被修改。从而一定程度上能检测出内存错误,奇偶校验只能检测出错误而无法对其进行修正,同时虽然双位同时发生错误的概率相当低,奇偶校验却无法检测出双位错误。

 


3. CRC循环冗余校验

    CRC校验,可检错,不可纠错。

    循环冗余校验(CRC, yclic Redundancy Check)

    CRC的编码方法是:在k位信息码之后拼接r位校验码。应用CRC码的关键是如何从k位信息位简便地得到r位校验位(编码),以及如何从k+r位信息码判断是否出错。

    循环冗余校验码编码规律如下:

    ①把待编码的N位有效信息表示为多项式M(X)

    ②把M(X) 左移K位,得到M(X)* X ^K,这样空出了K位,以便拼装K位余数(即校验位);

    ③选取一个K+1位的产生多项式G(X),对 做模2除;

    ⑨把左移K位以后的有效信息与余数R(X)做模2加减,拼接为CRC码,此时的CRC码共有N+K位。


    把接收到的CRC码用约定的生成多项式G(X)去除,如果正确,则余数为0,如果某一位出错,则余数不为0.不同的位数出错其余数不同,余数和出错位序号之间有唯一的对应关系

    

      

    

点赞 6

文章评论

欢迎您:

纸上得来终觉浅,绝知此事要躬行!

112 文章 36784 浏览 3 评论

联系我

  •   QQ:    361352119
  •  Email:  lisimmy@sina.com
  • 微信: