## May 21, 2013

the logic diagram of the full-adder is given below. Note that the full adder circuit consists of two half-adders and an OR gate.

### FULL ADDER CIRCUIT DIAGRAM AND TRUTH TABLE:

The logic diagram, block diagram and truth table is shown below. The logic diagram is implemented by two XOR gates, two AND gates and OR gate. The given XOR gates are used to obtain the sum output of the full-adder and other logic gates are used to get the carry output of the full-adder. The K-map for obtaining sum output and carry output is also given below.
 INPUT OUTPUT X Y Z C S 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1
 BLOCK DIAGRAM AND LOGIC DIAGRAM OF FULL ADDER LOGIC DIAGRAM AND BLOCK DIAGRAM OF A FULL ADDER
 K-MAP REPRESENTATION OF A FULL ADDER

### IMPLEMENTATION OF FULL-ADDER USING 3-TO-8 LINE DECODER:

 LOGIC DIAGRAM OF FULL ADDER USING 3-TO-8 LINEDECODER AND OR GATES
The truth table for a full-adder which adds 3 input bits A, B, and Cin simultaneously, where A and B are addend and augend bits respectively and Cin is the carry bit from the previous bits (if any) is shown above. Here S, Cout are the outputs where S is the sum of the full-adder and cout is the carry output of the full-adder. Now from truth table we can write output equations as:
Output equation of output S (Sum output)
= F(A, B, Cin)
= ∑m (1, 2, 4, 7)
And output equation of Cout (Carry output)
= F(A, B, Cin)
= ∑m (3, 5, 6, 7)
Designing a full-adder using Decoder can be implemented by using a 3-to-8 line decoder. Since, a Decoder is a Minterm generator, we can use those Minterms of Decoder to represent the Boolean functions of sum (S) and carry out (Cout) outputs. The figure shows the logic circuit diagram of full-adder using a 3-to-8 line Decoder and two OR gates. Here A, B, and Cin are three inputs to Decoder. EN is enable input which follows active high logic. Y0 to Y7 are the eight Minterms which are from m0 to m8. Full-adder gives the sum output 1 only when m1 or m2 or m4 or m7  is 1. So, we can write S = m1+m2+m4+m7. Similarly full-adder gives the Cout output 1 only when m3 or m5 or m6 or m7 is 1. So, we can write Cout = m3+m5+m6+m7.

## IMPLEMENTATION OF FULL-ADDER USING MUX OR MULTIPLEXER

From the above truth table of Full-Adder and information supplied we know that the sum output and carry output of a Full-Adder is as written: S = F (A, B, Cin) = ∑(1, 2, 4, 7) and Cout = F (A, B, Cin) = ∑(3, 5, 6, 7). Where A, B, Cin are the inputs to the Full-Adder. S and Cout are the sum output and carry output respectively. Now, the given requirement of designing a Full-Adder using MUX (Multiplexer) can be implemented by 2X1 MUX or 4X1 MUX or 8X1 MUX.

### IMPLEMENT OF FULL-ADDER USING 8X1 MUX OR MULTIPLEXER

 LOGIC DIAGRAM OF FULL ADDER USING 8X1MULTIPLEXER
At first we are going to implement this Full-Adder by 8X1 Multiplexer. To implement this circuit we need two 8X1 Multiplexers the first one gives the output for sum output of Full-Adder and second gives output for carry output of Full-Adder. The general output equation of a 8X1 MUX or Multiplexer is as follows:
Y = I0S’2S’1S’0 + I1S’2S’1S0 + I2S’2S1S’0 + I3S’2S1S0 + I4S2S’1S’0 + I5S2S’1S0 + I6S2S1S’0 + I7S2S1S0 is equation number one (1).
Where Y is the output of 8X1 MUX or Multiplexer S2, S1 and S0 are the selection inputs to the MUX and I0, I1, I2, I3, I4, I5, I6 and I7 are the inputs to the multiplexer. Now, the output equation of the sum output of Full-Adder is as follows:
S
= F(A, B, Cin)
= ∑(1, 2, 4, 7)
= m1 + m2 + m4 +m7
= A’B’Cin + A’BC’in + AB’C’in + ABCin
= 0.A’B’C’in + 1.A’B’Cin + 1.A’BC’in + 0.A’BCin + 1.AB’C’in + 0.AB’Cin 0.ABC’in + 1.ABCin is equation number two (2).
Now, comparing equations (1) & (2) we get
I0 = 0, I1 = 1, I2 = 1, I3 = 0, I4 = 1, I5 = 0, I6 = 0 and I7 = 1. And S2 = A, S1 = B and S0 = Cin
These values are for first multiplexer for sum output of Full-Adder. Now, we will find all values for second MUX for carry output of Full-Adder. The general output equation of carry output is as follows:
Cout
= F(A, B, Cin)
= ∑(3, 5, 6, 7)
= m3 + m5 + m6 + m7
= A’BCin + AB’Cin + ABC’in + ABCin
= 0.A’B’C’in + 0.A’B’Cin + 0.A’BC’in + 1.A’BCin + 0.AB’C’in + 1.AB’Cin + 1.ABC’in  + 1.ABCin is equation number three (3).
Comparing the equations (1) & (3) we have
I0 = 0, I1 = 0, I2 = 0, I3 = 1, I4 = 0, I5 = 1, I6 = 1 and I7 = 1. And S2 = A, S1 = B and S0 = CinThese values are for second multiplexer for carry output of Full-Adder. Now, we have all the values of the two multiplexers therefore the circuit of the Full-Adder can be implemented. The block diagram of Full-Adder is shown here.

