previous | contents | next

Preface vii

the design needs they attempted to satisfy. Given that systematic analysis does not yet exist, there is no substitute for extensive, critical understanding of the existing examples of designed systems. We assume the student of computer engineering comes to this book with a working knowledge of logical design. He should find it possible to realize many of the systems described in this book at the next lower levels of logic structure.

For the computer scientist, the levels of computer structure discussed in this book constitute a substantial part of what he should know about the physical devices that underlie his science. As we pass downward from these levels to lower ones-to register-transfer systems, sequential logic circuits, combinatory circuits, continuous circuits and on down-the relevance of each level gradually fades. The levels of this book, along with the register-transfer level constitute the main aspects of computer structure that the computer scientist must understand. It does not matter that they are, as yet, basically empirical and descriptive. The computer scientist undoubtedly will not be able to carry through the design of the systems described in this book in terms of the lower logic levels, but this is not necessary for an appropriate grasp of these upper levels of computer structure. Indeed, this is what it means for distinct systems levels to exist.

For the electrical engineer, this book undoubtedly presents more examples than he cares to know (or needs to). But an appropriate sampling, plus the overview presented in the first three chapters, is appropriate to give him some insight into the elaborate growth that has occurred on top of the basic digital technology created within electrical engineering.

The student of systems engineering may also find the material presented here useful, as an example of a class of complex systems which has evolved several distinct levels of representation. Again, the book undoubtedly presents too massive a dose of detail for him, but the overview in the first chapters, plus a sampling throughout the space of computer systems, should prove highly instructive.

We have goals for the book in addition to the educational ones. We think the book can serve as a useful reference for the practicing computer engineer. The time is past when every computer engineer knows about all computer systems because he has lived through all of computer history. That position is now reserved for those of us who are past forty (and still active). For the rest, a source book that provides the cumulated design experience of the field is a useful substitute, especially so if it contains enough detail so that a designer can reasonably evaluate the actual computer systems that embody a particular design alternative.

Behind the goal of the book as a guide for the practicing computer designer lies the feeling that the field of computer engineering needs to develop a sense of history and of looking to the past for guidance. The fantastic advance in basic logic technology-in speed, cost, and reliability- makes each day seem an absolutely new one. But, of course, it is not. Many alternative designs have been tried out in past systems, in ways relevant to current design. Thus, we have the goal of saving some of the past in a form accessible to the future needs of computer design. This goal is mixed with a certain archival feeling. Many of the systems in this book have never been documented, other than in manuals and various elementary how-to programming books.

previous | contents | next