Multioperand Addition

Slides:



Advertisements
Similar presentations
SYEN 3330 Digital SystemsJung H. Kim Chapter5-1 1 SYEN 3330 Digital Systems Chapter 5 – Part 1.
Advertisements

Multioperand Addition Lecture 6. Required Reading Chapter 8, Multioperand Addition Note errata at:
Using Carry-Save Adders For Radix- 4, Can Be Used to Generate 3a – No Booth’s Slight Delay Penalty from CSA – 3 Gates.
UNIVERSITY OF MASSACHUSETTS Dept
Institute of Applied Microelectronics and Computer Engineering College of Computer Science and Electrical Engineering, University of Rostock Slide 1 Spezielle.
Multiplication Schemes Continued
1 EFFICIENT ADDERS TO SPEEDUP MODULAR MULTIPLICATION FOR CRYPTOGRAPHY Adnan Gutub Hassan Tahhan Computer Engineering Department KFUPM, Dhahran, SAUDI ARABIA.
Part II Addition / Subtraction
CSE 246: Computer Arithmetic Algorithms and Hardware Design Instructor: Prof. Chung-Kuan Cheng Lecture 5.
Copyright 2008 Koren ECE666/Koren Part.6b.1 Israel Koren Spring 2008 UNIVERSITY OF MASSACHUSETTS Dept. of Electrical & Computer Engineering Digital Computer.
Lecture 9 Sept 28 Chapter 3 Arithmetic for Computers.
EECS Components and Design Techniques for Digital Systems Lec 18 – Arithmetic II (Multiplication) David Culler Electrical Engineering and Computer.
VLSI Design Spring03 UCSC By Prof Scott Wakefield Final Project By Shaoming Ding Jun Hu
UNIVERSITY OF MASSACHUSETTS Dept
Design of Arithmetic Circuits – Adders, Subtractors, BCD adders
Fall 2008EE VLSI Design I - © Kia Bazargan 1 EE 5323 – VLSI Design I Kia Bazargan University of Minnesota Adders.
Copyright 2008 Koren ECE666/Koren Part.6a.1 Israel Koren Spring 2008 UNIVERSITY OF MASSACHUSETTS Dept. of Electrical & Computer Engineering Digital Computer.
Chapter 5 Arithmetic Logic Functions. Page 2 This Chapter..  We will be looking at multi-valued arithmetic and logic functions  Bitwise AND, OR, EXOR,
VLSI Digital System Design 1.Carry-Save, 2.Pass-Gate, 3.Carry-Lookahead, and 4.Manchester Adders.
Basic Adders and Counters Implementation of Adders in FPGAs ECE 645: Lecture 3.
©2004 Brooks/Cole FIGURES FOR CHAPTER 18 CIRCUITS FOR ARITHMETIC OPERATIONS Click the mouse to move to the next page. Use the ESC key to exit this chapter.
Combinational Circuits
Montgomery Multipliers & Exponentiation Units
Chapter 6-2 Multiplier Multiplier Next Lecture Divider
Philip Brisk 2 Paolo Ienne 2 Hadi Parandeh-Afshar 1,2 1: University of Tehran, ECE Department 2: EPFL, School of Computer and Communication Sciences Efficient.
1. Copyright  2005 by Oxford University Press, Inc. Computer Architecture Parhami2 Figure 10.1 Truth table and schematic diagram for a binary half-adder.
Part II Addition / Subtraction
Digital Integrated Circuits Chpt. 5Lec /29/2006 CSE477 VLSI Digital Circuits Fall 2002 Lecture 21: Multiplier Design Mary Jane Irwin (
ECE 645 – Computer Arithmetic Lecture 7: Tree and Array Multipliers ECE 645—Computer Arithmetic 3/18/08.
Reconfigurable Computing - Multipliers: Options in Circuit Design John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on.
Sequential Multipliers Lecture 9. Required Reading Chapter 9, Basic Multiplication Scheme Chapter 10, High-Radix Multipliers Chapter 12.3, Bit-Serial.
Digital Kommunikationselektronik TNE027 Lecture 2 1 FA x n –1 c n c n1- y n1– s n1– FA x 1 c 2 y 1 s 1 c 1 x 0 y 0 s 0 c 0 MSB positionLSB position Ripple-Carry.
Multi-operand Addition
EECS Components and Design Techniques for Digital Systems Lec 16 – Arithmetic II (Multiplication) David Culler Electrical Engineering and Computer.
1 Using 2-opr adder Carry-save adder Wallace Tree Dadda Tree Parallel Counters Multi-Operand Addition.
1 CPSC3850 Adders and Simple ALUs Simple Adders Figures 10.1/10.2 Binary half-adder (HA) and full-adder (FA). Digit-set interpretation: {0, 1}
July 2005Computer Architecture, The Arithmetic/Logic UnitSlide 1 Part III The Arithmetic/Logic Unit.
Computer Architecture, The Arithmetic/Logic UnitSlide 1 Part III The Arithmetic/Logic Unit.
Fast Adders: Parallel Prefix Network Adders, Conditional-Sum Adders, & Carry-Skip Adders ECE 645: Lecture 5.
1 Lecture 6 BOOLEAN ALGEBRA and GATES Building a 32 bit processor PH 3: B.1-B.5.
Spring C:160/55:132 Page 1 Lecture 19 - Computer Arithmetic March 30, 2004 Sukumar Ghosh.
Logic and computers 2/6/12. Binary Arithmetic /6/ Only two digits: the bits 0 and 1 (Think: 0 = F, 1.
ECE 645 – Computer Arithmetic Lecture 6: Multi-Operand Addition ECE 645—Computer Arithmetic 3/5/08.
Wallace Tree Previous Example is 7 Input Wallace Tree
Conditional-Sum Adders Parallel Prefix Network Adders
Digital Design Module –II Adders Amit Kumar Assistant Professor SCSE, Galgotias University, Greater Noida.
CPEN Digital System Design
Addition, Subtraction, Logic Operations and ALU Design
CEC 220 Digital Circuit Design
Full Tree Multipliers All k PPs Produced Simultaneously Input to k-input Multioperand Tree Multiples of a (Binary, High-Radix or Recoded) Formed at Top.
ECE/CS 552: Arithmetic I Instructor:Mikko H Lipasti Fall 2010 University of Wisconsin-Madison Lecture notes partially based on set created by Mark Hill.
High-Radix Sequential Multipliers Bit-Serial Multipliers Modular Multipliers Lecture 9.
CSE 8351 Computer Arithmetic Fall 2005 Instructors: Peter-Michael Seidel.
Application of Addition Algorithms Joe Cavallaro.
ECEN 248 Lab 7: Carry Look Ahead and Carry Save Adders Dept. of Electrical and Computer Engineering.
Carry-Lookahead, Carry-Select, & Hybrid Adders ECE 645: Lecture 2.
Reconfigurable Computing - Options in Circuit Design John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn Sound,
Reconfigurable Computing - Options in Circuit Design John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn Sound,
ETE 204 – Digital Electronics Combinational Logic Design Single-bit and Multiple-bit Adder Circuits [Lecture: 9] Instructor: Sajib Roy Lecturer, ETE,ULAB.
Full Adder Truth Table Conjugate Symmetry A B C CARRY SUM
Tree and Array Multipliers Lecture 8. Required Reading Chapter 11, Tree and Array Multipliers Chapter 12.5, The special case of squaring Note errata at:
Conditional-Sum Adders Parallel Prefix Network Adders
Sequential Multipliers
Radix 2 Sequential Multipliers
Tree and Array Multipliers
A Theoretical Analysis of Square versus Rectangular Component Multipliers in Recursive Multiplication Behrooz Parhami Department of Electrical and Computer.
Multioperand Addition
UNIVERSITY OF MASSACHUSETTS Dept
UNIVERSITY OF MASSACHUSETTS Dept
UNIVERSITY OF MASSACHUSETTS Dept
Presentation transcript:

Multioperand Addition Lecture 4 Multioperand Addition

Required Reading Behrooz Parhami, Computer Arithmetic: Algorithms and Hardware Design Chapter 8, Multioperand Addition

Applications of multioperand addition Inner product Multiplication n-1 n-1 p=a·x s =  x(i) y(i) =  p(i) i=0 i=0

Number of bits of the result S =  x(i) x(i) [0..2k-1] i=0 Smin = 0 Smax = n (2k-1) # of bits of S = log2 (Smax + 1) = = log2 (n (2k-1) + 1)  log2 n 2k = = k + log2 n

Serial implementation of multioperand addition

Adding 7 numbers in the binary tree of adders

Ripple-carry adders at levels i and i+1

Example: Adding 8 3-bit numbers

Ripple-Carry Carry Propagate Adder (CPA) an-1 bn-1 a2 b2 a1 b1 a0 b0 cn c3 cn-1 c2 c1 c0 FA . . . FA FA FA sn-1 s2 s1 s0

Carry Save Adder (CSA) an-1 bn-1 cn-1 a2 b2 c2 a1 b1 c1 a0 b0 c0 FA . . . FA FA FA cn sn-1 cn-1 s3 c3 s2 c2 s1 c1 s0

A Ripple-Carry vs. Carry-Save Adder

Operation of a Carry Save Adder (CSA) Example 24 23 22 21 20 x y z 0 1 0 1 0 1 1 0 1 1 1 0 1 1 1 s c 0 0 1 1 0 1 1 0 1 1 x+y+z = s + c

Carry propagate and carry-save adders in dot notation

Specifying full- and half-adder blocks in dot notation

Carry-save adder for four operands x3 x2 x1 x0 y3 y2 y1 y0 z3 z2 z1 z0 w3 w2 w1 w0 s3 s2 s1 s0 c4 c3 c2 c1 c4 s3 s2 s1 s0 ’ S5 S4 S3 S2 S1 S0

Carry-save adder for four operands ’ c4 ’ s3 ’ c3 ’ s2 ’ c2 ’ s1 ’ c1 ’

Carry-save adder for four operands x y z w 4 4 4 4 CSA c s CSA c’ s’ CPA S

Carry-save adder for six operands Implementation of one-bit slice CSA tree

Tree of carry save adders reducing seven numbers to two

Addition of seven six-bit numbers in dot notation

Adding seven k-bit numbers: block diagram

Number of Inputs and Tree Height Relationship Between Number of Inputs and Tree Height

Parameters of tree carry-save adders (1) Latency LatencyCSA = h(n)  TFA + LatencyCPA(k, n) Tree height for n operands Component Adders Widths typically close to k bits CSA k .. k + log2 n CPA  k + log2 n

Parameters of tree carry-save adders (2) Maximum number of inputs that can be reduced to two by an h-level tree, n(h) n(0) = 2 3 2 n(h) = n(h-1) n(1) = 3 n(2) = 4 n(3) = 6 n(4) = 9 n(5) = 13 n(6) = 19 3 2 3 2 2 ( )h-1 < n(h)  2 ( )h

Smallest height of the tree carry save adder Parameters of tree carry-save adders (3) Smallest height of the tree carry save adder for n operands, h(n) h(n) = 1 + h( ) 2 n 3 h(2) = 0 h(n)  log ( ) n 3 2 2

Wallace vs. Dadda Trees (1) Wallace trees Reduce the size of the final Carry Propagate Adder (CPA) Optimum from the point of view of speed Dadda trees Reduce the cost of the carry save tree Optimum (among the CSA trees) from the point of view of area

Wallace vs. Dadda Trees (2) Wallace reduces number of operands at earliest opportunity Goal of this is to have smallest number of bits for CPA adder However, sometimes having a few bits longer CPA adder does not affect the propagation delay significantly (i.e. carry-lookahead) Dadda seeks to reduce the number of FA and HA units May be at the cost of a slightly larger final CPA

5-to-3 Parallel Counter a+b+c+d+e = s0+s1+s2 a 0 1 0 1 0 b 1 1 0 1 1 c 24 23 22 21 20 a b c d e 0 1 0 1 0 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 s0 s1 s2 0 1 1 1 0 0 1 1 0 0 1 0 0 1 1 a+b+c+d+e = s0+s1+s2

Implementation of 1-bit of 5-to-3 parallel counter using single CLB slice of a Virtex FPGA

Carry Save Adder vs. 5-to-3 Parallel Counter b c d e w PC CSA CPA y=a+b+c+d+e mod 2w a b c d e s2 s1 s0 w w w w w CSA CSA CSA CPA w y=a+b+c+d+e mod 2w

Generalized Parallel Counters Fig. 8.17 Dot notation for a (5, 5; 4)-counter and the use of such counters for reducing five numbers to two numbers. Multicolumn reduction (5, 5; 4)-counter Unequal columns Generalized parallel counter = Parallel compressor (2, 3; 3)-counter

8.6 Modular Multioperand Adders (a) m = 2k Drop (b) m = 2k – 1 (c) m = 2k + 1 Invert Fig. 8.20 Modular carry-save addition with special moduli. Apr. 2010 Computer Arithmetic, Addition/Subtraction