Upcoming SlideShare
×

Booth Multiplier

24,490 views

Published on

9 Likes
Statistics
Notes
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Be the first to comment

Views
Total views
24,490
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
703
0
Likes
9
Embeds 0
No embeds

No notes for slide

Booth Multiplier

1. 1. Multiplication
2. 2. Multiplier NotationPartial ProductsLogical-AND
4. 4. Shift and Add Examples
5. 5. Programmed Multiplication
6. 6. Programmed Multiplication (cont.)
7. 7. Hardware Shift and Add (right)
8. 8. Hardware Shift and Add
9. 9. Hardware Shift and Add (left)
10. 10. Signed Number Multiplication (positive case)
11. 11. Signed Number Multiplication (negative case)
12. 12. 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: j −1 i +1 j +1 2 +2 j +L+ 2 +2 =2 i −2 i
13. 13. Booth’s Recoding Examplexn xn-1 ... xi xi-1 ... x0 (0) yi=xi-1 - xi yn ... yi ... y0 xi xi-1 Operation Comments yi 0 0 shift only string of zeros 0 1 1 shift only string of ones 0 1 0 subtract shift beg. string of ones -1 0 1 addition shift end string of ones 1EXAMPLE 0011110011(0) 0100010101
14. 14. Booth’s Recoding• Maps Words With Digit Set [0,1] to Those With [-1,1]
15. 15. Sequential Multiplication A 1011 (-510) X 1101 (-310) Y 0111 (recoded)(-1) Add –A 0101Shift 00101(+1) Add +A 1011 11011Shift 111011(-1) Add –A 0101 001111Shift 0001111 (+1510)
16. 16. Booth Multiplier Example
17. 17. 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
18. 18. Sign Extension• Consider 6-bit 2’s Complement Number s=0 Positive Value; s=1 Negative Value• Show Sign Extension Works:s s s s s p4 p3 p2 p1 p0= − s ×29 + s ×28 + s ×27 + s ×26 + s ×25 + p4 ×24 + p3 ×23 + p2 ×2 2 + p1 ×21 + p0 ×20 4= − s ×2 + s ×(2 + 2 + 2 + 2 ) + ∑ pi ×2i 9 8 7 6 5 i =0 4= − s ×2 + s ×(2 − 2 ) + ∑ pi ×2i 9 9 5 i =0 4= − s ×2 + ∑ pi ×2i 5 i =0 • Definition of 2’s Complement
19. 19. 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)
20. 20. 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)
21. 21. Methods for Fast Multiplication• Reduce Number of Partial Products to be Added – Group Multiplier Bits Together – Higher Radix Multiplier• Add the Partial Products Faster