本书采用ARM取代了早先使用MIPS作为核心处理器来介绍计算机组织和设计的基本概念,涵盖了数字逻辑设计的主要内容。本书以一种流行的方式介绍了从计算机组织和设计到更细节层次的内容,涵盖了数字逻辑设计的主要内容,并通过ARM微处理器的设计强化数字逻辑的概念。本书的典型特色是将数字逻辑和计算机体系结构融合,教学内容反映了当前数字电路设计的主流方法,并突出计算机体系结构的工程特点,书中的大量示例及习题也可以加强读者对基本概念和技术的理解和记忆。
莎拉 L. 哈里斯(Sarah L. Harris) 内华达大学电子与计算机工程系副教授,拥有斯坦福大学电子工程博士学位。她曾在惠普、圣地亚哥超算中心、英伟达公司和微软亚洲研究院工作,擅长计算机体系结构设计和系统设计。戴维·莫尼·哈里斯(David Money Harris) 哈维玛德学院工程系教授,拥有斯坦福大学电子工程博士学位。他曾在英特尔公司从事Itanium和Pentium II处理器的逻辑和电路设计,并曾担任Sun Microsystems、惠普、Evans & Sutherland等设计公司的顾问,获得了12项专利。
Contents
Preface . vi
Features . vii
Online Supplements viii
How to Use the Software Tools in a Course ix
Labs ix
Bugs x
Acknowledgments xi
Chapter 1 From Zero to One 3
1.1 TheGamePlan 3
1.2 The Art of Managing Complexity . 4
1.2.1 Abstraction 4
1.2.2 Discipline 5
1.2.3 The Three-Y’s 6
1.3 The Digital Abstraction 7
1.4 Number Systems. 9
1.4.1 Decimal Numbers 9
1.4.2 Binary Numbers 9
1.4.3 Hexadecimal Numbers . 11
1.4.4 Bytes, Nibbles, and All That Jazz . 13
1.4.5 Binary Addition . 14
1.4.6 Signed Binary Numbers 15
1.5 Logic Gates 19
1.5.1 NOT Gate 20
1.5.2 Buffer 20
1.5.3 AND Gate 20
1.5.4 OR Gate . 21
1.5.5 Other Two-Input Gates 21
1.5.6 Multiple-Input Gates . 21
1.6 Beneath the Digital Abstraction 22
1.6.1 Supply Voltage 22
1.6.2 Logic Levels 22
1.6.3 Noise Margins 23
1.6.4 DC Transfer Characteristics 24
1.6.5 The Static Discipline . 24
1.7 CMOSTransistors 26
1.7.1 Semiconductors 27
1.7.2 Diodes 27
1.7.3 Capacitors 28
1.7.4 nMOS and pMOS Transistors 28
1.7.5 CMOS NOT Gate . 31
1.7.6 Other CMOS Logic Gates . 31
1.7.7 Transmission Gates 33
1.7.8 Pseudo-nMOS Logic . 33
1.8 Power Consumption 34
1.9 Summary and a Look Ahead 35
Exercises 37
Interview Questions . 52
Chapter 2 Combinational Logic Design 55
2.1 Introduction 55
2.2 BooleanEquations 58
2.2.1 Terminology 58
2.2.2 Sum-of-Products Form . 58
2.2.3 Product-of-Sums Form . 60
2.3 BooleanAlgebra 60
2.3.1 Axioms . 61
2.3.2 Theorems of One Variable . 61
2.3.3 Theorems of Several Variables 62
2.3.4 The Truth Behind It All 64
2.3.5 Simplifying Equations 65
2.4 From Logic to Gates 66
2.5 Multilevel Combinational Logic 69
2.5.1 Hardware Reduction . 70
2.5.2 Bubble Pushing 71
2.6 X’s and Z’s, Oh My 73
2.6.1 Illegal Value: X . 73
2.6.2 Floating Value: Z 74
2.7 Karnaugh Maps 75
2.7.1 Circular Thinking . 76
2.7.2 Logic Minimization with K-Maps . 77
2.7.3 Don't Cares . 81
2.7.4 The Big Picture 82
2.8 Combinational Building Blocks 83
2.8.1 Multiplexers . 83
2.8.2 Decoders . 86
2.9 Timing. 88
2.9.1 Propagation and Contamination Delay 88
2.9.2 Glitches . 92
2.10 Summary 95
Exercises 97
Interview Questions 106
Chapter 3 Sequential Logic Design 109
3.1 Introduction. 109
3.2 Latches and Flip-Flops . 109
3.2.1 SR Latch . 111
3.2.2 D Latch 113
3.2.3 D FIip-Flop . 114
3.2.4 Register . 114
3.2.5 Enabled Flip-Flop . 115
3.2.6 Resettable Flip-Flop 116
3.2.7 Transistor-Level Latch and Flip-Flop Designs 116
3.2.8 Putting It All Together . 118
3.3 Synchronous Logic Design 119
3.3.1 Some Problematic Circuits 119
3.3.2 Synchronous Sequential Circuits 120
3.3.3 Synchronous and Asynchronous Circuits . 122
3.4 Finite State Machines 123
3.4.1 FSM Design Example 123
3.4.2 State Encodings . 129
3.4.3 Moore and Mealy Machines 132
3.4.4 Factoring State Machines . 134
3.4.5 Deriving an FSM from a Schematic . 137
3.4.6 FSM Review 140
3.5 Timing of Sequential Logic . 141
3.5.1 The Dynamic Discipline 142
3.5.2 System Timing 142
3.5.3 Clock Skew . 148
3.5.4 Metastability 151
3.5.5 Synchronizers . 152
3.5.6 Derivation of Resolution Time 154
3.6 Parallelism 157
3.7 Summary . 161
Exercises 162
Interview Questions 171
Chapter 4 Hardware Description Languages 173
4.1 Introduction. 173
4.1.1 Modules 173
4.1.2 Language Origins . 174
4.1.3 Simulation and Synthesis . 175
4.2 Combinational Logic. 177
4.2.1 Bitwise Operators . 177
4.2.2 Comments and White Space 180
4.2.3 Reduction Operators . 180
4.2.4 Conditional Assignment 181
4.2.5 Internal Variables . 182
4.2.6 Precedence 184
4.2.7 Numbers 185
4.2.8 Z’s and X’s . 186
4.2.9 Bit Swizzling 188
4.2.10 Delays 188
4.3 Structural Modeling 190
4.4 Sequential Logic . 193
4.4.1 Registers 193
4.4.2 Resettable Registers 194
4.4.3 Enabled Registers 196
4.4.4 Multiple Registers . 197
4.4.5 Latches . 198
4.5 MoreCombinationalLogic. 198
4.5.1 Case Statements . 201
4.5.2 If Statements 202
4.5.3 Truth Tables with Don’t Cares . 205
4.5.4 Blocking and Nonblocking Assi
......
PrefaceThis book is unique in its treatment in that it presents digital logic design from the perspective of computer architecture, starting at the beginning with 1’s and 0’s, and leading through the design of a microprocessor.We believe that building a microprocessor is a special rite of passage for engineering and computer science students. The inner workings of a proces-sor seem almost magical to the uninitiated, yet prove to be straightforward when carefully explained. Digital design in itself is a powerful and exciting subject. Assembly language programming unveils the inner language spoken by the processor. Microarchitecture is the link that brings it all together.The first two editions of this increasingly popular text have covered the MIPS architecture in the tradition of the widely used architecture books by Patterson and Hennessy. As one of the original Reduced Instruction Set Computing architectures, MIPS is clean and exceptionally easy to understand and build. MIPS remains an important architecture and has been infused with new energy after Imagination Technologies acquired it in 2013.Over the past two decades, the ARM architecture has exploded in popularity because of its efficiency and rich ecosystem. More than 50 bil-lion ARM processors have been shipped, and more than 75% of humans on the planet use products with ARM processors. At the time of this writ-ing, nearly every cell phone and tablet sold contains one or more ARM processors. Forecasts predict tens of billions more ARM processors soon controlling the Internet of Things. Many companies are building high-per-formance ARM systems to challenge Intel in the server market. Because of the commercial importance and student interest, we have developed this ARM edition of this book.Pedagogically, the learning objectives of the MIPS and ARM editions are identical. The ARM architecture has a number of features including addressing modes and conditional execution that contribute to its effi-ciency but add a small amount of complexity. The microarchitectures also are very similar, with conditional execution and the program counter being the largest changes. The chapter on I/O provides numerous exam-ples using the Raspberry Pi, a very popular ARM-based embedded Linux single board computer.We expect to offer both MIPS and ARM editions as long as the mar-ket demands.FEATURESSide-by-Side Coverage of SystemVerilog and VHDLHardware description languages (HDLs) are at the center of modern digi-tal design practices. Unfortunately, designers are evenly split between the two dominant languages, SystemVerilog and VHDL. This book intro-duces HDLs in Chapter 4 as soon as combinational and sequential logic design has been covered. HDLs are then used in Chapters 5 and 7 to design larger building blocks and entire processors. Nevertheless, Chapter 4 can be skipped and the later chapters are still accessible for courses that choose not to cover HDLs.This book is unique in its side-by-side presentation of SystemVerilog and VHDL, enabling the reader to learn the two languages. Chapter 4 describes principles that apply to both HDLs, and then provides language-specific syntax and examples in adjacent columns. This side-by-side treatment makes it easy for an instructor to choose either HDL, and for the reader to transition from one to the other, either in a class or in professional practice.ARM Architecture and MicroarchitectureChapters 6 and 7 offer the first in-depth coverage of the ARM architec-ture and microarchitecture. ARM is an ideal architecture because it is a real architecture shipped in millions of products yearly, yet it is stream-lined and easy to learn. Moreover, because of its popularity in the com-mercial and hobbyist worlds, simulation and development tools exist for the ARM architecture. All material relating to ARM. technology has been reproduced with permission from ARM Limited.Real-World PerspectivesIn addition to the real-world perspective in discussing the ARM architec-ture, Chapter 6 illustrates the architecture of Intel x86 processors to offer another per
我之前在学习计算机体系结构时,常常会遇到一些概念,比如指令集架构(ISA)、流水线、缓存一致性等等,虽然知道它们很重要,但总觉得理解得不够透彻,总是在“为什么会这样设计?”这个层面卡住。这本《数字设计和计算机体系结构》(英文版·第2版·ARM版)的出现,让我看到了解决这个问题的希望,尤其是它专门提到ARM版,这让我可以专注于一种非常实际且广泛应用的架构。我希望这本书能够深入剖析ARM指令集的设计哲学,解释它为何能做到高能效和高性能的平衡。更重要的是,我希望它能详细讲解ARM处理器内部是如何实现的,比如它的流水线设计,如何处理指令调度和分支预测,以及内存系统的组织结构,包括多级缓存的工作原理以及如何保证数据的一致性。如果书中能够通过图解或者伪代码的方式,生动地展示这些复杂的设计是如何协同工作的,从而解决实际的计算问题,那我一定会觉得这笔投资非常值得。
评分我之前在学习计算机系统设计时,常常会遇到一些关于不同处理器架构之间的比较和权衡,但很多时候这些讲解都比较宽泛,缺乏具体到某一种主流架构的深度。这本《数字设计和计算机体系结构》(英文版·第2版·ARM版)的出现,让我看到了一个非常棒的机会,可以深入理解ARM架构是如何成为当今计算领域的重要力量的。我希望这本书能详细解释ARM处理器的设计理念,比如它为何在功耗和性能上都能有如此出色的表现,以及它的指令集和微架构是如何支持这些特点的。此外,我更关注它在内存管理、I/O接口以及多核处理器集成等方面的设计细节。如果它能通过具体的例子,比如某个ARM核心的设计思路,来阐述这些体系结构上的决策是如何做出的,以及它们对实际性能和效率有什么影响,那将极大地满足我的求知欲。
评分这次拿到这本《数字设计和计算机体系结构》(英文版·第2版·ARM版),我最期待的就是它在数字设计部分的讲解。我一直觉得,要真正理解计算机,就必须从最底层的逻辑电路学起。很多教程往往会跳过这个关键环节,直接讲CPU或者内存,导致我们对很多高级概念的理解都浮于表面。这本书能在数字设计部分做得足够详尽,让我能够扎实地掌握布尔代数、组合逻辑、时序逻辑等基础知识,并学会如何利用这些工具来设计各种数字电路,包括状态机、寄存器等,这对我来说至关重要。我希望它能提供丰富的例子,比如如何设计一个简单的加法器、一个计数器,甚至是如何通过组合这些基本模块来构建更复杂的单元。如果这本书能够清晰地阐述数字逻辑是如何映射到硬件实现的,并且能展示出如何使用硬件描述语言(HDL)来设计和仿真这些电路,那就太棒了。我觉得,只有把这部分打牢了,后续理解计算机体系结构时才能游刃有余,不至于在各种抽象概念中迷失方向。
评分这本书,我早就想买了。一直以来,我对计算机底层是如何运作的都充满了好奇,尤其是那些能让无数电子设备活起来的“大脑”——处理器。我之前接触过一些关于计算机组成原理的入门书籍,但总觉得它们要么过于理论化,要么不够深入,很难将抽象的概念和实际的硬件联系起来。而这本《数字设计和计算机体系结构》(英文版·第2版·ARM版)的名字,听起来就非常扎实,特别提到了ARM版,这让我觉得它一定紧贴着当下最热门的处理器架构。我一直好奇ARM处理器在移动设备、嵌入式系统中的强大表现是如何实现的,它的精巧设计又有哪些独到之处。这本书的篇幅和内容深度,如果真如我所期望的那样,能够系统地讲解数字逻辑设计的基础,以及如何在此基础上构建出复杂的计算机体系结构,那对我来说将是巨大的收获。我特别希望它能通过清晰的图示和案例,逐步引导我理解从最基本的逻辑门到CPU流水线、内存管理等各个环节。拥有这样一本理论与实践并重,且聚焦于主流架构的书籍,我觉得自己的计算机知识体系会得到一个质的飞跃。
评分对于我这样一位对计算机底层技术充满热情的人来说,一本能够真正讲解“如何构建”的教材是弥足珍贵的。《数字设计和计算机体系结构》(英文版·第2版·ARM版)这个书名就足以吸引我,特别是“数字设计”和“计算机体系结构”的结合,暗示了它能够从硬件的根基出发,逐步构建起一个完整的计算系统。我一直对那些工程师是如何将理论转化为实际产品的感到好奇,例如,如何从基本的逻辑门开始,一步步设计出能够执行复杂指令的处理器。我希望这本书能够提供清晰的指导,让我理解数字逻辑设计的基本原理,并学会如何将这些原理应用于构建各种逻辑单元,最终形成一个完整的计算机系统。这本书是否能让我理解不同层次的抽象,从晶体管到逻辑门,再到CPU的各个部件,以及它们之间是如何交互协作的,这对我来说是衡量其价值的关键。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.coffeedeals.club All Rights Reserved. 静流书站 版权所有