2017.0315.数字电路与系统-奇偶校验器

奇偶校验器的理解

1.奇偶校验器先是有奇偶校验位的产生,再有奇偶校验。奇或偶的校验位均是数据位的逻辑函数,这挺奇怪的?

输入一串数据位,我们要保证它在传输后能检验它是否正确,这样我们要对传输数据进行奇偶校验。奇偶校验的前提是校验位,在数据位上还要产生一个校验位。校验位可以是奇校验位,也可以是偶校验位,就是说最初输入的信号中,只有数据位,后来为了检验传输后的数据是否正确,我们要依据自己的需求(是要奇校验还是偶校验),从数据位上产生一位奇或偶的校验位,然后再产生相应的奇或偶校验电路。实际上,奇偶校验器是有两个逻辑电路,一个用来产生校验位,一个用来产生校验电路。

2.视频上说,检验位的电路和校验电路是同样的电路。生成偶校验位的电路是异或电路,奇校验电路是同或电路。实际上,奇和偶校验电路是集成在一个电路上,相当于一个电路中既可以进行奇奇校验,也可以进行偶校验。

设计好电路中,比如有八位的输入数据,D0~D7,还有一个输入Din,Din可以用来控制奇校验和偶校验。两个输出一个是FOOD,另一个是FEVEN,FEVEN是对FOOD的取反,这样一来一个构成奇校验,一个构成偶校验。如果Din输入为0,D0~D7的全部输入为0,进过最后的异或门,FOOD输出为0,FOOD加上所有的输入(8),总共是偶数个1(0个1),那么进行的是偶校验,经过取反,FEVEN的输出是1,FEVEN加上所有输入,共有奇数个1,这进行的是奇校验。如果Din输入的是1,那么经过异或门,FOOD的输出为1,FOOD加上八个0,所有的信号位中总共有奇数个1,FOOD进行的是奇校验,那么FEVEN进行的是偶校验。Din是用来设定电路是奇校验,还是偶校验的。那么有一个疑问?FOOD和FENEN是产生的校验位么?整个电路算是奇偶校验电路?判别奇检验还是偶校验,是将输入数据位和产生的奇,偶校验位加在一起来进行比较,那么Din就相当与控制位?

视频给出的答案是D0~D7是输入数据位,Din是控制位,而FOOD和FEVEN是产生的奇偶校验位,整个电路也可以用来进行奇偶校验。这里有一点理解错了!这里不是一个逻辑电路就完成了校验位的产生和奇偶校验,而是形同的两个模块一个用于产生校验位,一个用于奇偶校验,两者集合在一个。

利用两个74280器件,来集成校验位的产生和奇偶校验器,74280器件有八个数据输入端,一个控制输入端,两个输出端。现在将两个74280组合在一起,一个用于产生校验位,一个用于产生校验电路。在第一个74280器件中,控制端的输入决定了是奇校验还是偶校验,这是人为决定的,八个数据端和控制端输入后,第一个74280器件将会输出相应奇或偶校验的校验位,然后校验位和八个输入数据同时输入第二个74280器件,形成奇偶校验器,输出校验器的结果。无论是奇校验位还是偶校验位,奇校验器或偶校验器,都是一种校验传输数据是否正确的方法,没有高低贵贱之分,取决于使用者的癖好。

3.奇偶校验器只能检验一位数据出错或者奇数个位出错,也没法对错误位进行纠错。

原文地址:https://www.cnblogs.com/wsw-bk/p/6552928.html