### IMPLEMENTATION OF FULL-ADDER USING 4X1 MUX OR MULTIPLEXER

 LOGIC DIAGRAM OF FULL ADDER USING 4X1
We already know the sum output and carry output of a Full-Adder. Now, we have to write the general output equation of a 4X1 MUX or Multiplexer and it is as follows:
Y = I0S’1S’0 + I1S’1S0 + I2S1S’0 + I3S1S0 is equation number one (1).
Where Y is the output of the MUX or Multiplexer S1 and S2 are the selection inputs. From I0 to I3 are the inputs to the MUX or Multiplexer.
Now, the output equation of the sum of Full-Adder is as follows:
S
= F(A, B, Cin
= ∑(1, 2, 4, 7)
= m1 + m2 + m4 +m7
= A’B’Cin + A’BC’in + AB’C’in + ABCin
= A.(B’C’in) + A’.(B’Cin) + A’.(BC’in) + A.(B’C’in) is equation number (2).
Comparing equations (1) & (2) we have
I0 = A, I1 = A’, I2 = A’, I3 = A. And S1 = B, S0 = Cin.
Now, the output equation of carry output of Full-Adder is as follows:
Cout
= F (A, B, Cin)
= ∑(3, 5, 6, 7)
= m3 + m5 + m6 + m7
= A’BCin + AB’Cin + ABC’in + ABCin
= (A’ + A) BCin + AB’Cin + ABC’in + 0.AB’C’in
= 0.(B’C’in) + A.(B’Cin) + A.(BC’in) + 1.(BCin) is equation number (3).
Comparing equation (1) and (3) we have
I0 = 0, I1 = A, I2 = A, I3 = 1 and S1 = B, S0 = Cin.
The logic diagram of Full-Adder using 4X1 MUX or Multiplexer is shown here. From the above picture, it can be shown that a Full-Adder can be implemented by two 4X1 MUX or Multiplexers. One MUX or Multiplexer is used to find the sum of the FA (Full-Adder) and other is used to get the carry output of FA. Each 4X1 MUX has two selection input lines which are used to select one of the inputs from I0 to I3. Here, two selection inputs of each 4X1 MUX or Multiplexers are replaced by the two inputs of Full-Adder B and Cin and the values of I0 to I3 of each 4X1 MUX has given.

### IMPLEMENTATION OF FULL-ADDER USING 2X1 MUX OR MULTIPLEXER

 LOGIC DIAGRAM OF FULL ADDER USING 2X1 MULTIPLEXER
Here, it is implemented by 2X1 MUX. The general output equation of 2X1 MUX is written as:
Y = I0S’0 + I1S0 is equation number one (1).
Where Y is the output to MUX, S0 is the selection input to the MUX and I0 and I1 are the inputs to MUX. Now, output equation of sum output Full-Adder is as follows:
S
= F (A, B, Cin)
= ∑m (1,2,4,7)
= m1 + m2 + m4 +m7
= A’B’Cin + A’BC’in + AB’C’in + ABCin
= (A’B + AB’).C’in + (A’B’ + AB).Cin is equation number two (2).
Comparing equations (1) & (2) we get
I0 = A’B + AB’, I1 = A’B’ + AB and S0 = Cin.
Now, output equation of carry out of Full-Adder is as follows:
Cout
= F (A, B, Cin)
= ∑m (3, 5, 6, 7)
= m3 + m5 + m6 + m7
= A’BCin + AB’Cin + ABC’in + ABCin
= (AB)Cin + (A’B + AB’ + AB)Cin
= (AB)Cin + (A + B)Cin is equation number (3).
Comparing equation (1) & (3) we have
I0 = AB, I1 = A + B and S0 = Cin.

The logic diagram of Full-Adder using 2X1 MUX is shown here.

### IMPLEMENTATION OF FULL-ADDER USING NAND GATE

The circuit diagram of a Full-adder can be implemented by using only NAND gates because we know that NAND gates are called universal logic gates. A universal gate means a gate which is alone sufficient to implement any circuit. Hence, the circuit of the Full-adder using NAND gates is shown below. We know that the sum output of Full-adder and the carry output is as follows:
S
= F(A,B,Cin
= ∑(1,2,4,7)
= m1 + m2 + m4 +m7
= A’B’Cin + A’BC’in + AB’C’in + ABCin
Cout
= F (A, B, Cin)
= ∑m (3, 5, 6, 7)
= m3 + m5 + m6 + m7
= A’BCin + AB’Cin + ABC’in + ABCin
= AB + ACin + BCin
To implement the circuit by NAND gates first we have to take the double complement of the sum output and carry output. After complementing two times the sum output and carry output, the terms of the obtained output equations are the output of each NAND gates and all these output are directed as input to a NAND gate which gives the final outputs.
{(S)'}' = {( A’B’Cin + A’BC’in + AB’C’in + ABCin )'}'
S = { (A’B’Cin)’. (A’BC’in)’. (AB’C’in)’. (ABCin)’}’   and
{(Cout)’}’= {(AB + ACin + BCin)’
Cout = {(AB)’. (ACin)’.(BCin)’}’
The circuit diagram of the full-adder using NAND gates is shown here.
 CIRCUIT DIAGRAM OF FULL ADDER USING NAND GATES

### IMPLEMENTATION OF FULL-ADDER USING NOR GATES

Designing the circuit diagram of a Full-Adder using NOR Gates can be done by as we done above with NAND Gates. There a few steps we need to take to construct the circuit and these steps are listed below.
1. Change the sum output and Carry output equations into Canonical form.
2. Change the sum output and carry output equations into sum of product forms.
3. Take double complement of sum output equation and carry output equation.
Sum output of Full-Adder is X = A’B’C+A’BC’+AB’C’+ABC and carry output of Full-Adder is Y = AB+BC+AC where A, B and C are three inputs and X and Y are outputs of the Full-Adder.
Since the Sum output of the Full-Adder is in canonical form and also in product of sum form so we have to execute the second step. Here we will use K-Map to convert the output equations into SOP form.
X (A, B, C)
= A’B’C+A’BC’+AB’C’+ABC
= ∑m (1, 2, 4, 7)
Here K-Map for Sum output is shown. To find the SOP form we have to cover the all zeros as the combinations of them should be minimum. One thing we need to know that the covering is done either horizontally or vertically with adjacent same value. Since in the above map there are no adjacent zeros either vertically or horizontally. By covering zeros we find the complement of the sum output. Thus we get
X’ = A’B’C’+A’BC+AB’C+ABC’
Now take Complement of X’, we obtain the simplified function in product of sum form:
(X’)’ = (A+B+C)(A+B’+C’)(A’+B+C’)(A’+B’+C)
X = (A+B+C)(A+B’+C’)(A’+B+C’)(A’+B’+C)
Similarly we can change the carry output equation into product of sum form. The carry output equation is Y = AB+BC+AC. Since the equation is not in canonical form so at first we will change it in canonical form.
Y = AB+BC+AC
= AB.1+BC.1+AC.1
= AB(C+C’)+BC(A+A’)+AC(B+B’)
= ABC+ABC’+ABC+A’BC+ABC+AB’C
= ABC+ABC+ABC+A’BC+AB’C+ABC’
= ABC+ A’BC+AB’C+ABC’
Now the carry output equation has been changed into canonical form. Thus perform the second step.
Y (A, B, C)
= ABC+ A’BC+AB’C+ABC’
= ∑m (3, 5, 6, 7)
K-Map for carry output is shown above. From the above K-Map we can write:
= A’B’+B’C’+A’C’
Taking complement of Y’ we obtain the product of sum form of carry output:
(Y’)’ = (A+B)(B+C)(A+C)
Y = (A+B)(B+C)(A+C)
Now we will take last step,
X = (A+B+C)(A+B’+C’)(A’+B+C’)(A’+B’+C)
(X’)’ = [{(A+B+C)(A+B’+C’)(A’+B+C’)(A’+B’+C)}’]’
X = [(A+B+C)’+(A+B’+C’)’+(A’+B+C’)’+(A’+B’+C)’]’
Similarly
Y = (A+B)(B+C)(A+C)
(Y’)’ = [{(A+B)(B+C)(A+C)}’]’
Y = [(A+B)’+(B+C)’+(A+C)’]’
Using X = [(A+B+C)’+(A+B’+C’)’+(A’+B+C’)’+(A’+B’+C)’]’ and
Y = [(A+B)’+(B+C)’+(A+C)’]’
We will design the circuit. The circuit of Full-Adder using NOR Gates is shown below.
 CIRCUIT DIAGRAM OF FULL-ADDER USING NOR GATES
SEE MORE: