使用逻辑门测试位级相等

时间:2014-12-04 05:14:52

标签: binary logic

我正在尝试对可以处理A == B的ALU进行门级分析,到目前为止,如果a-b = 0则a == b。

在二进制文件中(我们使用的是2位)我有1-1,即01-01

由于这是门级,我需要做A xor Binverse xor Cin(which is 01 for 2's complement)

这相当于01 xor 10 xor 01 = 11 xor 01= 10,但我不应该寻找01-01=00

关于如何测试门级相等的任何提示?

1 个答案:

答案 0 :(得分:0)

二进制xor在两个输入相同时将产生0。 a == b时,XOR b为0。要测试0,或者一起测试这些位,如果结果是0,那么这些位都是0.一个0或者相等的结果,非零意味着不相等 - 所以反转结果。

使用加法器/减法器,如果a == b(和执行),A + Binverse + Cin=1将产生0

A xor Binverse xor Cin看起来像最不重要的位的行为;对于最重要的位,你需要相同的门,加上从lsb到msb的进位生成