ScholarQuill logoScholarQuillUniversity Notes
  • Notes
  • Past Papers
  • Blogs
  • Todo
Login
ScholarQuill logoScholarQuillUniversity Notes
Login
NotesPast PapersBlogsTodo
More
SubjectsDiscussionCGPA CalculatorGPA CalculatorStudent PortalCourse Outline
About
About usPrivacy PolicyReportContact
Notes
Past Papers
Blogs
Todo
Analytics
    Current Subject
    🧩
    Digital Logic Design
    CC-110
    Progress0 / 63 topics
    Topics
    1. Introduction to Digital Systems2. Number Systems3. Introduction to Boolean Algebra4. Basic theorems and properties of Boolean Algebra5. Boolean Functions6. Logic Gates7. NAND and NOR Implementation8. Representation of Function in Sum of Minterms or Product of Maxterms9. Simplification of Boolean function using Karnaugh Map10. Don't care Conditions11. The Tabulation Method12. Introduction to Combinational Logic13. Design of Adders14. Design of Subtractors15. Code Convertors16. Analysis Procedure of Combinational Circuits17. Binary Parallel Adders18. Decimal Adders19. Magnitude Comparator20. Decoders and its applications21. Multiplexers22. Demultiplexers23. Encoders24. ROM25. Programmable Logic Array (PLA)26. Introduction to Sequential Circuits27. Basic Flip Flop28. Clocked RS Flip Flop29. Clocked D Flip Flop30. Clocked JK Flip Flop31. Clocked T Flip Flop32. Analysis of Clocked Sequential Circuits33. State Reduction and Assignment34. Flip Flop Excitation tables35. Design Procedure36. Design of Counters37. Design with State Equations38. Introduction to Registers39. Shift Registers40. Ripple Counters41. Synchronous Counters42. Timing Sequences43. Memory Unit44. Random Access Memory45. Introduction to Programmable Logic Devices (CPLD, FPGA)46. Lab Assignments using tools such as Verilog HDL/VHDL, MultiSim47. Familiarization with Digital Electronic Trainer48. Logic gates operations49. Half Adder Operation50. Full Adder Operation51. Half Subtractor Operation52. Full Subtractor Operation53. 7-Segment Display Operation54. Decoder Operation55. BCD To 7-Segment Display56. Multiplexer Operation57. Using Multiplexer and Demultiplexer/Decoder58. Multiplexing 7-Segment Displays59. Comparator Operations60. D Latch and Flip-Flop Operation61. Latching BCD Data for Displaying On 7-Segment Display62. JK Flip-Flop Operation63. Random Access Memories
    CC-110›Full Adder Operation
    Digital Logic DesignTopic 50 of 63

    Full Adder Operation

    8 minread
    1,353words
    Intermediatelevel

    Full Adder Operation

    A Full Adder is a digital circuit that performs the addition of three binary bits: two significant bits and a carry-in bit (from a previous addition). Unlike a Half Adder, which only adds two bits, the Full Adder can handle the carry-in, making it essential for multi-bit binary addition. The Full Adder produces two outputs: the Sum (S) and the Carry-out (C_out).


    Inputs and Outputs of a Full Adder

    • Inputs:

      • A: The first bit to be added.
      • B: The second bit to be added.
      • Carry-in (C_in): The carry bit from a previous addition (if any).
    • Outputs:

      • Sum (S): The sum of the three input bits.
      • Carry-out (C_out): The carry-out bit, which is the overflow bit that is passed to the next addition.

    Truth Table of a Full Adder

    The Full Adder performs binary addition based on the following truth table:

    A B C_in Sum (S) Carry-out (C_out)
    0 0 0 0 0
    0 0 1 1 0
    0 1 0 1 0
    0 1 1 0 1
    1 0 0 1 0
    1 0 1 0 1
    1 1 0 0 1
    1 1 1 1 1

    Explanation of the Truth Table:

    • When A = 0, B = 0, and C_in = 0:
      The Sum (S) is 0, and there is no carry, so the Carry-out (C_out) is 0.

    • When A = 0, B = 0, and C_in = 1:
      The Sum (S) is 1, and there is no carry, so the Carry-out (C_out) is 0.

    • When A = 0, B = 1, and C_in = 1:
      The Sum (S) is 0, and there is a carry-out, so Carry-out (C_out) = 1.

    • When A = 1, B = 1, and C_in = 1:
      The Sum (S) is 1, and there is a carry-out, so Carry-out (C_out) = 1.


    Boolean Equations for Sum and Carry-out

    The outputs of the Full Adder can be expressed using Boolean algebra as follows:

    1. Sum (S):

      • The Sum output is the result of the XOR operation between the three inputs (A, B, and C_in).
      S=A⊕B⊕CinS = A \oplus B \oplus C_{\text{in}}S=A⊕B⊕Cin​

      This equation shows that the sum is 1 if the number of 1s in the inputs is odd.

    2. Carry-out (C_out):

      • The Carry-out output is 1 if at least two of the inputs are 1. This can be expressed as:
      Cout=(A⋅B)+(B⋅Cin)+(A⋅Cin)C_{\text{out}} = (A \cdot B) + (B \cdot C_{\text{in}}) + (A \cdot C_{\text{in}})Cout​=(A⋅B)+(B⋅Cin​)+(A⋅Cin​)

      This equation shows that the carry-out is 1 if any two or more inputs are 1.


    Logic Gate Implementation of a Full Adder

    The Full Adder can be implemented using a combination of XOR, AND, and OR gates:

    1. Sum (S):

      • The Sum is produced by XORing the three inputs A, B, and C_in.
      • First, XOR A and B: Temp=A⊕B\text{Temp} = A \oplus BTemp=A⊕B
      • Then, XOR the result with C_in to get the final Sum: S=Temp⊕CinS = \text{Temp} \oplus C_{\text{in}}S=Temp⊕Cin​
    2. Carry-out (C_out):

      • The Carry-out is produced by ORing the results of three AND operations:
        • AND A and B: A⋅BA \cdot BA⋅B
        • AND B and C_in: B⋅CinB \cdot C_{\text{in}}B⋅Cin​
        • AND A and C_in: A⋅CinA \cdot C_{\text{in}}A⋅Cin​
      • Finally, OR the results of the AND gates to get C_out: Cout=(A⋅B)+(B⋅Cin)+(A⋅Cin)C_{\text{out}} = (A \cdot B) + (B \cdot C_{\text{in}}) + (A \cdot C_{\text{in}})Cout​=(A⋅B)+(B⋅Cin​)+(A⋅Cin​)

    Circuit Diagram:

    • XOR gates are used to compute the Sum.
    • AND gates are used to compute the conditions for the carry.
    • OR gate combines the carry conditions to produce the final Carry-out.

    Full Adder Example

    Let’s walk through an example to better understand how the Full Adder works.

    Example 1:

    • Inputs: A = 1, B = 0, C_in = 1
      • Sum: S=A⊕B⊕Cin=1⊕0⊕1=0S = A \oplus B \oplus C_{\text{in}} = 1 \oplus 0 \oplus 1 = 0S=A⊕B⊕Cin​=1⊕0⊕1=0
      • Carry-out: Cout=(A⋅B)+(B⋅Cin)+(A⋅Cin)=(1⋅0)+(0⋅1)+(1⋅1)=1C_{\text{out}} = (A \cdot B) + (B \cdot C_{\text{in}}) + (A \cdot C_{\text{in}}) = (1 \cdot 0) + (0 \cdot 1) + (1 \cdot 1) = 1Cout​=(A⋅B)+(B⋅Cin​)+(A⋅Cin​)=(1⋅0)+(0⋅1)+(1⋅1)=1
      • Result: Sum = 0, Carry-out = 1

    Example 2:

    • Inputs: A = 1, B = 1, C_in = 1
      • Sum: S=A⊕B⊕Cin=1⊕1⊕1=1S = A \oplus B \oplus C_{\text{in}} = 1 \oplus 1 \oplus 1 = 1S=A⊕B⊕Cin​=1⊕1⊕1=1
      • Carry-out: Cout=(A⋅B)+(B⋅Cin)+(A⋅Cin)=(1⋅1)+(1⋅1)+(1⋅1)=1C_{\text{out}} = (A \cdot B) + (B \cdot C_{\text{in}}) + (A \cdot C_{\text{in}}) = (1 \cdot 1) + (1 \cdot 1) + (1 \cdot 1) = 1Cout​=(A⋅B)+(B⋅Cin​)+(A⋅Cin​)=(1⋅1)+(1⋅1)+(1⋅1)=1
      • Result: Sum = 1, Carry-out = 1

    Applications of Full Adder

    1. Multi-bit Addition:

      • Full Adders are used in the design of binary adders that add multi-bit numbers. Multiple Full Adders are chained together to add larger binary numbers, such as in a 4-bit or 8-bit adder.
    2. Arithmetic Logic Units (ALUs):

      • Full Adders are part of ALUs in processors, where they are used to perform addition, subtraction, and other arithmetic operations.
    3. Counters:

      • Full Adders are used in digital counters to increment values, particularly when carry propagation is involved.
    4. Digital Signal Processing:

      • Full Adders are used in many digital systems where binary numbers need to be added, such as in audio and video encoding or encryption.

    Conclusion

    The Full Adder is an essential component in digital electronics, enabling the addition of three bits: two significant bits and a carry-in. It produces two outputs: the Sum and the Carry-out. By using Full Adders in combination, more complex arithmetic operations like multi-bit addition can be performed. Full Adders are fundamental in arithmetic logic units (ALUs), binary addition circuits, and other digital systems.

    Previous topic 49
    Half Adder Operation
    Next topic 51
    Half Subtractor Operation

    Past Papers

    Open this section to load past papers

    Click on Show Past Papers to see past papers.
    On This Page
      Reading Stats
      Est. reading time8 min
      Word count1,353
      Code examples0
      DifficultyIntermediate