3
\$\begingroup\$

I've been taking an intro computer architecture class and doing some research of my own, I've found the following exercise: Determine the truth table and simplify the logic expression derived from the following circuit: enter image description here

After some searching I found out this is a Full Adder, so I started reading up on this and found that the above circuit is basically the go to example to explain Full Adders.

What I don't understand is how one simplifies the resulting expression when there are 2 outputs (S and Cout).

The truth table for a Full Adder is:

Inputs      Outputs
A   B   Cin Cout S
0   0   0   0    0
1   0   0   0    1
0   1   0   0    1
1   1   0   1    0
0   0   1   0    1
1   0   1   1    0
0   1   1   1    0
1   1   1   1    1

I understand the carry logic behind this, but I'd like to understand how exactly should I approach an exercise like this, how to determine the truth table and the logic expression?

\$\endgroup\$
3
\$\begingroup\$

It can help to add intermediate states to the truth table; there are a lot of letters from the alphabet you haven't used :-). Name the output of the first XOR gate D and add a D column to the truth table. You may want to have clearly separated "inputs", "intermediate" and "outputs". I separate them with a vertical line, and fill out the combinations for the inputs. You have three of those, that's eight combinations.

Then fill out column D, which takes A and B as inputs. Even if there were 15 more inputs, ignore them; only A and B are relevant. Work gate per gate, divide and conquer. When you've finished column D you can fill out column S in the "outputs" section, because that only depends on D and Cin, and you have those.

Repeat for the outputs of the AND gates: add E and F to the "intermediates" section, and fill them out only looking at the columns which are input for each gate.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.