or
Sign in to turn on 1-Click ordering.
 
 
Express Checkout with PayPhrase
What's this? | Create PayPhrase
More Buying Choices
49 used & new from $25.85

Have one to sell? Sell yours here
 
   
Computer Systems Design and Architecture (2nd Edition)
 
 
Tell the Publisher!
I’d like to read this book on Kindle

Don’t have a Kindle? Get your Kindle here.
 
  

Computer Systems Design and Architecture (2nd Edition) (Hardcover)

~ (Author), Harry F. Jordan (Author)
3.1 out of 5 stars  See all reviews (10 customer reviews)

List Price: $116.00
Price: $85.62 & this item ships for FREE with Super Saver Shipping. Details
You Save: $30.38 (26%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.

Want it delivered Monday, December 28? Choose One-Day Shipping at checkout. Details
20 new from $53.83 29 used from $25.85

Formats

Amazon Price New from Used from
  Hardcover, December 5, 2003 $85.62 $53.83 $25.85
  Paperback, Import -- -- --

Frequently Bought Together

Customers buy this book with VHDL: A Starter's Guide (2nd Edition) by Sudhakar Yalamanchili

Computer Systems Design and Architecture (2nd Edition) + VHDL: A Starter's Guide (2nd Edition)
Price For Both: $157.62

Show availability and shipping details

  • This item: Computer Systems Design and Architecture (2nd Edition) by Vincent P. Heuring

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • VHDL: A Starter's Guide (2nd Edition) by Sudhakar Yalamanchili

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details


Customers Who Bought This Item Also Bought

Signal Processing and Linear Systems

Signal Processing and Linear Systems

by B. P. Lathi
Electronics

Electronics

by Allan R. Hambley
4.3 out of 5 stars (3)  $106.29
VHDL: A Starter's Guide (2nd Edition)

VHDL: A Starter's Guide (2nd Edition)

by Sudhakar Yalamanchili
3.0 out of 5 stars (3)  $72.00
Analysis and Design of Digital Integrated Circuits

Analysis and Design of Digital Integrated Circuits

by David A. Hodges
3.7 out of 5 stars (7)  $172.59
Probability and Statistics for Engineering and the Sciences, Enhanced Review Edition

Probability and Statistics for Engineering and the Sciences, Enhanced Review Edition

by Jay L. Devore
2.5 out of 5 stars (4)  $154.80
Explore similar items

Editorial Reviews

Product Description

The authors take a “No Mysteries” approach to computer systems. They interrelate three different viewpoints to provide a unique understanding of the subject: the perspective of the logic designer, the assembly language programmer, and the computer architect. The book has up-to-the-minute coverage of the latest developments in microprocessors, including ALU, pipelining, memory hierarchy, networks and the Internet. And, rather than focusing on a single type of architecture, Heuring and Jordan examine both CISC and RISC models at the ISA level using the unambiguous language of RTN (Register Transfer Notation), allowing for a more in-depth appreciation of different machine structures and functions. The authors examine general purpose machine, machine languages, and digital logic, some real machines, processor design, processor design—advanced topics, computer arithmetic and the arithmetic unit, memory system design, input and output, peripheral devices, communications, networking and the Internet. For computer science and engineering professionals.


From the Inside Flap

Computer Systems Design and Architecture

Preface

The computer ushers us into the information age. Born a mere fifty years ago, it now exerts a profound influence on almost every facet of our lives. What is the nature of this machine, this beast? How does it work, inside? How is it programmed internally? What are the nature of its connections to the outside world? These are the questions that this book will help you answer, and we hope that when you have mastered it you will be left with no mysteries about how computers work. We feel that one of the best ways to learn how a computer works is to design one, so throughout most of the book we have taken the perspective of the designer rather than that of the observer or the critic.

Computers are arguably the most complex systems humankind has ever built, and like all complex systems they can be appreciated from many viewpoints. A building can be examined for its overall architectural design, and the way that design affects its overall functioning. It can also be examined from the different viewpoint of how the size and shape of its rooms and halls relate to the design of its heating and air conditioning systems. Likewise the computer can be examined from the viewpoint of its overall structure and functioning, referred to as its architecture. It can be examined from the different viewpoint of one who is programming it in its machine, or assembly language. And it can be examined from the viewpoint of its lowest abstract logical structure-its design at the logic gate level.

All of these viewpoints are interrelated, and therefore important for mastery of the subject; thus in this book we adopt all three: the viewpoint of the computer architect, the viewpoint of the assembly language programmer, and the viewpoint of the logic designer. We believe that the synthesis of these three views will give you a depth and richness of understanding of the subject that will serve you well, whether your main interest be in computer design, computer science, or computer programming.

For more information on what this book covers and how it covers it, read on:

TO THE STUDENT We assume that you have had experience with computers as an end-user, and that you have written programs in some high level language such as Pascal, C, or Fortran. We also assume that you have had exposure to digital logic circuits. A knowledge of logic circuits is necessary for the understanding of the material in this book. For those who have not had such exposure, or who are uncertain about whether their background in this area is adequate, we have included an appendix, Appendix A: Digital Logic Circuits, which should provide you with sufficient background for understanding this text.

The focus of this book is on the design of computer systems--design at the gate level, design at the instruction-set-architecture level, and design at the computer system level. We believe that this integrated approach provides a depth and richness of understanding of the computer system that will serve you well, whether your main interest is as a Computer Engineer or as a Computer Scientist.

TO THE INSTRUCTOR This book is suitable for an introductory course on computer design at the junior, senior, or introductory graduate level. We assume that that the student has had at least an introductory course in some higher-level programming language such as C or Pascal, and a semester of logic design. However there is a comprehensive Appendix on Digital Logic Design, written by Professor Miles Murdocca, Rutgers University, which provides sufficient background material that the course can be taught to students without previous digital design experience. Appropriate topics for such a book have changed considerably in recent years, as desktop computers have evolved from simple, stand-alone units into complex systems attached to high-speed networks and internetworks. Earlier generations of microprocessors had almost trivial internal structure. Present designs contain multiple pipelined functional units with support for multiple processors and memories. Areas of computer design and architecture that were barely touched upon in the not-so-distant past have become major topics for discussion. Introductory compiler courses now routinely discuss optimization for pipelined processors. Users worry about whether they should add level 2 cache memory to their PCs. Support personnel wearily try to explain to the computer user how to configure the subnet mask for their network slip connection.

The topics of pipelined processor design, the memory hierarchy, and networks and internetworking are moving to center stage in the arena of computer design and architecture. Therefore we devoted the major parts of three chapters to treatment of these subjects. Given the focus on computer design and computer architecture, we approach the study of the computer from three viewpoints: the view of the assembly/machine language programmer, the view of the logic designer, and the view of the system architect. In covering the topic of gate-level computer design, we follow a model architecture through the design process, from the instruction set design level to the processor design level. Given the choice of using either a commercial machine with all of the complicating features that are necessary to make such a machine commercially successful, or using a model design that introduces sufficient practical features to make it both interesting and relevant to the subject, we chose the latter. The model machine, SRC, for Simple RISC Computer, is a 32-bit machine with an instruction set architecture that is similar to, but simpler than the current generation of RISCs. We adopt the view that it is best to use a formal description language in describing machine structure and function. There are many languages from which to choose. We selected a variant of the ISP language, RTN. Many other choices could have been made, but most of the languages used by practitioners are aimed more at hardware description and less at machine behavior and function. RTN is simple, easy to learn, and is at the appropriate description level.

Using this book with your curriculum and syllabus

There are probably almost as many different curricula and syllabi for computer design and architecture as there are schools and instructors in which the subject is taught. As you evaluate the material in this book you may discover:

Some topics may have been covered in a prerequisite course, and so can be omitted from discussion. Some topics need not be covered because they are covered in a subsequent course or courses. Some topics will be omitted or emphasized because of the aims of the course or the instructor. For example, computer science curricula may stress architectural topics and de-emphasize the gate-level design material, whereas computer engineering curricula would stress gate-level design. Some instructors will choose to emphasize or de-emphasize certain topics or change the topic ordering because of their particular philosophy of how the material should be presented.

We have tried to make the topic coverage sufficiently inclusive and self-contained so that the book will be adaptable to a wide range of curricula and syllabi. The first two chapters set the stage for the rest of the book, and should be covered first. Chapter 3 treats real machine designs and is essential for any student without a sold background in CISC and RISC instruction sets. Chapters 4 and 5 pursue gate-level design of the CPU. Chapters 6-10 are virtually stand-alone, and can be selected to suit the needs of your particular curriculum and syllabus.

Chapter descriptions

Chapter 1 takes just a peek at the machine from all three levels, and provides an overview on the subject.

Chapter 2 begins with a discussion of the relationship between machines and machine languages--how the nature of the instruction set influences the rest of the CPU structure. At this point in the text we introduce a language for formally describing machine structure and function. That is, we provide a way to unambiguously describe both the machine hardware and how instructions run on it. That language, RTN, is a simple one, and it is at the "just right" level to describe the running of instructions on hardware. We introduce RTN by using it to describe a generic model machine, SRC, that has a 32-bit ISA similar to the current crop of 32-bit commercial machines, but without many of the complicating factors. The chapter concludes by switching to the logic circuit level and putting a computer design spin on conventional logic circuit design by a brief discussion of how RTN operations translate into logic designs.

The goal of Chapter 3 is to provide the student with a concrete understanding of the CISC-RISC difference. It discusses two commercial machines at the ISA (and RTN) level, the CISC Motorola MC68000, and the RISC SPARC The chapter provides familiarity with several different machine architectures at the ISA level, so as to help develop an appreciation for two philosophically different approaches to machine design. We also introduce some practical issues such as upward compatibility and the way they influence machine design.

Chapter 4 is in many ways the keystone chapter of the book. It describes the interface between the instruction set and the hardware that it runs on, at the gate level. This description unfolds by developing a 1-bus design for the SRC introduced in Chapter 2, with RTN descriptions of machine functioning as a guide. Beginning with the ISA registers, the RTN description adds additional registers that are hidden at the ISA level as it treats how instructions are fetched decoded and executed, again at gate level. The discussion proceeds with design of the "soul of the machine," the control unit, and its heartbeat, the system clocking and timing. This chapter also begins the discussion of how hardware design influences instruction execution speed by examining alternative 2- and 3- bus designs. Two other aspects of processor design are covered in this chapter: the hardware reset, and the exception process. Our goal with Chapters 4 was "no mysteries." At the end of the chapter the student should understand exactly how the central processing unit works at the gate level.

Chapter 5 covers pipelining of the CPU, multiple-instruction-issue machines, and microcoded control unit design. Nearly every current and planned processor design employs pipelining in its CPU, and a thorough understanding of how pipelining works is a necessity for everyone from compiler writers to machine programmers and architects. We first present an overview of the important issues in pipelining and then show the design process by way of a pipelined design for the SRC. We then present a short discussion of instruction-level parallelism. We treat superscalar operation, where there are multiple functional units in the CPU that are capable of parallel operation, and VLIW, very long instruction word machines whose instruction words contain a number of processing steps that are executed in parallel. The chapter concludes with a discussion of microcoding. Microcoding is not used much in general purpose microprocessor chips at present, but in addition to its use in special purpose designs it is important in its own right, and it presents an interesting perspective on computer design.

Chapter 6 covers the design of the arithmetic and logic part of the computer. The design of this very important CPU component has a major impact on overall system performance. Since much of the ALU¹s performance is based on the underlying algorithms that are implemented in the hardware design, the discussion proceeds from data type, integer, for example, to algorithm, addition, for example, to the hardware implementation, a carry lookahead fast adder, for example. Both integer and floating point data types are covered in the chapter. There follows a section on how branch instructions use the ALU and a discussion of logical operations and overall ALU design. The chapter concludes with a discussion of floating point arithmetic.

Chapter 7 discusses the design of the memory hierarchy in detail. Beginning with the simplest 1-bit RAM and ROM cells, the chapter builds those cells into chips, chips into boards, and boards into modules. There is a discussion of the general nature of the relationship between two adjacent levels in the hierarchy, and following that, a discussion of cache design and the interaction between cache and main memory. This is followed by a discussion of virtual memory, the process of allowing the memory space to spill out from main memory onto the disk. The chapter concludes with a discussion of memory as a system.

Chapter 8 discusses the details of the machine's IO system. The chapter begins with a treatment of several kinds of buses, treating both bus signals and bus timing, and proceeds with a discussion of the two principal kinds of generic IO interfaces, serial and parallel. The chapter then covers the relationship between the machine interrupt structure and the IO system, and between these two and DMA, direct memory access, by which an external device can access main memory without CPU intervention.

Chapter 9 covers what's on the other end of the IO system: peripheral devices. It treats the structure and functioning of disk drives, video and other interactive display devices, printers, mice, and the interfaces to analog devices. The emphasis will be on how these devices actually work, and the nature of the interface between them, the CPU, and the outside world. Peripheral device performance is covered as a main aspect of interest.

Chapter 10 concludes the book with a discussion of computer-to-computer communications. In the present era no treatment of computer systems design and architecture is complete without a fairly in-depth discussion of computer communications and networking. We begin with a discussion of network structure and topology. Following that we present three examples of contemporary machine communications. The first example is the RS-232 serial data communications protocol that allows point-to-point communications between two computers or between a computer and a terminal. The second example is the Ethernet local area network, LAN for short. We discuss the Ethernet communications protocol at both the physical level and the data link layer, including the Ethernet packet structure. The third example of a communications system is the Internet--probably the largest and most important computer communications system on the planet. We discuss the TCP/IP Internet protocol, and Internet addresses and addressing. The chapter, and the book conclude with a very brief discussion of Internet applications and Internet futures.

Instructional support materials

A printed solutions manual that includes a set of electronic transparencies, and a collection of software support tools are available to adopters from Addison-Wesley. The set of 600 electronic transparencies is available in both Adobe Acrobat and Microsoft PowerPoint formats. The transparencies include the book's main points, which are presented in a lecture outline format, and all figures and tables from the book. Using the free Acrobat Reader, the transparencies in the Acrobat format can be viewed and printed in various ways from PC, Mac, and UNIX platforms. Instructors who have access to PowerPoint can modify the electronic transparencies in the PowerPoint format. A growing collection of software support tools--including an SRC assembler and simulator written in ANSI C--are available to adopters.

Errors

In spite of the good efforts of the authors, editors, reviewers, and class testers, this book undoubtedly contains errors. Errors may be reported by email to: csdabugs@colorado.edu, or by mail to: Addison Wesley Longman Electrical and Computer Engineering Editorial Department 2725 Sand Hill Road, Menlo Park, CA 94025.

Acknowledgments

We first wish to thank our Editor, Tim Cox, for seeing our vision, and helping us realize it; our Assistant Editor, Laura Cheu, "she who gets things done" and our Executive Editor, Dan Joraanstad, the "eye in the sky." We also wish to single out for special acknowledgement our Developmental Editor, Laurie McGuire, who did an excellent job of improving both the syntax and the semantics of this book. Deserving special thanks is our secretary, Maejean Ruehlman, who was invaluable helping us get the manuscript out the door. Thanks also to the entire Addison Wesley Longman team for their enthusiasm and commitment to this book, especially Lisa Weber, Ari Davidow, Kelly Murphy, Kathleen Cameron, and Susan Slater.

We wish to also thank our reviewers, who were most helpful in suggesting changes to the original manuscript of this book: George Adams (School of Electrical and Computer Engineering, Purdue University), Dr. Hassan Barada (Computer Engineering Department, King Fahd University of Petroleum and Minerals, Dhahran, Saudi Arabia), Thomas L. Casavant (Electrical and Computer Engineering, University of Iowa), Dr. Peter Drexel (Department of Computer Science, Plymouth State College), Michael A. Driscoll (Department of Electrical Engineering, Portland State University), J. Kelly Flanagan (Computer Science Department, Brigham Young University), William Tsun-yuk Hsu ( Computer Science Department, San Francisco State University), Mariusz Jankowski (Department of Engineering, University of Southern Maine), Mike Keenan (Computer Science Department, Virginia Tech), Professor Steven P. Levitan (Department of Electrical Engineering, University of Pittsburgh), Jyh-Charn (Steve) Liu (Computer Science Department, Texas A&M University), Norman Matloff (Department of Computer Science, University of California at Davis), Walid Najjar (Computer Science Department, Colorado State University), Bernhard Weinberg (Computer Science, Michigan State University), D. Scott Wills (Electrical and Computer Engineering, Georgia Institute of Technology), Craig M. Wittenbrink (Board of Computer Engineering, University of California, Santa Cruz), David Wood (Computer Science Department, University of Wisconsin). Also to be thanked are the faculty and students who used the Fall 1995 and Spring 1996 Class Test Editions for the many helpful suggestions and error reports: Douglas J. Fouts (Department of Electrical and Computer Engineering, U.S. Naval Postgraduate School), John F. Passafiume (Department of Computer Science, Clemson University). Finally we wish to thank Professor Miles Murdocca of Rutgers University for contributing Appendix A, Digital Logic.

Vincent P. Heuring and Harry F. Jordan Boulder, Colorado April 23, 1996 heuring@colorado.edu harry@colorado.edu. --This text refers to an alternate Hardcover edition.


Product Details

  • Hardcover: 608 pages
  • Publisher: Prentice Hall; 2 edition (December 6, 2003)
  • Language: English
  • ISBN-10: 0130484407
  • ISBN-13: 978-0130484406
  • Product Dimensions: 10.5 x 8.2 x 0.3 inches
  • Shipping Weight: 10.4 ounces (View shipping rates and policies)
  • Average Customer Review: 3.1 out of 5 stars  See all reviews (10 customer reviews)
  • Amazon.com Sales Rank: #589,558 in Books (See Bestsellers in Books)

More About the Author

Vincent P. Heuring
Discover books, learn about writers, read author blogs, and more.

Visit Amazon's Vincent P. Heuring Page

Look Inside This Book



Suggested Tags from Similar Products

 (What's this?)
Be the first one to add a relevant tag (keyword that's strongly related to this product).
 

Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

 

Customer Reviews

10 Reviews
5 star:
 (4)
4 star:
 (1)
3 star:    (0)
2 star:
 (2)
1 star:
 (3)
 
 
 
 
 
Average Customer Review
3.1 out of 5 stars (10 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

 
5 of 5 people found the following review helpful:
5.0 out of 5 stars The book that contains things practically helpful!, June 11, 1999
In a word, this is a very nice compact book of Computer Architecture. Anytime can be referenced..
I found there is almost all to understand the process and design simple processors by myself(especially helpful for pipenlined RISC)
I think study will be more effiecient if you have also Henney & Patterson's books.
Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
6 of 7 people found the following review helpful:
2.0 out of 5 stars A Text In Strong Company, April 21, 2001
By Jonah Probell "Jonah Probell" (Silicon Valley & Boston) - See all my reviews
Heuring & Jordan covers all of the key areas of computer architecture but has sparse description. I did not like this book as a course text when I was in college and I still do not care for it as an engineering reference. For all aspects of computer architecture I find Patterson & Hennessy's explanations more clear and their examples more illuminating.
Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
3 of 3 people found the following review helpful:
5.0 out of 5 stars Very nice book!, October 6, 1998
By A Customer
It's a very good technical book where it doesn't spend any time teaching everything from the beginning of computing and goes directly to the subject.

Talks about the RISC computers mostly, and very well covers most low level aspects..

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)


Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews

2.0 out of 5 stars Not Enough Examples, Different Versions of Books...WTF?! Pick Another Book!!!
This book covers the material but examples are few and far between, making the exercises much harder than they should be. The text is definitely not a light read, either. Read more
Published on April 7, 2006 by rabscuttle

1.0 out of 5 stars Wide breadth, yet sparse description
I had this book as an undergraduate. While it covers a wide range of topics, it does so only by giving many topics a shallow treatment. Read more
Published on November 21, 2005 by timcarst

5.0 out of 5 stars Good book for introductory level
This book builds knowledge from ground up so it is a very good book for people who have no background in computer science or computer engineering. Read more
Published on July 23, 2003 by sailom

1.0 out of 5 stars It's too bad...
I've had Vincent Heuring as a professor. All I can say about the book is that it's a good reference for a professor doesn't cover his own material well. Read more
Published on July 11, 2003

5.0 out of 5 stars The way to learn architecture
This is an excellent text for learning architecture. Ideal for anyone who needs to discover how computers work.
Published on November 10, 2001 by J. Zitzelberger

1.0 out of 5 stars For first-course undergrads, this book is unusable
I don't doubt this is a good book for graduate level readers, but I am a straight-A undergraduate student in computer science and I got absolutely nothing out of this book. Read more
Published on May 9, 1999

4.0 out of 5 stars A good introductory book on computer design
This book provides good coverage of all of the basics of computer design. It's modern and up-to-date and covers everything from the very basics to more advanced concepts like... Read more
Published on July 31, 1998

Only search this product's reviews



Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   



So You'd Like to...


Create a guide

Product Information from the Amapedia Community

Beta (What's this?)


Look for Similar Items by Category


Look for Similar Items by Subject

 

Feedback

If you need help or have a question for Customer Service, contact us.
 Would you like to update product info or give feedback on images?
Is there any other feedback you would like to provide?

Your comments can help make our site better for everyone.


Your Recent History

 (What's this?)

After viewing product detail pages or search results, look here to find an easy way to navigate back to pages you are interested in.