Page 15 -
P. 15
xiv PREFACE
The objective is to present the material in a fashion that keeps new material in a clear
context. This should minimize the chance that the reader will get lost and should provide
better motivation than a bottom-up approach.
Throughout the discussion, aspects of the system are viewed from the points of view of
both architecture (those attributes of a system visible to a machine language programmer) and
organization (the operational units and their interconnections that realize the architecture).
EXAMPLE SYSTEMS
This text is intended to acquaint the reader with the design principles and implementation is-
sues of contemporary operating systems. Accordingly, a purely conceptual or theoretical
treatment would be inadequate.To illustrate the concepts and to tie them to real-world design
choices that must be made, two processor families have been chosen as running examples:
• Intel x86 architecture: The x86 architecture is the most widely used for non-embedded
computer systems.The x86 is essentially a complex instruction set computer (CISC) with
some RISC features. Recent members of the x86 family make use of superscalar and mul-
ticore design principles.The evolution of features in the x86 architecture provides a unique
case study of the evolution of most of the design principles in computer architecture.
• ARM: The ARM embedded architecture is arguably the most widely used embedded
processor, used in cell phones, iPods, remote sensor equipment, and many other de-
vices.The ARM is essentially a reduced instruction set computer (RISC). Recent
members of the ARM family make use of superscalar and multicore design principles.
Many, but by no means all, of the examples are drawn from these two computer families: the
Intel x86, and the ARM embedded processor family. Numerous other systems, both contempo-
rary and historical, provide examples of important computer architecture design features.
PLAN OF THE TEXT
The book is organized into five parts (see Chapter 0 for an overview)
• Overview
• The computer system
• The central processing unit
• The control unit
• Parallel organization, including multicore
The book includes a number of pedagogic features, including the use of interactive sim-
ulations and numerous figures and tables to clarify the discussion. Each chapter includes a
list of key words, review questions, homework problems, suggestions for further reading, and
recommended Web sites. The book also includes an extensive glossary, a list of frequently
used acronyms, and a bibliography.
INTENDED AUDIENCE
The book is intended for both an academic and a professional audience.As a textbook, it is in-
tended as a one- or two-semester undergraduate course for computer science, computer engi-
neering, and electrical engineering majors. It covers all the topics in CS 220 Computer
Architecture, which is one of the core subject areas in the IEEE/ACM Computer Curricula 2001.