Muutke küpsiste eelistusi

Computer Organization and Design: The Hardware/software Interface 3rd Revised edition [Pehme köide]

3.97/5 (1774 hinnangut Goodreads-ist)
(Departments of Electrical Engineering and Computer Science, Stanford University, USA), (Pardee Professor of Computer Science, Emeritus, University of California, Berkeley, USA)
Teised raamatud teemal:
  • Pehme köide
  • Hind: 63,99 €*
  • * saadame teile pakkumise kasutatud raamatule, mille hind võib erineda kodulehel olevast hinnast
  • See raamat on trükist otsas, kuid me saadame teile pakkumise kasutatud raamatule.
  • Kogus:
  • Lisa ostukorvi
  • Tasuta tarne
  • Lisa soovinimekirja
Teised raamatud teemal:
In addition to thoroughly updating every aspect of the text to reflect the most current computing technology, the third edition

*Uses standard 32-bit MIPS 32 as the primary teaching ISA.
*Presents the assembler-to-HLL translations in both C and Java.
*Highlights the latest developments in architecture in Real Stuff sections:

+ Intel IA-32
+ Power PC 604
+ Google's PC cluster
+ Pentium P4
+ SPEC CPU2000 benchmark suite for processors
+ SPEC Web99 benchmark for web servers
+ EEMBC benchmark for embedded systems
+ AMD Opteron memory hierarchy
+ AMD vs. 1A-64


New support for distinct course goals

Many of the adopters who have used our book throughout its two editions are refining their courses with a greater hardware or software focus. We have provided new material to support these course goals:

New material to support a Hardware Focus

+Using logic design conventions
+Designing with hardware description languages
+Advanced pipelining
+Designing with FPGAs
+HDL simulators and tutorials
+Xilinx CAD tools

New material to support a Software Focus

+How compilers Work
+How to optimize compilers
+How to implement object oriented languages
+MIPS simulator and tutorial
+History sections on programming languages, compilers, operating systems and databases

What's New in the Third Edition

New pedagogical features

Understanding Program Performance
-Analyzes key performance issues from the programmer's perspective

Check Yourself Questions
-Helps students assess their understanding of key points of a section

Computers In the Real World
-Illustrates the diversity of applications of computing technology beyond traditional desktop and servers

For More Practice
-Provides students with additional problems they can tackle

In More Depth
-Presents new information and challenging exercises for the advanced student


New reference features

Highlighted glossary terms and definitions appear on the book page, as bold-faced entries in the index, and as a separate and searchable reference on the CD.

A complete index of the material in the book and on the CD appears in the printed index and the CD includes a fully searchable version of the same index.

Historical Perspectives and Further Readings have been updated and expanded to include the history of software R&D.

CD-Library provides materials collected from the web which directly support the text.

On the CD

CD-Bars: Full length sections that are introduced in the book and presented on the CD

CD-Appendixes: The entire set of appendixes

CD-Library: Materials collected from the web which directly support the text

CD-Exercises: For More Practice provides exercises and solutions for self-study
In More Depth presents new information and challenging exercises for the advanced or curious student

Glossary: Terms that are defined in the text are collected in this searchable reference

Further Reading: References are organized by the chapter they support

Software: HDL simulators, MIPS simulators, and FPGA design tools

Tutorials: SPIM, Verilog, and VHDL

Additional Support: Processor Models, Labs, Homeworks, Index covering the book and CD contents

Instructor Support

+ Instructor Support is provided in a password-protected site to adopters who request the password from our sales representative
+ Solutions to all the exercises
+ Figures from the book in a number of formats
+ Lecture slides prepared by the authors and other instructors
+ Lecture notes

For instructor resources click on the grey "companion site" button found on the right side of this page.
This new edition represents a major revision.
New to this edition:

* Entire Text has been updated to reflect new technology
* 70% new exercises.
* Includes a CD loaded with software, projects and exercises to support courses using a number of tools
* A new interior design presents defined terms in the margin for quick reference
* A new feature, Understanding Program Performance focuses on performance from the programmer's perspective
* Two sets of exercises and solutions, For More Practice and In More Depth, are included on the CD
* Check Yourself questions help students check their understanding of major concepts
* Computers In the Real World feature illustrates the diversity of uses for information technology
*More detail below...

Arvustused

