Half adders:
One useful Boolean function is a 2-bit half adder. This function takes four inputs and produces three outputs, as follows:
The 2-bit binary numbers A1:A0 and B1:B0 are added to produce the 3-bit binary number C:S1:S0. The questions for this homework lead to the construction of this circuit. (Also see the truth table below.)
(We will be using this circuit in Lab 4 this week, so please email me if you have any questions about how it works.)
1.) The formula for the lowest output bit (S0) is: A0 XOR B0. Design a circuit to perform this function, labeling the inputs as A0 and B0, and the output as S0. Draw the schematic for this circuit.
![1252_158.png](https://secure.tutorsglobe.com/CMSImages/1252_158.png)
(You may use AND, OR, and NOT gates - but not XOR gates - for this step.)
2.) The formula for the next bit (S1) is: A1 XOR B1 XOR (A0*B0)
Design a circuit to perform this function, using A1, B1, and S0 as inputs, and S1 as the output. You may use XOR and AND gates for this step.
Draw the schematic for this circuit.
3.) The formula for the carry bit (C) is: (A1*B1)+(A1*A0*B0)+(B1*A0*B0). Design a circuit to perform this function, using AND and OR gates.
Draw the schematic for this circuit.
4.) Draw a schematic the entire circuit, labeling the inputs and outputs. (Replace the circuit for Question 1 with a simple XOR gate.)
5.) The three circuits above would require 11 gates total. An equivalent circuit can be made more efficiently (I.E. using fewer gates). Design an equivalent 2-bit adder circuit with fewer than 11 gates.
A1
|
B1
|
A0
|
B0
|
C
|
S1
|
S0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
0
|
0
|
1
|
0
|
0
|
1
|
0
|
0
|
0
|
1
|
0
|
0
|
1
|
1
|
0
|
1
|
0
|
0
|
1
|
0
|
0
|
0
|
1
|
0
|
0
|
1
|
0
|
1
|
0
|
1
|
1
|
0
|
1
|
1
|
0
|
0
|
1
|
1
|
0
|
1
|
1
|
1
|
1
|
0
|
0
|
1
|
0
|
0
|
0
|
0
|
1
|
0
|
1
|
0
|
0
|
1
|
0
|
1
|
1
|
1
|
0
|
1
|
0
|
0
|
1
|
1
|
1
|
0
|
1
|
1
|
1
|
0
|
0
|
1
|
1
|
0
|
0
|
1
|
0
|
0
|
1
|
1
|
0
|
1
|
1
|
0
|
1
|
1
|
1
|
1
|
0
|
1
|
0
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
0
|