基本信息
- 原书名:Computer Organizationand and Embedded Systems, Sixth Edition
- 原出版社: McGraw-Hill
- 作者: (加)Carl Hamacher Zvonko Vranesic Safwat Zaky Naraig Manjikian
- 丛书名: 经典原版书库
- 出版社:机械工业出版社
- ISBN:9787111377214
- 上架时间:2013-5-20
- 出版日期:2013 年1月
- 开本:16开
- 页码:703
- 版次:6-1
- 所属分类:计算机 > 计算机组织与体系结构 > 综合
教材 > 计算机教材 > 本科/研究生 > 计算机专业教材 > 计算机专业课程 > 单片机及嵌入式计算机

编辑推荐
Carl Hamacher,Zvonko Vranesic,Safwat
Zaky,Naraig
Manjikian所著的《计算机组成与嵌入式系统(英文版第6版)》系统地介绍了现代计算机硬件系统的各个组成部分,包括处理器、输入/输出、存储器和互连标准等。以Nios
II、ARM、ColdFire和Intel
IA-32等商用处理器为例来阐释基本概念,侧重于讨论RISC设计风格的处理器(如MIPS),同时也介绍了CISC设计风格的处理器(如应用比较广泛的商用处理器InlelIA-32)。
内容简介
计算机书籍
《计算机组成与嵌入式系统(英文版.第6版)》是一本经典的计算机组成教材,自1978年问世以来,已被多所世界知名大学选为教材。本书知识结构合理,知识点全面完整,基本概念广泛而新颖。书中不仅介绍了硬件设计的原理,说明了硬件设计如何受软件需求影响,而且以流行的商用处理器作为范例,描述了各种基本知识和基本概念的应用方法和应用过程,具有很强的实用性。此外,本书还涵盖了当今许多先进的技术和设计思想。
《计算机组成与嵌入式系统(英文版.第6版)》特色
系统地介绍了现代计算机硬件系统的各个组成部分,包括处理器、输入/输出、存储器和互连标准等。
以Nios II、ARM、ColdFire和Intel IA-32等商用处理器为例来阐释基本概念,侧重于讨论RISC设计风格的处理器(如MIPS),同时也介绍了CISC设计风格的处理器(如应用比较广泛的商用处理器Intel IA-32)。
作译者
Zvonko Vranesic 多伦多大学电气与计算机工程系荣誉退休教授,曾参与Altera公司多伦多技术中心的研究和开发工作。他代表加拿大参加过多次国际象棋比赛,拥有国际象棋大师的头衔。他的研究兴趣是计算机体系结构、现场可编程超大规模集成电路技术和多值逻辑系统。
Safwat Zaky 多伦多大学电气与计算机工程系荣誉退休教授,并且曾担任该系系主任。他的研究兴趣是计算机体系结构、数字电路设计和电磁兼容性。
Naraig Manjikian 女皇大学电子工程与计算机系副教授,他的研究兴趣是计算机体系结构、多处理器系统、现场可编程超大规模集成电路技术和并行处理技术应用。
目录
Chapter 1 BASIC STRUCTURE OF COMPUTERS 1
1.1 Computer Types 2
1.2 Functional Units 3
1.3 Basic Operational Concepts 7
1.4 Number Representation and Arithmetic Operations 9
1.5 Character Representation 17
1.6 Performance 17
1.7 Historical Perspective 19
1.8 Concluding Remarks 22
1.9 Solved Problems 22
Problems 24
References 25
Chapter 2 INSTRUCTION SET ARCHITECTURE 27
2.1 Memory Locations and Addresses 28
2.2 Memory Operations 32
2.3 Instructions and Instruction Sequencing 32
2.4 Addressing Modes 40
2.5 Assembly Language 48
2.6 Stacks 55
前言
The book reflects our experience in teaching three distinct groups of students: elec-trical and computer engineering undergraduates, computer science undergraduates, and engineering science undergraduates. We have always approached the teaching of courses on computer organization from a practical point of view. Thus, a key consideration in shap-ing the contents of the book has been to carefully explain the main principles, supported by examples drawn from commercially available processors. Our main commercial examples are based on: Altera's Nios II, Freescale's ColdFire, ARM, and Intel's IA-32 architectures.
It is important to recognize that digital system design is not a straightforward process of applying optimal design algorithms. Many design decisions are based largely on heuristic judgment and experience. They involve cost/performance and hardware/software tradeoffs over a range of alternatives. It is our goal to convey these notions to the reader.
The book is aimed at a one-semester course in engineering or computer science pro-grams. It is suitable for both hardware- and software-oriented students. Even though the emphasis is on hardware, we have addressed a number of relevant software issues.
McGraw-Hill maintains a Website with support material for the book at http://www.mhhe.com/hamacher.
SCOPE OF THE BOOK
The first three chapters introduce the basic structure of computers, the operations that they perform at the machine-instrnction level, and input/output methods as seen by a programmen The fourth chapter provides an overview of the system software needed to translate programs written in assembly and high-level languages into machine language and to manage their execution. The mmaihing eight chapters deal with the organization, interconnection, and performance of hardware units in modem computers, including a coverage of embedded systems.
Five substantial appendices are provided. The first appendix covers digital logic circuits. Then, four current commercial instruction set architectures--Altera's Nios II,Freescale's ColdFire, ARM, and Intel's IA-32--are described in separate appendices.
Chapter I provides an overview of computer hardware and informally introduces terms that are discussed in more depth in the remainder of the book. This chapter discusses the basic functional units and the ways they interact to form a complete computer system. Number and character representations are discussed, along with basic arithmetic operations. An introduction to performance issues and a brief treatment of the history of computer development are also provided.
Chapter 2 gives a methodical treatment of machine instructions, addressing techniques, and instruction sequencing. Program examples at the machine-instruction level, expressed in a generic assembly language, are used to discuss concepts that include loops, subroutines, and stacks. The concepts are introduced using a RISC-style instruction set architecture. A comparison with CISC-style instruction sets is also included.
Chapter 3 presents a programmer's view of basic input/output techniques. It explains how program-controlled I/O is performed using polling, as well as how interrupts are used in I/O transfers.
Chapter 4 considers system software. The tasks performed by compilers, assemblers, linkers, and loaders are explained. Utility programs that trace and display the results of executing a program are described. Operating system routines that manage the execution of user programs and their input/output operations, including the handling of interrupts, are also described.
Chapter 5 explores the design of a RISC-style processor. This chapter explains the sequence of processing steps needed to fetch and execute the different types of machine instructions. It then develops the hardware organization needed to implement these pro- cessing steps. The differing requirements of CISC-style processors are also considered.
Chapter 6 provides coverage of the use of pipelining and multiple execution units in the design of high-performance processors. Apipelined version of the RISC-style processor design from Chapter 5 is used to illustrate pipelining. The role of the compiler and the rela- tionship between pipelined execution and instruction set design are explored. Superscalar processors are discussed.
Input/output hardware is considered in Chapter 7. Interconnection networks, including the bus structure, are discussed. Synchronous and asynchronous operation is explained. Interconnection standards, including USB and PCI Express, are also presented.
Semiconductor memories, including SDRAM, Rambus, and Flash memory imple- mentations, are discussed in Chapter 8. Caches are explained as a way for increasing the memory bandwidth. They are discussed in some detail, including performance modeling.
Virtual-memory systems, memory management, and rapid address-translation techniques are also prosented. Magnetic and optical disks are discussed as components in the memory hierarchy.
Chapter 9 explores the implementation of the arithmetic unit of a computer. Logic .design for fixed-point add, subtract, multiply, and divide hardware, operating on 2's- complement numbers, is described. Carry-lookahead adders and high-speed multipliers are explained, including descriptions of the Booth multiplier recoding and carry-save addi- tion techniques. Floating-point number representation and operations, in the context of the IEEE Standard, are presented.
Today, far more processors are in use in embedded systems than in general-purpose computers. Chapters 10 and 11 are dedicated to the subject of embedded systems. First, basic aspects of system integration, component interconnections, and real-time operation are presented in Chapter 10. The use of microcontrollers is discussed. Then, Chapter 11 concentrates on system-on-a-chip (SoC) implementations, in which a single chip integrates the processing, memory, I/O, and timer functionality needed to satisfy application-specific requirements. A substantial example shows how FPGAs and modem design tools can be
used in this environment.