目前的世界无疑是一个充满不同类型系统的电子世界,执行各种功能。这些系统需要在自己之间进行通信,以实现其预期目标。它们由他们承担的行动大量继承在收到/从中收到/传送的数据。例如,假设我们正在登陆飞机并将0010000发送到系统以拖出车轮。
现在,想象我们的位模式沿着频道损坏,并且由系统接收为0010100.这可能导致系统丢弃其输入(如果其无效)或者从预期的一个完全执行不同的动作。在任何一种情况下,结果都是灾难,就像我们的一点被改变一样。这(相当夸张)示例表示无差错数据通信的重要性。实现这一目标的一种方法是使用平衡发电机和跳棋。
奇偶校验检查是一种方法,其中通常在需要发送的数据流的MSB上附加称为奇偶校验位的额外比特。现在,如何决定是否添加1或0?这取决于我们是否渴望拥有奇怪的奇偶校验甚至平价。
奇数
这是一种情况,其中发送的比特流中的比特流中的数量(与奇偶校验位结合的数据位)保持为奇数。也就是说,假设我们将比特流具有1001011,然后将生成奇偶校验为1,使得所得到的比特流(= 11001011)中的数量为5,是奇数。推理以类似的方式,我们可以这么说,对于1001010的数据序列,奇偶校验比特必须必须为0。
甚至是奇偶校验
如果我们选择偶数奇偶校验,那么我们需要确保位流中的总数,包括奇偶校验位成为偶数。例如,如果数据字符串是1001011,则奇偶校验位将为0;虽然如果它是1001010,则奇偶校验位应为1。
现在,让我们尝试设计一种数字电路,可以帮助我们生成我们的奇偶校验位。
奇数奇偶校验发生器
让我们假设我们有三位数据序列(B2B.1B.0.)需要传达。表我显示了奇偶校验位(oP.)必须由我们的电路产生的输入位的每个组合。
表I.
| B.2 | B.1 | B.0. | O.P. |
| 0. | 0. | 0. | 1 |
| 0. | 0. | 1 | 0. |
| 0. | 1 | 0. | 0. |
| 0. | 1 | 1 | 1 |
| 1 | 0. | 0. | 0. |
| 1 | 0. | 1 | 1 |
| 1 | 1 | 0. | 1 |
| 1 | 1 | 1 | 0. |
由此,我们可以在B方面找到p的表达式2,B.1和B.0.如
这意味着我们可以建立一个奇数奇偶校验发生器用于使用两个数据字的三位Xnor盖茨。实现的设计如图1所示。
甚至奇偶校验发生器
让我们现在设计一个偶数(eP.)两个位数据字B的发电机1B.0.。相关的真理表如表II所示。
表二
| B.1 | B.0. | E.P. |
| 0. | 0. | 0. |
| 0. | 1 | 1 |
| 1 | 0. | 1 |
| 1 | 1 | 0. |
因此我们有
这导致数字电路,如图2所示。
这种奇偶校验一代用于SPI总线和UART传输。





