Computer Organization and Design
The Hardware / Software Interface
By
David A.Patterson
John L.Hennessy
This is a complete text book of computer organization and design 3rd edition written by David A.Patterson and John L.Hennessy. This book provide all detailed study of computer hardware and software interface to learn every thing regarding computer machine. How hardware and software interface work in computer? etc. Bellow is the table of content that you find in the book. You can also download the book in PDF file from the link given below.
Computer Abstractions and Technology
1.1 Introduction 3
1.2 Below Your Program I I
1.3 Under the Covers IS
1.4 Real Stuff: Manufacturing Pentium 4 Chips 28
1.5 Fallacies and Pitfalls 33
1.6 Concluding Remarks 35
1.7 Historical Perspective and Further Reading 36
1.8 Exercises 36
COMPUTERS IN THE REAL WORLD
2. 1 Introduction 48
2.2 Operations of the Computer Hardware 49
2.3 Operands of the Computer Hardware 52
2.4 Representing Instructions in the Computer 60
2.5 Logical Operations 68
2.6 Instructions for Making Decisions 72
2.7 Supporting Procedures in Computer Hardware 79
2.8 Communicating with People 90
2.9 MIPS Addressing for 32-Bit Immediates and Addresses 95
2.10 Translating and Starting a Program 106
2. I I How Compilers Optimize 116
2. 12 How Compilers Work: An Introduction 121
2. 13 ACSort Example to Put It All Together 121
2. 14 Implementing an Object-Oriented Language 130
2.1 5 Arrays versus Pointers 130
2.1 6 Real Stuff: IA-32 Instructions 134
2.1 7 Fallacies and Pitfalls 143
2.18 Concluding Remarks 145
2. 19 Historical Perspective and Further Reading 147
2.20 Exercises 147
Arithmetic for Computers
3. 1 Introduction 160
3.2 Signed and Unsigned Numbers 160
3.3 Addition and Subtraction 170
3.4 Multiplication 176
3.5 Division 183
3.6 Floating Point 189
3.7 Rea l Stuff: Floating Point in the IA-32 217
3.8 Fallacies and Pitfalls 220
3.9 Concluding Remarks 225
3.10 Historical Perspective and Further Reading 229
3. 11 Exercises 229
Assessing and Understanding Performance
4.1 Introduction 240
4.2 CPU Perfonnance and Its Factors 246
4.3 Evaluating Performance 254
4.4 Rea l Stuff: Two SPEC Benchmarks and the Performance of Recent
Intel Processors 259
4.5 Fallacies and Pitfalls 266
4.6 Concluding Remarks 270
4.7 Historical Perspective and Further Reading 272
4.8 Exercises 272
The Processor: Data path and Control
Introduction 284
Logic Design Conventions 289
Building a Datapath 292
A Simple Implementation Scheme 300
A Multicycle Implementation 3 18
Exceptions 340
Microprogramming: Simplifying Co ntrol Design 346
An Introduction to Digital Design Using a Hardware Design
Language 346
Real Stuff: The Organization of Recent Pentium
Implementations 347
Fallacies a nd Pitfalls 350
Concluding Remarks 352
Historical Perspective and Further Reading 353
Exercises 354
Enhancing Performance with Pipe lining 368
6.1 An Overview of Pipe lining 370
6.2 A Pipe lined Data path 384
6.3 Pipe lined Control 399
6.4 Data Hazards and Forwarding 402
6.5 Data Hazards and Stalls 41 3
6.6 Branch Hazards 416
6.7 Using a Hardware Description Language to Describe and Model a
Pipeline 426
6.8 Exceptions 427
6.9 Adva need Pipe lining: Extracting More Performance 432
6.10 Real Stuff: The Pentium 4 Pipeline 448
6.11 Fallacies and Pitfalls 451
6. 12 Concluding Remarks 452
6. 13 Historical Perspective and Further Reading 454
6.14 Exercises 454
Large and Fast: Exploiting Memory Hierarchy 466
7.1 Introduction 468
7.2 The Basics of Caches 473
7.3 Measuring and Improving Cache Performance 492
7.4 Virtual Memory 511
7.5 A Common Framework for Memory Hierarchies 538
7.6 Real Stuff: The Pentium P4 and the AMD Opteron Memory
Hierarchies 546
7.7 Fallacies and Pitfalls 550
7.8 Concluding Remarks 552
7.9 Historical Perspective and Further Reading 555
7. 10 Exercises 555
Storage, Networks, and Other Peripherals 564
8.1 Introduction 566
8.2 Disk Storage and Dependability 569
8.3 Networks 580
8.4 Buses and Other Connections between Processors, Memory, and I/O
Devices 581
8.5 Interfacing I/O Devices to the Processor, Memory, and Operating
System 588
8.6 I/O Performance Measures: Examples from Disk and File
Systems 597
8.7 Designing an I/O System 600
8.8 Real Stuff: A Digital Camera 603
8.9 Fallacies and Pitfalls 606
8.10 Concluding Remarks 609
8.11 Historical Perspective and Further Reading 6 11
8.12 Exercises 6 11
Multiprocessors and Clusters 9-2
9. 1 Introduction 9-4
9.2 Programming Multiprocessors 9-8
9.3 Multiprocessors Connected by a Single Bus 9-11
9.4 Multiprocessors Connected by a Network 9-20
9.5 Clusters 9-25
9.6 Network Topologies 9-27
9.7 Multiprocessors Inside a Chip and Multithreading 9-30
9.8 Real Stuff: The Coogle Cluster of PCs 9-34
9.9 Fallacies and Pitfalls 9-39
9. 10 Concluding Remarks 9-42
9. I I Historical Perspective and Further Reading 9-47
9. 12 Exercises 9-55
0 comments:
Post a Comment