奇偶校验器


奇偶校验器

文章插图
奇偶校验器【奇偶校验器】 在数字设备中,数据的传输是大量的,传输的数据都是由0和1构成的进制数字组成 。在数据传输或数字通信中,由于存在噪声和干扰,二进制信息的传输可能会出现差错(0 变为1,或者1变为0) 。为了检验这种错误,常採用奇偶校验的方法 。即在原二进制信息码组后添加一位检验位(监督码元),使得添加校验位码元后整个码组中1码元的个数为奇数或偶数 。若为奇数,称为奇校验;若为偶数,则称为偶校验 。在数据传送端用来产生奇(或偶) 校验位的电路称为奇(或偶) 校验发生器;在接收端,对接收的代码进行检验的电路称为奇(或偶) 校验器 。
基本介绍中文名:奇偶校验器
外文名:parity checker
所属问题:数字逻辑(数字电路)
相关概念:奇校验,偶校验等
奇偶校验原理在数字电子设备中,数字电路之间经常要进行数据传递,由于受一些因素的影响,数据在传送过程中可能会产生错误,从而会引起设备工作不正常 。为了解决这个问题,常常在数据传送电路中设定奇偶校验器 。奇偶校验原理奇偶校验是检验数据传递是否发生错误的方法之一 。它通过检验传递数据中“1”的个数是奇数还是偶数来判断传递数据是否有错误 。奇偶校验有奇校验和偶校验之分 。对于奇校验,若数据中有奇数个“1”,则校验结果为0,若数据中有偶数个“1”,则校验结果为1; 对于偶校验,若数据中有偶数个“1”,则校验结果为0,若数据中有奇数个“1”,则校验结果为1 。下面以图1所示的8位并行传递奇偶校验示意图为例来说明奇偶校验原理 。
奇偶校验器

文章插图
图1 8位并行传递奇偶校验示意图在图1中,传送器通过8根数据线同时向接收器传递8位数据,这种通过多根数据线同时传递多位数的数据传递方式称为并行传递 。传送器在往接收器传递数据的同时,也会把数据传递给传送端的奇偶校验器,假设传送端要传递的数据是10101100 。若图2中的奇偶校验器为奇校验,传送器的数据10101100 送到奇偶校验器,由于数据中的“1”的个数是偶数个,奇偶校验器输出1,它送到接收端的奇偶校验器,与此同时,传送端的数据10101100 也送到接收端的奇偶校验器,这样送到接收端的奇偶校验器的数据中“1”的个数为奇数个(含传送端奇偶校验器送来的“1"),如果数据传递没有发生错误,接收端的奇偶校验器输出0,它去控制接收器工作,接收传送过来的数据 。如果数据在传递过程中发生了错误,数据由10101100 变为10101000,那幺送到接收端奇偶校验器的数据中的“1”的个数是偶数个(含传送端奇偶校验器送来的“1"),校验器输出为1,它一方面控制接收器,禁止接收器接收错误的数据,同时还去触发报警器,让它发出数据错误报警 。若图1中的奇偶校验器为偶校验,传送器的数据为10101100 时,传送端的奇偶校验器会输出0 。如果传递的数据没有发生错误,接收端的奇偶校验器会输出0;如果传递的数据发生错误,10101100变成了10101000,接收端的奇偶校验器会输出1 。套用举例奇偶校验器可採用异或门构成,2位奇偶校验器和3位奇偶校验器分别如图2a、b所示 。
奇偶校验器

文章插图
图2 (a) 2位奇偶校验器
奇偶校验器

文章插图
图2 (b) 3位奇偶校验器图2中的奇偶校验器是由异或门构成的,异或门具有的特点是: 输人相同时输出为“0”,输入相异时输出为“1” 。图2a 所示的2 位奇偶校验器由一个异或门构成,当A、B都输人“1”,即输人的“1”为偶数个时,输出Y=0;当A、B 中只有一个为“1”,即输人的“1”为奇数个时,输出Y=1 。图2b所示的3位奇偶校验器由两个异或门构成,当A=1、B=1、C=1时,输出Y=1;当A=1、B=1,而C=0时,异或门G1输出为“0”,异或门G2输出为“0”,即输人的“1”为偶数个时,输出Y=0 。以上两种由异或门组成的奇偶校验器具有偶校验功能,如果将异或门换成异或非门组成奇偶校验器,它就具有奇校验功能 。从图2可以看出,由于接收端的奇偶校验器除了要接收传递的数据外,还要接收传送端奇偶校验器送来的校验位,所以接收端的奇偶校验器的位数较传送端的多1位 。下面以图3所示电路为例进一步说明奇偶校验器的实际套用 。图3中的传送器要送2位数AB=10到接收器,A=1、B=0一方面通过数据线往接收器传递,另一方面送到传送端的奇偶校验器,该校验器为偶校验,它输出的校验位为1 。校验位1与A=1、B=0送到接收端奇偶校验器,此校验器校验输出为“0”,该校验位0 去控制接收器,让接收器接收数据线送到的正确数据 。如果数据在传递过程中,AB 由10 变为11(注: 送到传送端奇偶校验器的数据AB 是正确的,仍为10,只是数据传送到接收器的途中发生了错误,由10 变成11),传送端的奇偶校验器输出的校验位仍为1,而由于传送到接收端的数据10 变成了11,所以接收端的奇偶校验器输出校验位为1,它去禁止接收器接收错误的数据,同时控制报警器报警 。