内容简介
本书以Intel x86系列通用处理器和ARM系列嵌入式处理器作为主要考察实例,将当代计算机系统性能设计问题和计算机组织与结构的基本概念及原理紧密联系。先介绍计算机的发展与演变,引入性能评价和性能设计的概念,然后以自顶而下的方式逐层展开介绍计算机系统、存储器体系结构、I/O及互连、计算机算术、指令集体系结构的设计及其实现技术、控制器设计,还介绍了处理器的各种并行组织技术。本书在于探讨和揭示面向性能的各种设计博弈和实现考量,追逐性能极大化的同时顾及系统整体的性能平衡。
目录
CONTENTS
Chapter 0 Reader’s Guide 1
0.1 Outline of the Book 2
0.2 A Roadmap for Readers and Instructors 2
0.3 Why Study Computer Organization and Architecture 3
0.4 Internet and Web Resources 4
PART ONE OVERVIEW 7
Chapter 1 Introduction 8
1.1 Organization and Architecture 9
1.2 Structure and Function 10
1.3 Key Terms and Review Questions 15
Chapter 2 Computer Evolution and Performance 16
2.1 A Brief History of Computers 17
2.2 Designing for Performance 38
2.3 The Evolution of the Intel x86 Architecture 44
2.4 Embedded Systems and the ARM 46
2.5 Performance Assessment 50
2.6 Recommended Reading and Web Sites 57
2.7 Key Terms, Review Questions, and Problems 59
PART TWO THE COMPUTER SYSTEM 63
Chapter 3 A Top-Level View of Computer Function and Interconnection 65
3.1 Computer Components 66
3.2 Computer Function 68
3.3 Interconnection Structures 83
3.4 Bus Interconnection 85
3.5 PCI 95
3.6 Recommended Reading and Web Sites 104
3.7 Key Terms, Review Questions, and Problems 104
Appendix 3A Timing Diagrams 108
Chapter 4 Cache Memory 110
4.1 Computer Memory System Overview 111
4.2 Cache Memory Principles 118
4.3 Elements of Cache Design 121
4.4 Pentium 4 Cache Organization 140
4.5 ARM Cache Organization 143
4.6 Recommended Reading 145
4.7 Key Terms, Review Questions, and Problems 146
Appendix 4A Performance Characteristics of Two-Level Memories 151
Chapter 5 Internal Memory Technology 158
5.1 Semiconductor Main Memory 159
5.2 Error Correction 169
5.3 Advanced DRAM Organization 173
5.4 Recommended Reading and Web Sites 179
5.5 Key Terms, Review Questions, and Problems 180
Chapter 6 External Memory 184
6.1 Magnetic Disk 185
6.2 RAID 194
6.3 Optical Memory 203
6.4 Magnetic Tape 210
6.5 Recommended Reading and Web Sites 212
6.6 Key Terms, Review Questions, and Problems 214
Chapter 7 Input/Output 217
7.1 External Devices 219
7.2 I/O Modules 222
7.3 Programmed I/O 224
7.4 Interrupt-Driven I/O 228
7.5 Direct Memory Access 236
7.6 I/O Channels and Processors 242
7.7 The External Interface: FireWire and Infiniband 244
7.8 Recommended Reading and Web Sites 253
7.9 Key Terms, Review Questions, and Problems 254
Chapter 8 Operating System Support 259
8.1 Operating System Overview 260
8.2 Scheduling 271
8.3 Memory Management 277
8.4 Pentium Memory Management 288
8.5 ARM Memory Management 293
8.6 Recommended Reading and Web Sites 298
8.7 Key Terms, Review Questions, and Problems 299
PART THREE THE CENTRAL PROCESSING UNIT 303
Chapter 9 Computer Arithmetic 305
9.1 The Arithmetic and Logic Unit (ALU) 306
9.2 Integer Representation 307
9.3 Integer Arithmetic 312
9.4 Floating-Point Representation 327
9.5 Floating-Point Arithmetic 334
9.6 Recommended Reading and Web Sites 342
9.7 Key Terms, Review Q