Computer Organization and Design: The Hardware/Software Interface, Second Edition David A.Patterson and John L. Hennessy ERRATA FOR SECOND PRINTING* 17 August, 1998 Page Error 1. - Back end sheet, left-hand side, in the "MIPS assembly language" table, in the column "Meaning", 6th row, change "$s1 = $s2 + $s3" to "$s1 = $s2 + 100" 2. xxiii Line 9, delete "the" before "there is much less" 3. 14 Line 4 of the figure caption text, change "Figure 1.19" to "Figure 1.9" 4. 113 Line 4, change "section A.9 on page A-38" to "page A-48" 5. 120 Lines 9-10, change "($18, $8, and $8)" to "(18, 8, and 8)" 6. 126 In the example, line 3, change "to the registers" to "with the registers" 7. 134 In the example, line 4, change "anguage" to "language" 8. 137 In the answer to the example, in the 6th code segment, change "mult" to "mul" 9. 149 In the example, in the 3rd line of code, change "add $t1,$t1,$s5" to "add $t1,$t1,$s6" 10. 149 In the answer to the example, in the "80008" row, 3rd column, change "21" to "22" 11. 160 Figure 3.22, change "7fff ffffhex" to "7fff fffchex" 12. 160 In the 2nd line of the figure caption text, change "7fff ffffhex" to "7fff fffchex" 13. 169 In the elaboration, line 10, change "increment" to "decrement" 14. 175 In the quote at the top of the page, insert "altogether" after "beauty is" 15. 175 In the quote at the top of the page, change "American saying" to "Margaret Wolfe Hungerford, Molly Bawn, 1877" 16. 179 Lines 10-11, replace the sentence beginning "With only eight…" with "The 80386 contains only eight GPRs. This means MIPS programs can use four times as many." 17. 358 Figure 5.17, switch placement of "0" and "1" on all three muxes * All line numbers refer to running text and do not include tables, figures, or code samples Page 1 of 4 18. 379 Line 18, after "and multiplexors are fairly small", insert "compared to a memory unit or ALU" 19. 429 Exercise 5.15, line 3, change "Chapter 4 on page 223" to "Chapter 3 on page 145" 20. 445 Line 8, after "…that uses the sum", insert "($s0)" 21. 497 Line 11, after "…to the ID stage.", insert "Figure 6.51 shows the revised datapath." 22. 498 Line 6, before the sentence beginning "By moving…", insert the following sentence, "Moving the branch test to the ID stage implies copying the forwarding and hazard detection hardware as well, since a branch dependent on a result still in the pipeline must still work properly with this optimization." 23. 498 Line 11, delete the sentence "Figure 6.51 shows the revised datapath." 24. 499 Line 5 of the figure caption text, after the last sentence, insert the following sentence, "The forwarding muxes and paths must also be added to this stage, but are not shown to simplify the figure." 25. 504 In the answer to the example, line 2, change "page 376" to "page 397" 26. 504 In the answer to the example, line 11, change "4.04ns" to "4.04 × 2ns or 8.08ns" 27. 504 In the answer to the example, lines 12-13, change "1.7 times faster than multicycle and" to "about" and insert "multicycle or" before "single-cycle control." 28. 505 Line 4, change "page 385" to "page 410" 29. 534 Exercise 6.21, line 1, change "Exercise 5.15" to "Exercise 5.12" 30. 534 Exercise 6.26, change "sw $3 40($4)" to "sw $3, 40($4)" 31. 577 In the answer to the example, in the formula for Total CPI, insert "10 +" before "2% × 100 = 3.5" 32. A-24 Line 10, insert "of" after "which points to the first word" 33. A-53 In the "Multiply (without overflow)" section, line 1, change "rsrc" to "rsrc1" 34. A-56 In the "Multiply"section, in the 3rd field, change "r" to "rt" 35. A-56 In the "Unsigned multiply" section, in the 3rd field,, change "r" to "rt" 36. A-57 In the "OR" section, line 1, change "rd into register rt" to "rt into register rd" 37. A-58 In the "Shift right arithmetic" section, in the 2nd, 3rd, and 4th fields, change "R" to "r" 38. A-58 In the "Shift right logical variable" section, line 1, change "sa" to "shamt" 39. A-58 In the "Shift right logical variable" section, after the last sentence, insert the following sentence "Note that argument rs is ignored for s11, sra, and srl." Page 2 of 4 40. A-62 In the "Branch on equal" section, change "beq Rs, Rt, label" to "beq rs, rt, label" 41. A-62 In the "Branch on equal" section, in the 2nd and 3rd fields, change "R" to "r" 42. A-62 In the "Branch on greater than equal zero" section, in the 2nd field, change "R" to "r" 43. A-63 In the "Branch on equal zero" section, line 1, change "rsrc1" to "rsrc" 44. A-64 In the "Branch on greater than unsigned" section, change "bgtu rsrc1, rrc2, label" to "bgtu rsrc1, src2, label" 45. A-65 In the "Jump and link" section, line 2, change "register ra (register 31)" to "register $ra" 46. A-65 In the "Jump register" section, in the 1st field, change "0×0" to "0" 47. A-65 In the "Jump register" section, in the 4th field, change "0×8" to "8" 48. A-65 In the "Jump register" section, change the labels for the 3rd and 4th fields from "16" and "5" to "15" and "6" 49. A-66 In the "Load unsigned halfword" section, line 1, change "register tt" to "register rt" 50. A-66 In the "Load word right" section, change all cases of "Rt" to "rt" 51. A-66 In the "Load word right" section, in the 1st field, change "0×23" to "0×26" 52. A-68 In the "Store word coprocessor" section, in the 1st field, change "0×3(1-z)" to "0×32" 53. A-69 In the "Move to hi" section, change "mthi" to "mthi rs" 54. A-69 In the "Move to lo" section, change "mtlo" to "mtlo rs" 55. A-72 In the "Convert double to single" section, in the 4th and 5th fields, change "Fd" to "fd" 56. A-73 In the "Negate double" section, in the 3rd field, change "ft" to "0" 57. A-73 In the "Negate single" section, in the 3rd field, change "ft" to "0" 58. A-75 In the "Break" section, change "break" to "break code" 59. B-8 Line 15, change "Outn" to "Out2n-1" 60. B-10 In the 3rd equation, change the diamonds to centered dots 61. B-26 Figure B.19, 4th row, change "Register n-1" to "Register n-2" 62. B-26 Figure B.19, 5th row, change "Register n" to "Register n-1" 63. B-27 Figure B.20, 4th row, change "Register n-1" to "Register n-2" Page 3 of 4 64. B-27 Figure B.20, 5th row, change "Register n" to "Register n-1" 65. B-32 In the elaboration, line 5, change "the switch is open" to "the switch is closed" 66. B-48 Exercise B.25, line 2, change "page 36" to "page B-36" Page 4 of 4