1ECE 274 - Digital LogicLecture 9 Lecture 9 - Adders Half-adders Full-adders Carry-ripple Adder2Digital DesignDatapath Components: Adders: 2-bit adder Functional Requirements: Design a circuit that will add two 2-bit binary numbers Input: A1A0, B1B0 Output: S1S0: sum of inputsC: carry bit3Digital DesignDatapath Components: Adders: 2-bit Adder: Truth Table4Digital DesignDatapath Components: Adders: 16-bit Adder: Truth Table….….0000000000000000000000000000000000000000000000s15s14s13s12s11s10s9s8s7s6s5s4s3s2s1s0 c a15a14a13a12a11a10a9a8a7a6a5a4a3a2a1a0b15b14b13b12b11b10b9b8b7b6b5b4b3b2b1b016-bit Adder: 16-bits * 2-operands = 32 inputsOver 4,000,000,000 rows5Digital DesignDatapath Components: Adders: Exponential GrowthExponential Growth for Two-Level Adder Implementation6Digital DesignDatapath Components: Adders: Carry-Ripple Functional Requirements: Design a circuit that will add two bits Input: A, B Output: S: sum of inputsC: carry bit7Digital DesignDatapath Components: Adders: Carry-Ripple Functional Requirements: Design a circuit that will add two bits Input: A, B Output: S: sum of inputsC: carry bit8Digital DesignDatapath Components: Adders: Carry-RippleInput: A, BOutput: S: sum of inputsC: carry bitC2A3B3S3C1A2B2S2C0A1B1S1A0B0S09Digital DesignDatapath Components: Adders: Carry-Ripple: Half-Adder1) Capture the Function10Digital DesignDatapath Components: Adders: Carry-Ripple: ½ Adder2) Convert to Equationsco = abs = a’b + ab’ = a xor b11Digital DesignDatapath Components: Adders: Carry-Ripple: ½ Adder3) Create the Circuitco = abs = a’b + ab’ = a xor b12Digital DesignDatapath Components: Adders: Carry-Ripple: Full Adder Functional Requirements: Design a circuit that will add three bits Input: A, B, Cin Output: S: sum of inputsC: carry bit13Digital DesignDatapath Components: Adders: Carry-Ripple: Full Adder1) Capture the FunctionInput: A, B, CinOutput: S: sum of inputsC: carry bit14Digital DesignDatapath Components: Adders: Carry-Ripple: Full Adder2) Convert to Equationsco = bc + ac + abs = a xor b xor c15Digital DesignDatapath Components: Adders: Carry-Ripple: Full Adderco = bc + ac + abs = a xor b xor c3) Create the Circuit.3ns.3ns.3ns.6ns.8nsFor a 4-bit adder composed of full adders, what would be the soonest time you could expect a result? A) .9 ns B) 2.3 ns C) 3.6 ns16Digital DesignDatapath Components: Adders: Carry-Ripple: Full Adder4-bit Adder:Inputs (8-bits): a3a2a1a0, b3b2b1b0Outputs (5-bits): c0, s3s2s1s017Digital DesignDatapath Components: Adders: Carry-Ripple: Full Adder4-bit Adder:Inputs (9-bits): a3a2a1a0, b3b2b1b0, cinOutputs (5-bits): c0, s3s2s1s018Digital DesignDatapath Components: Adders: Carry-Ripple: Full AdderNOTE:Adder will exhibit temporarily incorrect (spurious) results until the carry bit from the rightmost bit has had a chance to propagate (ripple) all the way through to the leftmost bit.19Digital DesignDatapath Components: Adders: Carry-Ripple20Digital DesignDatapath Components: Adders: Compensating Scale21Digital DesignDatapath Components: Adders: Compensating Scale Functional Requirements: Design a circuit that will weigh an object, and add an adjustment from a user Input: 8-bit Weight Reported by Sensor3-bit User Adjustment Output: S7..0: sum of inputs22Digital DesignDatapath Components: Adders: Compensating ScaleAdjustmentKnob23Digital DesignDatapath Components: Adders: Carry-Ripple8-bit Carry-Ripple Adder:Inputs (16-bits): a7a6a5a4a3a2a1a0, b7b6b5b4b3b2b1b0Outputs (5-bits): c0, s3s2s1s024Digital DesignDatapath Components: Adders 8-bit Calculator Functional Requirements: Design a circuit that will add two eight-bit inputs controlled by DIP switches and output the result using eight LEDs Input: A (8-bits), B (8-bits) Output: S (8-bits): sum of inputs25Digital DesignDatapath Components: Adders8-bit DIP switch based adding calculator. The addition 2+3=5 is shown.26Digital DesignDatapath Components: Adders 8-bit Calculator Functional Requirements: Design a circuit that will add two eight-bit inputs controlled by DIP switches and output the result using eight LEDs. The output should only be updated with the user presses a calculate button Input: A (8-bits), B (8-bits), e: input from calculate button Output: S (8-bits): sum of inputs27Digital DesignDatapath Components: Adders8-bit DIP switch-based adding calculator, using a register to block spurious LED outputs. The LEDs only get updated after the button is pressed, which loads the output
View Full Document