The choice of Real Stuff is judicious. The Computers in the Real World sections are interesting to read and should widen the horizons of the too often too tech-oriented Sophomores and Juniors. On the whole this is a very solid book and the success of the third edition is assured as has been the success of its two predecessors. Jean-Loup Baer, University of Washington I am very impressed with the new sections 'Computers in the Real World.' It is very interesting and speaks to the students who would like to feel a connection between classroom materials and real-world applications. I am very pleased with the manuscript for the third edition. This revision is well-updated and a comprehensive introduction to the hardware and software fundamentals. David Brooks, Harvard University The logical development and explanations and examples were always great to begin with. The Historical Perspectives have become even better-- they are part of the book that I enjoy most. David Harris, Harvey Mudd

Muu info

For instructor resources click on the grey companion site button found on the right side of this page. This new edition represents a major revision. New to this edition: * Entire Text has been updated to reflect new technology * 70 per cent new exercises. * Includes a CD loaded with software, projects and exercises to support courses using a number of tools * A new interior design presents defined terms in the margin for quick reference * A new feature, Understanding Program Performance focuses on performance from the programmers perspective * Two sets of exercises and solutions, For More Practice and In More Depth, are included on the CD * Check Yourself questions help students check their understanding of major concepts * Computers In the Real World feature illustrates the diversity of uses for information technology *More detail below...
Preface ix
Computer Abstractions and Technology
2(44)
Introduction
3(8)
Below Your Program
11(4)
Under the Covers
15(13)
Real Stuff: Manufacturing Pentium 4 Chips
28(5)
Fallacies and Pitfalls
33(2)
Concluding Remarks
35(1)
Historical Perspective and Further Reading
36(1)
Exercises
36(10)
Computers in the Real World
Information Technology for the 4 Billion without IT
44(2)
Instructions: Language of the Computer
46(112)
Introduction
48(1)
Operations of the Computer Hardware
49(3)
Operands of the Computer Hardware
52(8)
Representing Instructions in the Computer
60(8)
Logical Operations
68(4)
Instructions for Making Decisions
72(7)
Supporting Procedures in Computer Hardware
79(11)
Communicating with People
90(5)
MIPS Addressing for 32-Bit Immediates and Addresses
95(11)
Translating and Starting a Program
106(10)
How Compilers Optimize
116(5)
How Compilers Work: An Introduction
121(1)
A C Sort Example to Put It All Together
121(9)
Implementing an Object-Oriented Language
130(1)
Arrays versus Pointers
130(4)
Real Stuff: IA-32 Instructions
134(9)
Fallacies and Pitfalls
143(2)
Concluding Remarks
145(2)
Historical Perspective and Further Reading
147(1)
Exercises
147(11)
Computers in the Real World
Helping Save Our Environment with Data
156(2)
Arithmetic for Computers
158(80)
Introduction
160(1)
Signed and Unsigned Numbers
160(10)
Addition and Subtraction
170(6)
Multiplication
176(7)
Division
183(6)
Floating Point
189(28)
Real Stuff: Floating Point in the IA-32
217(3)
Fallacies and Pitfalls
220(5)
Concluding Remarks
225(4)
Historical Perspective and Further Reading
229(1)
Exercises
229(9)
Computers in the Real World
Reconstructing the Ancient World
236(2)
Assessing and Understanding Performance
238(44)
Introduction
240(6)
CPU Performance and Its Factors
246(8)
Evaluating Performance
254(5)
Real Stuff: Two SPEC Benchmarks and the Performance of Recent Intel Processors
259(7)
Fallacies and Pitfalls
266(4)
Concluding Remarks
270(2)
Historical Perspective and Further Reading
272(1)
Exercises
272(10)
Computers in the Real World
Moving People Faster and More Safely
280(2)
The Processor: Datapath and Control
282(86)
Introduction
284(5)
Logic Design Conventions
289(3)
Building a Datapath
292(8)
A Simple Implementation Scheme
300(18)
A Multicycle Implementation
318(22)
Exceptions
340(6)
Microprogramming: Simplifying Control Design
346(1)
An Introduction to Digital Design Using a Hardware Design Language
346(1)
Real Stuff: The Organization of Recent Pentium Implementations
347(3)
Fallacies and Pitfalls
350(2)
Concluding Remarks
352(1)
Historical Perspective and Further Reading
353(1)
Exercises
354(14)
Computers in the Real World
Empowering the Disabled
366(2)
Enhancing Performance with Pipelining
368(98)
An Overview of Pipelining
370(14)
A Pipelined Datapath
384(15)
Pipelined Control
399(3)
Data Hazards and Forwarding
402(11)
Data Hazards and Stalls
413(3)
Branch Hazards
416(10)
Using a Hardware Description Language to Describe and Model a Pipeline
426(1)
Exceptions
427(5)
Advanced Pipelining: Extracting More Performance
432(16)
Real Stuff: The Pentium 4 Pipeline
448(3)
Fallacies and Pitfalls
451(1)
Concluding Remarks
452(2)
Historical Perspective and Further Reading
454(1)
Exercises
454(12)
Computers in the Real World
Mass Communication without Gatekeepers
464(2)
Large and Fast: Exploiting Memory Hierarchy
466(98)
Introduction
468(5)
The Basics of Caches
473(19)
Measuring and Improving Cache Performance
492(19)
Virtual Memory
511(27)
A Common Framework for Memory Hierarchies
538(8)
Real Stuff: The Pentium P4 and the AMD Opteron Memory Hierarchies
546(4)
Fallacies and Pitfalls
550(2)
Concluding Remarks
552(3)
Historical Perspective and Further Reading
555(1)
Exercises
555(9)
Computers in the Real World
Saving the World's Art Treasures
562(2)
Storage, Networks, and Other Peripherals
564(2)
Introduction
566(3)
Disk Storage and Dependability
569(11)
Networks
580(1)
Buses and Other Connections between Processors, Memory, and I/O Devices
581(7)
Interfacing I/O Devices to the Processor, Memory, and Operating System
588(9)
I/O Performance Measures: Examples from Disk and File Systems
597(3)
Designing an I/O System
600(3)
Real Stuff: A Digital Camera
603(3)
Fallacies and Pitfalls
606(3)
Concluding Remarks
609(2)
Historical Perspective and Further Reading
611(1)
Exercises
611(11)
Computers in the Real World
Saving Lives through Better Diagnosis
622
Multiprocessors and Clusters
2(2)
Introduction
4(4)
Programming Multiprocessors
8(3)
Multiprocessors Connected by a Single Bus
11(9)
Multiprocessors Connected by a Network
20(5)
Clusters
25(2)
Network Topologies
27(3)
Multiprocessors Inside a Chip and Multithreading
30(4)
Real Stuff: The Google Cluster of PCs
34(5)
Fallacies and Pitfalls
39(3)
Concluding Remarks
42(5)
Historical Perspective and Further Reading
47(8)
Exercises
55
APPENDICES
A Assemblers, Linkers, and the SPIM Simulator
2(1)
A.1 Introduction
3(7)
A.2 Assemblers
10(8)
A.3 Linkers
18(1)
A.4 Loading
19(1)
A.5 Memory Usage
20(2)
A.6 Procedure Call Convention
22(11)
A.7 Exceptions and Interrupts
33(5)
A.8 Input and Output
38(2)
A.9 SPIM
40(5)
A.10 MIPS R2000 Assembly Language
45(36)
A.11 Concluding Remarks
81(1)
A.12 Exercises
82
B The Basics of Logic Design
2(1)
B.1 Introduction
3(1)
B.2 Gates, Truth Tables, and Logic Equations
4(4)
B.3 Combinational Logic
8(12)
B.4 Using a Hardware Description Language
20(6)
B.5 Constructing a Basic Arithmetic Logic Unit
26(12)
B.6 Faster Addition: Carry Lookahead
38(9)
B.7 Clocks
47(2)
B.8 Memory Elements: Flip-flops, Latches, and Registers
49(8)
B.9 Memory Elements: SRAMs and DRAMs
57(10)
B.10 Finite State Machines
67(5)
B.11 Timing Methodologies
72(5)
B.12 Field Programmable Devices
77(1)
B.13 Concluding Remarks
78(1)
B.14 Exercises
79
C Mapping Control to Hardware
2(1)
C.1 Introduction
3(1)
C.2 Implementing Combinational Control Units
4(4)
C.3 Implementing Finite State Machine Control
8(13)
C.4 Implementing the Next-State Function with a Sequencer
21(6)
C.5 Translating a Microprogram to Hardware
27(4)
C.6 Concluding Remarks
31(1)
C.7 Exercises
32
D A Survey of RISC Architectures for Desktop, Server, and Embedded Computers
2(1)
D.1 Introduction
3(2)
D.2 Addressing Modes and Instruction Formats
5(4)
D.3 Instructions: The MIPS Core Subset
9(7)
D.4 Instructions: Multimedia Extensions of the Desktop/Server RISCs
16(3)
D.5 Instructions: Digital Signal-Processing Extensions of the Embedded RISCs
19(1)
D.6 Instructions: Common Extensions to MIPS Core
20(5)
D.7 Instructions Unique to MIPS64
25(2)
D.8 Instructions Unique to Alpha
27(2)
D.9 Instructions Unique to SPARC v.9
29(3)
D.10 Instructions Unique to PowerPC
32(2)
D.11 Instructions Unique to PA-RISC 2.0
34(2)
D.12 Instructions Unique to ARM
36(2)
D.13 Instructions Unique to Thumb
38(1)
D.14 Instructions Unique to SuperH
39(1)
D.15 Instructions Unique to M32R
40(1)
D.16 Instructions Unique to MIPS16
41(2)
D.17 Concluding Remarks
43(3)
D.18 Acknowledgments
46(1)
D.19 References
47
Index 1(1)
Glossary 1(1)
Further Reading 1


