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\$

1 Answer 1

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\$

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.