Multiplication
Download
1 / 34

Multiplication - PowerPoint PPT Presentation


  • 71 Views
  • Uploaded on

Multiplication. Multiplier Notation. Partial Products Logical-AND. Shift and Add Paradigm. Shift and Add Examples. Programmed Multiplication. Programmed Multiplication (cont.). Hardware Shift and Add (right). Hardware Shift and Add. Hardware Shift and Add (left).

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Multiplication' - ksena


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Multiplier notation
Multiplier Notation

Partial Products

Logical-AND











Booth s recoding or encoding
Booth’s Recoding (or encoding)

  • Developed for Speeding Up Multiplication in Early Computers

  • When a Partial Product of 0 Occurs, Can Skip Addition and Just Shift

  • Doesn’t Help Multipliers Where Datapaths Go Through Adder Such as Previous Examples

  • Does Help Designs for Asynchronous Implementation or Microprogramming Since Shifting is Faster Than Addition

  • Variable Delay – Depends on Number of One’s in

  • Booth Observed that a String of 1’s May be Replaced as:


Booth s recoding example
Booth’s Recoding Example

xn xn-1 ... xi xi-1 ... x0 (0)

yi=xi-1 - xi

yn... yi ... y0

EXAMPLE

0011110011(0)

0100010101


Booth s recoding
Booth’s Recoding

  • Maps Words With Digit Set [0,1] to Those With [-1,1]


Sequential multiplication
Sequential Multiplication

A 1011 (-510)

X 1101 (-310)

Y 0111 (recoded)

(-1) Add –A 0101

Shift 00101

(+1) Add +A 1011

11011

Shift 111011

(-1) Add –A 0101

001111

Shift 0001111 (+1510)



Booth s recoding drawbacks
Booth’s Recoding Drawbacks

  • Number of add/sub Operations are Variable

  • Some Inefficiencies

EXAMPLE

001010101(0)

011111111

  • Can Use Modified Booth’s Recoding to Prevent

  • Will Look at This in Later Class


Sign extension
Sign Extension

  • Consider 6-bit 2’s Complement Number

    • s=0 Positive Value; s=1 Negative Value

  • Show Sign Extension Works:

    • Definition of 2’s Complement


    Sign extension example
    Sign Extension Example

    A 010110 (+2210)

    X 001011 (+1110)

    Y 010101 (recoding)

    11111101010 (neg. A)

    0000000000 (0 A)

    111101010 (neg. A)

    00000000 (0 A)

    0010110 (neg. A)

    000000 (0 A)

    00011110010 (24210)


    Sign extension example1
    Sign Extension Example

    • Same Trick as Before, Complement Original Sign Bit

    • Add 1 to Column 5

    1

    001010 (neg. A)

    100000 (0 A)

    001010 (neg. A)

    100000 (0 A)

    110110 (neg. A)

    100000 (0 A)

    00011110010 (24210)


    Methods for fast multiplication
    Methods for Fast Multiplication

    • Reduce Number of Partial Products to be Added

      • Group Multiplier Bits Together

      • Higher Radix Multiplier

    • Add the Partial Products Faster


    Radix r shift and add
    Radix-r Shift and Add


    Radix 4 multiplication
    Radix-4 Multiplication

    • Shifter is Multi-bit

    • No Longer a Simple AND of xi with a

    • Need 4:1 MUX with 0, a, 2a, 3a as Inputs


    Partial product selection
    Partial Product Selection

    • 0, a and 2a are easy

    • 3a=a+2a Requies an Adder!

    • Need a Way to Compute 3a Efficiently


    Example with 3 a availability
    Example With 3a Availability


    Computing 3 a
    Computing 3a

    • One Way is to Precompute 3a and Store in Register Initially

    • Another Way is When 3a Occurs Add -a

    • Send Carry of 1 to Next into Next Radix-4 Digit of Multiplier

    • Causes Incoming Multiple to be [0,4] Versus [0,3]

      • – 4 Because incoming carry to 112 Causes Digit 1002

    • Multiples 0, 1, 2 Handled Easily

    • Multiple 3 Converted to –1 With Outgoing Carry of 1

    • Multiple 4 Converted to 0 With Outgoing Carry of 1

    • Requires Extra Cycle of Computation Since MSD May Have Carry


    Example with 3 a availability1
    Example With 3a Availability


    Using radices 4
    Using Radices >4

    • Could Also Use Radices of 8, 16, ...

    • Bit Groupings of Size 3, 4, ...

    • Multiple Generation Hardware Becomes More Complex

    • Must Precompute 3a, 5a, 7a, ....

    • Or Use 3a With a Carry Scheme

    • Carry Scheme Converts Multipliers 5a, 6a, 7a to –3a, -2a, -a, etc.

    • Carry Digit in This Form Becomes a 1


    Booth recoding
    Booth Recoding

    • Modern Arithmetic Circuits DO NOT Apply Booth Recoding Directly

    • Useful in Understanding Higher-radix Versions of Booth Recoding

    • No Consecutive 1’s or –1’s Occur Using Previously Seen Booth Recoding

    • Booth Recoding in Radix-4 Results in the Following:

      • Only Multiples of a or 2a are Required

      • These are Easily Obtained Using Shifting and Complementation


    Modified booth recoding
    Modified Booth Recoding

    • Booth Recoding Results From xi and xi-1

    • Radix-4 Multiplier Digits Implies Booth Recoding Based on xi+1, xi and xi-1

    • Similar to Classical Booth Recoding, Modified Booth Recoding Encodes Multipliers into [-2,2]






    ad