David A. Patterson was the first in his family to graduate from college (1969 A.B UCLA), and he enjoyed it so much that he didn't stop until a PhD, (1976 UCLA). After 4 years developing a wafer-scale computer at Hughes Aircraft, he joined U.C. Berkeley in 1977. He spent 1979 at DEC working on the VAX minicomputer. He and colleagues later developed the Reduced Instruction Set Computer (RISC). By joining forces with IBMs 801 and Stanfords MIPS projects, RISC became widespread. In 1984 Sun Microsystems recruited him to start the SPARC architecture. In 1987, Patterson and colleagues wondered if tried building dependable storage systems from the new PC disks. This led to the popular Redundant Array of Inexpensive Disks (RAID). He spent 1989 working on the CM-5 supercomputer. Patterson and colleagues later tried building a supercomputer using standard desktop computers and switches. The resulting Network of Workstations (NOW) project led to cluster technology used by many startups. He is now working on the Recovery Oriented Computing (ROC) project. In the past, he served as Chair of Berkeley's CS Division, Chair and CRA. He is currently serving on the IT advisory committee to the U.S. President and has just been elected President of the ACM. All this resulted in 150 papers, 5 books, and the following honors, some shared with friends: election to the National Academy of Engineering; from the University of California: Outstanding Alumnus Award (UCLA Computer Science Department), McEntyre Award for Excellence in Teaching (Berkeley Computer Science), Distinguished Teaching Award (Berkeley); from ACM: fellow, SIGMOD Test of Time Award, Karlstrom Outstanding Educator Award; from IEEE: fellow, Johnson Information Storage Award, Undergraduate Teaching Award, Mulligan Education Medal, and von Neumann Medal. John L. Hennessy is the president of Stanford University, where he has been a member of the faculty since 1977 in the departments of electrical engineering and computer science. Hennessy is a fellow of the IEEE and the ACM, a member of the National Academy of Engineering, the National Academy of Science, the American Academy of Arts and Sciences, and the Spanish Royal Academy of Engineering. He received the 2001 Eckert-Mauchly Award for his contributions to RISC technology, the 2001 Seymour Cray Computer Engineering Award, and shared the John von Neumann award in 2000 with David Patterson. After completing the project in 1984, he took a one-year leave from the university to co-found MIPS Computer Systems, which developed one of the first commercial RISC microprocessors. After being acquired by Silicon Graphics in 1991, MIPS Technologies became an independent company in 1998, focusing on microprocessors for the embedded marketplace. As of 2004, over 300 million MIPS microprocessors have been shipped in devices ranging from video games and palmtop computers to laser printers and network switches. Hennessy's more recent research at Stanford focuses on the area of designing and exploiting multiprocessors. He helped lead the design of the DASH multiprocessor architecture, the first distributed shared-memory multiprocessors supporting cache coherency, and the basis for several commercial multiprocessor designs, including the Silicon Graphics Origin multiprocessors. Since becoming president of Stanford, revising and updating this text and the more advanced Computer Architecture: A Quantitative Approach has become a primary form of recreation and relaxation.