This list represents all of the errors that have thus far been found in the first edition of my book, Hardware and Computer Organization: The Software Perspective. As of March, 2009, students and I have identified over 800 various errors in the text. Considering that the book is only 490 pages long, that's an average of almost two errors per page.
You may ask yourself, "How could such a respected textbook publisher as Elsevier allow a manuscript to reach production with over 800 ( and still counting ) errors in it ?" I certainly asked myself that question. The answer is, "They goofed." This textbook has the unique stature of a book that was published without being edited by a professional editor. It went from my original manuscript, to typesetting, to manufacture without the usual stop at the copy editor's desk. Thus, you have an example of what 5000 copies of a self-published textbook might look like.
In addition to this little hiccup, a small number of the books were improperly bound and started to fall apart. Fortunately, the publisher is replacing the defective books that are returned to them.
I hope that when I actually get around to completing the second edition the book will be engaging, accurate, easy-to-read and typo-free. At least, that's my vision. Finally, I'm very grateful to the students ( and someone in the UK ) who actually took the time to identify these errors and bring them to my attention.
Here's the current list of typos found in the textbook as of March, 2009.
|
||
| Error Description: The URL listed in the last sentence of paragraph 6, http://www.elsevier.com/0750678860, is broken. | ||
| Correction: The correct URL is, http://textbooks.elsevier.com/companions/0750678860 |
|
||
| Error Description: The sentence that begins on line #4 reads, Moore's Law has been remarkably accurate since Gordon Moore first articulated it. | ||
| Correction: This sentence should be deleted as it is redundant. |
|
||
| Error Description: A portion of the first paragraph reads, ...tube is millions of times larger then the transistor on a silicon wafer. It consumes millions of times the power of the transistor and its useful lifetime is hundreds or thousands of times less then a transistor. Although the vacuum tube computers were much faster then the mechanical computers of the preceding generation, they are thousands of times slower then the computers of today. | ||
| Correction: This paragraph should read, ...tube is millions of times larger than the transistor on a silicon wafer. It consumes millions of times the power of the transistor and its useful lifetime is hundreds or thousands of times less than a transistor. Although the vacuum tube computers were much faster than the mechanical computers of the preceding generation, they are thousands of times slower than the computers of today. (Replaced "then" with "than" in 3 places) |
|
||
| Error Description: The sentence beginning on line 5 reads, Today we can take two equivalent views of the machine: The hardware view and the software view. | ||
| Correction: Should read, Today we can take two equivalent views of the machine: the hardware view and the software view. |
|
||
| Error Description: The sentence on line 3 that reads, The APIs provide a structure by which the next level of up in the abstraction level ….. | ||
| Correction: Should read, The APIs provide a structure by which the next level up in the abstraction level ….. |
|
||
| Error Description: The first sentence of paragraph 2 reads, At the next level, the application software communicates with the OS through system API's that once again, abstract the lower levels.... | ||
| Correction: Should read, At the next level, the application software communicates with the OS through system APIs that once again abstract the lower levels..... |
|
||
| Error Description: The second sentence under the heading "Busses" reads, They connect the various functional block... | ||
| Correction: Should read, They connect the various functional blocks... |
|
||
| Error Description: The first sentence of the last paragraph reads, The typical computer has three busses: One for memory addresses, ...... | ||
| Correction: Should read, The typical computer has three busses: one for memory addresses, ...... |
|
||
| Error Description: The last sentence states, Examples of these types of busses are the universal serial bus (USB), the small computer system interface bus (SCSI), Ethernet and Firewire. | ||
| Correction: Should read, Examples of these types of busses are the universal serial bus (USB), the small computer system interface bus (SCSI), Ethernet, and Firewire. |
|
||
| Error Description: The second sentence of paragraph 2 reads, The ratio of the access time of the fastest on-chip memory to the slowest memory, the hard disk, is about 10,000 to one. | ||
| Correction: Should read, The ratio of the access time of the fastest on-chip memory to the slowest memory, the hard disk, is about 10,000 to 1. (Numeral one used for consistency). |
|
||
| Error Description: The sentence of paragraph 2 that reads, ...costly then hard disk storage. | ||
| Correction: Should read, ...costly than hard disk storage. |
|
||
| Error Description: The last line of the second paragraph reads, The fastest memory is also the most expensive so as the..... | ||
| Correction: Should read, The fastest memory is also the most expensive, so as the..... |
|
||
| Error Description: The second sentence under the heading "Static RAM (SRAM)" reads, Each memory cell of an SRAM device is more complicated then the DRAM,.... | ||
| Correction: Should read, Each memory cell of an SRAM device is more complicated than the DRAM,..... |
|
||
| Error Description: The three numbered items under the sub-heading Static RAM (SRAM) begin with lower case letters. | ||
| Correction: Each should be capitalized. |
|
||
| Error Description: The first sentence reads, As long as power is applied to the memory, we only a required to provide…. | ||
| Correction: Should read, As long as power is applied to the memory, we are only required to provide…. |
|
||
| Error Description: The second sentence under bullet item #3 reads, This is quite a bit different then the effort.... | ||
| Correction: Should read, This is quite a bit different than the effort..... |
|
||
| Error Description: The first sentence of the second paragraph reads, With a RAM memory.... | ||
| Correction: Should read, With RAM memory.... |
|
||
| Error Description: The last sentence of the second paragraph reads, Also note that when are discussing SRAM .... | ||
| Correction: Should read, Also note that when we are discussing SRAM .... |
|
||
| Error Description: The first sentence of the under the heading Memory Hierarchy reads, Figure 1.4 shows the memory hierarchy in real terms, where we see can see how the various... | ||
| Correction: Should read, Figure 1.4 shows the memory hierarchy in real terms, where we can see how the various... |
|
||
| Error Description: The first sentence of the 3rd paragraph under the heading "Memory Hierarchy" reads, The secondary cache sits your computer's main memory. | ||
| Correction: Should read, he secondary cache sits on your computer's main memory. |
|
||
| Error Description: The second sentence of the 5th paragraph reads, This memory is considerably slower than on-chip cache memory, but you usually have a much larger main memory then the on-chip memory. | ||
| Correction: Should read, This memory is considerably slower than on-chip cache memory, but you usually have a much larger main memory than the on-chip memory. |
|
||
| Error Description: Last paragraph reads, Now, your operating system, whether its MAC O/S, Linux..... | ||
| Correction: Should read, Now, your operating system, whether it's MAC O/S, Linux..... |
|
||
| Error Description: The sentence in the third paragraph (just below the table) reads, So, how do you know the computer-speak versions, 210, 220, 230, 240 are being used, or the traditional science and engineering meaning is being used? | ||
| Correction: Should read, So, how do you know the computer-speak versions, 210, 220, 230, 240 are being used, or the traditional science and engineering meanings are being used? |
|
||
| Error Description: The last sentence reads, Following are the relevant specifications..... | ||
| Correction: Should read, The following are the relevant specifications..... |
|
||
| Error Description: The second sentence under figure 1.5 reads, Each track is discreet. | ||
| Correction: Should read, Each track is discrete. |
|
||
| Error Description: The heading in the middle of the page reads, Complex Instruction Set Architecture, and RISC, or Reduced Instruction Set Computer | ||
| Correction: Should read, CISC, Complex Instruction Set Computer Architecture, and RISC, Reduced Instruction Set Computer Architecture |
|
||
| Error Description: The first sentence under the heading in the middle of the page reads, Today we have two dominant computer architectures, complex instruction set architecture, or CISC, and reduced instruction set computer, or RISC. | ||
| Correction: Should read, Today we have two dominant computer architectures, complex instruction set computer architecture, or CISC and reduced instruction set computer architecture, or RISC. |
|
||
| Error Description: Line 15 from the top reads, ....Pentium 4 from Intel could easily outperform the DEC Alpha 21264/600 workstation. | ||
| Correction: Should read, ....Pentium 4 from Intel could easily outperform the DEC Alpha 21254/600 workstation. |
|
||
| Error Description: Second paragraph line 3 reads, This is a fair question to ask and the answer...... | ||
| Correction: Should read, This is a fair question to ask, and the answer...... |
|
||
| Error Description: The first sentence reads, By combining this circuit.... | ||
| Correction: Should read, By combining these circuits..... |
|
||
| Error Description: Third paragraph line 1 reads, Thus, within the limitations imposed by the electronic circuitry of the 1940’s, an entire family of computers based upon the idea of inputs and outputs based upon continuous variables. | ||
| Correction: Should read, Thus, within the limitations imposed by the electronic circuitry of the 1940’s, an entire family of computers were based upon the idea of inputs and outputs based upon continuous variables. |
|
||
| Error Description: Fourth paragraph, line 1 reads, Anyway, let’s get back to discussing to number systems. | ||
| Correction: Should read, Anyway, let’s get back to discussing the number systems. |
|
||
| Error Description: The next-to-last sentence reads, How accurate would the voltage on the wire have to be in so that.... | ||
| Correction: Should read, How accurate would the voltage on the wire have to be so that.... |
|
||
| Error Description: The last sentence reads, In figure 1.7, our voltmeter.... | ||
| Correction: Should read, In figure 1.9, our voltmeter.... |
|
||
| Error Description: The last sentence reads, Here the decimal number 0 would be represented by the binary number 00000000000000 and the ... | ||
| Correction: Should read, Here the decimal number 0 would be represented by the binary number 0000000000000000 and the ... ( 16 zeros, not 14 zeros ) |
|
||
| Error Description: First sentence of paragraph 3 reads, Notice that some of the integrated circuit’s (IC’s) pins appear have wires connecting them to another device while others seem to be unconnected. | ||
| Correction: Should read, Notice that some of the integrated circuit’s (IC’s) pins appear to have wires connecting them to another device while others seem to be unconnected. |
|
||
| Error Description: Second sentence of the caption to figure 1.11 reads, wire is actual a copper trace approximately 0.08 mm wide. | ||
| Correction: Should read, wire is actually a copper trace approximately 0.08 mm wide. |
|
||
| Error Description: The third sentence of the third paragraph reads, The eight inner layers also have a thin insulating layer between then to prevent electric short circuits. | ||
| Correction: Should read, The eight inner layers also have a thin insulating layer between them to prevent electric short circuits. |
|
||
| Error Description: The fifth sentence of the second paragraph reads, Without vias, wires couldn’t cross each other on the board without short-circuiting to each other. | ||
| Correction: Should read, Without multiple layers and vias between the layers, wires on a printed circuit board would not be able to cross each other without causing a short-circuit. |
|
||
| Error Description: The sixth sentence of the second paragraph reads, Thus, when you see a green wire crossing a red wire, the two wires are not in physical contact with other, but are passing over each other on different layers of the board. | ||
| Correction: Should read, Thus, when you see a green wire crossing a red wire, the two wires are not in physical contact, but are passing over each other on different layers of the board. |
|
||
| Error Description: The sixth line of the first paragraph reads, Referring to Figure 1.11, it might seem curious that the positive terminal is drawn as a wide line, and the negative terminal is drawn as a narrow line. | ||
| Correction: Should read, Referring to Figure 1.14, it might seem curious that the positive terminal is drawn as a wide line, and the negative terminal is drawn as a narrow line. |
|
||
| Error Description: The second sentence of the last paragraph reads, The first is that we are lead to having..... | ||
| Correction: Should read, The first is that we are led to having..... |
|
||
| Error Description: The first sentence of the fourth paragraph under the heading "Bases" reads, When we write a number in binary, octal decimal or hexadecimal..... | ||
| Correction: Should read, When we write a number in binary, octal, decimal or hexadecimal..... |
|
||
| Error Description: The first sentence of the second paragraph reads, If we can generalize this method of representing number, then it follows that we could use the same method to represent numbers in any other base. | ||
| Correction: Should read, If we can generalize this method of representing numbers, then it follows that we could use the same method to represent numbers in any other base. |
|
||
| Error Description: The sixth sentence of the third paragraph reads, Aside from the fact that these happen to be the two states of our switching circuits (transistors) they are the only numbers available in a base 2 number system. | ||
| Correction: Should read, Aside from the fact that these happen to be the two states of our switching circuits (transistors), they are the only numbers available in a base 2 number system. |
|
||
| Error Description: The first sentence of the fourth paragraph reads, The byte is most notable because we measure storage capacity in in byte-size chunks (sorry). | ||
| Correction: Should read, The byte is most notable because we measure storage capacity in in byte-sized chunks (sorry). |
|
||
| Error Description: The fifth sentence of the fourth paragraph reads, Each column is smaller by a power of 2. | ||
| Correction: Should read, Each column is smaller by a factor of 2. |
|
||
| Error Description: The second sentence reads, It is also noteworthy that the bases of the hexadecimal (Hex) number system, 16 and the octal number system, 8, are also 24 and 23, respectively. | ||
| Correction: Should read, It is also noteworthy that the bases of the hexadecimal (Hex) number system, 16, and the octal number system, 8, are also 24 and 23, respectively. (comma after 16) |
|
||
| Error Description: In the second paragraph the sentence that reads, In figure 1.14, the rightmost group of three binary numbers is 100. | ||
| Correction: Should read, In figure 1.17, the rightmost group of three binary numbers is 100. |
|
||
| Error Description: In the second paragraph the sentence that reads, Thus, 4 + 40 + 128 = 172, our binary number from figure 1.8. | ||
| Correction: Should read, Thus, 4 + 40 + 128 = 172, our binary number from figure 1.16. |
|
||
| Error Description: Line 6 of the second paragraph reads, Also, hexadecimal representation is a far more compact way of representing number, so it has become today’s standard. | ||
| Correction: Should read, Also, hexadecimal representation is a far more compact way of representing numbers, so it has become today’s standard. (numbers made plural) |
|
||
| Error Description: The first sentence of the second paragraph reads, We see that for a decimal number, the columns to the right of the decimal point go in increasing negative powers of ten. | ||
| Correction: Should read, We see that for a decimal number, the columns to the right of the decimal point go in increasing negatively powers of ten. |
|
||
| Error Description: Step 3 reads, Repeat step 1 with the MOD (remainder) from step 1. | ||
| Correction: Should read, Repeat step 1 with the MOD (remainder from step 2. |
|
||
| Error Description: Step 4 reads, Repeat step 2 with the MOD from step 2. | ||
| Correction: Should read, Repeat step 2 with the MOD from step 3. |
|
||
| Error Description: Step 5 reads, The third most significant digit is B. We can stop here because the least significant digit is, by inspection, | ||
| Correction: Should read, The third most significant digit is B. We can stop here because the least significant digit is, by inspection, 6. |
|
||
| Error Description: The second sentence of the third paragraph reads, Let's start with an example that I remember from a nature program about bats that I saw on TV a number of years. | ||
| Correction: Should read, Let's start with an example that I remember from a nature program about bats that I saw on TV a number of years ago. |
|
||
| Error Description: The third sentence of the third paragraph reads, Bats locate insects in absolute blackness by using the echoes from ultrasonic sound wave that they emit. | ||
| Correction: Should read, Bats locate insects in absolute blackness by using the echoes from ultrasonic sound waves that they emit. |
|
||
| Error Description: The the third sentence of the second paragraph reads, Since 210 = 1024, computer "Geekspeakers" decided that it was just too close to 1000 to let it go, so the overloaded the K, M and G symbols .... | ||
| Correction: Should read, Since 210 = 1024, computer "Geekspeakers" decided that it was just too close to 1000 to let it go, so they overloaded the K, M and G symbols .... |
|
||
| Error Description: The first summary bullet reads, The growth of modern digital computer... | ||
| Correction: Should read, The growth of the modern digital computer... |
|
||
| Error Description: Third summary bullet reads, Modern computers are based upon two basic designs, CISC and RISC. | ||
| Correction: Should read, Modern computers are based upon two basic designs: CISC and RISC. |
|
||
| Error Description: The fourth summary bullet reads, .... or base 2, to as the natural system for our computer. | ||
| Correction: Should read, .... or base 2, as the natural system for our computer. |
|
||
| Error Description: In exercise number 8 the individual problems are labeled, (e), (f), (g), (h) | ||
| Correction: Should read, (a), (b), (c), (d) |
|
||
| Error Description: The second sentence of the second paragraph reads, Now TS is not a logical function, it is actually closer... | ||
| Correction: Should read, Now, TS is not a logical function; rather, it is... |
|
||
| Error Description: The second and third sentences of the third paragraph read, “Z” is the electronic symbol for impedance, a measure of the easy by which electrical current can flow in a circuit. So, Hi-Z, seems to imply a lot of resistance to current flow. | ||
| Correction: They should read, “Z” is the electronic symbol for impedance, a measure of the ease by which electrical current can flow in a circuit. So Hi-Z seems to imply a lot of resistance to current flow. |
|
||
| Error Description: The first sentence of paragraph 4 reads, Having said that we could build a computer from the ground up using the four fundamental logic...... | ||
| Correction: Should read, Having said that, we could build a computer from the ground up using the four fundamental logic...... |
|
||
| Error Description: The last sentence of paragraph 5 reads, Anyway, Figure 2.1 | ||
| Correction: Should read, Figure 2.1 illustrates the admittedly weak analogy between DNA and computer hardware primitives. |
|
||
| Error Description: The last sentence of paragraph 2 reads, The vertical axis represents the logical value a point in... | ||
| Correction: Should read, The vertical axis represents the logical value at a point in... |
|
||
| Error Description: The third sentence of paragraph 4 reads, Since typical digital signals change much more rapidly than we could see on a strip chart recorder, we need specialized equipment, such as oscilloscopes and logic analyzers to record the waveforms and display them for us in a way that we can comprehend. | ||
| Correction: Should read, Since typical digital signals change much more rapidly than we could see on a strip chart recorder, we need specialized equipment, such as oscilloscopes and logic analyzers, to record the waveforms and display them for us in a way that we can comprehend. |
|
||
| Error Description: The first sentence of paragraph 1 reads, Also notice that the vertical line that represents the transition from the logic level 0 to the logic level 1. | ||
| Correction: Should read, Also notice the vertical line representing the transition from the logic level 0 to the logic level 1. |
|
||
| Error Description: The second sentence of the second paragraph from the bottom of the page reads, As well see later on..... | ||
| Correction: Should read, As we'll see later on..... |
|
||
| Error Description: The second sentence of paragraph 1 reads, In figure 2.4 we use the bar over the variable A to indicate that the output B is the negation, or opposite of the input A. | ||
| Correction: Should read, In figure 2.4 we use the bar over the variable A to indicate that the output B is the negation, or opposite of, the input A. |
|
||
| Error Description: The fifth sentence of the paragraph five reads, The only way to turn it off is to open both switches and interrupt the flow of current to the bulb. | ||
| Correction: Should read, The only way to turn it off is to open both switches, thereby interrupting the flow of current to the bulb. |
|
||
| Error Description: The sixth sentence of paragraph 5 reads, Finally, there is a small dot in Figure 2.5 that indicate... | ||
| Correction: Should read, Finally, there is a small dot in Figure 2.5 that indicates... |
|
||
| Error Description: The seventh sentence of paragraph 5 reads, As we've discussed earlier, since our schematic diagram is only two dimensional... | ||
| Correction: Should read, As we've discussed earlier, since our schematic diagram is only two-dimensional... |
|
||
| Error Description: The first sentence of paragraph 3 reads, The TS gate has a third input, labeled "~Output Enable". | ||
| Correction: Should read, The TS gate has a second input, labeled "~Output Enable".. |
|
||
| Error Description: The caption to figure 2.6 reads, The output of the gate follows the input along as the Output Enable.... | ||
| Correction: Should read, The output of the gate follows the input as long as the Output Enable.... |
|
||
| Error Description: The sixth sentence of paragraph 3 reads, For convenience, we were going make the more positive voltage a 1, or TRUE, and the less positive voltage a 0, or FALSE. | ||
| Correction: Should read, For convenience, we were going to make the more positive voltage a 1, or TRUE, and the less positive voltage a 0, or FALSE. |
|
||
| Error Description: The sentence that is 6 lines down from the top of the page reads, So, in figure 2.3 we have the unique situation that the TS buffer acts behaves like a closed switch when ~OE is low, and it acts like an open switch when ~OE is high. | ||
| Correction: Should read, So, in figure 2.6 we have the unique situation that the TS buffer acts like a closed switch when ~OE is low, and it acts like an open switch when ~OE is high. |
|
||
| Error Description: First paragraph, third line from bottom reads, In other words, Hi-Z is not a 1 or 0 logic state, it is a unique state of it own, and has less to do with digital logic then with the electronic realities of building computers. | ||
| Correction: Should read, In other words, Hi-Z is not a 1 or 0 logic state, it is a unique state of its own, and has less to do with digital logic than with the electronic realities of building computers. |
|
||
| Error Description: The second sentence of paragraph 3 reads, Just like the building block life in DNA... | ||
| Correction: Should read, Just like the building blocks of life in DNA.... |
|
||
| Error Description: The last sentence of paragraph 3 reads, It is only from a logical perspective do we draw a distinction between them. | ||
| Correction: Should read, It is only from a logical perspective that we draw a distinction between them. |
|
||
| Error Description: The next-to-last sentence of the second paragraph reads, Thus, each of the AND gates has as its input one of the variables A or B, and the complement, or negation of the other variable… | ||
| Correction: Should read, Thus, each of the AND gates has as its input one of the variables A or B, and the complement (negation), or opposite sense of the other variable… |
|
||
| Error Description: The fourth line of the first reads, Without it, we would not be able to discern wires that are connect to each other from wires that are simply crossing over each other. | ||
| Correction: Should read, Without it, we would not be able to discern wires that are connected to each other from wires that are simply crossing over each other. |
|
||
|
Error Description: The fourth line of the first Code Example reads, cout << “The bitwise Anding of 0x55 and 0xAA = ,” outC << endl; |
||
| Correction: Should read, cout << “The bitwise Anding of 0x55 and 0xAA = ,” << outC << endl; |
|
||
| Error Description: The fifth sentence of the second paragraph reads, Let’s let the Electrical Engineers have their mysteries, after all, you’ve seen what a mess they make when they to write software. | ||
| Correction: Should read, Let’s let the Electrical Engineers have their mysteries; after all, you’ve seen what a mess they make when they try to write software. |
|
||
| Error Description: The third sentence of paragraph 3 reads, Image that we have two mechanical switches connected in series (one after the other) between our logic level 1 and logic level 0. | ||
| Correction: Should read, Imagine that we have two mechanical switches connected in series (one after the other) between our logic level 1 and logic level 0. |
|
||
| Error Description: The last sentence of paragraph 3 reads, Although my experiment was a bit more spectacular, and learning experience then Figure 2.12 might provide, conceptually we have the same result. | ||
| Correction: Should read, The last sentence of paragraph 3 reads, Although my experiment was a bit more spectacular, and perhaps more of a learning experience then Figure 2.12 might provide, conceptually, we have the same result. |
|
||
| Error Description: The first sentence of paragraph 5 reads, Hopefully, one important fact should be coming clear now. | ||
| Correction: Should read, Hopefully, one important fact should now be clear to you. |
|
||
| Error Description: The fourth sentence of paragraph 3 reads, This terminal is sometimes brought out as separate control, but in our circuit configuration ... | ||
| Correction: Should read, This terminal is sometimes brought out as a separate control, but in our circuit configuration ... |
|
||
| Error Description: The third sentence from the end of paragraph 1 reads, ....as the voltage on the gate becomes more negative then the voltage of the source. | ||
| Correction: Should read, ....as the voltage on the gate becomes more negative than the voltage of the source. |
|
||
| Error Description: In the fourth paragraph Vgs appears 4 times. | ||
| Correction: For consistency, it should appear as, VGS (GS is capitalized and subscripted). |
|
||
| Error Description: The first sentence at the top of the page reads, Well how bad is it. | ||
| Correction: Should read, Well, how bad is it? |
|
||
| Error Description: The fifth line of the last paragraph reads,...C=1) would product a 1 on a gate's output. | ||
| Correction: Should read, ,...C=1) would produce a 1 on a gate's output. |
|
||
| Error Description: The second sentence of the first paragraph reads, While we could certainly design a circuit with, for example 5 inputs, A through E and 1 output, f, that has the property that ... | ||
| Correction: Should read, While we could certainly design a circuit with 5 inputs, A through E, and 1 output, f, that has the property that ... |
|
||
| Error Description: The caption to Figure 2.20 reads, A digital system being designed. Each of the output variables X, Y, and Z is described in a separate truth table in terms of the combinations of the all possible states of the input variables. | ||
| Correction: Should read, A digital system being designed. Each of the output variables X, Y, and Z is described in a separate truth table in terms of the combinations of all the possible states of the input variables. |
|
||
| Error Description: The first summary bullet reads, Learned the basic logic gates, AND, OR and NOT and saw how more complex gates, such as NAND, NOR and XOR could be derived from them, and | ||
| Correction: Should read, Learned the basic logic gates, AND, OR and NOT and saw how more complex gates, such as NAND, NOR and XOR could be derived from them. |
|
||
| Error Description: The second sentence of problem #8 reads, ... with (a) an OR gate and (b) and XOR gate. | ||
| Correction: Should read, ... with (a) an OR gate and (b) an XOR gate. |
|
||
| Error Description: The fourth bullet under "Objectives" bullet reads, Describe the physical attribute of logic signals, such as rise time, fall time and pulse width; | ||
| Correction: Should read, Describe the physical attributes of logic signals, such as rise time, fall time and pulse width; |
|
||
Error Description: The seventh and eighth bullets under "Objectives"
reads,
|
||
| Correction: Should be eliminated. These topics are not covered until chapter 4. |
|
||
| Error Description: The second sentence of the first paragraph reads, We’ve may have been given the erroneous impression that logic sprang forth from Silicon Valley with the invention of the transistor switch. | ||
| Correction: Should read, We may have been given the erroneous impression that logic sprang forth from Silicon Valley with the invention of the transistor switch. |
|
||
| Error Description: The first sentence of the second paragraph reads, We generally trace the birth of modern logical analysis to the Greek philosopher, Aristotle, who was born in 394 B.C., is generally acknowledged to be the father of modern logical thought. | ||
| Correction: Should read, We generally trace the birth of modern logical analysis to the Greek philosopher, Aristotle, who was born in 394 B.C. |
|
||
| Error Description: The third sentence of paragraph 2 reads, However, if we were to look at the mathematics of the gates we’ve just been introduced to, we may find it difficult to make the leap to Aristolean Logic. | ||
| Correction: Should read, However, if we were to look at the mathematics of the gates we’ve just been introduced to, we may find it difficult to make the leap to Aristotelian Logic. |
|
||
| Error Description: The last sentence on the page reads, Aristotle proposes that a deductive argument has "things supposed," or a premise of the argument, and what "results of necessity" is the conclusion. | ||
| Correction: Should read, Aristotle proposes that a deductive argument has "things supposed," or a premise of the argument, and what "results of necessity", is the conclusion. |
|
||
| Error Description: The first sentence of paragraph 2 reads, Laws of Thought, on Which are founded... | ||
| Correction: Should read, Laws of Thought, on which are founded... |
|
||
| Error Description: The first sentence of the third paragraph from the bottom reads, Boolean algebra provides us with the toolset that we need to design complex logic systems with the certainty that the circuit will perform exactly as we intended it that it should. | ||
| Correction: Should read, Boolean algebra provides us with the toolset that we need to design complex logic systems with the certainty that the circuits will perform exactly as we intended. |
|
||
| Error Description: The third sentence of the second paragraph up from the bottom of the page reads, This is convenient, because we need for our computer to be able to operate on a numbers.... | ||
| Correction: Should read, This is convenient, because we need our computer to be able to operate on a numbers.... |
|
||
| Error Description: The fourth sentence of the second paragraph up from the bottom of the page reads, The other component of this is the operation of the hardware as digital system. | ||
| Correction: Should read, The other component of this is the operation of the hardware as a digital system. |
|
||
| Error Description: The first sentence at the top of the page reads, ... simple way to represent a NOT variable, that is a variable... | ||
| Correction: Should read, ... simple way to represent a NOT variable, that is, a variable... |
|
||
| Error Description: The fifth sentence of paragraph four reads, You can verify this for yourself by reviewing the truth tables for the AND gate and OR gate in Lesson 1. | ||
| Correction: Should read, You can verify this for yourself by reviewing the truth tables for the AND gate and OR gate in Chapter 2. |
|
||
| Error Description: The last sentence of paragraph 2 reads, ... it simply means that the signal become active in the low state. | ||
| Correction: Should read, ... it simply means that the signal becomes active in the low state. |
|
||
| Error Description: The first sentence of the second paragraph up from the bottom of the page reads, Figure 3.3, is an example of some arbitrary truth table design. | ||
| Correction: Should read, Figure 3.3 is an example of some arbitrary truth table design. |
|
||
| Error Description: The last sentence on page 53 reads, If this exercise was part of a real digital design problem, you, the designer, would consider each row of the truth table and then decide what should be the response of each of the dependent outputs do in response to that particular combination of inputs. | ||
| Correction: Should read, If this exercise was part of a real digital design problem, you, the designer, would consider each row of the truth table and then decide what should be the response of each of the dependent outputs in response to that particular combination of inputs. |
|
||
| Error Description: The continuation of the sentence under the equation for the output variable F reads, ...tells us that F will be TRUE under two different set of input conditions. | ||
| Correction: Should read, ...tells us that F will be TRUE under two different sets of input conditions. |
|
||
| Error Description: The last sentence of the third paragraph up from the bottom reads, As the engineers responsible for this digital design, these are the two particular set of input conditions that can cause output F to be TRUE. | ||
| Correction: Should read, As the engineers responsible for this digital design, these are the two particular sets of input conditions that can cause output F to be TRUE. |
|
||
| Error Description: The first sentence of the second paragraph up from the bottom reads, We call this form of the logical equation the sum or products form, or minterm form. | ||
| Correction: Should read, We call this form of the logical equation the sum of products form, or minterm form. |
|
||
| Error Description: The first sentence on the page reads, Referring to figure 3.3, we see that that output..... | ||
| Correction: Should read, Referring to figure 3.3, we see that the output..... |
|
||
| Error Description: The second sentence of the third paragraph reads, For maps of 5 or more variables, the correct procedure is to use a 3-dimension map comprised of planes of multiple 4 variable maps. | ||
| Correction: Should read, For maps of 5 or more variables, the correct procedure is to use a 3-dimensional map comprised of planes of multiple 4 variable maps. |
|
||
Error Description: The sentence under step 1. reads,
The number of cells in the K-map equals the number of possible combinations
of input variable states. For example,
|
||
| Correction: Should read, The number of cells in the K-map equals the number of possible combinations of input variable states. For example,
|
|
||
| Error Description: The sentence just above Figure 3.4, Thus, the number of cells = 2(NUMBER OF INPUT VARIABLES) | ||
| Correction: Should be indented to be aligned with the other text of step 1. |
|
||
| Error Description: The first sentence reads, The method used to identify the columns may look strange to you but if you look carefully you'll see that as you move across the top of the map, the changes to the variables A and B are such that: | ||
| Correction: Should read, The method used to identify the columns may look strange to you, but if you look carefully you'll see that as you move across the top of the map, the changes to the variables A and B are such that: |
|
||
| Error Description: The third sentence reads, It is easy to have the correct set of variables listed, but to make a mistake in getting the order correctly listed, which will thus yield erroneous results. | ||
| Correction: Should read, It is easy to have the correct combinations of variables listed, but to err in writing down the correct order of those combinations across the top or down the left side of the K-map. If the row or column headings are not in the correct order then the map will not provide the correct simplification of the logical equations. |
|
||
| Error Description: Paragraph 3, Line 1 reads, Another point that should be noted is that the K-map yields the most simple form of the equation when the number of variables is 4 or less. | ||
| Correction: Another point that should be noted is that the K-map yields the simplest form of the equation when the number of variables is 4 or less. |
|
||
| Error Description: The first sentence reads, 2. Construct a K-map so that as you move across the columns or down the column, only one variable changes. | ||
| Correction: Should read, 2. Construct a K-map so that as you move across the row or down the column, only one variable changes. |
|
||
| Error Description: The fourth sentence of the second paragraph from the bottom reads, In figure 2.5, there are four rows that have a 1 in the “x” column. | ||
| Correction: Should read, In figure 3.5, there are four rows that have a 1 in the “x” column. |
|
||
| Error Description: In the third of the four bullet points near the bottom of the page it reads, Medium gray loop around the term A*/B*C, and the term A*/B*/C | ||
| Correction: Should read, Medium gray loop around the term A*/B*/C, and the term A*B*/C |
|
||
| Error Step #1 of the table reads, x = ~A * ~B *~C + A * ~B *~C + A * B *~C + A * ~B *~C | ||
| Correction: Should read, x = ~A * ~B *~C + A * ~B *~C + A * B *~C + A * ~B * C |
|
||
| Error The first sentence at the top of the page reads, ...another loop because the both terms are already in other loops. | ||
| Correction: Should read, ...another loop because both terms are already in other loops. |
|
||
| Error The first sentence reads, We can't make another loop because the both terms are already in other loops. | ||
| Correction: Should read, We can't make another loop because both terms are already in other loops. |
|
||
| Error The third sentence of paragraph reads, Again, this is a made-up example, as far as I know... | ||
| Correction: Should read, Again, this is a made-up example; as far as I know... |
|
||
| Error The second sentence of paragraph 2 reads, The truth table is an interesting format because it looks very close in form to how a memory is formed. | ||
| Correction: Should read, The truth table is an interesting format because it looks very close in form to how memory is organized. |
|
||
| Error The second sentence of the caption to Figure 3.8 reads, The independent variables. A through D provides the address to memory. | ||
| Correction: Should read, The independent variables. A through D, provide the address to memory. |
|
||
| Error The last sentence of paragraph #3 reads, We call a pulse that goes from low to high and back to low a positive pulse a pulse that goes from high to low and back to high a negative pulse. | ||
| Correction: Should read, We call a pulse that goes from low to high and back to low a positive pulse; a pulse that goes from high to low and back to high a negative pulse. |
|
||
| Error Description: The second sentence of paragraph 4 reads, In this example, the width of the pulse, or pulse width, is a measure of the amount of time that the pulse exists, might be something like 50 nanoseconds (often abbreviated as 50 ns), or 50 billionths of a second. | ||
| Correction: Should read, In this example, the width of the pulse, or pulse width, measures the amount of time that the pulse exists. Since we don't have a timescale (x-axis) for this pulse, let's assume that the pulse width is approximately 50 nanoseconds (often abbreviated as 50 ns), or 50 billionths of a second, wide. |
|
||
| Error Description: The third sentence of paragraph 4 reads, The pulse width is measure at a point mid way between the base level of the pulse and its nominal height. | ||
| Correction: Should read, The pulse width is measured at a point mid way between the base level of the pulse and its nominal height. |
|
||
| Error Description: The second sentence at the top of the page reads, Real people, use analytical equipment... | ||
| Correction: Should read, Real people use analytical equipment... |
|
||
| Error Description: Paragraph 1, Line 3 reads, We’ll look at some real oscilloscope waveforms later in the chapter. | ||
| Correction: The entire sentence should be removed. It is superfluous. |
|
||
| Error Description: The last sentence of paragraph 1 reads, Technically, for reasons that we don't need to consider, the rise and fall times are measure at...... | ||
| Correction: Should read, Technically, for reasons that we don't need to consider, the rise and fall times are measured at...... |
|
||
| Error Description: The first words at the top of the page reads, .....this measurement we..... | ||
| Correction: Should read, .....this measurement, we..... |
|
||
| Error Description: The last line of paragraph #1 reads, ... the riding edge of the output is 12.60 nanoseconds. | ||
| Correction: Should read, ....... the rising edge of the output is 12.60 nanoseconds. |
|
||
| Error Description: The last sentence of the caption to figure 3.14 reads, The display shows that the output goes high 10.2 nanoseconds after the input goes low. | ||
| Correction: Should read, The display shows that the output goes high 12.60 nanoseconds after the input goes low. |
|
||
| Error Description: The three lines at the top of the page read, .....uses a crystal that oscillates at approximately 32K Hz. We use the term Hertz, to represent cycles per second, or the oscillating frequency of a clock stream. The symbol is Hz. The unit, Hertz, was named in honor of the German physicist, Heinrich Rudolf Hertz (1857-1894). | ||
| Correction: Should read (Note the removal of the italics and the comma), .....uses a crystal that oscillates at approximately 32K Hz. We use the term Hertz to represent cycles per second, or the oscillating frequency of a clock stream. The symbol is Hz. The unit, Hertz, was named in honor of the German physicist, Heinrich Rudolf Hertz (1857-1894). |
|
||
| Error Description: The fourth sentence of paragraph 4 reads, The point was to show you that in real systems then pendulum provides us with an accurate synchronization mechanism that we can use to drive the clock's internal timekeeping mechanism. | ||
| Correction: Should read, The point was to show you that in real systems the pendulum provides us with an accurate synchronization mechanism that we can use to drive the clock's internal timekeeping mechanism. |
|
||
| Error Description: The last sentence of paragraph #2 reads, As long as the signal is less that than the zero threshold..... | ||
| Correction: Should read, As long as the signal is less than the zero threshold..... |
|
||
| Error Description: Summary bullet #4 reads, Digital systems are driven by clocks which are continuous streams of pulses and pulses may be describes in terms of their width, height, rise time and fall time. | ||
| Correction: Should read, Digital systems are driven by clocks which are a continuous streams of pulses and these pulses may be describes in terms of their width, height, rise time and fall time. |
|
||
| Error Description: Summary bullet #5 reads, Frequency and period have an inverse relationship to on another. | ||
| Correction: Should read, Frequency and period have an inverse relationship to one another. |
|
||
| Error Description: The third sentence of problem #8 reads, The truth table is also shown. | ||
| Correction: Sentence should be removed, it is redundant. |
|
||
| Error Description: The first "Objectives" bullet reads, Learn how logic gates are connect to create the flip-flop. | ||
| Correction: Should read, Learn how logic gates are connected to create the flip-flop. |
|
||
| Error Description: The next-to-last sentence of paragraph #1 reads, .....so that everything with the microprocessor can progress through a sequence of well-defined states. | ||
| Correction: Should read, .....so that everything within the microprocessor can progress through a sequence of well-defined states. |
|
||
| Error Description: The fifth sentence of paragraph 2 reads, Feedback is the screeching you hear when you place a microphone to close to...... | ||
| Correction: Should read, Feedback is the screeching you hear when you place a microphone too close to...... |
|
||
| Error Description: The last sentence on the page reads, According to figure 4.1, inputs A and B and output Q are all at logic level’1’ and output ~Q is at logic ‘0’. | ||
| Correction: Should read, According to figure 4.1, inputs A and B and output Q are all at logic level '1’ and output ~Q is at logic ‘0’. |
|
||
| Error Description: The last sentence of paragraph 1 reads, Notice the even though.... | ||
| Correction: Should read, Notice that even though.... |
|
||
| Error Description: The second sentence of paragraph 2 reads, ....two outputs is not only dependent upon the state of the 2-input variables, A and B,.... | ||
| Correction: Should read, ....two outputs is not only dependent upon the state of the two input variables, A and B,.... |
|
||
| Error Description: The second sentence on the page reads, It is called the JK flip-flop. | ||
| Correction: Should read, It is called the JK flip-flop ( or "JK FF" for short ). |
|
||
| Error Description: The third sentence of paragraph 4 reads, The circuit no exhibits one of two possible.... | ||
| Correction: Should read, The circuit now exhibits one of two possible.... |
|
||
| Error Description: The fifth sentence of paragraph 2 reads, The NOT gate and the slave portion of the circuit together creates the circuit.... | ||
| Correction: Should read, The NOT gate and the slave portion of the circuit together create the circuit.... |
|
||
| Error Description: In figure 4.6 the heading of first column of the first truth table is labeled D. | ||
| Correction: The heading of that table should be labeled J. |
|
||
| Error Description: The third sentence of paragraph 2 reads, An alternate was of describing this.... | ||
| Correction: Should read, An alternate way of describing this.... |
|
||
| Error Description: The first sentence of paragraph 3 reads, Before we turn our attention to the D flip-flop ( D-FF, for short).... | ||
| Correction: Should read, Before we turn our attention to the D flip-flop ( D-FF or D-flop, for short).... |
|
||
| Error Description: The third sentence from the bottom of of paragraph 3 reads, If you examine the data book of any of the digital logic integrated circuit manufactures, you'll see..... | ||
| Correction: Should read, If you examine the data books of any of the digital logic integrated circuit manufacturers, you'll see..... |
|
||
| Error Description: The first sentence of the next to last paragraph on the page reads, The R and S inputs use bubble notation on the inputs to indicate that they are active, or asserted, LOW. We can see this in the timing diagram in figure 2.17. | ||
| Correction: Should read, The R and S inputs use bubble notation on the inputs to indicate that they are active, or asserted, LOW. We can see this in the timing diagram in figure 4.7. |
|
||
| Error Description: In figure 4.7 the signals names on the Y axis read from top to bottom "S", "R", "D", "CLK", "~Q", "Q". | ||
| Correction: Should read, "S", "R", "D", "CLK", "Q", "~Q". (The NOT symbol is in the wrong place.) |
|
||
| Error Description: The last sentence of paragraph 3 reads, In the JK FF the toggle function was implemented be returning the Q output to the K input and the ~Q output to the J input, respectively. | ||
| Correction: Should read, In the JK FF the toggle function was implemented by returning the Q output.... |
|
||
| Error Description: The last sentence of paragraph 4 reads, Each time we have a clock pulse it takes on flips the outputs,...... | ||
| Correction: Should read, Each time we have a clock pulse it flips the outputs,...... |
|
||
| Error Description: The fourth sentence of paragraph 2 reads, Tying an unused input to either logic level 1 or 0 is quite common in digital design and insures us that the circuit.... | ||
| Correction: Should read, Tying an unused input to either logic level 1 or 0 is quite common in digital design and assures us that the circuit.... |
|
||
| Error Description: The caption to Figure 4.13 was incorrectly combined with the body text and there are typos in the text. | ||
| Correction:
1- The Caption should read, Figure 4.13: Magnified view of the clock input and Q0 output part of Figure 4.12. 2- The last paragraph on the page should not be part of the caption to Figure 4.13. It should read, Assume that we’ve just asserted RESET and outputs Q0 through Q3 are all 0. There are no clock pulses coming in at the CLK input on the left. The circuit is quiet and life is good. Suddenly, there’s a knock at the door. Oops, wrong book. Suddenly, a single clock pulse is received at the CLK input. Since the ~Q output = 1, the D input is 1, so after the clock pulse, the Q output of the leftmost D-flop goes to 1. The ~Q output goes from 1 to 0. That’s a falling edge, so there is no change at the second D-flop. |
|
||
| Error Description: The first sentence of paragraph 1 reads, However, the D flip-flop requires rising edge to cause.... | ||
| Correction: Should read, However, the D flip-flop requires a rising edge to cause.... |
|
||
| Error Description: The next-to-last sentence of paragraph #3 reads, ...and the values of Q0 through Q3 as the three output columns. | ||
| Correction: Should read, ...and the values of Q0 through Q3 as the four output columns. |
|
||
| Error Description: The first sentence of paragraph 1 reads, However, the D flip-flop requires rising edge to cause.... | ||
| Correction: Should read, However, the D flip-flop requires a rising edge to cause.... |
|
||
| Error Description: The fourth sentence of paragraph 3 reads, Other techniques involve combining the clock with the data and transmitted them together along a single wire. | ||
| Correction: Should read, Other techniques involve combining the clock with the data and transmitting them together along a single wire. |
|
||
| Error Description: The last sentence of paragraph 3 reads, Thus, the 4 clock pulses each correspond to the receipt of one of the data bits. | ||
| Correction: Should read, Thus, each of the 4 clock pulses corresponds to the receipt of one of the data bits. |
|
||
| Error Description: The second and third sentences of the last paragraph reads, Let's assume that in this example we are transmitting both the data and the clock along 2 separate wires, just as we've shown in figure 2.24. remember that figure 2.24 is actually a graph in time, so that if..... | ||
| Correction: Should read, Let's assume that in this example we are transmitting both the data and the clock along 2 separate wires, just as we've shown in figure 4.15. remember that figure 4.15 is actually a graph in time, so that if..... |
|
||
| Error Description: The first sentence of the last paragraph reads, Figure 4.16 shows the progression of the 4 data bits through the D-flops. | ||
| Correction: Should read, Figure 4.16 shows the progression of the 4 data bits through the D flip-flops. |
|
||
| Error Description: The second sentence of paragraph 2 reads, By that we were really saying that in order to know what the new values of the Q and ~Q outputs will be, we had to know what the current value (or state) of the inputs and outputs are just prior to the arrival of the appropriate clock edge. | ||
| Correction: Should read, By that we were really saying that in order to know what the new values of the Q and ~Q outputs will be, we had to know what the current value (or state) of the inputs and outputs were just prior to the arrival of the appropriate clock edge. |
|
||
| Error Description: The first sentence of paragraph 3 reads, The state machine represents all the possible combinations that the outputs and inputs of a digital system may exist in, as well as the paths that the system may take as it transitions through the different states of the state machine. | ||
| Correction: Should read, The states of a state machine represent all of the possible combinations that the outputs and inputs of a digital system can exist in; as well as the paths that the system may take as it transitions through the different states of the machine. |
|
||
| Error Description: Figure 4.18 Description reads: The circuit of Figure 2.26 is redrawn to..... | ||
| Correction: Should read, The circuit of Figure 4.17 is redrawn to..... |
|
||
| Error Description: The first sentence of paragraph 1 reads, The truth table view (the right side of figure 4.19) provides the same information, but is less intuitive then the state transition diagram. | ||
| Correction: Should read, The truth table view (the right side of figure 4.19) provides the same information, but is less intuitive than the state transition diagram. |
|
||
| Error Description: The last sentence of paragraph 2 reads, It is a general rule that since 0000 is a valid address that the highest address number (all binary digits equal 1) will be one less than the number of unique address. | ||
| Correction: Should read, It is a general rule that since 0000 is a valid address that the highest address number (all binary digits equal 1) will be one less than the number of unique addresses. |
|
||
| Error Description: The second sentence of paragraph 5 reads, Since the memory is really an exact mapping of truth table we could use the methods that we learned earlier in this chapter. | ||
| Correction: Should read, Since the memory is really an exact mapping of the truth table we could use the methods that we learned earlier in this chapter. |
|
||
| Error Description: The third sentence of paragraph 5 reads, That is, build a Karnaugh Map for each output variable and developed the simplified minterm equations for each. | ||
| Correction: Should read, That is, build a Karnaugh Map for each output variable and develop the simplified minterm equations for each. |
|
||
| Error Description: The first sentence of paragraph 2 reads, In figure 4.23, A0 through A3 are the addresses of the memory cells and D1 through D3 are the corresponding 4-bits of data stored in each cell. | ||
| Correction: Should read, In figure 4.23, A0 through A3 are the addresses of the memory cells and D0 through D3 are the corresponding 4-bits of data stored in each cell. |
|
||
| Error Description: The last sentence of paragraph 3 reads, This is a classical a race condition and generally it’s a bad thing to have happen. | ||
| Correction: Should read, This is a classical race condition and generally it’s a bad thing to have happen. |
|
||
| Error Description: In figure 4.24, the d flip-flop is labeled, D FF | ||
| Correction: Should be labeled, D-FF |
|
||
| Error Description: The second sentence of paragraph 5 reads, There is no uncontrolled signals changing state and all transitions in the system are limited to when the rising edge of the clock updates the D-FF. | ||
| Correction: Should read, There are no uncontrolled signals changing state and all transitions in the system are limited to when the rising edge of the clock updates the D-FF. |
|
||
| Error Description: The second sentence of the first summary bullet reads, The state of the outputs depends not only on the state of the inputs but on a clock pulse and the present state of the outputs, | ||
| Correction: Should read, That is, the state of the outputs depends not only on the state of the inputs, but on a clock pulse and the state of the outputs just prior to the arrival of the clock pulse, |
|
||
| Error Description: The first sentence below the opening bullet points reads, The topic of state machines in computer systems deserves much more discussion then we can give it in this book. | ||
| Correction: Should read, The topic of state machines in computer systems deserves much more discussion than we can give it in this book. |
|
||
| Error Description: The last sentence of paragraph #2 reads, If you don’t have such a card, your game will still play, but it will be slower and less realistic then the game played with the hot card. | ||
| Correction: Should read, If you don’t have such a card, your game will still play, but it will be slower and less realistic than the game played with the hot card. |
|
||
| Error Description: The first full sentence at the top of the page reads, The printer then simply transferred the raster data coming in into the laser bits on the screen. | ||
| Correction: Should read, The printer then simply transferred the raster data coming in into the laser bits on the photosensitive drum. |
|
||
| Error Description: The first sentence of paragraph #2 reads, In general, an algorithm solved in hardware is much faster, sometimes many orders of magnitude faster, then the same algorithm solved in software. | ||
| Correction: Should read, In general, an algorithm solved in hardware is much faster, sometimes many orders of magnitude faster, than the same algorithm solved in software. |
|
||
| Error Description: The first sentence of paragraph #4 reads, What we are leading to is that there is a class of digital systems behaviors that a fundamentally sequential in their behavior. | ||
| Correction: Should read, What we are leading up to is that there is a class of digital systems behaviors that are fundamentally sequential in their behavior. |
|
||
| Error Description: The first sentence paragraph #5 reads, How the computer is led through this sequence of steps is operation of.... | ||
| Correction: Should read, How the computer is led through this sequence of steps constitutes the operation of.... |
|
||
Error Description: The first set of bulleted items reads,
|
||
Correction: Should read,
|
|
||
| Error Description: The first sentence of paragraph #2 reads, We can take the principles of FSM and... | ||
| Correction: Should read, We can take the principles of FSMs and... |
|
||
| Error Description: The second sentence of paragraph #4 reads, The dark gray arrows show the state transitions that will occur when the input variable, X = 1. | ||
| Correction: Should read, The dark gray arrows show the state transitions that will occur when the input variable X = 1. |
|
||
| Error Description: The second sentence of paragraph #5 reads, The output of the circuit are... | ||
| Correction: Should read, The outputs of the circuit are.... |
|
||
| Error Description: Referring to figure 5.2, the signal labeled "Clock" is not connect to two of the flip-flops. | ||
| Correction: The figure needs to be redrawn with the clock signal connect to all three flip-flops as shown for flip-flop A. |
|
||
| Error Description: The fourth sentence of paragraph #2 reads, According to figure 5.1 when the system is in its initial state, just after ~RESET, it can go to either state 101, if X = 1, or 011 if X = 0. | ||
| Correction: Should read, According to figure 5.1 when the system is in its initial state, just after ~RESET, it can go to either state 101 if X = 1 or state 011 if X = 0. |
|
||
| Error Description: The first sentence of paragraph #3 reads, One important point to note is that there is one state 110, which is not part of the sequence process. | ||
| Correction: Should read, One important point to note is that there is one state, 110, which is not part of the sequence process. |
|
||
| Error Description: The second sentence of paragraph #3 reads, One the truth table... | ||
| Correction: Should read, In the truth table... |
|
||
| Error Description: The last sentence of paragraph #3 reads, We can do this because, as you can see from the K-map, no other state leads us to the 110 state. | ||
| Correction: Should read, We can do this because, as you can see from the State Transition Diagram in Figure 5.1, no other state leads us to the 110 state. |
|
||
| Error Description: The third sentence of paragraph #4 reads, Here, the inputs to the truth table, Ain, Bin, Cin, and X become the 4 address inputs to the memory. | ||
| Correction: Should read, Here, the inputs to the truth table, Ain, Bin, Cin, and X, become the 4 address inputs to the memory. |
|
||
| Error Description: The third sentence of paragraph #5 reads, This was added to further simplify a term A* /X + /A *X. | ||
| Correction: Should read, This was added to further simplify the term A* /X + /A *X. |
|
||
| Error Description: The fifth sentence of paragraph #5 reads, Clearly, using the laws of Boolean algebra, there could be addition regroupings of some terms. | ||
| Correction: Should read, Clearly, using the laws of Boolean algebra, there could be additional regroupings of some terms. |
|
||
| Error Description: In Figure 5.5 the K-Map for B next seems to have a grouping of three terms in the CinX row. This is clearly illegal. | ||
| Correction: There are actually two loops of two terms there, not one loop of three. The lack of colors makes it appear to be one loop. |
|
||
| Error Description: The sixth sentence of paragraph #2 reads, Off hand, I don’t know why you would want to do this, but given some time, I’m sure we could figure out a circuit need for such a circuit. | ||
| Correction: Should read, Offhand, I don’t know why you would want to do this, but given some time, I’m sure we could figure out a need for such a circuit. |
|
||
| Error Description: While not incorrect, figure 5.7 and the text that accompanies it should be revised. The revision will appear in the next edition of the book. The figure shown below should replace figure 5.7 and the text shown below should replace paragraphs 3 and 4. | ||
Correction:
Here we have 3 states, 00, 10, and 01, respectively. The arrows represent the state transitions on the clock edge. Associated with each arrow are two numbers separated by a forward slash. The first number is the state of the input bit at the time of the rising edge of the clock and the second number is the output signal, T, which goes TRUE if three or more successive 1’s are detected in the bit stream. In this case, the clock signal that we would use would likely be the clock that the system is using to synchronize with the data bit stream. Thus, a new data bit would appear on every rising edge of the clock. Every time that a 0 bit appears the circuit returns to the 00 state, waiting for the arrival of a 1 bit. With the arrival of the first 1 bit the circuit transitions to state 10. If a second 1 bit arrives it transitions to state 01. If the second bit to arrive is a 0 bit, the circuit returns to state 00. However, if a third 1 bit arrives, the circuit asserts output T and returns to state 01 with the T bit set to 1. As soon as the next 0 bit arrives, the circuit returns to state 00. What is new in this example is the addition of an explicit output bit, T. You might be wondering why we don’t have a fourth state, 11, which represents the arrival of 3 successive 1’s. This would also work, but it would be redundant, since the arrival of the third successive 1 bit also means that there has been two successive 1’s as well. Thus, we may remain in state 01 as long as 1’s are being received. We could, however, change the problem specification so that each group of three 1’s is a unique event. This would imply that a fourth state might be needed, depending upon what we intend to do after each group of three is received. |
|
||
| Error Description: The third from last sentence of paragraph #4 reads, Now, with as long as the incoming bits are 1’s, the circuit remains in state 11.... | ||
| Correction: Should read, Now, as long as the incoming bits are 1’s, the circuit remains in state 11.... |
|
||
| Error Description: In the topmost K-Map of figure 5.8 the terms ~A~Bx and ~ABx have a partial box drawn around them | ||
| Correction: There should be a solid line around both terms
as shown in the figure, below:
|
|
||
| Error Description: Referring to Figure 5.9: The position of the text strings, "A" and "Anext" are improperly located. The positions of the text strings "B" and "Bnext" are also improperly located.. | ||
|
Correction: "Anext" should be at the D input to the top flip-flop and "A" should be at the Q output. Also, "Bnext" should be at the D input to the middle flip-flop and "B" should be at the Q output. |
|
||
| Error Description: The last sentence of paragraph #1 reads, In fact, we have implemented an algorithmic state machine, or ASM. | ||
|
Correction: The word "or" should not be italicized between state machine and ASM. |
|
||
| Error Description: The first sentence after the four bulleted items reads, Since the N/S traffic is a busy four-lane road and the E/W road is only two lanes, we can assume that the N/S road has a considerably higher traffic flow then the E/W road. | ||
|
Correction: Should read, Since the N/S traffic is a busy four-lane road and the E/W road is only two lanes, we can assume that the N/S road has a considerably higher traffic flow than the E/W road. |
|
||
| Error Description: The block of pseudocode at the top of
the page reads,
while (timer != 0) wait; timer = 5 seconds; EW = yellow;
|
||
|
Should read, while (timer != 0) wait; timer = 5 seconds; EW = yellow; |
|
||
| Error Description: The fourth sentence of paragraph #3 reads, As long as neither of the E/W sensors detects a waiting car, the... | ||
|
Should read, As long as neither of the E/W sensors detect a waiting car, the... |
|
||
| Error Description: The next to last sentence of paragraph #1 reads, Notice in figure 5.12 that our horizontal axis is calibrated in 5 second ticks. | ||
| Correction: Should read, Notice in figure 5.12 that our horizontal axis is calibrated in 5-second ticks. |
|
||
| Error Description: The third sentence of paragraph #2 reads, This kind of view is significant because it introduces us to another important concept, the idea of the states of the system represented as a set of state vectors. | ||
| Correction: Should read, This kind of view is significant because it introduces us to another important concept; the idea of the states of the system represented as a set of state vectors. |
|
||
| Error Description: The third and fourth from last sentences on the page read, We have to be a bit careful here because the hexadecimal representation shouldn't be confused with a number. It's not. | ||
| Correction: Should read, We have to be a bit careful here because each of the hexadecimal states shown in Figure 5.13 is not a number. |
|
||
| Error Description: The last sentence of the caption for Figure 5.13 reads, Thus, the hexadecimal numbers have no significance as unique number in their own right. | ||
| Correction: Should read, Thus, the hexadecimal numbers have no significance as unique numbers in their own right. |
|
||
| Error Description: The lastsentence of paragraph #2 reads, As a first pass through, we’ll ignore the E/W traffic sensors and just consider a simpler model, one with each direction getting 20 seconds of time with a 5 second yellow | ||
| Correction: Should read, As a first pass through, we’ll ignore the E/W traffic sensors and just consider a simpler model, one with each direction getting 20 seconds of time with a 5-second yellow |
|
||
| Error Description: The last sentence of paragraph #2 reads, Actually, the 4 states that represent the 20 second time intervals are not the same. They just have the same output function. | ||
| Correction: Should read, Actually, the 4 states that represent the 20-second time intervals are not the same. They just have the same output function. |
|
||
| Error Description: The last sentence on the page reads, This is only for convenience sake, but we'll press on. | ||
| Correction: Should read, This is only for the sake of convenience, but we'll press on. |
|
||
| Error Description: The second sentence under the bulleted list reads, We also use the collective term data bits to represent the ensemble of state variables. | ||
| Correction: Should read, We also use the collective term data bits to represent the ensemble of state variables. ( The words "data bits" should be italicized). |
|
||
| Error Description: The second and third sentence under the bulleted
list reads,
We
also use the collective term data bits to represent the ensemble of state
variables. Also, it will be convenient to give the individual bits that
control the lights a collective identity so that we may deal... |
||
| Correction: Should read, We also use the collective term data bits to represent the ensemble of state variables and it will be convenient to give the individual bits that control the lights a collective identity so that we may deal with them as a group. |
|
||
| Error Description: The third from last sentence of paragraph #1, reads, However, we should keep in mind that each output variable really is independent of the other. | ||
| Correction: Should read, However, we should keep in mind that each output variable really is independent of the others. |
|
||
| Error Description: The first sentence of paragraph #2 reads, Remember the 32-bit memory array that we looked at earlier. | ||
| Correction: Should read, Remember the 32-bit memory array that we looked at earlier? |
|
||
| Error Description: The second sentence of paragraph #3 reads, Compared to the clock frequencies we’ve been discussing so far, 0.2 Hz (one cycle every 5 seconds is positively glacial, but that’s the way were solving it). | ||
| Correction: Should read, Compared to the clock frequencies we’ve been discussing so far, 0.2 Hz (one cycle every 5 seconds) is positively glacial, but that’s all the speed that we'll need for this example. |
|
||
| Error Description: The second from last sentence of paragraph #1 reads, .... as 139 meters (with a 5 second clock period) before all the lights in the intersection turned red. | ||
| Correction: Should read, .... as 139 meters (with a 5-second clock period) before all the lights in the intersection turned red. |
|
||
| Error Description: The first sentence of paragraph #2 reads, The output value from the D register is the address of the of the six memory cells that determine... | ||
| Correction: Should read, The output value from the D register is the address of the six memory cells that determine... |
|
||
| Error Description: The second sentence at the fourth line from the bottom reads, These are the "Don't Cares" at address 0A through 0F hex. | ||
| Correction: Should read, These are the "Don't Care" conditions at addresses 0A through 0F hex. |
|
||
| Error Description: The third from last sentence of paragraph #1 reads, We only need to bring enough output states back to the inputs to provide a mechanism to sequence the state machine through its state. | ||
| Correction: Should read, We only need to bring enough output states back to the inputs to provide a mechanism to sequence the state machine through its states. |
|
||
| Error Description: The caption of Figure 5.19 reads, State transistion diagram for.... | ||
| Correction: Should read, State transition diagram for.... |
|
||
| Error Description: The second from last sentence of paragraph #1 reads, Since the microcode cannot interpret this pattern, the processor notifies the operation system and the program halts itself. | ||
| Correction: Should read, Since the microcode cannot interpret this pattern, the processor notifies the operating system and the program halts itself. |
|
||
| Error Description: The last sentence of paragraph #2 reads, If we proceeded to develop the algorithm for this more complex situation, we'll probably see that the number... | ||
| Correction: Should read, If we proceed to develop the algorithm for this more complex situation, we'll probably see that the number... |
|
||
| Error Description: The sixth sentence of paragraph #3 reads, Figure 5.21 is a table of the state ROM in all of its gory details. | ||
| Correction: Should read, Figure 5.21 is a table of the state ROM in all of its gory detail. |
|
||
| Error Description: The first sentence of paragraph #3 reads, The ROMs in the use for this example each hold... | ||
| Correction: Should read, The ROMs used in this example each hold... |
|
||
| Error Description: The last sentence on the page reads, However, memory is relatively inexpensive, and, in this particular instance, a ROM with 16K memory cells is less expensive then a much smaller one. | ||
| Correction: Should read, However, memory is relatively inexpensive, and, in this particular instance, a ROM with 16K memory cells is less expensive than a much smaller one. |
|
||
| Error Description: The fourth sentence of paragraph #2 reads, You actually know enough about digital design to create the basic building block of the ALU. | ||
| Correction: Should read, You actually know enough about digital design to create the basic building blocks of the ALU. |
|
||
| Error Description: The second to last sentence of paragraph #3 reads, If we wanted to add two 32-bit numbers (ints) together, we would have to have 32 of these adders in a row. | ||
| Correction: Should read, If we wanted to add two 32-bit numbers (ints) together, we would need to have 32 of these adders in a row. |
|
||
| Error Description: The second sentence of paragraph #2 reads, Note that we've neglected some of the preliminary sequences, such as decoding the actual ADD instruction that got us to this point and how did the numbers actually get into the holding registers in the first place. | ||
| Correction: Should read, Note that we've neglected some of the preliminary sequences, such as decoding the actual ADD instruction that got us to this point and how the numbers actually got into the holding registers in the first place. |
|
||
| Error Description: The last sentence of paragraph #2 reads, We'll revisit this problem again in a later chapter in all of its gory details, so... | ||
| Correction: Should read, We'll revisit this problem again in a later chapter in all of its gory detail, so... |
|
||
| Error Description: Step #3 reads, After the appropriate propagation delay (once the B input has stabilized), the result appears on the outputs of the adder. | ||
| Correction: Should read, After the appropriate propagation delay (once the B inputs have stabilized), the result appears on the outputs of the adder. |
|
||
| Error Description: The first sentence of Step #4 reads, The state of the Carry Out bit is save in the appropriate register. | ||
| Correction: Should read, The state of the Carry Out bit is saved in the appropriate register. |
|
||
| Error Description: The second sentence of bullet point #2 reads, The transition time for the clock must be much faster then any changes that may occur in the state machine. | ||
| Correction: Should read, The transition time for the clock must be much faster than any changes that may occur in the state machine. |
|
||
| Error Description: The second sentence of paragraph #1 reads, If the basic circuit elements could be expressed as few standard building blocks,.... | ||
| Correction: Should read, The second sentence of paragraph #1 reads, If the basic circuit elements could be expressed as a few standard building blocks,.... |
|
||
| Error Description: The last sentence of paragraph #2 reads, From there, the various functional components (blocks) are defined and by a processes of top-down decomposition, the software progresses through the development process | ||
| Correction: Should read, From there, the various functional components (blocks) are defined and by a processes of top-down decomposition, the software progresses through the development process. (Period missing) |
|
||
| Error Description: The first sentence of paragraph #5 reads, What the authors were describing is what we today call Silicon Compilers and the process by which modern integrated circuits are design is called silicon compilation. | ||
| Correction: Should read, What the authors were describing is a tool that today we call a Silicon Compiler, and the process by which modern integrated circuits are designed is called Silicon Compilation. |
|
||
| Error Description: The first sentence of paragraph #6 reads, In 1981, a company, Silicon Compilers, Inc. was founded... | ||
| Correction: Should read, In 1981, Silicon Compilers, Inc. was founded... |
|
||
| Error Description: The last sentence of paragraph #6 reads, ...translatable to custom integrated circuit blocks, the same as if... | ||
| Correction: Should read, ...translatable to custom
integrated circuit blocks; the same as if... |
|
||
| Error Description: The First sentence on the page reads, With the commercial viability of ASIC designs, the standardization of HDL tools emerged.... | ||
| Correction: Should read, With the commercial viability of ASIC designs, the standardization of hardware description language ( HDL ) tools emerged.... |
|
||
| Error Description: In figure 5.27 it reads, Souce: Intel Corp. | ||
| Correction: Should read, Source: Intel Corp. |
|
||
| Error Description: The first sentence of paragraph #3 reads, If you plot the data from Figure 5.27 on semi-logarithmic graph paper, you'll get and amazing close approximation... | ||
| Correction: Should read, If you plot the data from Figure 5.27 on semi-logarithmic graph paper, you'll get and amazingly close approximation... |
|
||
| Error Description: The third sentence of paragraph #3 reads, The conclusion we must draw is that efficiency of each designer to lay.... | ||
| Correction: Should read, The conclusion we must draw is that the efficiency of each designer to lay.... |
|
||
| Error Description: The second complete sentence at the top of the page reads, The universal solution to a hardware defect, is and will be for the foreseeable future, "fix it in software". | ||
| Correction: Should read, The universal solution to a hardware defect, is (and will be for the foreseeable future): "fix it in software". |
|
||
| Error Description: The second sentence of paragraph #2 reads, Following is an example... | ||
| Correction: Should read, The following is an example... |
|
||
| Error Description: The second summary bullet reads reads, We looked at the definition of a finite state machine an saw how... | ||
| Correction: Should read, We looked at the definition of a finite state machine and saw how... |
|
||
| Error Description: Exercise #6 reads, Design a state machine circuit that will detect the occurrence of the serial bit pattern 1001. | ||
| Correction: Should read, Design a state machine circuit that will detect the occurrence of the serial bit pattern 1001. Your solution should include the state transition diagram, truth table, K-map and finally, the circuit implementation. |
|
||
| Error Description: The second sentence of the last paragraph reads, The output from each block is simultaneously driven to all of the inputs of the other blocks in a 1" to 5" organization. | ||
| Correction: Should read, The output from each block is simultaneously driven to all of the inputs of the other blocks in a "1 to 5" organization. (1 to 5 should be in quotes). |
|
||
| Error Description: The second sentence of paragraph #2 reads, Without an output to drive them, inputs will tend to drift around, rattling from 1 or 0..... | ||
| Correction: Should read, Without an output to drive them, inputs will tend to drift around, rattling between 1 and 0..... |
|
||
| Error Description: The seventh sentence of paragraph #2 reads, To see what might happen, you can take a 1.5 volt battery, such as a AA or AAA cell and, with a a piece of wire... | ||
| Correction: Should read, To see what might happen, you can take a 1.5 volt battery (such as an AA or AAA cell) and with a a piece of wire... |
|
||
| Error Description: The first sentence of paragraph #2 reads, Each functional block connects its output signal to the five other blocks inputs. | ||
| Correction: Should read, Each functional block connects its output signal to the five other blocks' inputs. |
|
||
| Error Description: The second sentence of paragraph #2 reads, The arrowheads on the wires indicates which functional block is sending the signal. | ||
| Correction: Should read, The arrowheads on the wires indicate which functional block is sending the signal. |
|
||
| Error Description: The second sentence of paragraph #1 reads, Thus, it needs the decision logic, called a multiplexer, or MUX, that does a "5 to 1" reduction so that the correct data could be read by the input and then... | ||
| Correction: Should read, Thus, it needs the decision logic, called a multiplexer, or MUX, to do a "5 to 1" reduction so that the correct data can be read by the input and then... |
|
||
| Error Description: The third sentence of paragraph #3 reads, A bus is a grouping of similar signal. | ||
| Correction: Should read, A bus is a grouping of similar signals. |
|
||
| Error Description: The second to last sentence of paragraph #2 reads, Since it is the only talker and every other device is a "listener" (one to N) there will not be... | ||
| Correction: Should read, Since it is the only "talker" and every other device is a "listener" (one to N) there will not be... |
|
||
| Error Description: The last sentence of paragraph #2 reads, All of the other outputs, which remain disconnected be their electronic switches, have no impact on the state of the bus signal. | ||
| Correction: Should read, All of the other outputs, which remain disconnected by their electronic switches, have no impact on the state of the bus signal. |
|
||
| Error Description: The last sentence of paragraph #3 reads, However, keep in mind that we cannot open and close a real mechanical switch as nearly as quickly or as cleanly as we go from high impedance (no signal flow) to low impedance (connect to bus). | ||
| Correction: Should read, However, keep in mind that we cannot open and close a real mechanical switch nearly as quickly or as cleanly as we go from high impedance (no signal flow) to low impedance (connected to the bus). |
|
||
| Error Description: The last sentence on the page reads, Figure 3.36 also shows a new logic element, the block labeled.... | ||
| Correction: Should read, Figure 6.7 also shows a new logic element, the block labeled.... |
|
||
| Error Description: The last sentence of paragraph #1 reads, This is a consequence of the fact that tri-state logic is usually asserted with a low going signal. | ||
| Correction: Should read, This is a consequence of the fact that tri-state logic is usually asserted with a low-going signal. |
|
||
| Error Description: The column headings in table 6.1 are labeled: A0 A1 A2 CS0 CS1 CS2 CS3 | ||
| Correction: Should be labeled, A0 A1 A2 ~CS0 ~CS1 ~CS2 ~CS3 |
|
||
| Error Description: The second sentence of the text under Figure 6.8 reads, Now suppose that we want to add the contents of register A and Register B, respectively. | ||
| Correction: Should read, Now suppose that we want to add the contents of Register A and Register B, respectively. |
|
||
| Error Description: The first full sentence on the page reads, Remember that Register A is a just a collection..... | ||
| Correction: Should read, Remember that Register A is just a collection..... |
|
||
| Error Description: The last sentence of the section, Clock pulse 4: reads, The ALU input signals, ALU0, ALU1 and ALU2 are set for addition... | ||
| Correction: Should read, The ALU input signals,
ALU_0, ALU_1 and ALU_2 are set for addition... |
|
||
| Error Description: The section, Clock pulse 6: reads, The Output Enable of B register is turned off, the clock input to B is returned to 0 and the data in the Temporary Register is put on the Data Bus. | ||
| Correction: Should read, The Output Enable of B register is turned off, the clock input to the ALU Output Register is returned to 0, and the data in the ALU Output Register is put on the Data Bus. |
|
||
| Error Description: The section, Clock pulse 7: reads, The data is clocked into the A register and the Output Enable of the Temporary Register is turned off. | ||
| Correction: Should read, The data is clocked into the A register and the Output Enable of the ALU Output Register is turned off. |
|
||
| Error Description: The footnote under the table of clock pulse operations reads, The ALU is a circuit that can perform up to eight different arithmetic or logical operations based upon the state of the three input variables, ALU_0..ALU_3. | ||
| Correction: Should read, The ALU is a circuit that can perform up to eight different arithmetic or logical operations based upon the state of the three input variables, ALU_0..ALU_2. |
|
||
| Error Description: The first sentence of the caption to figure 6.9 reads, Truth table for the Microsequence Controller of Figure 3.37 showing.... | ||
| Correction: Should read, Truth table for the Microsequence Controller of Figure 6.8 showing.... |
|
||
| Error Description: The first sentence on the page reads, Now, before you go off and assume that you are a qualified CPU architect, let me warn you that it's a lot more involved then what we saw in this example. | ||
| Correction: Should read, Now, before you go off and assume that you are a qualified CPU architect, let me warn you that it's a lot more involved than what we saw in this example.. |
|
||
| Error Description: The third sentence of paragraph #1 reads, For starters, we did not discuss how the instruction itself, ADD B,A actually got..... | ||
| Correction: Should read, For starters, we did not discuss how the instruction itself, ADD B,A actually got..... (instruction should be bolded) |
|
||
| Error Description: The last sentence of paragraph #1 reads, However, for at least that portion of the state machine that actually does the addition process, it probably is pretty close to how it really works. | ||
| Correction: Should read, However, for at least that portion of the state machine that actually does the addition process, it probably is pretty close to how the circuitry really works. |
|
||
| Error Description: The first sentence of paragraph #2 reads, You've now seen two examples of how the state machine is used to sequence a series of logical operations and how these operations for the basis of the execution of an instruction in a computer. | ||
| Correction: Should read, You've now seen two examples of how the state machine is used to sequence a series of logical operations and how these operations form the basis of the execution of an instruction in a computer. |
|
||
| Error Description: The fifth sentence of paragraph #2 reads, However, the Data line.... | ||
| Correction: Should read, However, the data line.... |
|
||
| Error Description: The second sentence of paragraph #4 reads, Figure 6.11 shows a simple (well maybe not so simple) 16-bit memory..... | ||
| Correction: Should read, Figure 6.11 shows a simple (well, maybe not so simple) 16-bit memory..... |
|
||
| Error Description: The last sentence on the page reads, For example, if we want to write data into row 2 of D-FF's the data must be place on the..... | ||
| Correction: Should read, For example, if we want to write data into row 2 of D-FF's, the data must be place on the..... |
|
||
| Error Description: The second sentence of paragraph #3 reads, It's just labeled differently, but still required a LOW to HIGH transition to write the data. | ||
| Correction: Should read, It's just labeled differently, but still requires a LOW to HIGH transition to write the data. |
|
||
| Error Description: The last sentence before the two listed items in the next-to-last paragraph reads, Paging requires that we supply two numbers in order to form the correct address of the memory location we’re interested in. | ||
| Correction: Should read, Paging requires that we supply two numbers in order to form the correct address of the memory location we’re interested in: |
|
||
| Error Description: The second sentence of paragraph #1 reads, Therefore, each of the address line.... | ||
| Correction: Should read, Therefore, each of the address lines.... |
|
||
| Error Description: In figure 6.14 the caption reads, Memory organization for a 20-bit microprocessor. The memory space is organized as 16 and 64K byte memory pages. | ||
| Correction: Should read, Memory organization for a 20-bit microprocessor. The memory space is organized as 16, 64K byte memory pages. |
|
||
| Error Description: The fifth sentence of paragraph #6 reads, This was somewhat arbitrary, as we could have organized the paging scheme in a totally different way; depending upon ... | ||
| Correction: Should read, This was somewhat arbitrary, as we could have organized the paging scheme in a totally different way depending upon ... |
|
||
| Error Description: The third sentence of paragraph #6 reads, Close enough to give it try. | ||
| Correction: Should read, Close enough to give it a try. |
|
||
| Error Description: The first sentence of paragraph #3 reads, This memory chip arrangement of 32K memory locations with each location being 8-bits wide is conceptually the same idea as our 16-bit example in figure 6.11 in terms of how we would add more devices to increase the size of our memory in both wide...... | ||
| Correction: Should read, This memory chip arrangement of 32K memory locations with each location being 8-bits wide is conceptually the same idea as our 16-bit example in figure 6.11 in terms of how we would add more devices to increase the size of our memory in both width...... |
|
||
| Error Description: The second sentence under the heading "Designing a Memory System" reads, OK, maybe, we're not quite ready, but we're pretty close. | ||
| Correction: Should read, OK, maybe we're not quite ready, but we're pretty close. |
|
||
| Error Description: The following blocks of text should be added as new paragraphs between paragraphs #1 and #2. | ||
| There is another subtle point that we need to mention
in passing before we look further into memory design and organizational
issues. The circuit of Figure 6.16 has a limitation that we would not
tolerate in a real memory design. Storing a single byte in memory requires
the same amount of storage (16-bits) as storing a 16-bit value. Thus, every
time we store a string variable in memory, we are throwing away 50% of the
memory’s storage capacity. What we are lacking is a mechanism to store
quantities smaller than the width of the data bus in such a way that we make
full use of the available storage capacity of the memory.
In Figure 6.16, this translates to a mechanism for independently accessing either the upper or lower memory chip of each page. With that addition, we could write a single byte to one or the other memory device and not corrupt the data in the other device. Now, having said that, we could conceivably come up with a mechanism to overcome this limitation. For example, let’s assume that the processor wants to store a byte in one of the memory chips in Figure 6.16. It could first read the data from both chips into an internal storage area, then write the byte into the correct half of the 16-bit word and finally, it could write the result back out to both chips. This is an extremely costly operation to write a single byte. In practice, and as you’ll see in Chapter 7, we need to add a bit more to this circuit design so that byte-addressability within a larger memory word can be realized. |
|
||
| Error Description: The first sentence of the second paragraph reads, The internal organization of the 4 memory chips in figure 6.17 is identical to the organization of the circuits we’ve already studied.... | ||
| Correction: Should read, The internal organization of the 4 memory chips in figure 6.16 is identical to the organization of the circuits we’ve already studied.... |
|
||
| Error Description: The last sentence of the second paragraph reads, Also, it would have taken me more time to draw 256K memory cells then to draw 16, so I took the easy way out. | ||
| Correction: Should read, Also, it would have taken me more time to draw 256K memory cells than to draw 16, so I took the easy way out. |
|
||
| Error Description: The first sentence of the second-from-last paragraph reads, This memory chip arrangement of 32K memory locations with each location being 8-bits wide is conceptually the same idea as our 16-bit example in figure 6.11 in terms of how we would add more devices to increase the size of our memory in both wide..... | ||
| Correction: Should read, This memory chip arrangement of 32K memory locations with each location being 8-bits wide is conceptually the same idea as our 16-bit example in figure 6.11 in terms of how we would add more devices to increase the size of our memory in both width.... |
|
||
| Error Description: The last sentence of the second-from-last paragraph reads, In figure 4.5 there are a total of 262,144 memory cells in each chip because we have 32,768 rows by 8 columns in each chip. | ||
| Correction: Should read, In figure 6.16 there are a total of 262,144 memory cells in each chip because we have 32,768 rows by 8 columns in each chip. |
|
||
| Error Description: The first sentence of paragraph #1 reads, The memory chips then puts.... | ||
| Correction: Should read, The memory chips then put.... |
|
||
| Error Description: Listed item #1 reads, Place the correct address of the memory location we want to read on A0 through A14. | ||
| Correction: Should read, Place the correct address of the memory location we want to write on A0 through A14. |
|
||
| Error Description: The third sentence of paragraph #2, These nine bits tells us... | ||
| Correction: Should read, These nine bits tell us... |
|
||
| Error Description: The first sentence of paragraph #4, The other question at you ask is this. | ||
| Correction: Should read, The other question at you ask is this: |
|
||
| Error Description: The fourth sentence of paragraph #4 reads, These nine bits tells us that this memory space may be divided up into 512 pages with 32K address on each page. | ||
| Correction: Should read, These nine bits tells us that this memory space may be divided up into 512 pages with 32K addresses on each page. |
|
||
| Error Description: The first and second sentences of paragraph #2 reads, Now that you’ve seen how the two memory chips are “stacked” to create a page in memory that is 32K by 16. It should not be a problem for you to design a 32K by 32 memory using four chips. | ||
| Correction: Should read, Now that you’ve seen how the two memory chips are “stacked” to create a page in memory that is 32K by 16, it should not be a problem for you to design a 32K by 32 memory using four chips. |
|
||
| Error Description: The first sentence of paragraph #3 reads, You may have noticed that the microprocessor's clock was nowhere to be seen in this example memory design. | ||
| Correction: Should read, You may have noticed that the microprocessor's clock was nowhere to be seen in this example of a memory system design. |
|
||
| Error Description: The third-to-last sentence of the second-to-last paragraph says, Assume that it takes 1ns from the time the processor asserts the control and address signal to the time that the decoding logic to provide the correct.... | ||
| Correction: Should read, Assume that it takes 1ns from the time the processor asserts the control and address signal to the time that the decoding logic provides the correct.... |
|
||
| Error Description: The fifth sentence of paragraph #5 reads, As you’ll soon see, in the 68000 system we want non-volatile memory, such as ROM or FLASH to reside from .... | ||
| Correction: Should read, As you’ll soon see, in the 68000 system we want non-volatile memory (such as ROM or FLASH) to reside from .... |
|
||
| Error Description: The first sentence of paragraph #3 reads, Notice that there is new a signal called.... | ||
| Correction: Should read, Notice that there is a new signal called.... |
|
||
| Error Description: The third-from-last sentence of the third paragraph reads, Other just have a single line R/~W. | ||
| Correction: Should read, Others just have a single line R/~W. |
|
||
| Error Description: The third sentence of paragraph #2 reads, It is relatively simple interface to the processor because all we need... | ||
| Correction: Should read, It is a relatively simple interface to the processor because all we need... |
|
||
| Error Description: The fifth sentence of paragraph #4 reads, Store some charge and the cell has a 1, remove the charge and its 0. | ||
| Correction: Should read, Store some charge and the cell has a 1. Remove the charge and the cell is storing a 0. |
|
||
| Error Description: The second-to-last sentence of the last paragraph says, In fact, every cell of a DRAM must be refreshed ever few milliseconds or the cell will be in danger of losing its data. | ||
| Correction: Should read, In fact, every cell of a DRAM must be refreshed every few milliseconds or the cell will be in danger of losing its data. |
|
||
| Error Description: The third-from-last sentence of paragraph #5 reads, For example, you hard drive transfers... | ||
| Correction: Should read, For example, your hard drive transfers... |
|
||
| Error Description: The last sentence on the page reads, SDRAM memory is also design to efficiently interface to a processor with on-chip caches and is specifically designed for burst accesses between the memory and the on-chip caches of the....... | ||
| Correction: Should read, SDRAM memory is also designed to efficiently interface to a processor with on-chip caches and is specifically designed for burst accesses between the memory and the on-chip caches of the....... |
|
||
| Error Description: The first sentence of paragraph #2 reads, These devices are far more complicated in their operation then the simple SRAM memories we’ve looked at so far. | ||
| Correction: Should read, These devices are far more complicated in their operation than the simple SRAM memories we’ve looked at so far. |
|
||
| Error Description: The last sentence of paragraph #3 reads, Clearly, this is far more efficient then reading one byte at a time. | ||
| Correction: Should read, Clearly, this is far more efficient than reading one byte at a time. |
|
||
| Error Description: The last sentence of the fourth paragraph says, For this family of devices the data transfer.... | ||
| Correction: Should read, For this family of devices, the data transfer.... |
|
||
| Error Description: The third bullet point reads, Status bus: A heterogeneous bus comprised of the various control and housekeeping signals need to coordinate.... | ||
| Correction: Should read, A heterogeneous bus comprised of the various control and housekeeping signals needed to coordinate.... |
|
||
| Error Description: The sixth sentence of paragraph #4 reads, We’ve omitted many additional signals that may present .... | ||
| Correction: Should read, We’ve omitted many additional signals that may be present .... |
|
||
| Error Description: The last sentence on the page reads, The crossings, or X’s in the address and data busses is a symbolic way to represent points in time when the addresses..... | ||
| Correction: Should read, The crossings, or X’s in the address and data busses are a symbolic way to represent points in time when the addresses.... |
|
||
| Error Description: The fourth sentence of paragraph #3 reads, During the falling edge of T3 the READ and ADDRESS VALID signals are de-asserted indicating to memory .... | ||
| Correction: Should read, During the falling edge of T3 the READ and ADDRESS VALID signals are de-asserted, indicating to memory .... |
|
||
| Error Description: The fifth sentence of paragraph #4 reads, The processor checks the state of the ~WAIT signal on the on the falling edge of the clock during T2 cycle. | ||
| Correction: Should read, The processor checks the state of the ~WAIT signal on the falling edge of the clock during T2 cycle. |
|
||
| Error Description: The caption to figure 6.24 reads, Figure 4.9: A two-phase clock. | ||
| Correction: Should read, Timing diagram for a two-phase clock. |
|
||
| Error Description: The fifth sentence of paragraph #3 reads, One input of XOR gates 1 through 3 is permanently ties to ground (logic LOW). | ||
| Correction: Should read, One input of XOR gates 1 through 3 is permanently tied to ground (logic LOW). |
|
||
| Error Description: Referring to figure 6.27, the arrow representing the transition when the ~WAIT signal is asserted in state T20 is incorrectly place. | ||
| Correction: The curved arrow should be place at state T21 rather than state T20. |
|
||
| Error Description: The first and second sentences of paragraph #2 reads, Referring to figure 6.27 we can clearly see that in state T20 the processor tests the state of the ~WAIT input. If the input is asserted LOW, the processor remains in state T20, effectively lengthening the total time for the bus cycle. | ||
| Correction: Should read, Referring to figure 6.27 we can clearly see that in state T21 the processor tests the state of the ~WAIT input. If the input is asserted LOW, the processor remains in state T21, effectively lengthening the total time for the bus cycle. |
|
||
| Error Description: The fourth bullet in the list reads, T21: Process samples ~WAIT input. | ||
| Correction: Should read, T21: Processor samples ~WAIT input. |
|
||
| Error Description: The second sentence under the heading Direct Memory Access (DMA) reads, The need for a DMA system is a result of the fact that memory system and the processor are connected to each other by busses. | ||
| Correction: Should read, The need for a DMA system is a result of the fact that the memory system and the processor are connected to each other by busses. |
|
||
| Error Description: The last line on the page reads, Repeat steps 4 and 5 for 510 more times. | ||
| Correction: Should read, Repeat steps 4 and 5 for 510 times. |
|
||
| Error Description: The fourth sentence of the first paragraph says, Also, given that many modern processors have large on-chip caches, the processor looses almost nothing. | ||
| Correction: Should read, Also, given that many modern processors have large on-chip caches, the processor loses almost nothing. |
|
||
| Error Description: The truth table in Exercise #1 has the dividing line between inputs and outputs in the wrong position. The text shows it located between ~O1 and ~O2 | ||
| Correction: The dividing line should be located between Input B and ~O1 |
|
||
| Error Description: In exercise #2 the problem refers to the signal ~CE in three places and in part C of the problem it reads, The output buffer is controlled by the ~CS signal on each FF. | ||
| Correction: The three references to ~CE should be replaced by ~CS and the sentence in part C should read, The output buffer is controlled by the ~OE signal on each FF. |
|
|||||||||||||
| Error Description: Exercise 3b reads, Assuming that we use a page size of 512K, complete the following table for the first three pages of memory: (The empty table is missing) | |||||||||||||
Correction: This table should follow the sentence:
|
|
||
| Error Description: In exercise #8, part D, it reads, A microprocessor with a 20-bit addressing range and using 8 memory chips of different sizes. Four of the memory chips have a capacity of 128K each and occupy the first 512K consecutive addresses from 00000 on. The other four memory chips have a capacity of 32K each and occupy the topmost 128K of the addressing range. | ||
| Correction: Should read, A microprocessor with a 20-bit addressing range and using 8 memory chips of different sizes. Four of the memory chips have a capacity of 128K each and occupy the first 512K consecutive addresses from 00000 on. The other four memory chips have a capacity of 32K each and occupy the topmost 128K of the addressing range. Build a table showing the address ranges, in hexadecimal, covered by each of the chips. |
|
||
| Error Description: The third sentence of paragraph #1 reads, Our study of the architecture will be from the perspective of a software developer who needs to understand the architecture in order to use it to its best advantage. | ||
| Correction: Should read, Our study of the architecture will be from the perspective of a software developer who needs to understand the architecture in order to use it to their best advantage. |
|
||
| Error Description: The last sentence of paragraph #1 reads, Our focus throughout this book has been on the understanding of the hardware and the architectural issues in order to take make our software developments complement the design of the underlying hardware. | ||
| Correction: Should read, Our focus throughout this book has been on the understanding of the hardware and the architectural issues in order to enable our software development to take the best possible advantage of the design of the underlying hardware. |
|
||
| Error Description: The fourth sentence of paragraph #2 reads, The answer is a resounding, "No!" | ||
| Correction: Should read, The answer is a resounding "No!" |
|
||
| Error Description: The second-from-last sentence of paragraph #2 reads, Also, a completely new processor from Motorola, the ColdFIRE family, uses the 68K architecture, and today, it is one of the most popular processors in use. | ||
| Correction: Should read, Also, a completely new processor from Motorola, the ColdFIRE family, uses the 68K architecture, and today it is one of the most popular processors in use. |
|
||
| Error Description: The first sentence of paragraph #2 reads, We'll start by looking at the memory model again and use that as a jumping off point..... | ||
| Correction: Should read, We'll start by looking at the memory model again and use that as a jumping-off point..... |
|
||
| Error Description: The first sentence of paragraph #3 reads, When you start looking at a computer from the architectural level you soon realize that relationship... | ||
| Correction: Should read, When you start looking at a computer from the architectural level you soon realize that the relationship... |
|
||
| Error Description: The last sentence of paragraph #3 reads, Therefore, one of our first items of business is to build on our understanding of how memory systems are organized and look at the memory system from the prospective of the processor. | ||
| Correction: Should read, Therefore, one of our first items of business is to build on our understanding of how memory systems are organized and look at the memory system from the perspective of the processor. |
|
||
| Error Description: The third sentence of paragraph #2 reads, One, is quite serious, and the others are merely new to us. | ||
| Correction: Should read, One is quite serious, and the others are merely new to us. |
|
||
| Error Description: The figure caption for figure 7.3 reads, Memory organization for a 32-bit microprocessor. Chip select and READ signals have been omitted for clarity. | ||
| Correction: Should read, Memory organization for a 32-bit microprocessor. CHIP SELECT and READ signals have been omitted for clarity. Note that address lines A0 and A1 do not exist in this diagram because they are synthesized by the four WRITE ENABLE lines, ~WE0 through ~WE3. |
|
||
| Error Description: In figure 7.3 there is a missing wire between data bit D7 and the data bus for each of the four 128K by 8 RAM devices | ||
| Correction: A wire should be drawn in the figure between D7 and the branch of the data bus for each of the memory chips. |
|
||
| Error Description: Line 1 reads, chip #3 is connected to data lines D6 through D23... | ||
| Correction: "Line 1 should read, chip #3 is connected to data lines D16 through D23... |
|
||
| Error Description: The first sentence of the first new paragraph on the page reads, The address bus from the processor contains 30 address lines, which means it is capable of address 230 long words.... | ||
| Correction: Should read, The address bus from the processor contains 30 address lines, which means it is capable of addressing 230 long words.... |
|
||
| Error Description: The second sentence of the first new paragraph on the page reads, The additional addressing bits needed to address the full space of 2^32 bytes are implicitly controlled by the processor internally and explicitly controlled through the 4 WRITE ENABLE signals labeled ~WE0 and ~WE3. | ||
| Correction: Should read, The additional addressing bits needed to address the full space of 2^32 bytes are implicitly controlled by the processor and explicitly controlled through the 4 WRITE ENABLE signals labeled ~WE0 and ~WE3. |
|
||
| Error Description: The last sentence paragraph #3 reads, The same address from the processor would clearly be addressing different byte addresses in each of the 4 memory chips, but as long as all of the 17 address lines are from the processor are connected .... | ||
| Correction: Should read, The same address from the processor would clearly be addressing different byte addresses in each of the 4 memory chips, but as long as all of the 17 address lines from the processor are connected .... |
|
||
| Error Description: The last sentence paragraph #4 reads, It may not seem obvious to you to see how the page addresses and the offset addresses are related to reach other but ...... | ||
| Correction: Should read, It may not seem obvious to you to see how the page addresses and the offset addresses are related to each other but ...... |
|
||
| Error Description: The last sentence on the page 163, completing on page 164 reads, So, suppose that we want to write the byte at memory location ABCDEF65. In this case, only the ~WE1 signal would be asserted, so only the byte position could be modified. | ||
| Correction: Should read, So, suppose that we only want to write a new value to the byte at memory location ABCDEF65. In this situation, the ~WE1 signal would have to be asserted, so only the byte at byte address 1 position could be modified. |
|
||
| Error Description: The third sentence of paragraph #1 reads, To write a word to memory we would active either ~weo and ~we1 together or ~we2 and ~we3. | ||
| Correction: Should read, To write a word to memory we would activate either ~we0 and ~we1 together or ~we2 and ~we3. |
|
||
| Error Description: The last sentence of paragraph #1 reads, Are they big or little Endian? | ||
| Correction: Should read, Are they Big or Little Endian? |
|
||
|
Error Description: The third and sixth sentences of paragraph #1 respectively read,
|
||
Correction:
Should read,
|
|
||
| Error Description: The first sentence paragraph #2 reads, Motorola and Intel, chose to use.... | ||
| Correction: Should read, Motorola and Intel chose to use.... |
|
||
| Error Description: Second paragraph from the bottom reads, Referring to figure 4.3.1 | ||
| Correction: Should read, Referring to figure 7.6 |
|
||
| Error Description: The last sentence of paragraph #6 reads, Referring to Figure 4.3.1(7.6) we see that there are actually two bus signals coming out of the processor, designate ~UDS, or upper data strobe, and ~LDS, or lower Date Strobe. | ||
| Correction: Should read, Referring to Figure 4.3.1(7.6) we see that there are actually two bus signals coming out of the processor, designated ~UDS, or upper data strobe, and ~LDS, or lower Date Strobe. |
|
||
| Error Description: The portion of figure 7.6 under the
heading byte access reads: A0 = 0: ~LDS = 1, ~UDS = 0 A0 = 1: ~UDS = 1, ~LDS = 0 |
||
| Correction: For consistency and readability it should read, A0 = 0: ~LDS = 1, ~UDS = 0 A0 = 1: ~LDS = 0, ~UDS = 1 |
|
||
| Error Description: The first paragraph reads, ...then UDS is asserted and LDS stays HIGH." If the odd byte is being accessed (A0 = 1), then ~LDS is asserted and ~UDS remains in the HIGH, or OFF state. | ||
| Correction: For better clarity, this should read, ...then UDS is asserted and LDS stays HIGH, or OFF state. If the odd byte is being accessed (A0 = 1), then ~LDS is asserted and ~UDS remains HIGH. |
|
||
| Error Description: The second sentence of the second paragraph reads, For example, you could the circuit shown in figure 7.7 to control which of the bytes are being written to. | ||
| Correction: Should read, For example, you could use the circuit shown in figure 7.7 to control which of the bytes are being written to. |
|
||
| Error Description: The last sentence paragraph #1 reads, If a non-aligned access occurs, the processor will generate an exception and try to branch to some user-defined code that will correct the error, or at least, die gracefully. | ||
| Correction: Should read, If a non-aligned access occurs, the processor will generate an exception and automatically branch to user-defined code (hopefully, the programmer has provided for this situation) that will attempt to deal with the error, or at least die gracefully. |
|
||
| Error Description: The second sentence paragraph #3 reads, Although figure 7.8 may seem confusing, it is just a restatement of figure 7.2 in a somewhat more abbreviated format. The figure tells us that 32-bit data quantities, called longs or long words are stored in memory with the most..... | ||
| Correction: Should read, The figure tells us that 32-bit data quantities, called longs or long words, are stored in memory with the most..... |
|
||
| Error Description: The last sentence of the second-from-last paragraph, The Motorola 68K instruction set is one of the most studied ISAs around and your can find an incredible number of hits if you do a Web search on "68K" or "68000. | ||
| Correction: Should read, The Motorola 68K instruction set is one of the most studied ISAs around and you can find an incredible number of hits if you do a Web search on "68K" or "68000. |
|
||
| Error Description: The seventh line down from the top in the left side of figure 7.9 reads, 0000412E 67000008 | ||
| Correction: Should read, 00000412E 67000008 |
|
||
| Error Description: There is an inconsistency in the use of the word opcode. It is spelled several different ways ( Op Code, Op-code etc.) | ||
| Correction: Should be spelled as, opcode. |
|
||
| Error Description: The second sentence paragraph #3 reads, This is because fonts with fixed spacing, like "courier", keep the characters in column.... | ||
| Correction: Should read, This is because fonts with fixed spacing, like "Courier", keep the characters in column.... |
|
||
| Error Description: The first sentence paragraph #4 reads, The part of the instruction that tells the computer what to do, is called...... | ||
| Correction: Should read, The part of the instruction that tells the computer what to do is called..... |
|
||
| Error Description: The fifth sentence of paragraph #5 reads, You might be questioning the sanity of this instruction but it is actually very useful. | ||
| Correction: Should read, You might be questioning the sanity of this instruction, but it is actually very useful. |
|
||
| Error Description: The second sentence of the second paragraph under Label reads, These labels correspond to the memory locations of the instructions, "MOVE.B (A2),D6" and "BRA TEST_LOOP" respectively. | ||
| Correction: Should read, These labels correspond to the memory locations of the instructions, "MOVE.B (A2),D6" and "STOP #EXIT", respectively. |
|
||
| Error Description: The last sentence paragraph #1 reads, The important point is that assembly language code is not self-documenting, and it is easy for you to forget, after a day or so goes, exactly what you were trying to do with that algorithm. | ||
| Correction: Should read, The important point is that assembly language code is not self-documenting, and it is easy for you to forget, after a day or so goes by, exactly what you were trying to do with that algorithm. |
|
||
| Error Description: The first and second sentences of paragraph #2 read, Assembly code should be profusely commented. Not only for your sanity, but for the people who will have to maintain your code after you move on. | ||
| Correction: Should read, Assembly code should be profusely commented, not only for your sanity, but for the people who will have to maintain your code after you move on. |
|
||
| Error Description: The third sentence of paragraph #2 reads, There is no reason that assembly code cannot be as easy to read as a well-document c++ program. | ||
| Correction: Should read, There is no reason that assembly code cannot be as easy to read as a well-documented c++ program. |
|
||
| Error Description: The last sentence of paragraph #2 reads, Finally comment each... | ||
| Correction: Should read, Finally, comment each... |
|
||
| Error Description: The third sentence of paragraph #5 reads, The address modes also tell the processor ... | ||
| Correction: Should read, The addressing modes also tell the processor ... |
|
||
| Error Description: The last sentence of paragraph #5 reads, Thus, unlike C, C++ or JAVA, we'll need to develop a certain level of understanding for the machine that we're programming before we can actually write a program. | ||
| Correction: Should read, Thus, unlike C, C++, or JAVA, we'll need to develop a certain level of understanding of the machine that we're programming before we can actually write a program. |
|
||
| Error Description: The first sentence on the page reads, It might be worthwhile and stop for a moment to reflect on why... | ||
| Correction: Should read, It might be worthwhile to stop for a moment in order to reflect on why... |
|
||
| Error Description: The second sentence of paragraph #4 reads, Many experience programmers will argue that any code that must be absolutely deterministic cannot be written in C, because you cannot predict ahead of time the execution time for the code generated by the compiler. | ||
| Correction: Should read, Many experienced programmers will argue that any code that must be absolutely deterministic cannot be written in C, because you cannot predict the execution time for the code generated by the compiler. |
|
||
| Error Description: The fourth sentence of paragraph #4 reads, Also, certain parts of the run time environment must be written in assembly because you need to be able to establish the C runtime environment. Thus, boot-up code tends to be written in assembly. | ||
| Correction: Should read, Also, certain parts of the start-up code for the C runtime environment must be written in assembly because programs written in C or C++ can't run properly unless the run-time environment is established before the C code can begin to execute. Thus, boot-up code tends to be written in assembly. .. |
|
||
| Error Description: The last sentence of paragraph #4 reads, If you’ve ever been program in a programming environment such as Microsoft’s Visual C++® and while you are debugging your code you inadvertently step into a library function, you will then find yourself knee-deep in x86 assembly language. | ||
| Correction: Should read, If you’ve ever programmed in an environment such as Microsoft’s Visual C++® and inadvertently stepped into a library function, you will then have found yourself knee-deep in x86 assembly language. |
|
||
| Error Description: The second sentence of paragraph #5 reads, Since Motorola has a large number of family members this particular architecture is also referred to as CPU16. | ||
| Correction: Should read, Since Motorola has a large number of family members, this particular architecture is also referred to as CPU16. |
|
||
| Error Description: The second sentence bullet item #1 reads, As soon as the current instruction is decoded by the processor the program counter ... | ||
| Correction: Should read, As soon as the current instruction is decoded by the processor, the program counter ... |
|
||
| Error Description: The caption for figure 7.12 reads, Programmer's model of the 68K processor | ||
| Correction: Should read, Programmer's model of the 68K processor. |
|
||
| Error Description: The last sentence of paragraph #5 reads, For example, the BLT instruction (branch less than) is define by: | ||
| Correction: Should read, For example, the BLT instruction (branch less than) is defined by: |
|
||
| Error Description: The last sentence on the page reads, tells the processor to copy the 16-bit value stored in memory location 0x4000AA00 to memory location 0x10003000. | ||
| Correction: Should read, tells the processor to copy the 16-bit value stored in memory location $4000AA00 to memory location $10003000. |
|
||
| Error Description: The last sentence of paragraph #3 reads, In this example, the source effective address mode is called data register direct and the destination effective address mode is absolute. | ||
| Correction: Should read, In this example, the mode used for the source effective address is called data register direct and the mode used for the destination effective address mode is called absolute. |
|
||
| Error Description: The last sentence of paragraph #4 reads, The source effective address is address register direct and the destination effective address is data register direct. | ||
| Correction: Should read, The source effective address made is address register direct and the destination effective address mode is data register direct. |
|
||
| Error Description: The second sentence at the top of the page reads, This is an example of the "immediate address mode." | ||
| Correction: Should read, The second sentence at the top of the page reads, This is an example of the "immediate" addressing mode. |
|
||
| Error Description: Bullet #1 reads, Heading: ADDI | ||
| Correction: The colon after the word "Heading" should also be in italics. |
|
||
| Error Description: Bullet #6 reads, Condition Codes: | ||
| Correction: Should read, Condition Codes: (Should be italicized) |
|
||
| Error Description: Bullet #8 reads, Instruction fields: | ||
| Correction: Should read, Size Field: |
|
||
| Error Description: The heading below Bullet #8 reads, Size filed- Specifies the size of the operation: | ||
| Correction: Should read, Specifies the size of the operation: |
|
||
| Error Description: The first sentence of paragraph #1 reads, Assembly language program, due... | ||
| Correction: Should read, Assembly language programs, due... |
|
||
| Error Description: The second sentence of paragraph #1 reads, In general, flow charts are not used to plan programs written in a high-level language such as C or C++, however, flow charts .... | ||
| Correction: Should read, In general, flow charts are not used to plan programs written in a high-level language such as C or C++. However, flow charts .... |
|
||
| Error Description: The third sentence of paragraph #3 reads, Once the environment is established the next operation is to "run the self-tests." | ||
| Correction: Should read, Once the environment is established, the next operation is to "run the self-tests." |
|
||
| Error Description: In Figure 7.18 keyboard is written as two words, key board | ||
| Correction: Should be one word, keyboard |
|
||
| Error Description: The second and third from last sentences on the page read, There are no type checks or compiler warnings. Just you and the machine, mano a mano. | ||
| Correction: Should read, There are no type checks or compiler warnings; just you and the machine, mano a mano. |
|
||
| Error Description: The first complete sentence at the top of the page reads, You must keep in mind how much memory you have and where it is located; the locations of your peripheral devices and how to access them. | ||
| Correction: Should read, You must keep in mind how much memory you have, where it is located, the locations of your peripheral devices, and how to access them. |
|
||
| Error Description: The second sentence of paragraph #2 reads, To do that you would need a computer that was based on a 68K family processor, such as the original Apple MacIntosh® | ||
| Correction: Should read, To do that you would need a computer that was based on a 68K family processor, such as the original Apple Macintosh®. |
|
||
| Error Description: The third and fourth sentences of paragraph #2 read, We'll approach it in a different way. We'll use a program called an instruction set simulator (ISS) to take the place of the 68K processor. | ||
| Correction: Should read, We'll approach it in a different way by using a program called an instruction set simulator (ISS) to take the place of the 68K processor. |
|
||
| Error Description: In the second paragraph MacIntosh® is misspelled | ||
| Correction: Should be spelled Macintosh® |
|
||
| Error Description: The fourth paragraph from the top it
reads, This is a much newer simulator and has extensive debugging support that is lacking in the Easy68K version |
||
| Correction: It should read reads, This is a much newer simulator and has extensive debugging support that is lacking in the Teesside version |
|
||
| Error Description: In the middle of the fourth paragraph from the top it reads, Both simulators were designed to run under the Windows operating system Also, …. (Period is missing before the word "Also") | ||
| Correction: Should read, Both simulators were designed to run under the Windows operating system. Also, …. |
|
||
| Error Description: The last sentence of paragraph #5 before the bulleted list reads, You can do many of the debugger operations that you are use to, such as | ||
| Correction: Should read, You can do many of the debugger operations that you are used to, such as: |
|
||
| Error Description: The first sentence of paragraph #6, after the bulleted list reads, In general, the steps to create and run an assembly language program are simple and straight forward. | ||
| Correction: Should read, In general, the steps to create and run an assembly language program are simple and straightforward. |
|
||
| Error Description: The first sentence after the numerical list reads, In the Teesside assembler, the assembly language program runs on a simulated computer with 1M byte of memory occupying..... | ||
| Correction: Should read, In the Teesside assembler, the assembly language program runs on a simulated computer with 1 Mbyte of memory occupying..... |
|
||
| Error Description: The second sentence at the top of the page reads, While C and C++ are free form languages.... | ||
| Correction: Should read, While C and C++ are free-form languages.... |
|
||
| Error Description: The second sentence of the first bulleted item reads, This is not necessarily where the program might be loaded into memory, it is only telling the assembler where you intend for it to run. | ||
| Correction: Should read, This is not necessarily where the program might be loaded into memory; it is only telling the assembler where you intend for it to run. |
|
||
| Error Description: The last sentence of the first bulleted item reads, Therefore, the first line of you program should be | ||
| Correction: Should read, Therefore, the first line of your program should be: |
|
||
| Error Description: The first sentence of paragraph #3 reads, The equate directive, like the "#define" directives in C and C++, are instruction to the C assembler..... | ||
| Correction: Should read, The equate directive, like the "#define" directive in C and C++, is an instruction to the C compiler..... |
|
||
| Error Description: The first sentence of the bulleted item "SET" reads, SET is like EQU except that set may be used to redefine a symbol to another value later on. | ||
| Correction: Should read, SET is like EQU except that SET may be used to redefine a symbol to another value later on. |
|
||
| Error Description: The lines under the "SYMBOL TABLE
INFORMATION" reads,
Symbol-name Type Value Decl Cross reference line numbers COMPARE LABEL 00000406 13 14. START LABEL 00000400 11 12. TEST LABEL 00000404 12 * * NOT USED * * WAIT LABEL 00000408 14 * * NOT USED * * |
||
| Correction:
Should read,
COMPARE LABEL 00000406 13 14. START LABEL 00000400 11 12. TEST LABEL 00000404 12 * * NOT USED * * WAIT LABEL 00000408 14 * * NOT USED * * |
|
||
| Error Description: The first two lines of the assembly
language program under the heading "Analysis of an Assembly Language
Program" read,
ORG $400 *Start of code MOVE.B Y,D0 *Get the first operand |
||
| Correction:
Should read,
ORG $400 *Start of code MOVE.B Y,D0 *Get the first operand |
|
||
Error Description: The first sentence of paragraph #1
reads,
Notice how the
OPT CRE
directive creates a symbol table of the labels that you've defined in your
program, their value, the line numbers ... |
||
Correction:
Should read,
Notice how the
OPT CRE
directive creates a symbol table of the labels that you've defined in your
program, their values, the line numbers ... |
|
||
| Error Description: The item labeled Line 3 reads, Adds the byte number 24 ($18) to the contents of D0 and store the result in D0. | ||
| Correction: Should read, Adds the byte number 24 ($18) to the contents of D0 and stores the result back into D0. |
|
||
| Error Description: The item labeled Line 4 reads, Move the byte of data from D0 to memory location $601. | ||
| Correction: Should read, MOVE the byte of data from D0 to memory location $601. (Consistent with line 2) |
|
||
| Error Description: The last bulleted item reads, Analyzing a simple assembly language program. | ||
| Correction: Should read, Analyzing a simple assembly language program |
|
||
| Error Description: Footnote #4 reads, http://a.clements@uk.ac.tees | ||
| Correction: Should read, http://www-scm.tees.ac.uk/users/a.clements/ |
|
||
| Error Description: The second sentence of paragraph #3 reads, It actually doesn't help very much to work through the various instructions themselves, because once you're familiar with the Programmer's Model of the 68K and the addressing modes, you should be able find the .... | ||
| Correction: Should read, It actually doesn't help very much to work through the various instructions themselves, because once you're familiar with the Programmer's Model of the 68K and the addressing modes, you should be able to find the .... |
|
||
| Error Description: The first sentence at the top of the page reads, Up to now, we’ve only looked at positive number from the perspective ... | ||
| Correction: Should read, Up to now, we’ve only looked at a positive number from the perspective ... |
|
||
| Error Description: The first sentence of paragraph #2 reads, In order to convert a number from positive to negative we convert it to it’s two’s complement representation. | ||
| Correction: Should read, In order to convert a number from positive to negative we convert it to its two’s complement representation. |
|
||
| Error Description: In Step 1, the last sentence reads, The complement of 00 if $FF, and so on. | ||
| Correction: Should read, The complement of 00 is $FF, and so on. |
|
||
| Error Description: The first sentence of the paragraph after Step 2: reads, Two’s complement is a version a method of subtraction called radix complement | ||
| Correction: Should read, Two’s complement is a version of a method of subtraction called radix complement |
|
||
| Error Description: The second sentence of the paragraph after Step 2: reads, This method of subtraction will work properly if you are working base, 2, 8, 10, 16 or any other base system. | ||
| Correction: Should read, This method of subtraction will work properly if you are working base 2, 8, 10, 16 or any other base system. |
|
||
| Error Description: The fourth sentence of paragraph #1 reads, In the following C++ program bigNumber is a 32-bit integer, initialized to just below the maximum value positive value for an integer..... | ||
| Correction: Should read, In the following C++ program, bigNumber is a 32-bit integer, initialized to just below the maximum positive value for an integer.... |
|
||
| Error Description: The second from last sentence of paragraph #1 reads, As we loop and increment the number 10 times, we will eventually exceed the maximum allowable value for the number. | ||
| Correction: Should read, As we loop and increment the number ten times, we will eventually exceed the maximum allowable value for the number. |
|
||
| Error Description: In the bottom paragraph, second
sentence, it reads, You need to consider the state of the overflow bit overflow bit. |
||
| Correction: Should read, You need to consider the state of the overflow. |
|
||
| Error Description: In the inset box at the bottom of the page the numbers read, 214748361,214748362, ... ,214748367 | ||
| Correction: Should read, 2147483641,2147483642,...,2147483647. |
|
||
| Error Description: The code segment after paragraph #4
reads,
float a; |
||
| Correction: Should read,
float a; else |
|
||
| Error Description: The last sentence of the second paragraph from the bottom reads, I’m sure that you, as software professionals, would ever write this kind of an if statement because you know that the test could erroneously pass or fail do to progressive round-off and conversion errors. | ||
| Correction: Should read, I’m sure that you, as software professionals, would never write this kind of an if statement because you know that the test could erroneously pass or fail due to progressive round-off and conversion errors. |
|
||
| Error Description: The second sentence of the last paragraph reads, Just as we represent the fractional part of a decimal number as the base, 10, to progressively..... | ||
| Correction: Should read, Just as we represent the fractional part of a decimal number as the base 10 to progressively..... |
|
||
|
Error Description: Third sentence of the first paragraph reads, If continued the process for another step without adding another decimal digit, our number would have become: 101.010 x 25 |
||
| Correction: Should read, If we continued the process
for another step without adding another decimal digit, our number would have
become: 101.0010 x 25 |
|
||
| Error Description: The first sentence of the fourth paragraph reads, The IEEE-754 standard defines single, double and quad formats ..... | ||
| Correction: Should read, The IEEE-754 standard defines single, double and quadruple formats ..... |
|
||
| Error Description: Second and third sentences of the second paragraph from the bottom of the page reads, Thus, the mantissa form of the mantissa is similar to the way that we try to represent a decimal number in scientific notation. In general, a number in scientific notation is has a mantissa that is greater than 1 and less than 10, so that we have one digit to the left of the decimal point and then a fractional part. | ||
| Correction: Should read, Thus, the form of the mantissa is similar to the way that we try to represent a decimal number in scientific notation. In general, a number in scientific notation has a mantissa that is greater than 1 and less than 10, so that we have one digit to the left of the decimal point and then a fractional part. |
|
||
| Error Description: The sentence just above the two gray boxes reads, Consider the follow two code snippets: | ||
| Correction: Should read, Consider the following two code snippets: |
|
||
| Error Description: The first sentence of paragraph #5 reads, Both code snippets work equally well, but snippet #2 saves 1 instruction...... | ||
| Correction: Should read, Both code snippets work equally well, but snippet #2 saves one instruction...... |
|
||
| Error Description: The first sentence of the last paragraph reads, The state of the flags inside the condition code register, or CCR, (Z,N,V,X,C ) determines... | ||
| Correction: Should read, The state of the flags inside the condition code register, or CCR, (Z,N,V,X,C) determines... |
|
||
Error Description: The next-to-last sentence of the page reads,
We’ll be
using the
TRAP
instruction later on when we interface assembly language program to the ... |
||
Correction: Should read,
We’ll be using
the
TRAP
instruction later on when we interface assembly language programs to the ... |
|
||
| Error Description: The first sentence of the page reads, Status bits (flags) in the CCR may or may not change state with each the execution of each instruction. | ||
| Correction: Should read, Status bits (flags) in the CCR may or may not change state with each execution of each instruction. |
|
||
| Error Description: Second sentence of the first paragraph reads, It is customary to place the test instruction for the branch immediately in front of the branch instruction so that no other instruction will possibly alter the flag value. | ||
| Correction: Should read, Thus, as previously stated, it is customary to place the test instruction for the branch immediately in front of the branch instruction so that no other instruction will possibly alter the flag value. |
|
||
| Error Description: The fourth sentence of the second paragraph reads, Adding or subtracting an offset value to the contents of the PC before the next instruction is fetched from memory, causes the processor to fetch the instruction from a different location. | ||
| Correction: Should read, Adding or subtracting an offset value to or from the contents of the PC before the next instruction is fetched from memory causes the processor to fetch the instruction from a different location. |
|
||
| Error Description: The second sentence of the third paragraph from the bottom reads, If they are equal to each other the branch is taken to the instruction defined by the label done. | ||
| Correction: Should read, If they are equal to each other the branch is taken to the instruction defined by the label done. (done should be in bold courier type). |
|
||
| Error Description: The last sentence on the page reads, Here, we compare the contents of two address registers, A0 and A1, and that the branch if A0 is greater than or equal to A1. | ||
| Correction: Should read, Here we compare the contents of two address registers, A0 and A1, and then branch if A1 is greater than or equal to A0. Also note that I'll occasionally place a register in angle brackets. For example, <A0> = 0. This is just a shorthand way of saying "The contents of A0 = 0". |
|
||
| Error Description: The caption to Figure 8.2 reads, Summary of the conditional branch instructions and their meanings instructions and the way they are evaluated. | ||
| Correction: Should read, Summary of the conditional branch instructions and their meanings. |
|
||
| Error Description: The first sentence of the first full paragraph reads, Register direct addressing is the simplest of the addressing mode. | ||
| Correction: Should read, Register direct addressing is the simplest of the addressing modes. |
|
||
| Error Description: The second sentence after the four bullets reads, They are part of the architecture of the computer and they have the fastest access time in operations. | ||
| Correction: Should read, They are an integral part of the computer's architecture and they will generally have the fastest access time in most assembly language operations. |
|
||
| Error Description: From the third sentence of the second full paragraph on it reads, For example, the instruction MOVE.B (A0),D0 instructs the processor to load data register D0 with the contents of the memory location pointed to by address register A0. The source address register contains the address of the operand. The processor then accesses the operand pointed to by the address register and finally, the contents of the address register pointed to by A0 are copied to the data register. | ||
| Correction: Should read, For example, the instruction MOVE.W (A3),D7 instructs the processor to load data register D7 with the contents of the memory location pointed to by address register A3. The source address register contains the address of the operand. The processor then accesses the operand pointed to by the address register and finally, the contents of the address register pointed to by A3 are copied to the data register. |
|
||
| Error Description: The first sentence below the two shaded
code snippets reads, In Snippet #1 the opcode word is decoded to show
that the source EA is an absolute word. This means that the processor must
do a few things: Go out to memory and read the next word of the instruction. It reads in $0600. 1. Place $0600 on the address bus and read... |
||
|
Correction: Should read, In
Snippet #1 the opcode word is decoded to show that the source EA is an
absolute word. This means that the processor must do a few things: 2. Place $0600 on the address bus and read... |
|
||
| Error Description: The sentence numbered "1." from the bottom of the page reads, Go out to memory and read the next word of the instruction, It reads in $4000. | ||
| Correction: Should read, Go out to memory and read the next word of the instruction. It reads in $4000. (comma should be a period. ) |
|
||
| Error Description: The second sentence of paragraph #2 reads, The two MOVEA instructions are used to load the address registers, A0 and A1 with .... | ||
| Correction: Should read, The two MOVEA instructions are used to load the address registers, A0 and A1, with .... |
|
||
| Error Description: The first sentence at the top of the page reads, If MSB = 0, then the address will be the lower 32k (A0 . . . A14). | ||
| Correction: Should read, If MSB = 0, then the address will be the lower 32K (A0 . . . A14). |
|
||
| Error Description: The first sentence of the second paragraph reads, In words, this instruction will add the source effective address to the destination effective address and store the results in the destination effective address | ||
| Correction: Should read, In words, this instruction will add the contents of the source effective address to the contents of the destination effective address and replace the contents of the destination effective address with the new value. |
|
||
| Error Description: The third paragraph, first sentence reads, "If the instruction after the ADD.L (A3)+,D4 instruction resulted in a branch back of the program, then the result would keep adding the contents of successive memory locations to D0. | ||
| Correction: Should read, "If the instruction after the ADD.L (A3)+,D4 instruction resulted in a branch back of the program, then the result would keep adding the contents of successive memory locations to D4. |
|
||
| Error Description: The last sentence of paragraph 4 reads, The program adds together 5 byte number values stored in memory. | ||
| Correction: Should read, The program adds together five byte-sized number values stored in memory. |
|
||||||||||||||||
Error Description: In the coding example there is an
instruction sequence that reads,
|
||||||||||||||||
Correction: Should read,
|
|
||
| Error Description: The last three lines of the example
problem reads,
*Some dummy data |
||
|
Correction: Should read,
|
|
||
| Error Description: The first sentence of the last paragraph reads, The mode 3 and 4 address modes automatically increment the value in the address register after operand is fetched... | ||
| Correction: Should read, The mode 3 and 4 address modes automatically increment the value in the address register after the operand is fetched... |
|
||
| Error Description: The last bulleted item reads, Literal (immediate) addressing is used for constants that do not change. Its primary use is to initializes variables. | ||
| Correction: Should read, Literal (immediate) addressing is used for constants that do not change. Its primary use is to initialize variables. |
|
||
| Error Description: The second sentence of list item #4 reads, Since we are using the address register indirect with post incrementing mode, the contents of A0 automatically increments to point to the next byte in the string after the data is retrieved. | ||
| Correction: Should read, Since we are using the address register indirect with post incrementing mode, the contents of A0 are automatically incremented to point to the next byte in the string after the data is retrieved. |
|
||
| Error Description: The last sentence of list item #7 reads, Notice how lines 6 and 7 pair an instruction that compares two value with an instruction ... | ||
| Correction: Should read, Notice how lines 6 and 7 pair an instruction that compares two values with an instruction ... |
|
||
Error Description: The second sentence of paragraph #2 reads,
In
assembly language we must build our own constructs using the assembly
language instructions that are available to us,
Branch, Jump, Jump to Subroutine
(function call). |
||
Correction: Should read, In assembly language we must
build our own constructs using the assembly language instructions that are
available to us:
Branch, Jump, Jump to Subroutine
(function call). |
|
||
| Error Description: The first sentence of paragraph #4 reads, Loop construct in assembly language are similar to their C++ brethren. | ||
| Correction: Should read, Loop constructs in assembly language are similar to their C++ brethren. |
|
||
| Error Description: The coding examples beginning under the phrase C++ IF construct: have inconsistent spacing between the curly braces, { and }. | ||
|
Correction: All terms in curly braces should be of the form, {text}, with no spaces. |
|
||
| Error Description: The first assembly language example
under the sentence, "The assembly language analog is shown below:" reads,
MOVEA.W #start_addr,A2 *Initialize the loop conditions test_loop JSR subroutine *This is a function call in C++ CMPI.B #test_value,(A2)+ * Compare the new value BNE test_loop *The test condition is still true {Next set of instructions * { This code after the loop}
|
||
|
Correction: Should read,
MOVEA.W #start_addr,A2 *Initialize the loop conditions test_loop JSR subroutine *This is a function call in C++ CMPI.B #test_value,(A2)+ *Compare the new value BNE test_loop *The test condition is still true {Next set of instructions} *This code follows the loop
|
|
||
| Error Description: The 3 lines of assembly language
instructions under the heading "* System equates" reads,
load_val EQU
$FF * Byte to load
|
||
|
Correction: Should read,
load_val EQU $FF
*Byte to load |
|
||
| Error Description: The assembly language
program under the heading "Example #1 Brute Force Method" ends with the
instruction,
MOVE.B #load_val,$1003 *Load fourth value |
||
|
Correction: Should read,
MOVE.B #load_val,$1003 *Load fourth value MOVE.B #load_val,$1004 *Load fifth value MOVE.B #load_val,$1005 *Load sixth value STOP #$2700 *Return to the simulator END start *Stop assembling here |
|
||
| Error Description: Comments in the code examples use the word "Load" | ||
| Correction: Should read, "Store". Technically, "Load" means moving data from memory to the CPU and "Store" means moving data from the CPU to memory. Since these operations are data writes to memory, "Store" is the appropriate word to use. |
|
||
| Error Description: The first sentence of paragraph #3 reads, We can improve on Example #1 by using a data register to hold the data value, $FF, that we are moving to memory and we can also use an address register to point to the memory when we want to store the data. | ||
| Correction: Should read, We can improve on Example #1 by using a data register to hold the data value, $FF, that we are moving to memory and we can also use an address register to point to the memory where we want to store the data. . |
|
||
| Error Description: The last 2 lines of the assembly
language program under the heading, "Example #2, Using Registers" reads,
ADDA.W #01,A0 *Point to the next address MOVE.B D0,(A0) *Load second value |
||
|
Correction: Should read,
ADDA.W #01,A0 *Point to the next address MOVE.B D0,(A0) *Load second value ADDA.W #01,A0 *Point to the next address MOVE.B D0,(A0) *Load third value ADDA.W #01,A0 *Point to the next address MOVE.B D0,(A0) *Load fourth value ADDA.W #01,A0 *Point to the next address MOVE.B D0,(A0) *Load last value STOP #$2700 *Return to the simulator END pgm_start *Stop assembling
|
|
||
| Error Description: In Example #3, there are four comments that wrap around to the next line. | ||
| Correction: All comments should be on the same line, otherwise they appear as labels, which is incorrect. |
|
||
| Error Description: In the first full example program on the
page there are two instructions that read, MOVE.B D0,(A0)+ *Load first value MOVE.B D0,(A0)+ *Load fifth value |
||
| Correction: Should read, MOVE.B D0,(A0)+ *Load first value and increment MOVE.B D0,(A0)+ *Load fifth value and increment |
|
||
| Error Description: The last line in "Example #2 Using
Registers" reads, start_addr EQU $1000 *First address to load end_addr EQU $1000 *Last address to load |
||
| Correction: Should read, start_addr EQU $1000 *First address to load end_addr EQU $1000 *Last address to load |
|
||
| Error Description: The first block of instructions in
"Example #5 The FOR Loop Construct" reads,
load_val EQU
$FF * Byte to load |
||
| Correction: Should read,
load_val EQU
$FF *Byte to load |
|
||
| Error Description: The second sentence reads, That's better, but for this simple algorithm the value of the loop is hidden by the overhead or creating it. | ||
| Correction: Should read, That's better, but for this simple algorithm the value of the loop is hidden by the overhead of creating it. |
|
||
| Error Description: The first block of instructions in
"Example #6 Using the DBcc Instruction" reads, load_val EQU $FF * Byte to load pgm_start EQU $400 * Program runs here stack EQU $2000 *Put stack here |
||
| Correction: Should read,
load_val EQU
$FF *Byte to load |
|
||
| Error Description: The comment following the instruction, DBF D1,loop , reads, * Decrement loop counter and branch if D1 = -1 | ||
| Correction: Should read, * Decrement loop counter and branch if D1 != -1 |
|
||
| Error Description: The assembly language EQUATE instruction
that reads,
loop_ctr EQU 6 *Number of times through the loop |
||
| Correction: Should read,
loop_ctr EQU 5 *Number of times through the loop |
|
||
| Error Description: The first column of the second row of the table showing instruction execution time reads, MOVE,B D0,$1000 | ||
| Correction: Should read, MOVE.B D0,$1000 |
|
||
| Error Description: The third sentence of paragraph #2 reads, There are two special registers in the 68K architecture, A7 and A7’ that are dedicated to stack operations. | ||
| Correction: Should read, There are two special registers in the 68K architecture, A7 and A7’, that are dedicated to stack operations. |
|
||
| Error Description: The last sentence of the second-from-last paragraph reads, The post-increment mode accesses the current memory location on the stack and then increments, so the SP is pointing to the previous item on the stored on the stack. | ||
| Correction: Should read, The post-increment mode accesses the current memory location on the stack and then increments, so the SP is pointing to the previous item stored on the stack. |
|
||
| Error Description: The first sentence of paragraph #5 reads, Now that we have showed how... | ||
| Correction: Should read, Now that we have shown how... |
|
||
| Error Description: The second bullet of the list of three bulleted items reads, that all resources used by the subroutine (registers and memory) are properly saved before the subroutine uses them and restored when the subroutine returns, and restored when the subroutine returns, | ||
| Correction: Should read, make sure that all resources used by the subroutine (registers and memory) are properly saved before the subroutine uses them and restored when the subroutine returns, |
|
||
| Error Description: In Figure 8.6 the first note says, Initial value of the stack pointer, A7 The TOP of the stack. | ||
| Correction: For consistency and better clarity, it should read, Initial value of the stack pointer, SP (A7) The TOP of the stack. |
|
||
| Error Description: The fourth sentence of paragraph #3 reads, By saving the registers that you intend to use in the subroutine upon entry, and then restore them upon exit, .... | ||
| Correction: Should read, By saving the registers that you intend to use in the subroutine upon entry, and then restoring them upon exit, ..... |
|
||
| Error Description: The first sentence on the page reads, One caveat (Darn those caveats!). | ||
| Correction: Should read, One caveat (Darn those caveats!): |
|
||
| Error Description: The third sentence of paragraph #5 reads, Subroutines should always return to the point where they were invoked, the next instruction after the JSR instruction. | ||
| Correction: Should read, Subroutines should always return to the point where they were invoked; the next instruction after the JSR instruction. |
|
||
| Error Description: List item number 4, near the top of the page reads, The first instruction line of the subroutine must have label with the name of the subroutine. | ||
| Correction: Should read, The first instruction line of the subroutine must have a label with the name of the subroutine. |
|
||
| Error Description: The first sentence in List item #7 reads, Always return to point in the program where subroutine was called. | ||
| Correction: Should read, Always return to point in the program where the subroutine was called. |
|
||
| Error Description: In the fourth sentence of the first paragraph above the bulleted list, it reads, You PC does this every time you turn it on or press RESET. | ||
| Correction: Should read, Your PC does this every time you turn it on or press RESET. |
|
||
| Error Description: The fifth sentence of paragraph #2 under the heading "A Sample Program: The Gory Details" reads, Here's the plan. | ||
| Correction: Should read, Here's the plan: |
|
||
| Error Description: The first sentence of the paragraph at the bottom of the page reads, The highlighted areas..... | ||
| Correction: Should read, The bold areas in the following block of code illustrate the use of the load effective address, LEA, instruction to initialize an address in the stack pointer or other address register. {Note LEA should be in bold} |
|
||
Error Description: In the second to last sentence of the
page it reads,
"The subroutine call instruction,
JSR,
is italicized." |
||
Correction: Should read,
"The
subroutine call instruction,
JSR,
is italicized." |
|
||
| Error Description: The assembly language instruction reads,
JSR do_test * Go to the test |
||
| Correction: Should read,
{ Needs to be in italics } JSR do_test * Go to the test |
|
||
| Error Description: The sixth instruction from the bottom of
the page reads, CMPI.B #maxcnt, D7 * Have we max'ed out yet? |
||
| Correction: Should read,
{ Needs to be in italics } CMPI.B #maxcnt, D7 * Have we maxed out yet? |
|
||
| Error Description: The fifteenth instruction from the top
of the page reads,
BGE done *Quit program |
||
| Correction: Should read,
BLT test_loop *Keep going |
|
||
| Error Description: The last instruction on the page reads,
BGE do_test *go back and test the next addr |
||
| Correction: The second instruction of the subroutine should
read, check_loop MOVE.B (A2),(A0) *write the byte and the last instruction on the page should read, BGE check_loop *Go back and test the next addr |
|
||
| Error Description: The first two lines read, MOVEM.W (SP)+,A3/D1/D7 * Restore the registers exit RTS * return to test program |
||
| Correction: Should read,
MOVEM.W
(SP)+,A3/D1/D7 * Restore the registers |
|
||
| Error Description: The third sentence at the top of the page reads, The value defined by "end_tests" is similar... | ||
| Correction: Should read, The third sentence at the top of the page reads, The value defined by "end_test" is similar.... |
|
||
| Error Description: The first sentence at the top of the page reads, The data storage region contains out test patterns and the reserved memory for holding the count and the bad addresses. | ||
| Correction: Should read, The data storage region contains our test patterns and the reserved memory for holding the count and the bad addresses. |
|
||
| Error Description: The second code snippet reads,
* Data storage region tests DC.B
test1,test2,test3,test4,end_tests
* tests |
||
| Correction: Should read,
* Data storage region tests DC.B test1,test2,test3,test4,end_test * tests |
|
||
| Error Description: The second code snippet reads,
* Data storage region tests DC.B
test1,test2,test3,test4,end_tests * tests |
||
| Correction: Should read,
* Data storage region tests DC.B
test1,test2,test3,test4,end_test * tests |
|
||
| Error Description: The second code snippet reads,
* Data storage region tests DC.B
test1,test2,test3,test4,end_tests
* tests |
||
| Correction: Should read,
* Data storage region tests DC.B test1,test2,test3,test4,end_test * tests padding DC.B 00 * filler * The above byte is added to prevent a non-aligned access due to * five bytes being stored in the previous DC.B |
|
||
| Error Description: In the third bullet of the bulleted list at the bottom of the page it reads, The primary addressing modes of the 68K architecture | ||
| Correction: Should read, The primary addressing modes of the 68K architecture. (Missing the period at the end. |
|
||
| Error Description: The table associated with exercise #1 has an error. The bit pattern for the count #4 reads, 01010110 | ||
| Correction: Should read, 01100110 |
|
||
| Error Description: Exercise #3 reads, What is the value in register D0 after the highlighted instruction is completed? The error is that no instruction is highlighted. | ||
| Correction: The line containing the instruction: 00000420 C086 AND.L D6,D0 should be highlighted. |
|
||
| Error Description: The first sentence of Exercise #6 reads, Write a short 68K program that will add together two separate 64-bit values together and stores the result. | ||
| Correction: Should read, Write a short 68K program that adds together two separate 64-bit values together and stores the result. |
|
||
| Error Description: The second sentence of bullet #2 in Exercise #8 reads, When the serial device is ready to transmit the next character TBE = 1, or the signal, Transmit Buffer Empty is true. | ||
| Correction: Should read, When the serial device is ready to transmit the next character the Transmitter Buffer Empty signal, TBE, is true (TBE = 1). |
|
||
Error Description: The second and third bullets under
Exercise #10 reads,
|
||
Correction: Should read,
|
|
||
| Error Description: List item "d" reads, Main program code: Everything except subroutines are here. | ||
| Correction: Should read, Main program code: Everything except subroutines is here. |
|
||
| Error Description: The last sentence on the page reads, This worked in Win98SE at Win2000 at school. | ||
| Correction: Should read, This worked in Win98SE and Win2000 at school. |
|
||
| Error Description: The first sentence of paragraph #1 reads, Now that we’re sufficiently grounded in most of the 68K programming fundamentals, let’s move deeper into subject by examining.... | ||
| Correction: Should read, Now that we’re sufficiently grounded in most of the 68K programming fundamentals, let’s move deeper into the subject by examining.... |
|
||
| Error Description: The second sentence of the second paragraph under the heading, "Mode 5, Address Register....." reads, The form of the above instruction is represented in the Programmer’s Reference Manual as d16(An), which would lead you to believe that the value in the last example, $400, is a displacement value. | ||
| Correction: Should read, The form of the above instruction is alternately represented in the Programmer’s Reference Manual as (d16,An). Either form might lead you to believe that the value in the above example, $400, is a displacement value. |
|
||
|
Error Description: The first sentence of the third paragraph from the bottom notes the instruction, MOVE.W $100(PC),D4. |
||
| Correction: There should be another two paragraphs after
this paragraph. The new paragraphs are, Note that some assemblers may treat the displacement value, $100, as an absolute memory location and thus will calculate a displacement value from the current value of the Program Counter to memory location $00000100. They do this for consistency with the way displacement values are handled in branch instructions. For example, if you have the instruction, BNE FOO then the implied form of this instruction is actually, BNE FOO(PC). Here, the label, FOO is an absolute memory location, but for convenience the assembler will convert it to a displacement value. Different assemblers will handle the displacement field in different ways. Sorry, I'm only the messenger. |
|
||
| Error Description: The second sentence of paragraph #2 reads, When the instruction is executed, the address of the next instruction (current value of the PC) is placed on the stack and the displacement is added to the current value in the PC and the sum is returned to the PC. | ||
| Correction: Should read, When the instruction is executed, the address of the next instruction (current value of the PC) is placed on the stack, the displacement is added to the current value in the PC and the sum is returned to the PC. |
|
||
| Error Description: The third and fourth sentences in the paragraph just below the description of the MOVEA instruction reads, The reason is that we need to have a different representation is the size of the operation. Since the MOVEA instruction can only move word or long word values into an address register, we prevent the situation of inadvertently creating an illegal op-code. | ||
| Correction: Should read, The reason is that we need to have a different representation because of the limitations imposed by the size of the operation. Since the MOVEA instruction can only move word or long word values into an address register, we minimize the possibility that we would inadvertently create a non-aligned access situation. |
|
||
| Error Description: The second sentence of paragraph #2 under the heading "Shift and Rotate Instruction" reads, The characters are $31, $41, $30,$30. | ||
| Correction: Should read, The characters are $31, $41, $30 and $30. |
|
||
| Error Description: The fourth sentence of paragraph #2 under the heading "Shift and Rotate Instruction" reads, You consult a table of ASCII values, you'll see that these ASCII values represent the number $1A00, but how do we get from the four ASCII byte to decode our number $1A00? | ||
| Correction: Should read, If you consult a table of ASCII values, you'll see that they represent the number $1A00. But how do we get from these four ASCII bytes to our number $1A00? |
|
||
| Error Description: The fifth and sixth sentences of the last paragraph reads, Thus, if the instruction is ASL.B #3, D0 is executed and <D0> = $AB005501. After the byte portion of D0 is shifted three times <D0> = $AB005508. | ||
| Correction: Should read, Thus, if the instruction ASL.B #3, D0 is executed and <D0> = $AB005501 just prior to the instruction being executed; then after the instruction has completed the byte portion of D0 is shifted three times so that <D0> = $AB005508. |
|
||
| Error Description: In Figure 9.2 the last diagram shows ROXR, but it is labeled, ROXL-Roll Left | ||
| Correction: Should read, ROXR-Roll Right with Extend |
|
||
| Error Description: In Figure 9.2 the middle diagram on the right diagram shows ROXL, but it is labeled, ROXL-Roll Left | ||
| Correction: Should read, ROXL-Roll Left with Extend |
|
||
| Error Description: The last bulleted item reads, When
a memory location is involved, only one bit is shifted at a time and the only word operands are allowed. |
||
| Correction: Should read, When a memory location is involved, only one bit is shifted at a time and only word operands are allowed. |
|
||
| Error Description: The comment block at the top of the page
reads, ****************************************************** * Get_value * Converts 4 ASCII values to a 4-digit * Input Parameters: None * Assumptions: The buffer, ascii_val contains 4 valid ascii * characters * in the range of 0...9, A...F, or a...f ****************************************************** |
||
| Correction: Should read,
****************************************************** * Get_value * Converts 4 ASCII values to a 4-digit number * Input Parameters: None * Assumptions: The buffer, ascii_val contains 4 valid ascii * characters in the range of 0...9, A...F, or a...f ****************************************************** |
|
||
| Error Description: The second comment line at the top of the page reads, Converts 4 ASCII values to a 4-digit | ||
| Correction: Should read, Converts 4 ASCII values to a 4-digit HEX value |
|
||
| Error Description: The comment on the instruction located 7 lines from the bottom ( ASL.W #4,D0 ) reads, Move left 8 bits. | ||
| Correction: Should read, Move left 4 bits. |
|
||
| Error Description: The third instruction of the subroutine
"strip_ascii" reads,
CMP.B #$46,D0 * Is is A...F? |
||
| Correction: Should read,
CMP.B #$46,D0 * Is it A...F? |
|
||
| Error Description: In the subroutine, strip_ascii, there
are two instructions, BMI sub30 *It's a number BMI sub37 *It's A...F |
||
| Correction: Should read,
BLE sub30 *It's a number BLE sub37 *It's A...F |
|
||
| Error Description: In the table labeled, Summary of Arithmetic Instructions, the entry for the instruction, SUBA, reads Subtract Address | ||
| Correction: Should read, Subtract address |
|
||
| Error Description: In the table labeled, Summary of Privileged Instructions, the entry reads, TRAPV | ||
| Correction: Should read, TRAPV |
|
||
| Error Description: The first sentence of paragraph #2 reads, As you can see, we have quite a variety of 68K instructions available to us to use to solve a wide variety of real-world programming problems. | ||
| Correction: Should read, As you can see, we have quite a variety of 68K instructions to use to solve a wide variety of real-world programming problems. |
|
||
| Error Description: The last sentence of paragraph #2 reads, As you’ll see in the next lesson the fact that most problems are solved using a fraction of the available instructions has led to the modern computer architecture, the reduced instruction set computer, or RISC. | ||
| Correction: Should read, As you’ll see in the next lesson, the fact that most problems are solved using a fraction of the available instructions has led to the modern computer architecture, the reduced instruction set computer, or RISC. |
|
||
| Error Description: The first sentence after the three bullets at the top of the page reads, Once you've set-up the three registers, you call TRAP #15 as an instruction in your program and you're message will be printed to the display. | ||
| Correction: Should read, Once you've set-up the three registers, you call TRAP #15 as an instruction in your program and your message will be output to the simulator's display window. |
|
||
| Error Description: The block labeled “SECT” at the bottom of the page reads, SECT: A pseudo-op that indicates that is a relocatable… | ||
| Correction: Should read, SECT: A pseudo-op that indicates that it is a relocatable… |
|
||
| Error Description: The last sentence of paragraph #2 reads, However, for our purposes, this “old-fashioned” compiler allows to see exactly what is going on. | ||
| Correction: Should read, However, for our purposes, this “old-fashioned” compiler allows you to see exactly what is going on. |
|
||
| Error Description: The comment on the instruction 5 lines
up from the bottom of the page reads, * main goes out of scope |
||
| Correction: Should read, * function goes out of scope |
|
||
| Error Description: The last sentence on the page reads, We’ll indicate the current value of the stack frame pointer, A6 in light gray and the stack pointer, SP, in dark gray, as shown below. | ||
| Correction: Should read, We’ll indicate the current value of the stack frame pointer, A6 in dark gray and the stack pointer, SP, in light gray, as shown below. |
|
||
| Error Description: The first sentence of the second paragraph on the page reads, The stack frame is simple the variable storage region that the compiler establishes on the stack for the variables of its function. | ||
| Correction: Should read, The stack frame is simply the variable storage region that the compiler establishes on the stack for the variables of its function. |
|
||
| Error Description: The second sentence of paragraph #2 reads, A disassembler is a program that examines the machine code in memory and attempts to convert it back to machine language. | ||
| Correction: Should read, A disassembler is a program that examines the machine code in memory and attempts to convert it back to assembly language. |
|
||
| Error Description: The second sentence of paragraph #3 reads, The op-code word contains an opcode, which tells the computer (what to do), and it also contains zero, one or two effective address fields (EA). | ||
| Correction: Should read, The op-code word contains an op-code, which tells the computer what to do. In addition, the op-code word contains zero, one or two effective address fields (EA). |
|
||
| Error Description: The second sentence of the last paragraph reads, …but it can’t tell us what is the actual value of the immediate operand. | ||
| Correction: Should read, …but it can’t tell us the actual value of the immediate operand. |
|
||
| Error Description: The first sentence of paragraph #2 reads, The effective address field is a 6-bit wide field that is further subdivided into two, 3-bit fields… | ||
| Correction: Should read, The effective address field is a 6-bit wide field that is further subdivided into two 3-bit fields… |
|
||
| Error Description: The second sentence of paragraph #2 reads, The 3-bit wide mode field can specify one of 8 possible addressing modes and the register filed can specify one of 8 possible registers, or a subclass for the mode field. | ||
| Correction: Should read, The 3-bit wide mode field can specify one of 8 possible addressing modes, and the register filed can specify one of 8 possible registers, or a subclass for the mode field. |
|
||
| Error Description: The fourth sentence of paragraph #2 from the bottom of the page reads, This specifies several one of 8 subdivisions for the instruction. | ||
| Correction: Should read, This specifies one of 8 subdivisions for the instruction. |
|
||
| Error Description: The first sentence on the page reads, The JMP (Jump) and JSR (Jump to Subroutine) are also single operand.. | ||
| Correction: Should read, JMP (Jump) and JSR (Jump to Subroutine) are also single operand.. |
|
||
| Error Description: The last sentence of the last paragraph reads, Consider Figure 9.3 | ||
| Correction: Should read, Consider Figure 9.3. In addition, the first paragraph on the next page should be appended as the next sentence immediately after the period on page 256. |
|
||
| Error Description: The first sentence of the first paragraph reads, ...contained in bits 6, 7 and 8, define... | ||
| Correction: Should read, ...contained in bits 6, 7, and 8, define... |
|
||
| Error Description: The last word of the first paragraph reads, Other.. And the first sentence of the second paragraph begins with the lowercase phrase classes of instructions.... | ||
| Correction: The blank line between Other and classes should be removed. They are all part of the same paragraph. |
|
||
| Error Description: The address bus in Figure 9.4 is labeled, A1-A23 | ||
| Correction: Should read, A1-A17 |
|
||
| Error Description: The three interrupt priority pins in Figure 9.4 are labeled, ~IPL0, ~IPL1 and ~IPL2 | ||
| Correction: Should read, ~IP0, ~IP1 and ~IP2 |
|
||
| Error Description: The last sentence on the page reads, Also, we don't want the EE's getting too upset with us. | ||
| Correction: Should read, Also, we don't want the EEs getting too upset with us. |
|
||
| Error Description: The first sentence on the page reads, Referring to the address bus of Figure 9.4, we see.... | ||
| Correction: Should read, Referring to the address bus, as shown in Figures 9.4 and 9.5, we see... |
|
||
| Error Description: The last sentence of the last paragraph reads, Strictly speaking this... | ||
| Correction: Should read, Strictly speaking, this... |
|
||
| Error Description: The /CS and /OE pins on the RAM LOW chip in Figure 9.5 are labeled, ~CS and ~OE, whereas on the other chips they are labeled as /CS and /OE (with the bar over the top). | ||
| Correction: Should be labeled as /CS and /OE (with the bar over the top). |
|
||
| Error Description: The second sentence at the top of the page reads, The 68K uses 3 active LOW.... | ||
| Correction: Should read, The 68K uses three active LOW.... |
|
||
| Error Description: The fourth sentence from the top of the page reads, We'll study interrupts in the next chapter. | ||
| Correction: Should read, We'll study interrupts in chapter 12. |
|
||
| Error Description: The fifth sentence at the top of the page reads, The inputs to the Interrupt Controller are 7 active low inputs labels INT1 - INT7. | ||
| Correction: Should read, The inputs to the Interrupt Controller are seven active low inputs labeled INT1 - INT7. |
|
||
| Error Description: The third bullet point reads , Using the TRAP #15 instruction to simulated I/O. | ||
| Correction: Should read, Using the TRAP #15 instruction to simulate I/O. |
|
||
| Error Description: The fourth bullet point reads, How a program, written in C executes and how the C compiler... | ||
| Correction: Should read, How a program written in C executes, and how the C compiler... |
|
||
| Error Description: Exercise 7. reads, Convert the memory test program from Chapter 9, exercise #9,..... | ||
| Correction: Should read, Convert the memory test program from Chapter 8, exercise #10,..... |
|
||
| Error Description: Problem 1, reads, Extend the memory test program (Chapter 9, exercise #9).. | ||
| Correction: Should read, Extend the memory test program (Chapter 8, exercise #10).. |
|
||
| Error Description: The last sentence of paragraph #1 reads, It was also somewhat easier to interface to then the 8080. | ||
| Correction: Should read, It was also somewhat easier to interface to than the 8080. |
|
||
| Error Description: Line 6 from the bottom reads,…to the 8086 with the exception of of an 8-bit eternal data bus, | ||
| Correction: Should read, …to the 8086 with the exception of of an 8-bit external data bus, |
|
||
| Error Description: The last sentence of paragraph #2 reads, Today, it could be agued that Intel.... | ||
| Correction: Should read, Today, it could be argued that Intel.... |
|
||
| Error Description: The next-to-last sentence on the page reads, Although Zilog survived to this day, ... | ||
| Correction: Should read, Although Zilog survives to this day, ... |
|
||
| Error Description: The last sentence on the page reads, This should be a lesson that all software developers who miss their delivery targets should take this classic example of a missed schedule delivery to heart. | ||
| Correction: Should read, This classic example of the results of a schedule slip is a lesson that all software developers should take to heart. |
|
||
| Error Description: The first sentence on line two reads, As a post-script,… | ||
| Correction: Should read, As a postscript,… |
|
||
| Error Description: The third sentence of paragraph #4 reads, The follow on processors… | ||
| Correction: Should read, The follow-on processors… |
|
||
| Error Description: The first sentence of the last paragraph reads, As we begin to study the 8086 architecture and instruction set architecture it will become obvious that so much of focus is on the DOS operating system and the PC run time environment. | ||
| Correction: Should read, As we begin to study the 8086 architecture and instruction set architecture it will become obvious that so much of our focus is on the DOS operating system and the PC runtime environment. |
|
||
| Error Description: The second sentence of the last paragraph reads, From that perspective, we have an interesting counter example to the 68K …. | ||
| Correction: Should read, From that perspective, we have an interesting counter-example to the 68K …. |
|
||
| Error Description: The sentence paragraph #3 reads, Finally, mastering the basic instruction set architecture of the i86 requires a steeper learning curve then the 68K..... | ||
| Correction: Should read, Finally, mastering the basic instruction set architecture of the i86 requires a steeper learning curve than the 68K..... |
|
||
| Error Description: The last sentence of paragraph #4 reads, The registers on the right side of the diagram, which is labeled the bus interface unit,… | ||
| Correction: Should read, The registers on the right side of the diagram, which are labeled the bus interface unit,… |
|
||
| Error Description: The third sentence paragraph #2 reads, Data is output on the rising edge of and is read in on the falling edge of T3. | ||
| Correction: Should read, Data is output on the rising edge and is read in on the falling edge of T3. |
|
||
| Error Description: The fourth and fifth sentences of paragraph #4 read, The 20-bit wide address bus gives the 8086 1 MByte address range. Finally, 8086 does not place any restrictions on the word alignment of addresses. | ||
| Correction: Should read, The 20-bit wide address bus gives the 8086 a 1 MByte address range. Finally, the 8086 does not have any restrictions on the alignment of address words. |
|
||
| Error Description: The first sentence of the paragraph immediately above the heading "Flag Registers" reads, These pointer and index registers have one important difference with their 68K analogs. | ||
| Correction: Should read, These pointer and index registers have one important difference with respect to the comparable 68K registers. |
|
||
| Error Description: The second sentence of the paragraph under "3. Direct Mode" reads, The Direct Mode is closest to the 68K's absolute addressing mode, however, the difference is that there is always the implied presence of the segment register need to complete the physical address. | ||
| Correction: Should read, The Direct Mode is closest to the 68K's absolute addressing mode, however, the difference is that there is always the implied presence of the segment register needed to complete the physical address. |
|
||
| Error Description: The sentence after "5. Based Mode:" reads, The memory operand is the sum of the contents of the base register, BX or BP and the 8-bit or 16-bit displacement value. | ||
| Correction: Should read, The memory operand is the sum of the contents of the base register, BX or BP, and the 8-bit or 16-bit displacement value. |
|
||
| Error Description: The last sentence reads, The following code snippet writes the value 055h to memory .... | ||
| Correction: Should read, he following code snippet writes the value 0AAh to memory .... |
|
||
| Error Description: The sentence after "7. Based Index Mode:" reads, The memory operand offset is the sum of the contents of one of the base registers, BP or BX and one of the displacement registers, DI or SI. | ||
| Correction: Should read, The memory operand offset is the sum of the contents of one of the base registers, BP or BX, and one of the displacement registers, DI or SI. |
|
||
| Error Description: The sentence after "8. Based Index Mode with Displacement:" reads, The memory operand offset is the sum of the contents of one of the base registers, BP or BX, one of the displacement registers, DI or SI and an 8-bit or 16-bit displacement. | ||
| Correction: Should read, The memory operand offset is the sum of the contents of one of the base registers, BP or BX, one of the displacement registers, DI or SI, and an 8-bit or 16-bit displacement. |
|
||
| Error Description: The last sentence on the page reads, The Operand Address Byte gives us the mod value 10, which tells us that there is a displacement field present that must be used to calculate the offset address and it is off the form disp-high:disp-low. | ||
| Correction: Should read, The Operand Address Byte gives us the mod value 10, which tells us that there is a displacement field present that must be used to calculate the offset address and it is of the form disp-high:disp-low. |
|
||
| Error Description: The first sentence of the last paragraph reads, Just as with the MOVE instruction of the 68K family, the MOV instruction is probably the most oft- used instruction in the instruction set. | ||
| Correction: Should read, Just as with the MOVE instruction of the 68K family, the MOV instruction is probably the most often used instruction in the instruction set. |
|
||
| Error Description: The fourth sentence of the last paragraph reads, Note that not all of the instruction mnemonics are listed and some f the instructions have additional variations with unique mnemonics. | ||
| Correction: Should read, Note that not all of the instruction mnemonics are listed and some of the instructions have additional variations with unique mnemonics. |
|
||
| Error Description: The first sentence on the page reads, Also, the MOVS instruction automatically advances or decrements the DI and SI registers' contents, so, in order to do a string operation,.... | ||
| Correction: Should read, Also, the MOVS instruction automatically advances or decrements the DI and SI registers' contents, so in order to do a string operation,.... |
|
||
| Error Description: List item #2 at the top of the page reads, Initial the counting register, CX, | ||
| Correction: Should read, Initialize the counting register, CX, |
|
||
| Error Description: The fourth sentence of the paragraph just above the heading "Control Transfer" reads, Because the REPMOVSB is a rather complex instruction, it is reasonable to assume that it might take more clock cycles to execute then a simpler instruction. | ||
| Correction: Should read, Because the REPMOVSB is a rather complex instruction, it is reasonable to assume that it might take more clock cycles to execute than a simpler instruction. |
|
||
| Error Description: The last sentence of the paragraph just above the heading "Control Transfer" reads, However, in order to execute the 68K MOVE and DBcc instruction pair, we would also have to fetch each instruction from memory over an over again,...... | ||
| Correction: Should read, However, in order to execute the 68K MOVE and DBcc instruction pair, we would also have to fetch each instruction from memory over and over again,...... |
|
||
| Error Description: The second bulleted item, Near Label, reads, A 16-bit displacement value. The address of the instruction identified by the label is within the span of the current code segment. The value of | ||
| Correction: Should read, A 16-bit displacement value. The address of the instruction identified by the label is within the span of the current code segment. |
|
||
| Error Description: The last sentence above the heading, "Assembly Language..." reads, Well discuss this point later on this chapter. | ||
| Correction: Should read, We'll discuss this point later on this chapter. |
|
||
| Error Description: The fourth sentence of the third paragraph after the heading "Assembly Language..." reads, The newer, 32-bit versions are more problematic because the run older DOS programs in an emulation mode which may or may not ........ | ||
| Correction: Should read, The newer, 32-bit versions are more problematic because they run older DOS programs in an emulation mode which may or may not ........ |
|
||
| Error Description: The first sentence of the paragraph just above the bulleted list reads, In addition to identifying where in memory the various program segments will reside you need to provide the assembler (and the operating system with....... | ||
| Correction: Should read, In addition to identifying where in memory the various program segments will reside you need to provide the assembler and the operating system with....... |
|
||
| Error Description: The second sentence paragraph #2 reads, The 68K architecture had dominated the embedded systems world since it was first invented, but the ARM architecture has emerged as today’s most popular, 32-bit embedded processor. | ||
| Correction: Should read, The 68K architecture had dominated the embedded systems world since it was first invented, but the ARM architecture has emerged as today’s most popular 32-bit embedded processor. |
|
||
| Error Description: The first sentence of the last paragraph on the page reads, ARM Holdings plc was..... | ||
| Correction: Should read, ARM Holdings PLC was..... |
|
||
| Error Description: The first sentence full sentence on the page reads, It licenses its chip designs to partners such as VLSI Technology, Texas Instruments, Sharp, GEC Plessey and Cirrus logic who.... | ||
| Correction: Should read, It licenses its chip designs to partners such as VLSI Technology, Texas Instruments, Sharp, GEC Plessey and Cirrus Logic who.... |
|
||
| Error Description: The third full sentence on the page reads, In that sense it is no different then buying software... | ||
| Correction: Should read, In that sense it is no different than buying software... |
|
||
| Error Description: The second sentence of paragraph #4 reads, These parts became extremely popular in more cost- conscious applications.... | ||
| Correction: Should read, These parts became extremely popular in more cost-conscious applications.... |
|
||
| Error Description: The first sentence of paragraph #5 reads, Thus, we can talk about Motorola Microcontrollers that use… | ||
| Correction: Should read, Thus, we can talk about Motorola microcontrollers that use… |
|
||
| Error Description: The last sentence on the page reads, Data and instructions come in and are routed to either the instruction decoder or to one of general purpose register,..... | ||
| Correction: Should read, Data and instructions come in and are routed to either the instruction decoder or to one of the general purpose register,..... |
|
||
| Error Description: The fifth line from the bottom of the page reads, In addition to the standard ALU the ARM architecture... | ||
| Correction: Should read, In addition to the standard ALU, the ARM architecture... |
|
||
| Error Description: The second sentence of paragraph #2 reads, This is a very deferent concept from the dedicated… | ||
| Correction: Should read, This is a very different concept from the dedicated… |
|
||
| Error Description: The first sentence of paragraph #1 reads, The processor status register is divided up into 4 fields; Flags, Status, Extension and Control. | ||
| Correction: Should read, The program status register is divided up into 4 fields: Flags, Status, Extension and Control. |
|
||
| Error Description: The first sentence of paragraph #2 reads, All data manipulations take place in the register file, a group of 16, 32-bit wide, general- purpose registers. | ||
| Correction: Should read, All data manipulations take place in the register file, a group of 16, 32-bit wide, general-purpose registers. |
|
||
| Error Description: The first sentence of the last paragraph reads, When the processor is running in User Mode or System Mode the 13 general-purpose registers, sp ,lr, pc and cpsr registers are active. | ||
| Correction: Should read, When the processor is running in User Mode or System Mode the 13 general-purpose registers, sp , lr, pc and cpsr are active. |
|
||
| Error Description: The first sentence of paragraph #2 reads, Whenever the processor changes modes it must have be able to eventually return to the previous mode.... | ||
| Correction: Should read, Whenever the processor changes modes it must be able to eventually return to the previous mode.... |
|
||
| Error Description: The first sentence of paragraph #3 reads, Another unique feature of the ARM architecture is that the classes of instructions know as data processing instructions; including move instructions, arithmetic and logical instructions, comparison instructions and multiplication instructions, do not automatically change the state of the condition code flags. | ||
| Correction: Should read, Another unique feature of the ARM architecture is that the class of instructions known as data processing instructions; including move instructions, arithmetic and logical instructions, comparison instructions and multiplication instructions, do not automatically change the state of the condition code flags. |
|
||
| Error Description: The first and second sentence of the last paragraph reads, The ARM architecture supports both big endian and little endian data packing through the proper configuration of the core. However, the architecture does default to little endian as the native mode. | ||
| Correction: Should read, The ARM architecture supports both Big Endian and Little Endian data packing through the proper configuration of the core. However, the architecture does default to Little Endian as the native mode. |
|
||
| Error Description: The second sentence under "Example #4" reads, The resultant address must be an on an even boundary. | ||
| Correction: Should read, The resultant address must be on an even boundary. |
|
||
| Error Description: The fourth sentence of the paragraph #1 reads, After the transfer takes place the pointer register, RN, can optionally be updated by adding the '!' symbol to the instruction, just as is done the indexing address modes that we've just studied. | ||
| Correction: Should read, After the transfer takes place, the pointer register, RN, can optionally be updated by adding the '!' symbol to the instruction, just as is done with the indexing address modes that we've just studied. |
|
||
| Error Description: The third line from the bottom of the page reads, The stack pointer points an address that was the... | ||
| Correction: Should read, The stack pointer points to an address that was the... |
|
||
| Error Description: The first sentence of the paragraph in the middle of the page reads, The reverse subtract allow the two register operands used in the subtraction to be reversed, so that if Rd = Rn - Rm for the SUB instruction the instruction RSB would perform the operation Rn = Rm - Rn. | ||
| Correction: Should read, The reverse subtract instruction causes the two register operands used in the subtraction to be reversed, so that if Rd = Rn - Rm for the SUB instruction the instruction, RSB would perform the operation Rd = Rm - Rn. |
|
||
| Error Description: The third line from the bottom of the page reads, The above table should give you a sense of the syntax for the various forms of the single item data transfer instructions work and how they are coded.... | ||
| Correction: Should read, The above table should give you a sense of the syntax for the various forms of the single-item data transfer instructions; how they work and how they are coded.... |
|
||
| Error Description: The second sentence of the bullet point for the definition "Bit 21" reads, Since each data transfer is 4 bytes long, the memory pointer will be updates by 4 times the number of registers transferred. | ||
| Correction: Should read, Since each data transfer is 4 bytes long, the memory pointer will be updated by 4 times the number of registers transferred. |
|
||
| Error Description: The second sentence of the "Description" box for the instruction "LDMDB reads, Load register r8 first from the the address.... | ||
| Correction: Should read, Load register r9 first from the the address.... |
|
||
| Error Description: The first sentence of the paragraph #1 reads, There are two forms of the branch instruction; branch (B) and branch with link (BL). | ||
| Correction: Should read, There are two forms of the branch instruction: branch (B) and branch with link (BL). |
|
||
| Error Description: The second and third sentences of the paragraph #1 reads, Just like the 68K, the branch instruction in the ARM architecture is a pc-relative displacement. The displacement is added or subtracted from the current value of the pc and the pc is reloaded with this new value. | ||
| Correction: Should read, Just like the 68K, the branch instruction in the ARM architecture is a PC-relative displacement. The displacement is added or subtracted from the current value of the PC and the PC is reloaded with this new value. |
|
||
| Error Description: The first line reads, The last ARM instruction category that will look at contains... | ||
| Correction: Should read, The last ARM instruction category that we'll look at contains... |
|
||
| Error Description: The fourth sentence of paragraph #1 reads, Only three of the 16 registers user mode registers have dedicated... | ||
| Correction: Should read, Only three of the 16 user mode registers have dedicated... |
|
||
| Error Description: The fourth sentence of paragraph #3 reads, While a certain percentage of those of you reading these chapters may have found this as exciting as watching paint dry, these is a method to the madness. | ||
| Correction: Should read, While a certain percentage of those of you reading these chapters may have found this as exciting as watching paint dry, there is a method to the madness. |
|
||
| Error Description: The second sentence of the paragraph #1 reads, It is a nice environment for studying architecture, but that's about all its good for. | ||
| Correction: Should read, It is a nice environment for studying architecture, but that's about all it's good for. |
|
||
| Error Description: The fourth sentence of the paragraph #1 reads, Now, let's begin our discussion of computers and the real-world by consider Figure 12.1. | ||
| Correction: Should read, Now, let's begin our discussion of computers and the real world by consider Figure 12.1. |
|
||
| Error Description: The first sentence of the paragraph #1 reads, If we are going to accept the fact that we need to make some order out of the chaos of the real-world, we first need to understand how the real-world and ..... | ||
| Correction: Should read, If we are going to accept the fact that we need to make some order out of the chaos of the real world, we first need to understand how the real world and ..... |
|
||
| Error Description: The first paragraph on the page that begins with the word, "Interrupts" was accidentally replicated on page 326. | ||
| Correction: Replace the paragraph with the last two sentences to make a new paragraph that should read, Sometimes we are concerned with the window of time that is available to us to service the interrupt. If we are trying to capture and process a fast data stream, such as a digital video camcorder, and we don’t want to drop any frames, then we might give that interrupt a higher priority. |
|
||
| Error Description: The first sentence of the paragraph #4 reads, In many situations, particularly with operating systems such as Windows and Linux, the time it takes for the computer and operating system to respond to an interrupt, is unpredictable, and may not be fast enough, to reliably...... | ||
| Correction: Should read, In many situations, particularly with operating systems such as Windows and Linux, the time it takes for the computer and operating system to respond to an interrupt is unpredictable and may not be fast enough to reliably...... |
|
||
| Error Description: The next-to-last sentence of the paragraph #4 reads, However, the key is that we cannot predict with high confidence that under all conditions, that all tasks will be executed in order of their criticality... | ||
| Correction: Should read, However, the key is that we cannot predict with high confidence that under all conditions, all of the tasks will be executed in the correct order of their criticality... |
|
||
| Error Description: The fifth sentence of the paragraph #4 reads, We can also, have certain sequence of events cause the system to lock up. | ||
| Correction: Should read, We can also have a certain sequence of events cause the system to lock up. |
|
||
| Error Description: The fourth sentence of the paragraph #4 reads, We can also, have certain sequence of events cause the system to lock up. | ||
| Correction: Should read, We can also have a certain sequence of events cause the system to lock up. |
|
||
| Error Description: The last two sentences of the third paragraph on page 325 are identical to the first two sentences of the first paragraph on page 327. | ||
| Correction: The first two sentences on page 327 should be deleted and the remaining two sentences of the first paragraph on page 327 should be appended to the last paragraph on page 326. |
|
||
| Error Description: The second sentence of paragraph #3 reads, We won’t be concerned with how that is accomplished in this text, other than to realize that a lower priority interrupt must have to wait if a higher priority interrupt is being service. | ||
| Correction: Should read, We won’t be concerned with how that is accomplished in this text, other than to realize that a lower priority interrupt must have to wait if a higher priority interrupt is being serviced. |
|
||
| Error Description: The last sentence of the fourth paragraph reads, In both systems we use interrupts and status register are used to signal when data is available. | ||
| Correction: Should read, In both systems, interrupts and the status register are used to signal when data is available. |
|
||
| Error Description: The last sentence on the page reads, Figure 12.3, is a simple schematic diagram of an I/O port. | ||
| Correction: Should read, Figure 12.3 is a simple schematic diagram of an I/O port. |
|
||
| Error Description: The second sentence of paragraph #4 reads, Any bit position that has a "0" written to it makes the corresponding bit of the I/O port an input, any bit position that has a 0 written to it becomes an output. | ||
| Correction: Should read, Any bit position that has a "0" written to it makes the corresponding bit of the I/O port an input, any bit position that has a "1" written to it becomes an output. |
|
||
|
Error Description: The fifth sentence in the third paragraph reads, The value dereference... |
||
| Correction: Should read, The value dereferenced... |
|
||
|
Error Description: The last sentence in the third paragraph reads, The pointer is used to change the memory value or to read it, that’s all. |
||
| Correction: Should read, The pointer is used to change the memory value or to read it; that’s all. |
|
||
|
Error Description: The first bullet in the second set reads, ...we have no guarantee if the data is valid or garbage. |
||
| Correction: Should read, ...we have no guarantee that the data is valid. |
|
||
|
Error Description: In the second short program the third instruction reads, ANDI.W #$0002,D0 *Test for DR |
||
| Correction: Should read, ANDI.W #$0002,D0 *Test for TB |
|
||
|
Error Description: In the second short program, the last instruction reads, BNE LOOP2 *Keep waiting |
||
| Correction: Misaligned. Should read, BNE LOOP2 *Keep waiting |
|
||
| Error Description: The second sentence of the last paragraph reads, However, the majority of programmer program in the higher level languages. | ||
| Correction: Should read, However, the majority of programmers program in the higher level languages. |
|
||
| Error Description: The first sentence of the first paragraph reads, Although there were only a few, isolated Y2K problems... | ||
| Correction: Should read, Although there were only a few isolated Y2K problems... |
|
||
| Error Description: The tenth sentence of the paragraph numbered "4." reads, So, very roughly, we should expect that when the analog voltage rises to about 0.020 volts or so, out A/D output should be $01. | ||
| Correction: Should read, So, very roughly, we should expect that when the analog voltage rises to about 0.020 volts or so, our A/D output should be $01. |
|
||
| Error Description: The first sentence of the third paragraph from the bottom reads, We need to start our study of A/D and D/A conversion by learning about an import circuit element called a comparator. | ||
| Correction: Should read, We need to start our study of A/D and D/A conversion by learning about an important circuit element called a comparator. |
|
||
| Error Description: The first sentence of the second paragraph reads, ...rises about the reference voltage... | ||
| Correction: Should read, ...rises above the reference voltage... |
|
||
| Error Description: The second sentence of the third paragraph reads, ...over the range of 0 volts, minimum value, to 4 volts (Vmax), the maximum value. | ||
| Correction: Should read, , ...over the range of 0 volts, the minimum value, to 4 volts (Vmax), the maximum value. |
|
||
| Error Description: The first sentence of the paragraph #5 reads, Ohm's law states that.... | ||
| Correction: Should read, Ohm's Law states that.... |
|
||
| Error Description: The first complete sentence on the page reads, Also, lets assume we have a bunch of hoses at our disposal, in different diameters and different lengths, starting from a tiny hose with a 1/8" diameter inside diameter up to one with a 4" diameter bore... | ||
| Correction: Should read, Also, let's assume we have a bunch of hoses at our disposal, in different diameters and different lengths, starting from a tiny hose with a 1/8" inside diameter up to one with a 4" diameter bore... |
|
||
| Error Description: The first sentence of the paragraph #3 reads, Now you might be thinking that they can build integrated circuits with... | ||
| Correction: Should read, Now you might be thinking that if they can build integrated circuits with... |
|
||
| Error Description: The second sentence of the third paragraph reads, ...can’t be compressed the way strictly digital circuitry can and resistors are particularly... | ||
| Correction: Should read, ...can’t be compressed the way strictly digital circuitry can, and resistors are particularly... |
|
||
| Error Description: The third sentence of the third paragraph reads, ...the feature that makes digital circuits attractive to us, their insensitivity to voltage levels over a fairly wide range is exactly opposite... | ||
| Correction: Should read, ...the feature that makes digital circuits attractive to us, their insensitivity to voltage levels over a fairly wide range, is exactly opposite.... |
|
||
| Error Description: The first sentence in the fifth paragraph reads, The logic circuit we need to translate the comparator number with the highest logical ‘1’ output to a binary code is called a priority encoder. | ||
| Correction: Should read, In order to translate the highest comparator in the stack with a logic level '1' output to an equivalent binary code, we'll need a logic circuit called a "priority encoder". |
|
||
| Error Description: The second sentence of the paragraph #2 reads, At it's heart is a 16-bit D/A converter and a comparator. | ||
| Correction: Should read, At its heart is a 16-bit D/A converter and a comparator. |
|
||
| Error Description: The third sentence of the paragraph #1 reads, We already known that a binary search is more efficient than a linear search, so as you might imagine, we could also use this circuit to do a binary progression to zero in on the unknown voltage. | ||
| Correction: Should read, We already known that a binary search is more efficient than a linear search, so as you might imagine, we could also use this type of circuit to implement a binary search algorithm in hardware that will zero-in on the unknown voltage. |
|
||
| Error Description: The fifth sentence of the paragraph #1 reads, Only one output at a time is allowed to be connect to the bus. | ||
| Correction: Should read, Only one output at a time is allowed to be connected to the bus. |
|
||
| Error Description: The X-axis of the graph reads, Conversion Rate | ||
| Correction: Should read, Conversions per second |
|
||
| Error Description: The last sentence on the page reads, For example, a heart monitor may be relatively slow and medium accuracy, but the requirements for electrically protecting the patient from any shock hazards may impose addition requirement for a designer. | ||
| Correction: Should read, For example, a heart monitor may be relatively slow and medium accuracy, but the requirements for electrically protecting the patient from any shock hazards may impose additional requirements for a designer. |
|
||
| Error Description: The last sentence on the page reads, Since there are 1023 intervals between 0x000 and 0x3FF we can calculate what interval in the analog voltage corresponds 1 change of the digital voltage. | ||
| Correction: Should read, Since there are 1023 intervals between 0x000 and 0x3FF we can calculate what interval in the analog voltage corresponds to a 1-bit change of the digitized value. |
|
||
|
Error Description: The seventh bullet point reads, o The different.... |
||
| Correction: The text is mis-aligned. There is an extra space between the bullet and the word "The" |
|
||
|
Error Description: Problem #5 reads, Assume that you have an 11-bit A/D converter that can digitize an analog voltage over the range of -10.28V to +10.27volts. |
||
| Correction: Should read, Assume that you have an 11-bit A/D converter that can digitize an analog voltage over the range of -10.24V to +10.23volts. |
|
||
|
Error Description: Problem 6, second sentence reads, Your new project is to design the some of the key algorithms for a line of portable heart monitors. |
||
| Correction: Should read, Your new project is to design some of the key algorithms for a line of portable heart monitors. |
|
||
|
Error Description: The third sentence of paragraph #2 reads, Higher costs can result because the price of an integrated circuit is largely determined the fabrication yield. |
||
| Correction: Should read, Higher costs can result because the price of an integrated circuit is largely determined by the fabrication yield. |
|
||
|
Error Description: The second sentence of paragraph #2 reads, According to Resnick, Thornton explored aspects of certain aspects of the RISC architecture... |
||
| Correction: Should read, According to Resnick, Thornton explored certain aspects of the RISC architecture... |
|
||
|
Error Description: The second sentence of paragraph #2 from the bottom of the page reads, The domain of the DSP is to accept a stream of input data from an A/D converter operate on it and output the result to a D/A converter. |
||
| Correction: Should read, The domain of the DSP is to accept a stream of input data from an A/D converter, operate on it, then output the result to a D/A converter. |
|
||
|
Error Description: The last sentence of paragraph #1 reads, These devices contain highly sophisticated DSP processors that can process a 3 to 8 megapixel image, converting the raw pixel data to a compress jpeg image, in just a few seconds. |
||
| Correction: Should read, These devices contain highly sophisticated DSPs that can process a 3 to 8 megapixel image, converting the raw pixel data to a compressed jpeg image in just a few seconds. |
|
||
|
Error Description: The second full sentence on the page reads, The reason for this is illustrates the advantage of a multistage pipeline design. |
||
| Correction: Should read, The reason for this performance improvement illustrates the advantage of a multistage pipeline design. |
|
||
|
Error Description: The first sentence of paragraph #2 reads, In the ARM 7 design,.... |
||
| Correction: Should read, In the ARM 9 design,.... |
|
||
|
Error Description: The fifth sentence of paragraph #2 reads, When, it is fetching a new instruction,... |
||
| Correction: Should read, When it is fetching a new instruction,... |
|
||
|
Error Description: The second sentence of the last paragraph reads, Finally, we need to cover few odds and ends before we move on. |
||
| Correction: Should read, Finally, we need to cover a few odds and ends before we move on. |
|
||
|
Error Description: The last sentence on the page reads, Thus, another of the potential advantages of pipelining is… |
||
| Correction: Should read, Thus, another potential advantage of pipelining is… |
|
||
|
Error Description: The first sentence of paragraph #2 reads, In Figure 13.7 we see that it takes us two hours to do a load of laundry, which includes four tasks ( washing, drying folding and putting away),… |
||
| Correction: Should read, In Figure 13.7 we see that it takes us two hours to do a load of laundry, which includes four tasks ( washing, drying, folding and putting away),… |
|
||
|
Error Description: The word Laundromat is capitalized in 6 places. |
||
| Correction: Should read, laundromat |
|
||
|
Error Description: The first
sentence of paragraph #2
reads, If our figure of merit is, "How many loads of laundry come in
the door of the Laundromat and how many leave |
||
| Correction: Should read, If our figure of merit is, "How many loads of laundry come in the door of the Laundromat and how many leave the Laundromat per unit of time?", then it is clear... |
|
||
|
Error Description: The second sentence of paragraph #5 reads, Put more of the responsibility for improving the processor’s throughput on the squarely onto the back of the compilers. |
||
| Correction: Should read, Put more of the responsibility for improving the processor’s throughput squarely on the back of the compilers. |
|
||
|
Error Description: The eighth bullet point reads, One (or very few) addressing mode. |
||
| Correction: Should read, One (or very few) addressing modes. |
|
||
| Error Description: The first sentence of paragraph #3 reads, As we’ve seen, RISC processors use pipelining to accelerate instruction decoding an program execution. | ||
| Correction: Should read, As we’ve seen, RISC processors use pipelining to accelerate instruction decoding and program execution. |
|
||
|
Error Description: Sentences 10 and 11 of paragraph #5 read, Since most memory operations take longer than operations between registers. The load operation will stall the pipeline for at least one clock cycle while the data is brought to the register. |
||
| Correction: Should read, Since most memory operations take longer than operations between registers, the load operation will stall the pipeline for at least one clock cycle while the data is brought to the register. |
|
||
| Error Description: The last sentence of paragraph #1 reads, SRAM memory is very fast, but each memory cell required five or six transistors to implement the design, so it tends to be more expensive than DRAM memory. | ||
| Correction: Should read, SRAM memory is very fast, but each memory cell requires five or six transistors to implement the design, so it tends to be more expensive than DRAM memory. |
|
||
| Error Description: The first sentence of paragraph #2 reads, DRAM memory stores the logical value as charge on a tiny charge-storage element called a capacitor. | ||
| Correction: Should read, DRAM stores the logical value as charge on a tiny charge-storage element called a capacitor. |
|
||
| Error Description: The last sentence of paragraph #2 reads, The memory access cycles for DRAM is also more complicated than for static RAM because these refresh cycles must be taken into account as well. | ||
| Correction: Should read, The memory access cycles for DRAM are also more complicated than for static RAM because these refresh cycles must be taken into account as well. |
|
||
| Error Description: The second sentence of paragraph #2 reads, In our hierarchy, the memory that is "closer" to the CPU is considered to be higher in the hierarchy then memory that is located further away from the CPU. | ||
| Correction: Should read, In our hierarchy, the memory that is "closer" to the CPU is considered to be higher in the hierarchy than memory that is located further away from the CPU. |
|
||
| Error Description: The fourth sentence of paragraph #2 reads, In order to maximize processor throughput, the fastest memory is located the closest to the processor. | ||
| Correction: Should read, In order to maximize processor throughput, the fastest memory is located closest to the processor. |
|
||
| Error Description: The second from last sentence on the page reads, We could also imagine that at a final level to this pyramid, is the Internet. | ||
| Correction: Should read, We could also imagine that at a final level to this pyramid is the Internet. |
|
||
|
Error Description: The fifth sentence of paragraph #1 reads, This memory typically runs at the speed of the CPU, although it is sometimes slower then regular access times. |
||
| Correction: Should read, This memory typically runs at the speed of the CPU, although it is sometimes slower than regular access times. |
|
||
|
Error Description: The third sentence of paragraph #2 reads, Locality of Reference asserts that program tend to access data and instructions that were recently accessed before... |
||
| Correction: Should read, Locality of Reference asserts that programs tend to access data and instructions that were recently accessed before... |
|
||
|
Error Description: The second and third sentences of paragraph #2 read, ....(main memory).The two-level.... |
||
| Correction: Should read, ....(main memory). The two-level.... |
|
||
|
Error Description: The second sentence of the last paragraph reads, This called a burst mode access. |
||
| Correction: Should read, This is called a burst mode access. |
|
||
|
Error Description: Three different symbols are used to denote multiplication in this chapter. They are x, X and *. |
||
| Correction: Should be consistent throughout the chapter. The preferred symbol is the one used on page 375, x |
|
||
|
Error Description: The third sentence from the bottom of paragraph #3 reads, Let's split this up in terms of page an offset. |
||
| Correction: Should read, Let's split this up in terms of page and offset. |
|
||
|
Error Description: The last sentence on the page reads, Therefore, every cache entry must contain the instruction or data contained in main memory, the page of main memory that the block comes from, and, finally, information about ..... |
||
| Correction: Should read, Therefore, every cache entry must contain the instruction or data contained in main memory, the page of main memory that the block comes from, and finally, information about ..... |
|
||
|
Error Description: Figure 14.4 is cut-off on the right-hand side. |
||
| Correction: The figure submitted to the publisher was correct. Needs to be re-typeset. |
|
||
|
Error Description: The last sentence of the first paragraph reads, Finally, the cache reloads with 64 bytes long refill line. |
||
| Correction: Should read, Finally, the cache reloads with a 64-byte long refill line. |
|
||
|
Error Description: The second sentence of the paragraph directly under Figure 14.5 reads, The main memory and cache have 4096 rows, corresponding to row addresses 0x000 through 0x3FF. |
||
| Correction: Should read, The main memory and cache have 4096 rows, corresponding to row addresses 0x000 through 0xFFF. |
|
||
|
Error Description: The first sentence of the last paragraph reads, Because not all of the boundaries of the column, row and offset address do not lie on the boundaries of hex digits (divisible by 4), it is will be easier… |
||
| Correction: Should read, Because not all of the boundaries of the column, row and offset address lie on the boundaries of hex digits (divisible by 4), it will be easier… |
|
||
|
Error Description: The second sentence of paragraph #1 reads, Also, when the refill line containing this byte is in the cache, it resides at row 0xC12 and the address tag address is 0x29F4. |
||
| Correction: Should read, Also, when the refill line containing this byte is in the cache, it resides at row 0xC12 and the tag address is 0x29F4. |
|
||
|
Error Description: The last sentence of paragraph #3 from the bottom of the page reads, … this piece of code could easily run 10 times slower then it might if the… |
||
| Correction: Should read, … this piece of code could easily run 10 times slower than it might if the… |
|
||
|
Error Description: The fifth sentence of paragraph #2 reads, When the tag address is sent to the CAM by the cache control unit all of the comparators do a… |
||
| Correction: Should read, When the tag address is sent to the CAM by the cache control unit, all of the comparators do a… |
|
||
|
Error Description: The third sentence from the bottom of the page reads, The address in tag RAM is sector address. |
||
| Correction: Should read, The address in tag RAM is the sector address. |
|
||
|
Error Description: The last sentence of paragraph #2 reads, In this particular example, we show that refill line 01 of sector 0x35D78E is valid, so the validity bit is set for that refill line. |
||
| Correction: Should read, In this particular example, we show that refill line 10 of sector 0x35D78E is valid, so the validity bit is set for that refill line. |
|
||
|
Error Description: The third sentence of paragraph #4 reads, The remaining three refill lines, in positions 00, 01 and 11, correspond to the previous sector, and are do not correspond to the refill lines of main memory at the new… |
||
| Correction: Should read, The remaining three refill lines, in positions 00, 01 and 11, correspond to the previous sector, and do not correspond to the refill lines of main memory at the new… |
|
||
|
Error Description: The fourth sentence of paragraph #5 reads, Also, we need to keep track of which cache cells contain incoherent data and a memory cell that has an updated value still in cache is called a dirty cell. |
||
| Correction: Should read, Also, we need to keep track of which cache cells contain incoherent data. A memory cell that has an updated value still in cache is called a dirty cell. |
|
||
|
Error Description: The first sentence of paragraph #6 reads, If the data image is not in cache,... |
||
| Correction: Should read, If the data image is not in the cache,... |
|
||
|
Error Description: The third sentence of paragraph #6 reads, Alternatively, if there is a cache block available with no corresponding dirty memory cells, the cache strategy may be to store the data in cache first... |
||
| Correction: Should read, Alternatively, if there is a cache block available with no corresponding dirty memory cells, the cache strategy may be to store the data in the cache first... |
|
||
|
Error Description: The third bullet up from the bottom of the page reads, We use separate I and D caches. |
||
| Correction: Should read, We use separate instruction and data caches. |
|
||
|
Error Description: The second bullet up from the bottom of the page reads, multi-level caches used to reduce miss penalty... |
||
| Correction: Should read, multi-level caches are used to reduce miss penalty... |
|
||
|
Error Description: The last bulleted item on the page reads, memory system are designed to support caches with burst mode accesses. |
||
| Correction: Should read, memory systems are designed to support caches with burst mode accesses. |
|
||
|
Error Description: Two of the arrows in figure 14.11 are missing arrowheads |
||
| Correction: A revised figure 14.22 will include those arrowheads. |
|
||
|
Error Description: The last sentence of paragraph #4 reads, However, in all probability, this will be a burst assess to refill the cache, not to fetch a single word. |
||
| Correction: Should read, However, in all probability this will be a burst assess to refill the cache, not to fetch a single word. |
|
||
|
Error Description: The third sentence of paragraph #2 reads, This means that if you have to retrieve data located in 4 sectors of the hard drive ( approximately 2000 bytes) the data might actually located in 4 sectors that are spread all over the drive. |
||
| Correction: Should read, This means that if you have to retrieve data located in 4 sectors of the hard drive ( approximately 2000 bytes) the data might actually be located in 4 sectors that are spread all over the drive. |
|
||
|
Error Description: The fourth sentence of paragraph #2 from the bottom of the page reads, The TLB cache algorithm holds only most recently... |
||
| Correction: Should read, The TLB cache algorithm holds only the most recently... |
|
||
|
Error Description: The last sentence on the page reads, MMU's use to be separate and distinct chips from the..... |
||
| Correction: Should read, MMU's used to be separate and distinct chips from the..... |
|
||
|
Error Description: In the second and third columns of the fourth row of the table it reads, Separate TLB's for... |
||
| Correction: Should read, Separate TLBs for.... |
|
||
|
Error Description: In the third columns of the fourth row of the table it reads, Both are 2-way set associative using LRU replacement strategy Instruction TLB:..... |
||
| Correction: Should read, Both are 2-way set associative using an LRU replacement strategy. Instruction TLB:..... |
|
||
| Error Description: The fourth bullet under "Objectives" reads, Methods use to incrementally... | ||
| Correction: Should read, Methods used to incrementally... |
|
||
| Error Description: The second sentence of paragraph #2 reads, In order to answer this question, let’s actually go through the exercise of trying to port a typical pc-based video game to an 8 bit computer. | ||
| Correction: Should read, In order to answer this question, let’s actually go through the exercise of trying to port a typical PC-based video game to an 8 bit computer. |
|
||
| Error Description: The last sentence of paragraph #4 reads, Next, we’ll need to rewrite any assembly language routines that were written for the game and re-write them in our ISA. | ||
| Correction: Should read, Next, we’ll need to rewrite any of the game's assembly language routines and re-write them for our ISA. |
|
||
| Error Description: The last sentence of paragraph #2 reads, We can’t say exactly what the cache hit ration is, but..... | ||
| Correction: Should read, We can’t say exactly what the cache hit ratio is, but ..... |
|
||
| Error Description: The first sentence of paragraph #3 from the bottom reads, Knowing what we know now about pipelined processors we might surmise that AMD's Athlon.... | ||
| Correction: Should read, Knowing what we know now about pipelined processors, we might surmise that AMD's Athlon.... |
|
||
| Error Description: The sixth sentence of paragraph #2 from the bottom reads, As speed goes up, so does the power requirements. | ||
| Correction: Should read, As speed goes up, so do the power requirements. |
|
||
| Error Description: The last sentence of paragraph #2 reads, Rather than continually scaling- up the clock.... | ||
| Correction: Should read, Rather than continually scaling-up the clock.... |
|
||
| Error Description: The second sentence of the third full paragraph from the top reads, Even though the Pentium and Athlon processors are 32-bit machines, their external memory bus is width is 64-bits,.... | ||
| Correction: Should read, Even though the Pentium and Athlon processors are 32-bit machines, their external memory bus width is 64 bits,.... |
|
||
| Error Description: The fifth sentence of the third full paragraph from the top reads, Since we are sending or receiving 8 bytes in parallel during every memory cycle; which equates to 8 x 400 MHz, or 3200 MB/sec. | ||
| Correction: Should read, Thus, we are sending or receiving 8 bytes in parallel twice during every memory cycle. This equates to 8 x2x200 MHz, or 3200 MB/sec. |
|
||
| Error Description: The second sentence of paragraph #3 reads, We can also ask, “What are the architectural trade-offs that must be made to achieve the desired objectives? | ||
| Correction: Should read, We can also ask, “What are the architectural trade-offs that must be made to achieve the desired objectives?" |
|
||
| Error Description: The second sentence of paragraph #2 reads, Changing the external clock frequency is relatively easy to do if the motherboard supports the feature, and may aftermarket ..... | ||
| Correction: Should read, Changing the external clock frequency is relatively easy to do if the motherboard supports the feature, and many aftermarket ..... |
|
||
| Error Description: Bullet item number 5 at the top of the page reads, Raise the clock frequency, core voltage, I/O voltage until the chip self-destructs. | ||
| Correction: Should read, Raise the clock frequency, core voltage, and I/O voltage until the chip self-destructs. |
|
||
| Error Description: The first sentence of paragraph #2 reads, If your PC is hobby activity.... | ||
| Correction: Should read, If your PC is a hobby activity.... |
|
||
| Error Description: The first sentence of the last paragraph reads, The key here is that best benchmark... | ||
| Correction: Should read, The key here is that the best benchmark... |
|
||
| Error Description: The third sentence of the last paragraph reads, Therefore, we tend to let others, usually the computer’s manufacturer, or a third-party reviewer, do the benchmarking for us. | ||
| Correction: Should read, Therefore, we tend to let others, usually the computer’s manufacturer or a third-party reviewer, do the benchmarking for us. |
|
||
| Error Description: The fourth paragraph reads, Imagine that you are designing the flight control system for a new fly-by-wire jet fighter plane. The pilot does not control the plane in the classical sense. The pilot, through the control stick and rudder pedals, sends requests to the flight control computer (or computers) and the computer adjusts the wings and tail surfaces in response to the requests. What makes the plane so highly maneuverable in flight also makes it difficult to fly. Without the constant control changes to the flight surfaces, the aircraft will spin out of control. Thus, the computer must constantly monitor the state of the aircraft and the flight control surfaces and make constant adjustments to keep the fighter flying. | ||
| Correction: Should read, Imagine that you are designing the flight control system for a new fly-by-wire jet fighter plane. The pilot does not control the plane in the classical sense because there are no direct cable links from the cockpit controls to the flight control surfaces. The pilot, through the control stick and rudder pedals, sends requests to the flight control computer (or computers) and the computer adjusts the wings and tail surfaces in response to the requests. What makes the plane so highly maneuverable in flight also makes it difficult to fly. Without the computer's ability to constantly monitor the state of the aircraft and then make rapid adjustments to the flight control surfaces, the aircraft would spin out of control. |
|
||
| Error Description: The second sentence of the last paragraph reads, We could use the SPEC benchmark suites, but are they relevant to the application domain that we are concerned with. | ||
| Correction: Should read, We could use the SPEC benchmark suites, but are they relevant to the application domain that we are concerned with? |
|
||
| Error Description: The second sentence of paragraph #3 reads, For example, if we choose processor A over processor B because its better Dhrystone benchmark results.... | ||
| Correction: Should read, For example, if we choose processor A over processor B because of its better Dhrystone benchmark results.... |
|
||
| Error Description: The first sentence of the last paragraph reads, In order to address the benchmarking needs of the embedded systems industry, a consortium or chip vendors .... | ||
| Correction: Should read, In order to address the benchmarking needs of the embedded systems industry, a consortium of chip vendors .... |
|
||
| Error Description: The last sentence of paragraph #4 from the bottom of the page reads, Also, both the optimized and assembly language benchmarks outperformed the nonoptimized version by … | ||
| Correction: Should read,
Also, both the optimized and assembly language benchmarks outperformed the non-optimized version by … |
|
||
| Error Description: The second full sentence at the top of the page reads, Obviously, as a manufacturer, I want my processor to look its best during a design win test with my evaluation board. | ||
| Correction: Should read, From the chip manufacturer's perspective, I know that the evaluation board represents a potentially large revenue stream if my chip is chosen for the customer's new product. |
|
||
| Error Description: The second sentence of paragraph #4 reads, Either we measure the amount of time it takes for a benchmark to run, or we measure the number of iterations of the benchmark that can run in a unit of time, day a second or a minute. | ||
| Correction: Should read, Either we measure the amount of time it takes for a benchmark to run, or we measure the number of iterations of the benchmark that can run in a unit of time, such as an hour, a minute, a second, or a fraction of a second. |
|
||
|
Error Description: The first sentence of the paragraph in the middle of the page reads, This rather obscure statement, *(unsigned int*) 0xAABB... |
||
| Correction: Should read, This rather obscure statement, *(volatile unsigned int*) 0xAABB... |
|
||
|
Error Description: The second sentence of paragraph #1 reads, This may seem strange but it actually quite common. |
||
| Correction: Should read, This may seem strange but it is actually quite common. |
|
||
|
Error Description: The last sentence of paragraph #2 reads, Therefore, it could present the results by actually providing the function’s names rather than a identifier code. |
||
| Correction: Should read, Therefore, it could present the results by actually providing the functions' names, rather than an identifier code. |
|
||
|
Error Description: The second sentence of paragraph #1 reads, There are commercially available products, such as CodeTest® from Metrowerks®9 that solves this problem by able to continuously collect tags.... |
||
| Correction: Should read, There are commercially available products, such as CodeTest® from Metrowerks®9 that solves this problem by being able to continuously collect tags.... |
|
||
|
Error Description: The last sentence of paragraph #1 reads, Everyone assumed that their code ran fine and the system as whole performed optimally. |
||
| Correction: Should read, Everyone assumed that their code ran fine and that the system as a whole performed optimally. |
|
||
|
Error Description: The second sentence of paragraph #3 reads, In general, this is the realm of most embedded systems so we'll concentrate our focus in this area. |
||
| Correction: Should read, In general, this is the realm of most embedded systems, so we'll place our focus in this area. |
|
||
|
Error Description: The fourth sentence of paragraph #4 reads, If you are using a processor with an on chip cache.... |
||
| Correction: Should read, If you are using a processor with an on-chip cache.... |
|
||
|
Error Description: The performance budget equation reads, Performance budget = sum(operations require under worst case conditions).... |
||
| Correction: Should read, Performance budget = sum (operations required under worst case conditions).... |
|
||
|
Error Description: The second sentence of paragraph #6 reads, From that, you must subtract the overhead of the operating system and finally, leave some room for the code that will invariably need to add as additional features get added-on. |
||
| Correction: Should read, From that, you must subtract the overhead of the operating system and finally, leave some room for the code that you will invariably need to generate as additional features get added-on. |
|
||
|
Error Description: The second sentence of paragraph #7 reads, Most engineers don’t have a clue about amount of time required for different functions..... |
||
| Correction: Should read, Most engineers don’t have a clue about the amount of time required for different functions..... |
|
||
| Error Description: The first full sentence at the top of the page reads, This will give you feedback about how the code is doing against budget. | ||
| Correction: Should read, This will give you feedback about how your code is doing with respect to your performance budget. |
|
||
|
Error Description: The second sentence of paragraph numbered "10." reads, Most software developers would attempt to debug a program without a good debugger. |
||
| Correction: Should read, Most software developers would not attempt to debug a program without a good debugger. |
|
||
|
Error Description: The fourth line of paragraph #1 reads, .....let's look a where the trends… |
||
| Correction: Should read, .....let's look at where the trends… |
|
||
|
Error Description: The last three sentences of paragraph #2 reads, Science fiction you say? Not all. Read on. |
||
| Correction: Should read, Science fiction you say? Not at all. Read on. |
|
||
|
Error Description: In eight places the terms "open collector" or "open drain" are used |
||
| Correction: Searching the literature I found that although this spelling is used, the more common spelling is "open-collector" and "open-drain" |
|
||
|
Error Description: In Figure 16.2 the spacing of the caption is awkward and there is a big space between the terms "F3 are" and "fuses" |
||
| Correction: Space it better |
|
||
|
Error Description: The last sentence of paragraph #2 reads, Also, it doesn’t matter how many of the gates inputs are at logic 0, ...... |
||
| Correction: Should read, Also, it doesn’t matter how many of the gate's inputs are at logic 0, ...... |
|
||
|
Error Description: The first sentence of paragraph #3 reads, The fuses, F1, F2 and F3 add another dimension to the circuit. |
||
| Correction: Should read, The fuses F1, F2 and F3 add another dimension to the circuit. |
|
||
|
Error Description: The second sentence of paragraph #3 reads, …then that particular open collector gate would be entirely removed from the circuit. |
||
| Correction: Should read, …then that particular open-collector gate would be entirely removed from the circuit. |
|
||
|
Error Description: The third sentence of paragraph #3 reads, If we blow fuse F3, then the circuit is a 2-input and gate, consisting of inputs A and B and output Y. |
||
| Correction: Should read, If we blow fuse F3, then the circuit is a 2-input AND gate, consisting of inputs A and B and output Y. |
|
||
|
Error Description: Figure 16.3 has a comment on it that reads, "Wired" AND plane. |
||
| Correction: Should read, Wired AND plane. |
|
||
|
Error Description: The first sentence of paragraph #4 reads, ...to create a general purpose device that is able to implement an arbitrary sum of products logic function… |
||
| Correction: Should read, ...to create a general purpose device that is able to implement an arbitrary sum-of- products logic function… |
|
||
|
Error Description: The next-to-last sentence of paragraph #4 reads, The horizontal wires implement the wired "AND' function for the set of the vertical wires. |
||
| Correction: Should read, The horizontal wires implement the wired AND function for the set of the vertical wires. |
|
||
|
Error Description: The last sentence of paragraph #4 reads, ...…each OR gate output can be any single sum of products term. |
||
| Correction: Should read, ...…each OR gate output can be any single sum-of-products term. |
|
||
|
Error Description: Bullet point #2 reads, Compiler the source file to create a programming map called source.jed. |
||
| Correction: Should read, Compile the source file to create a programming map called source.jed. |
|
||
|
Error Description: Bullet point #3 reads, …the appropriate fuses for a OTP part, … |
||
| Correction: Should read, …the appropriate fuses for an OTP part, … |
|
||
|
Error Description: The last sentence of paragraph #2 reads, The key point here is that an industry standard hardware description language (ABEL) has provides hardware developers… |
||
| Correction: Should read, The key point here is that an industry standard hardware description language (ABEL) has provided hardware developers… |
|
||
|
Error Description: The first sentence of paragraph #4 reads, Worse still, the entire development team, must often wait until very late… |
||
| Correction: Should read, Worse still, the entire development team must often wait until very late… |
|
||
|
Error Description: The second sentence of paragraph #4 reads, …containing custom ASIC devices, but in the process, it created an entirely new field… |
||
| Correction: Should read, …containing custom ASIC devices, but in the process it created an entirely new field… |
|
||
|
Error Description: The second sentence of the last bullet point on the page reads, Blowing the fuse cases the switching element… |
||
| Correction: Should read, Blowing the fuse causes the switching element… |
|
||
|
Error Description: The first sentence of the first bullet point on the page reads, The cross-point switch is reprogrammable device which, … |
||
| Correction: Should read, The cross-point switch is a reprogrammable device which, … |
|
||
|
Error Description: The second sentence of the first bullet point on the page reads, ..similar to the FLASH memory devices we use in our digital cameras, MP3 players and BIOS ROMs in your computers. |
||
| Correction: Should read, ..similar to the FLASH memory devices we use in our digital cameras, MP3 players and the BIOS ROMs in computers. |
|
||
|
Error Description: The first sentence of the last paragraph reads, Even though FPGAs were significantly more expensive than a custom ASIC device; could not be clocked as fast, and had a much lower gate capacity, the ability… |
||
| Correction: Should read, The first sentence of the last paragraph reads, Even though FPGAs were significantly more expensive than a custom ASIC device, could not be clocked as fast, and had a much lower gate capacity, the ability… |
|
||
|
Error Description: The first sentence of paragraph #2 reads, As the FPGA gained in popularity software support tools also grew around them. |
||
| Correction: Should read, As the FPGA gained in popularity, software support tools also grew around them. |
|
||
|
Error Description: The third sentence of paragraph #4 reads, Two competing companies in the United States, Quickturn and PiE built and sold large reconfigurable hardware accelerators. |
||
| Correction: Should read, In the United States, two competing companies, Quickturn and PiE, built and sold large reconfigurable hardware accelerators. |
|
||
|
Error Description: The first sentence of paragraph #5 reads, Quickturn and PiE later merged and then was sold again... |
||
| Correction: Should read, Quickturn later merged with PiE and then was sold again... |
|
||
|
Error Description: The third sentence of paragraph #3 from the bottom reads, The value of the exponent can vary over a small range because different types of circuits, such as very regular memory arrays, lead to different results then random logic arrays. |
||
| Correction: Should read, The value of the exponent can vary over a small range because different types of circuits, such as very regular memory arrays, lead to different results than random logic arrays. |
|
||
|
Error Description: The third and fourth sentences of paragraph #3 reads, The configuration memory is mapped to the memory space of the microprocessor, so that it can reconfigure the peripheral hardware as necessary to implement I/O devices, such as Ethernet controllers, timer, ports, etc. Also, the uncommitted gates can be configured as algorithmic accelerators, like floating point units, graphics processors a like. |
||
| Correction: Should read, The configuration memory is mapped to the memory space of the microprocessor, so that it can reconfigure the peripheral hardware as necessary to implement I/O devices, such as Ethernet controllers, timers, ports, etc. Also, the uncommitted gates can be configured to be algorithmic accelerators, such as floating point units and graphics processors. |
|
||
|
Error Description: The fourth sentence of paragraph #6 reads, Today, we are nearly at the end of our ability to use light waves to sensitive the circuit masks. |
||
| Correction: Should read, Today, we are nearly at the end of our ability to use light waves to sensitize the circuit masks. |
|
||
|
Error Description: The first sentence of paragraph #5 reads, Molecular electronics is the premise that it is possible.... |
||
| Correction: Should read, Molecular electronics is based on the premise that it is possible.... |
|
||
|
Error Description: The figure associated with Exercise #3 is missing. |
||
| Correction: The figure is shown below.
|
|
||
|
Error Description: The last sentence on the page reads, Approximately what is largest difference... |
||
| Correction: Should read, Approximately what is the largest difference... |
|
||
|
Error Description: The answer to problem #5 reads, On average semiconductor memory is 34,286 times…. |
||
| Correction: Should read, On average semiconductor memory is 342,857 times…. |
|
||
| Error Description: The problem parts for the answers to Question #7 are labeled (i), (j), (k), (l) | ||
| Correction: Should read, (a), (b), (c), (d) |
|
||
| Error Description: In problem #7, the solution to the conversion of the number 0x3AB2 = 15026 | ||
| Correction: Should read, 0x3AB2 = 15,026 |
|
||
|
Error Description: The answer to problem #9 reads, 545 microfeet per second or 545 x 10-6 feet per second. |
||
| Correction: Should read, 7.64 millifeet per second or 7.64 x 10-3 feet per second |
|
||
|
Error Description: The answer to problem #3 reads, Assume that at T=0 the logic level changes from 0 to 1, as shown, above. |
||
| Correction: Should read, Assume
that at T=0 the logic level changes from 0 to 1, as shown in the figure,
below.
|
|
||
|
Error Description: The answer to problem #5 shows a truth table and K-Maps with all K-Maps labeled, K-Map for X. |
||
| Correction: The K-Maps should be labeled from top to bottom, K-Map for X, K-Map for Y, K-Map for Z. |
|
||
|
Error Description: The solution to problem 3a reads, Since the memory width is 32 bits, we need 4 memory chips to form 1 32-bit page. We have a total of 226 address bits. Each page is 512K, which requires 219 address lines per page. Thus, 226 – 219 = 27 , so we have 128 pages of memory. Since each page requires 4 devices, we need a total of 512 memory chips. |
||
|
Correction: Should read, 26 address bits means that the uP can address 64 MBytes of memory. If the chip is 512K x 8 then it needs 19 address lines in order to address all 512K memory locations. The chip has a 32-bit data bus so each memory page needs 4 chips and since each chip holds 512K bytes, each page holds 2 MBytes. Since we have a total addressable memory of 64 MBytes then we must have 32 pages of memory. Thus, we need to have 4 x 32, or 128 chips in order to completely fill the memory. |
|
||
|
Error Description: Inside the program after the line that reads, * Code begins here The instruction columns are misaligned and the comments wrap to the next line. |
||
| Correction: The columns should be re-adjusted so that they are all in-line and the comments should not wrap to the next line. |
|
||
|
Error Description: The program title under the header block for the solution to exercise #7 reads, * CSS 422 HW #4: Relocatable Memory test program |
||
| Correction: Should read, * Relocatable memory test program |
|
||
|
Error Description: Two instructions, beginning with CMP.W and ADDA.L are misaligned. Also, the instruction, MOVE.L A0,(A5) * Save the address of the bad location wraps around to the next line and intrudes into the label field. |
||
| Correction: Realign the CMP.W and ADDA.L instructions and
change the comment of the MOVE instruction to read, MOVE.L A0,(A5) * Save address of bad location |
|
||
|
Error Description: The answer to problem 5a reads, An 11-bit, 2's complement number can represent a range of -1028 to +1027, |
||
| Correction: Should read, An 11-bit, 2's complement number can represent a range of -1024 to +1023, |
|
||
|
Error Description: Question 1, part c, last sentence reads: Modern SDRAM memory is designed to refill the on-chip cache in a burst of data reads, thus minimizing the penalty or reloading. |
||
| Correction: Should read, Modern SDRAM memory is designed to refill the on-chip cache in a burst of data reads, thus minimizing the penalty of reloading. |
|
||
| Error Description: The solution to problem #7 reads, Effective execution time = .98*10 + .02*100*10 = 9.8 + 20 = 29.9 nsec | ||
| Correction: Should read, Effective execution time = .98*10 + .02*100*10 = 9.8 + 20 = 29.8 nsec |
|
||
| Error Description: The solution to problem #3, for Computer
#2 reads,
Therefore, the total execution time is 0.4 x 21000 x 4x10^-9 + 0.6 x 21000 x 8x10^-9 = (8.4x10^3) x (4x10^-9) + (12.2x10^3) x (8x10^-9) = (33.6 x 10^-6) + ( 97.6 x 10^-6 ) = 131.2x10^-6 = 131.2 microseconds. |
||
| Correction: Should read,
Therefore, the total execution time is 0.4 x 21000 x 4x10^-9 + 0.6 x 21000 x 8x10^-9 = (8.4x10^3) x (4x10^-9) + (12.6x10^3) x (8x10^-9) = (33.6 x 10^-6) + ( 100.8 x 10^-6 ) = 134.4x10^-6 = 134.4 microseconds. |
|
||
| Error Description: The index entry for state machines reads, state machine, 61, 84 | ||
| Correction: Should read, state machine, 61, 84, 95-118 |