1 / 24

Arithmetic

Arithmetic. By Li Wen Professor Sin-Min Lee SJSU CS 147 Fall 2007. Table of Contents. Floating-point arithmetic Floating-point addition and subtraction Floating-point multiplication and division High-performance arithmetic High-performance addition High-performance multiplication

arnav
Télécharger la présentation

Arithmetic

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Arithmetic By Li Wen Professor Sin-Min Lee SJSU CS 147 Fall 2007

  2. Table of Contents • Floating-point arithmetic • Floating-point addition and subtraction • Floating-point multiplication and division • High-performance arithmetic • High-performance addition • High-performance multiplication • High-performance division • Residue Arithmetic • Questions and comments • Reference

  3. Floating-point Arithmetic • One way to add 101 + 1110 = .101 x 23 + .111 x 24 = .010 x 24 + .111 x 24 = (.010 + .111) x 24 = 1.001 x 24 = .1001 x 25 = .100 x 25 Adjusting the significant • Make the exponent equal to the larger exponent • 2. Lost .001 x 23 precision Lost total .001x23 +.0001x24 =.0011x24 precision • Round to three significant • Lost .0001 x 24

  4. Floating-point Arithmetic (cont.) • The other way to add 101 + 1110 = .101 x 23 + .111 x 24 = .0101 x 24 + .111 x 24 = (.0101 + .111) x 24 = 1.0011 x 24 = .10011 x 25 = .101 x 25 Adjusting the significant Make the exponent equal to the larger exponent • Round to nearest even method • got .00001 x 25 more Got total .00001x25 more

  5. Floating-point Arithmetic (cont.) • Both are incorrect • According to IEEE 754: the final result should be the same as if the maximum precision needed is used before applying the rounding method. • The correct result is .101 x 25 , which is the second example above

  6. Floating-point Arithmetic (cont.) • Using guard (g), round (r) and sticky (s) bit will make the correct result without using too much hardware. • Guard (g): one additional digit to the right • Round (r): one additional digit to the right • Sticky (s): any nonzero digits to the right of the round bit • Round method used: round to nearest even number on ties

  7. Floating-point Arithmetic (cont.) • Example: 101 .101 x 23 .0101 x 24 1110 .111 x 24 + .111 x 24 1.00110x24 grs=100 No 1 after r, so s = 0, stick 100 to .100110 .100110 x 25≈ .101 x 25 Reason of Complication PP 75

  8. Floating-point Arithmetic (cont.) • Addition example .1011 x 27 .1011 x 27 .0111 x 24 +.0000111 x 27 .1011111 x 27 grs=111 result .1100 x 27

  9. Floating-point Arithmetic (cont.) • Subtraction example .1011 x 27 .1011 x 27 .0111 x 24 - .0000111 x 27 .1010001 x 27 grs=001 result .1011 x 27

  10. Floating-point Arithmetic (cont.) • Multiplication example +.101 x 22 x - .110 x 2-3 - . 01111 x 2-1 Result: -.100 x 2-1 2+(-3) = -1

  11. Floating-point Arithmetic (cont.) • Division example + .110 x 25 /+.100 x 24 1.1 x 21 Result: .110 x 22 5 - 4 = 1

  12. High-performance arithmetic • The goal is to improve the speed of arithmetic operation. • High-Performance Addition, Multiplication, Division, and Residue Arithmetic

  13. High-Performance Addition • Method used in addition: carry lookahead adder • Example: si = aibici+aibici+aibici+aibici ci+1= bici+aici+aibi ci+1 = aibi+(ai+bi)ci ci+1 = Gi+Pici Where Gi=aibi and Pi = ai+bi

  14. High-Performance Addition (cont.) • Gi = aibi Gi is called generate, created by AND gate When Gi = 1, a carry is generated at stage i. • Pi = ai+bi Pi is called propagate, created by OR gate When Pi = 1, a carry is propagate at stage i if either ai or bi is a 1.

  15. High-Performance Addition (cont.)

  16. High-Performance Addition (cont.) • Example 3-2 Carry lookahead adder (CLA) Group carry lookahead adder (GCLA) Group Generate (GG) Group Propagate (GP)

  17. High-Performance Multiplication • Two methods are used for multiplication: • Skipping over blocks of 1s • Cross product in parallel multiplier • The Booth Algorithm • No + or – number • No addition, but shifting

  18. High-Performance Multiplication (cont.) • For example, for multiplier 001110 • From 0 to 1, -21; from 1 to 0 +24; 24-21 = (14)10 • Recorded as 0 +1 0 0 -1 0 by Booth Algorithm • Multiplicand 010101 (21)10 • Operation 1: (21)10 x (-21) • Operation 2: (21)10 x (24) • Operation 3: (294)10

  19. High-Performance Multiplication (cont.) • Problem with Booth Algorithm • Saving in the previous example: two operations needed -1 and +1 are recorded, but consider the following example: 010101 (21)10 • Will be recorded as +1 -1 +1 -1 +1 -1 by the same algorithm, where six operation will be needed. • Modified Booth Algorithm (bit-pair recording): group each (+1,-1) as +1, each (-1,+1) as -1, and (+1,+1) (-1,-1) cannot occur. Bit pairs table PP 83

  20. High-Performance Multiplication (cont.) • Method used in Array Multipliers: do each process in parallel. • Solve problem: time reduce from w2 to 2w for the length of w • Parallel pipelined array multiplier

  21. High-Performance Division • Method used: Newton’s iteration • Goal: find where the function f(x) crossed the x axis by starting guess xi then using the error between f(xi) and zero to refine the guess. • Result: until the last two guessed results are close to each other.

  22. Residue Arithmetic • Residue arithmetic can solve addition, subtraction, and multiplication problems. • The first 20 residue number for given moduli 5,7,9,4, PP 87

  23. References • http://en.wikipedia.org/wiki/Adder_(electronics) obtained by 9/23/07 • http://vlsi.uwindsor.ca/presentations/biswas4_seminar_1.pdf obtained by 9/23/07 • Computer Architecture and Organization, Miles Murdocca and Vincent Heuring

More Related