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›Design of Adders
    Digital Logic DesignTopic 13 of 63

    Design of Adders

    6 minread
    1,092words
    Intermediatelevel

    Design of Adders in Digital Logic

    Adders are essential components in digital systems, especially for arithmetic operations like addition. In digital circuits, an adder is a combinational logic circuit used to add binary numbers. The design of adders is fundamental in building larger systems such as processors, ALUs (Arithmetic Logic Units), and digital signal processors. There are several types of adders, each serving specific purposes based on the number of bits and required functionalities.

    Types of Adders

    1. Half Adder (HA)
    2. Full Adder (FA)
    3. Ripple Carry Adder (RCA)
    4. Carry Lookahead Adder (CLA)
    5. Binary Coded Decimal (BCD) Adder

    We'll dive deeper into these adders, starting with the basic ones.


    1. Half Adder (HA)

    A half adder is the simplest adder circuit, which adds two single-bit binary numbers. It produces a sum and a carry output. A half adder does not take into account any carry input from a previous stage, hence the term "half."

    Truth Table for Half Adder:

    A B Sum (S) Carry (C)
    0 0 0 0
    0 1 1 0
    1 0 1 0
    1 1 0 1

    Boolean Equations for Half Adder:

    • Sum: S=A⊕BS = A \oplus BS=A⊕B (XOR gate)
    • Carry: C=A⋅BC = A \cdot BC=A⋅B (AND gate)

    Circuit Diagram:

    • The sum is calculated using an XOR gate.
    • The carry is calculated using an AND gate.

    2. Full Adder (FA)

    A full adder is a more general adder than a half adder. It adds three input bits: two significant bits and a carry input from the previous stage. It produces a sum and a carry output.

    Truth Table for Full Adder:

    A B Carry_in (Cin) Sum (S) Carry_out (Cout)
    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

    Boolean Equations for Full Adder:

    • Sum: S=A⊕B⊕CinS = A \oplus B \oplus CinS=A⊕B⊕Cin (XOR gate)
    • Carry-out: Cout=(A⋅B)+(Cin⋅(A⊕B))Cout = (A \cdot B) + (Cin \cdot (A \oplus B))Cout=(A⋅B)+(Cin⋅(A⊕B)) (AND and OR gates)

    Circuit Diagram:

    • The sum is computed using an XOR gate (for A⊕BA \oplus BA⊕B) followed by another XOR gate (for (A⊕B)⊕Cin(A \oplus B) \oplus Cin(A⊕B)⊕Cin).
    • The carry-out is computed using AND and OR gates as per the Boolean equation.

    3. Ripple Carry Adder (RCA)

    A ripple carry adder is a series of full adders chained together. The output carry of each full adder is connected to the carry input of the next full adder. Although simple to design, it is slow because the carry must "ripple" through each stage.

    Design and Operation:

    • If you're adding two nnn-bit numbers, you'll need nnn full adders, where each adder handles one bit of the two numbers and the carry from the previous stage.
    • The carry from the last bit is the carry-out of the entire adder.

    Speed Consideration:

    • The major disadvantage of the ripple carry adder is that it can be slow because the carry bit must propagate through all the stages. The time it takes for the carry to propagate through all the bits is the delay for this adder.

    4. Carry Lookahead Adder (CLA)

    The carry lookahead adder improves on the ripple carry adder by speeding up the carry generation process. It uses additional logic to predict the carry outputs, rather than waiting for the carry to propagate bit by bit.

    Carry Generation:

    • The key idea is to calculate the propagate and generate signals for each bit:

      • Propagate (PiP_iPi​): Pi=Ai⊕BiP_i = A_i \oplus B_iPi​=Ai​⊕Bi​
      • Generate (GiG_iGi​): Gi=Ai⋅BiG_i = A_i \cdot B_iGi​=Ai​⋅Bi​
    • Using these signals, the carry for each bit can be calculated directly without waiting for the previous carry bit to propagate.

    Carry Lookahead Logic:

    The lookahead logic reduces the carry propagation delay by determining all the carries in parallel.

    Speed Advantage:

    The CLA is faster than the ripple carry adder because it reduces the time required for the carry to propagate through all the bits. It does this by calculating carry values for all bits in parallel.


    5. Binary Coded Decimal (BCD) Adder

    A BCD adder adds two binary coded decimal numbers (each digit represented by a 4-bit binary number). It is used when working with decimal values, and the result of the addition must also be in decimal.

    BCD Addition Process:

    • In BCD, each decimal digit is represented by a 4-bit binary number.
    • If the result of an addition exceeds 9 (1001 in binary), a correction is needed. The correction can be done by adding 6 (0110 in binary) to the result to convert it back into valid BCD format.

    Design:

    • The BCD adder uses a full adder for the binary addition, and additional logic to detect when the result exceeds 9, adding 6 if necessary.

    Applications of Adders:

    Adders are used in numerous digital applications, including:

    1. Arithmetic Units: Adders are essential components of arithmetic logic units (ALUs) in processors.
    2. Digital Signal Processing: In DSP systems, adders are used to perform various arithmetic operations.
    3. Multiplication and Division: Adders are used in the hardware design of multipliers and dividers.
    4. Counters: Adders are used in counters for incrementing binary values.

    Conclusion:

    Adders are crucial components of digital systems and form the foundation for building more complex arithmetic operations. From simple half adders to more complex carry lookahead adders, these circuits enable fast and efficient binary addition. The design of adders directly impacts the speed and efficiency of digital systems, especially in processors and arithmetic units. Understanding the different types of adders and their respective advantages allows for the optimization of digital circuits in various applications.

    Previous topic 12
    Introduction to Combinational Logic
    Next topic 14
    Design of Subtractors

    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 time6 min
      Word count1,092
      Code examples0
      DifficultyIntermediate