1
Fundamentals of
Computer Design
1
And now for something completely different.
Monty Python’s Flying Circus
1.1
Introduction
1
1.2
The Task of a Computer Designer
3
1.3
Technology and Computer Usage Trends
6
1.4
Cost and Trends in Cost
8
1.5
Measuring and Reporting Performance
18
1.6
Quantitative Principles of Computer Design
29
1.7
Putting It All Together: The Concept of Memory Hierarchy
39
1.8
Fallacies and Pitfalls
44
1.9
Concluding Remarks
51
1.10 Historical Perspective and References
53
Exercises
60
Computer technology has made incredible progress in the past half century. In
1945, there were no stored-program computers. Today, a few thousand dollars
will purchase a personal computer that has more performance, more main memo-
ry, and more disk storage than a computer bought in 1965 for $1 million. This
rapid rate of improvement has come both from advances in the technology used
to build computers and from innovation in computer design. While technological
improvements have been fairly steady, progress arising from better computer
architectures has been much less consistent. During the first 25 years of elec-
tronic computers, both forces made a major contribution; but beginning in about
1970, computer designers became largely dependent upon integrated circuit tech-
nology. During the 1970s, performance continued to improve at about 25% to
30% per year for the mainframes and minicomputers that dominated the industry.
The late 1970s saw the emergence of the microprocessor. The ability of the
microprocessor to ride the improvements in integrated circuit technology more
closely than the less integrated mainframes and minicomputers led to a higher
rate of improvement—roughly 35% growth per year in performance.
1.1 Introduction
2
Chapter 1 Fundamentals of Computer Design
This growth rate, combined with the cost advantages of a mass-produced
microprocessor, led to an increasing fraction of the computer business being
based on microprocessors. In addition, two significant changes in t