《计算机组织与设计硬件/软件接口 英文版 第2版》PDF下载

  • 购买积分:21 如何计算积分?
  • 作  者:(美)亨尼丝(Hennessy,J.L.)等著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:1999
  • ISBN:7111074378
  • 页数:759 页
图书介绍:

Index 1

Glossary 1

C Mapping Control to Hardware 2

B The Basics of Logic Design 2

A Assemblers,Linkers,and the SPIM Simulator by James R.Larus,University of Wisconsin 2

APPENDICES 2

CHAPTERS 2

1 Computer Abstractions and Technology 2

B.1 Introduction 3

A.1 Introduction 3

C.1 Introduction 3

1.1 Introduction 3

C.2 Implementing Combinational Control Units 4

B。2 Gates,Truth Tables,and Logic Equations 4

1.2 Below Your Program 5

B.3 Combinational Logic 8

C.3 Implementing Finite State Machine Control 8

A.2 Assemblers 10

1.3 Under the Covers 10

A.3 Linkers 17

B.4 Clocks 18

A.4 Loading 19

A.5 Memory Usage 20

B.5 Memory Elements 21

C.4 Implementing the Next-State Function with a Sequencer 21

1.4 Integrated Circults:Fueling Innovation 21

A.6 Procedure Call Convention 22

1.5 Real Stuff:Manufacturing Pentium Chips 24

C.5 Transiating a Microprogram to Hardware 28

1.6 Fallacies and Pitfalls 29

1.7 Concluding Remarks 30

C.6 Concluding Remarks 31

C.7 Key Terms 32

A.7 Exceptions and Interrupts 32

C.8 Exercises 32

1.8 Historical Perspective and Further Reading 32

B.6 Flinite State Machines 35

A.8 Input and Output 36

A.9 SPIM 38

B.7 Timing Methodologies 39

B.8 Concluding Remarks 44

1.9 Key Terms 44

B.10 Exercises 45

B.9 Key Terms 45

1.10 Exerclses 45

A.10 MIPS R2000 Assembly Language 49

2 The Role of Performance 52

2.1 Introduction 54

2.2 Measuring Performance 58

2.3 Relating the Metrics 60

2.4 Choosing Programs to Evaluate Performance 66

2.5 Comparing and Summarizing Performance 69

2.6 Real Stuff:The SPEC95 Benchmarks and Performance of Recent Processors 71

A.11 Concluding Remarks 75

2.7 Fallacies and Pitfalls 75

A.13 Exercises 76

A.12 Key Terms 76

2.8 Concluding Remarks 82

2.9 Historical Perspective and Further Reading 83

2.10 Key Terms 89

2.11 Exercises 90

3 Instructions:Language of the Machine 104

3.1 Introduction 106

3.2 Operations of the Computer Hardware 107

3.3 Operands of the Computer Hardware 109

3.4 Representing Instructions in the Computer 116

3.5 Instructions for Making Decisions 122

3.6 Supporting Procedures In Computer Hardware 132

3.7 Beyond Numbers 142

3.8 Other Styles of MIPS Addressing 145

3.9 Starting a Program 156

3.10 An Example to Put It All Together 163

3.11 Arrays versus Pointers 171

3.12 Real Stuff:PowerPC and 80x86 Instructions 175

3.13 Fallacies and Pitfalls 185

3.14 Concluding Remarks 187

3.15 Historical Perspective and Further Reading 189

3.16 Key Terms 196

3.17 Exercises 196

4 Arithmetic for Computers 208

4.1 Introduction 210

4.2 Signed and Unsigned Numbers 210

4.3 Addition and Subtraction 220

4.4 Logical Operations 225

4.5 Constructing an Arithmetic Logic Unit 230

4.6 Multiplication 250

4.7 Division 265

4.8 Floating Point 275

4.9 Real Stuff:Floating Point In the PowerPC and 80x86 301

4.10 Fallacles and Pitfalls 304

4.11 Concluding Remarks 308

4.12 Historical Perspective and Further Reading 312

4.13 Key Terms 322

4.14 Exercises 322

5 The Processor:Datapath and Control 336

5.1 Introduction 338

5.2 Building a Datapath 343

5.3 A Simple Implementation Scheme 351

5.4 A Multicycle Implementation 377

5.5 Microprogramming:Simpllfying Control Deslgn 399

5.6 Exceptions 410

5.7 Real Stuff:The Pentium Pro Implementation 416

5.8 Fallacles and Pitfalls 419

5.9 Concluding Remarks 421

5.10 Historical Perspective and Further Reading 423

5.11 Key Terms 426

5.12 Exercises 427

6 Enhancing Performance with Pipelining 434

6.1 An Overview of Pipelining 436

6.2 A Pipelined Datapath 449

6.3 Pipelined Control 466

6.4 Data Hazards and Forwarding 476

6.5 Data Hazards and Stalls 489

6.6 Branch Hazards 496

6.7 Exceptions 505

6.8 Superscalar and Dynamic Pipelining 510

6.9 Real Stuff:PowerPC 604 and Pentium Pro Pipelines 517

6.10 Fallacies and Pitfalls 520

6.11 Concluding Remarks 521

6.12 Historical Perspective and Further Reading 525

6.13 Key Terms 529

6.14 Exercises 529

7 Large and Fast:Exploiting Memory Hlerarchy 538

7.1Introduction 540

7.2 The Basics of Caches 545

7.3 Measuring and Improving Cache Performance 564

7.4 Virtual Memory 579

7.5 A Common Framework for Memory Hlerarchles 603

7.6 Real Stuff:The Pentium Pro and PowerPC 604 Memory Hierarchies 611

7.7 Fallacies and Pitfalls 615

7.8 Concluding Remarks 618

7.9 Historical Perspective and Further Reading 621

7.10 Key Terms 627

7.11 Exercises 628

8 Interfacing Processors and Peripherals 636

8.1 Introduction 638

8.2 I/O Performance Measures:Some Examples from Disk and File Systems 641

8.3 Types and Characteristics of I/O Devices 644

8.4 Buses:Connecting I/O Devices to Processor and Memory 655

8.5 Interfacing I/O Devices to the Memory,Processor,and Operating System 673

8.6 Designing an I/O System 684

8.7 Real Stuff:A Typical Desktop I/O System 687

8.8 Fallacies and Pitfalls 688

8.9 Concluding Remarks 690

8.10 Historical Perspective and Further Reading 694

8.11 Key Terms 700

8.12 Exercises 700

9 Multiprocessors 710

9.1 Introduction 712

9.2 Programming Multiprocessors 714

9.3 Multiprocessors Connected by a Single Bus 717

9.4 Multiprocessors Connected by a Network 727

9.5 Clusters 734

9.6 Network Topologies 736

9.7 Real Stuff:Future Directions for Multiprocessors 740

9.8 Fallacies and Pitfalls 743

9.9 Concluding Remarks-Evolution versus Revolution in Computer Architecture 746

9.10 Historical Perspective and Further Reading 748

9.12 Exercises 756

9.11 Key Terms 756