- 1、本文档共87页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机组成原理第3章 节 运算方法和运算部件(3-6_7).ppt
3.7 数据校验码 2、校验位的形成 设有效信息位为: 偶校验,在发送端求校验位: 奇校验,在发送端求校验位: 3.7 数据校验码 (3) 校验原理 偶校验在接收端求: 奇校验在接收端求: 若P’=0,则无错;P’=1,则有错。 3.7 数据校验码 3.7 数据校验码 4、局限性 奇偶校验码能发现数据代码中奇数个位出错情况,并且不能纠正错误,常用于对存储器数据的检查或者传输数据的检查。 下面给出对几个字节值的奇偶校验的编码结果: 数据 奇校验的编码 偶校码的编码 000000000 010l0l00 0010l0100 l01010l00 01ll1lll 0011l1111 10l111l1l 其中,最高一位为校验位,其余低八位为数据位。从中可以看到,校验位的值取。还是1,是由数据位中1的个数决定的。 3.7 数据校验码 二、海明校验码 海明校验的基本思想是将有效信息按某种规律分成若干组,每组安排一个校验位进行奇偶测试。在一个数据位组中加入几个校验位,增加数据代码间的码距,当某一位发生变化时会引起校验结果发生变化,不同代码位上的错误会得出不同的校验结果。因此,海明码能检测出2位错误,并能纠正1位错误。 海明校验实质上是一种多重奇偶校验。 3.7 数据校验码 (1)求海明校验码的步骤。 ① 确定海明校验位的位数 设K为有效信息的位数,设r为校验位的位数,则整个码字 的位数N应满足不等式: N=K+r≤2r-1 若要求海明码能检测出2位错误,则再增加一位校验位。 ② 确定校验位的位置:位号(1~N)为2的权值的那些位,即:20 、21、22、…2r-1 的位置作为校验位,记作P1、P2、… Pr,余下的为有效信息位。 ③ 分组:将N位分r组,第i位由校验位号之和等于i的那些校验位所校验。即被校验的每一位位号要等于校验它的各校验位的位号之和。这样安排的目的,是希望校验的结果能正确反映出出错位的位号。 3.7 数据校验码 例:按上述规律讨论一个字节的海明码。 每个字节由8个二进制位组成,此处的k为8,求出校验位的位数r应为5(可发现两位错),故海明码的总位数为13,可表示为 H13H12H11H10H9H8H7H6H5H4H3H2H1 5个校验位P5~P1对应的海明码位号应分别为H13,H8,H4,H2,H1。P5只能放在H13一位上,它已经是海明码的最高位了,其他4位满足Pi的位号等于2i-1的关系。其余为数据位Di,则有如下排列关系: P5D8D7D6D5P4D4D3D2P3DlP2P1 按前面讲的,每个海明码的位号,要等于参与校验它的几个校验位的位号之和的关系,可以给出如表3.9所示的结果。 3.7 数据校验码 从表中可看出:5个校验位各自只与本身有关,而且校验着它以后的一些确定位置上的有效信息。 校验位的取值仍采用奇偶校验方式确定。 从表中可以进一步找出5个校验位各自与哪些数据位有关。 校验位序号 被校验位位号 1(P1) 1、3、5、7、9、11 2(P2) 2、3、6、7、10、11 4(P3) 4、5、6、7、12 8(P4) 8、9、10、11、12 13(P5) 13 3.7 数据校验码 ④ 校验位的形成 P1=第一组中的所有位(除P1外)求异或 P2=第二组中的所有位(除P2外)求异或 ? Pr =第r组中的所有位(除Pr外)求异或 为了能检测两个错误,增加一位校验Pr+1,放在最高位。 Pr+1 = 所有位(包括P1、P2、… Pr)共N位求异或 3.7 数据校验码 (2)校验原理:在接收端分别求S1、S2、S3、… Sr S1 =第一组中的所有位(包括P1)求异或 S2 =第二组中的所有位(包括P2)求异或 ?Sr =第r组中的所有位(包括Pr)求异或 Sr+1 = Pr+1⊕所有位(包括P1、P2、… Pr)求异或 当S r+1=1时有一位错: 由S r… S3S2S1的二进制编码指出出错位号,将其取反,即可纠错。 当S r+1=0时无错或有偶数个错(两个错的可能性比较大): 当S r… S3S2S1=0…000时,接收的数无错,否则有两个错。 根据此原理,能画出指出两个错误并能纠正一位出错位的海明校验逻辑电路。 图3.11是H=12,数据位k=8,校验位r=4的海明校验线路,记作(12,8)分组码。 3.7 数据校验码 例 求信息海明校验码,画出能指出和纠正一位
文档评论(0)