Summary:In this remarkable book on computer design, long-known in the field and widely used in manuscript form, Gerrit A. Blaauw and Frederick P. Brooks,Jr. provide a definitive guide and reference for practicing computer architects and for students. The book complements Brooks' recently updated classic,
The Mythical Man-Month, focusing here on the design of hardware and there on software, here on the content of computer architecture and there on the process of architecture design. The book's focus on architecture issues complements Blaauw's early work on implementation techniques. Having experienced most of the computer age, the authors draw heavily on their first-hand knowledge, emphasizing timeless insights and observations.
Blaauw and Brooks first develop a conceptual framework for understanding computer architecture. They then describe not only what present architectural practice is, but how it came to be so. A major theme is the early divergence and the later reconvergence of computer architectures. They examine both innovations that survived and became part of the standard computer, and the many ideas that were explored in real machines but did not survive. In describing the discards, they also address why these ideas did not make it.
The authors' goals are to analyze and systematize familiar design alternatives, and to introduce you to unfamiliar ones. They illuminate their discussion with detailed executable descriptions of both early and more recent computers. The designer's most important study, they argue, is other people's designs. This book's computer zoo will give you a unique resource for precise information about 30 important machines. Armedwith the factors pro and con on the various known solutions to design problems, you will be better able to determine the most fruitful architectural course for your own design.
Table of Contents:1. Introduction
What Is Computer Architecture?
The Design of Computer Architecture
The Description of Computer Architecture
What Is Good Computer Architecture?
Rules of Good Practice
Exercises
2. Machine Language
Language Level
Language Properties
Spaces
Operand Specification
Operation Specification
Instructions
Rules of Good Practice
Exercises
3. Names and Addresses
Binding
Address Mapping
Address Modification by Indexing
Index Arithmetic
Address Levels
Rules of Good Practice
Exercises
4. Data
Character Strings
Logical Data
Fixed-Point Numbers
Floating-Point Numbers
Arrays
Rules of Good Practice
Exercises
5. Operations
Data Handling
Logic
Fixed-Point Arithmetic
Floating-Point Arithmetic
Relational Operations
Numeric-Array Operations
Rules of Good Practice
Exercises
6. Instruction Sequencing
Linear Sequence
Decision
Iteration
Delegation
Rules of Good Practice
Exercises
7. Supervision
Concurrency
Interaction
Integrity
Control Switching
State-Saving
Tools of Control
Rules of Good Practice
Exercises
8. Input/Output
Input/Output Devices
Direct Input/Output
Single-Instruction Overlap
Peripheral Processor
Channel
Device Interfaces
Exercises
Part II: A Computer Zoo
9. Guide to the Zoo
Generations and Families
Organization of the Sketches
The Formal Descriptions---Executable Simulators
General Exercises
10. Pioneer House: The Classical Computer
Difference Engines of Babbage and Scheutz
Harvard Mark I
Zuse Z4
Ferranti Mark 1 (Manchester MU1)
Univac I
11. Von Neumann House: Von Neumann's Contribution
Princeton IAS
Cambridge EDSAC
IBM 701
IBM 704
12. IBM House: IBM Computer Families
IBM 650
IBM 705
IBM 1401
IBM System/360
13. Explorer House: Exploring the Classical Computer
STC ZEBRA
Bull Gamma 60
IBM Stretch
Burroughs B5500
14. Cray House: Seymour Cray
Univac 1103A
CDC 6600
CDC 6600 PPU
Cray 1
15. Bell House: The Minicomputer Revolution
DEC PDP8
DEC PDP11
DEC VAX11/780
16. Microcomputer House: The Microcomputer Era
Intel 8080A
Motorola M6800
MOS 6502
Motorola MC68000
IBM 6150
Appendix A.: APL Summary
Evaluation of an Expression
Data
Names
Primitive Functions
Defined Functions
Idioms
Bibliography
Appendix B.: Bibliography
Name Index
Machine Index
Subject Index
Index