At first sight, these two textbooks look quite similar; both are suitable for undergraduate courses, covering the workings of computers down to gate and even, but very briefly, to transistor level. However, the words "principles" and "design" in the titles are important clues to the contents.
Miles Murdocca and Vincent Heuring's book is a fairly in-depth look at the structure of computers, including their peripherals, networking capabilities and software issues, starting with a brief historical perspective. Although there are no parts indicated, the book naturally falls into four logical sections. The first two chapters are introductory, including data representation. Two appendices cover digital logic, which is needed for the rest of the book if it has not been addressed in a previous course. Then chapters three to six cover the central processor, while the rest address peripheral architecture. Finally, the last chapter bravely predicts possible trends and is thus the part that is likely to date most quickly.
The machine architecture used as an example is dubbed "ARC" (standing for A Risc computer), a simplified version of the Sparc technology of Sun Microsystems, which employs a Risc (reduced instruction set computer) architecture as used in Sun work stations. Other technologies from Intel and Motorola are also covered.
The book by Sunggu Lee is somewhat shorter and, while addressing architectural issues, also concentrates on the practical design of computers. It is divided into three parts covering the design of digital logic circuits, a suggested methodology and computer design. This emphasis on design means the book would be well suited to a course where the students actually attempt a realistic design as part of the course. The suggested methodology is an adapted version of the Algorithmic State Machine method using charts incorporating a Register Transfer Notation, together with VHDL, a widely used hardware description language.
The main suggested project is the design of an Intel 8080 processor. This is 1970s technology, but the author deems it at about the right level for a tractable student project today. The recommended implementation technology is Field Programmable Gate Arrays, meaning the project can be largely undertaken as a software process, and an extra twist is the inclusion of pipelining for additional speed, which gives the project a more up-to-date feel.
Both textbooks have ten chapters, each ending with almost identical sections including a summary, suggestions for further reading, and a good number of problem exercises. Lee has an additional section covering key concepts, a list of supplementary references, and asterisks to indicate the more taxing problems. But both books suffer from a preponderance of abbreviations and acronyms; a glossary would have helped, though most acronyms can be found in the index.
Both books are reasonably up to date and also have associated websites on the publisher's main website, which seems to be essential for modern textbooks (see www.prenhall.com/murdocca and www.prenhall.com/lee). These make additional and updated electronic material conveniently available for both instructors and students.
Given the difference in emphasis, the Murdocca and Heuring book is probably more suitable for computer-science courses and the Lee book is more suited to electrical or electronic engineering courses. The departmental affiliation of the authors bears this out. As an engineer turned computer scientist, I would certainly be happy to use each of these books for teaching in these two related but different contexts.
Jonathan Bowen is professor of computing, South Bank University.
Principles of Computer
Architecture: First edition
Author - Miles J. Murdocca and Vincent P. Heuring
ISBN - 0 201 43664 7
Publisher - Prentice Hall
Price - £29.99
Pages - 640