2014-12-04 58 views
0

我想爲可以處理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

關於如何在門級測試相等的任何提示?

+0

如果處理A == B,C如何進入它? – Andras 2014-12-04 05:25:35

+0

@Andras我正在測試A == B通過使用加法器/減法器,其中A和B是輸入,Cin是進位術語,因爲AB只是A + Binverse + 1,我將Cin設置爲1 – tom 2014-12-04 05:31:58

+0

啊,謝謝。我可能誤解了 – Andras 2014-12-04 05:34:04

回答

0

二進制異或將在其兩個輸入相同時產生0。 a == b時XOR b將爲0。要測試0,或者一起測試比特,並且如果結果爲0,則這些比特全爲0.由於或者等於0的結果,非零意味着不等於 - 所以反轉結果。

使用加法器/減法器,A + Binverse + Cin=1將產生0,如果一個== B(和執行)的同時進行說

A xor Binverse xor Cin看起來至少顯著位的行爲;你需要相同的門也是最重要的位,再加上從LSB到MSB的攜帶生成