图书目录

目录

Chapter 1

DIGITAL SYSTEMS AND INFORMATION2

11Information Representation 3

The Digital Computer5

Beyond the Computer6

More on the Generic Computer9

12Abstraction Layers in Computer

Systems Design11

13Number Systems14

Binary Numbers16

Octal and Hexadecimal Numbers17

Number Ranges19

14Arithmetic Operations 19

15Decimal Codes24

16Alphanumeric Codes25

ASCII Character Code25

Parity Bit28  

17Gray Codes29

18Chapter Summary31

References32

Chapter 2

COMBINATIONAL LOGIC CIRCUITS34

21Binary Logic and Gates35

Binary Logic35

Logic Gates37

HDL Representations of Gates41

22Boolean Algebra42

Basic Identities of Boolean Algebra46

Algebraic Manipulation48

Complement of a Function51

23Standard Forms52

Minterms and Maxterms52

Sum of Products56

Product of Sums57

24TwoLevel Circuit Optimization58

Cost Criteria58

Map Structures60

TwoVariable Maps62

ThreeVariable Maps64

25Map Manipulation68

Essential Prime Implicants68

Nonessential Prime Implicants70

ProductofSums Optimization71

DontCare Conditions72

26ExclusiveOr Operator and Gates75

27Gate Propagation Delay77

28HDLs Overview79

29HDL Representations—VHDL83

210HDL Representations—Verilog91

211Chapter Summary98

References99

Chapter 3

COMBINATIONAL LOGIC DESIGN 101

31Beginning Hierarchical Design102

32Technology Mapping106

33Combinational Functional Blocks110

34Rudimentary Logic Functions110

ValueFixing,Transferring, and Inverting111

MultipleBit Functions 111

Enabling114

35Decoding116

Decoder and Enabling Combinations120

DecoderBased Combinational Circuits123

36Encoding125

Priority Encoder 126

Encoder Expansion127

37Selecting128

Multiplexers 128

MultiplexerBased Combinational Circuits138

38Iterative Combinational Circuits143

39Binary Adders145

Half Adder145

Full Adder146

Binary Ripple Carry Adder147

310Binary Subtraction149

Complements 150

Subtraction Using 2s Complement152

311Binary AdderSubtractors153

Signed Binary Numbers154

Signed Binary Addition and Subtraction156

Overflow  158

HDL Models of Adders  160

Behavioral Description 162 

312Other Arithmetic Functions  165

Contraction  166

Incrementing  167

Decrementing  168

Multiplication by Constants  168

Division by Constants  170

Zero Fill and Extension  170

313Chapter Summary  171

References  171

Chapter 4

SEQUENTIAL CIRCUITS 173

41Sequential Circuit Definitions174

42Latches  177

SR and    Latches  177

D Latch  180

43FlipFlops  180

EdgeTriggered FlipFlop182

Standard Graphics Symbols183

Direct Inputs  185

44Sequential Circuit Analysis186

Input Equations  186

State Table  187

State Diagram  189

Sequential Circuit Simulation192

45Sequential Circuit Design194

Design Procedure  194

Finding State Diagrams and

State Tables  195

State Assignment  202

Designing with D FlipFlops  203

Designing with Unused States  206

Verification  208

46StateMachine Diagrams and

Applications  210

StateMachine Diagram Model  212

Constraints on Input Conditions  214

Design Applications Using State

Machine Diagrams216

47HDL Representation for Sequential

Circuits—VHDL224

48HDL Representation for Sequential

Circuits—Verilog233

49FlipFlop Timing  242

410Sequential Circuit Timing  243

411Asynchronous Interactions  246

412Synchronization and Metastability  247

413Synchronous Circuit Pitfalls  253

414Chapter Summary  254

References  255

Chapter 5

DIGITAL HARDWARE

IMPLEMENTATION 258

51The Design Space 258

Integrated Circuits  258

CMOS Circuit Technology  259

Technology Parameters  265

52Programmable Implementation

Technologies267

ReadOnly Memory  269

Programmable Logic Array  271

Programmable Array Logic Devices  274

Field Programmable Gate Array  276

53Chapter Summary  281

References  281

Chapter 6

REGISTERS AND REGISTER

TRANSFERS 283

61Registers and Load Enable 284

62Register Transfers  287

63Register Transfer Operations  289

64Register Transfers in VHDL and Verilog 291

65Microoperations  292

Arithmetic Microoperations  293

Logic Microoperations  295

Shift Microoperations297

66Microoperations on a Single Register297

MultiplexerBased Transfers  298

Shift Registers  300

Ripple Counter  305

Synchronous Binary Counters  307

Other Counters  311

67RegisterCell Design  314

68Multiplexer and BusBased Transfers

for Multiple Registers  319

HighImpedance Outputs  321

ThreeState Bus  323

69Serial Transfer and Microoperations324

610Control of Register Transfers  327

611HDL Representation for Shift

Registers and Counters—VHDL344

612HDL Representation for Shift

Registers and Counters—Verilog346

613Microprogrammed Control  348

614Chapter Summary  350

References  351

Chapter 7

MEMORY BASICS353

71Memory Definitions  353

72RandomAccess Memory  354

Write and Read Operations  356

Timing Waveforms  357

Properties of Memory  359

73SRAM Integrated Circuits  359

74Array of SRAM ICs  365

75DRAM ICs  368

DRAM Cell  369

DRAM Bit Slice  370

76DRAM Types  374

Synchronous DRAM (SDRAM)  376

DoubleDataRate SDRAM

(DDR SDRAM) 378

RAMBUS DRAM (RDRAM)379

77Arrays of Dynamic RAM ICs380

78Chapter Summary  380

References  381

Chapter 8

COMPUTER DESIGN BASICS 383

81Introduction  384

82Datapaths  384

83The Arithmetic/Logic Unit387

Arithmetic Circuit  387

Logic Circuit  390

Arithmetic/Logic Unit  392

84The Shifter  393

85Datapath Representation  395

86The Control Word  397

87A Simple Computer Architecture403

Instruction Set Architecture403

Storage Resources  404

Instruction Formats  405

Instruction Specifications  407

88SingleCycle Hardwired Control410

Instruction Decoder  411

Sample Instructions and Program413

SingleCycle Computer Issues416

89MultipleCycle Hardwired Control417

810Chapter Summary  426

References 428

Chapter 9

INSTRUCTION SET ARCHITECTURE 430

91Computer Architecture Concepts 430

Basic Computer Operation Cycle432

Register Set  432

92Operand Addressing  433

ThreeAddress Instructions434

TwoAddress Instructions  434

OneAddress Instructions  435

ZeroAddress Instructions  435

Addressing Architectures  436

93Addressing Modes  439

Implied Mode  440

Immediate Mode  440

Register and RegisterIndirect Modes441

Direct Addressing Mode  441

Indirect Addressing Mode  442

Relative Addressing Mode  443

Indexed Addressing Mode  444

Summary of Addressing Modes445

94Instruction Set Architectures  446

95DataTransfer Instructions  447

Stack Instructions  447

Independent versus Memory

Mapped I/O449

96DataManipulation Instructions450

Arithmetic Instructions  450

Logical and BitManipulation Instructions451

Shift Instructions  453

97FloatingPoint Computations454

Arithmetic Operations  455

Biased Exponent  456

Standard Operand Format  457

98Program Control Instructions459

Conditional Branch Instructions460

Procedure Call and Return Instructions462

99Program Interrupt  464

Types of Interrupts  465

Processing External Interrupts  466

910Chapter Summary  467

References  468

Chapter 10

RISC AND CISC CENTRAL

PROCESSING UNITS 470

101Pipelined Datapath  471

102Pipelined Control  476

103The Reduced Instruction Set

Computer  480

Instruction Set Architecture480

Addressing Modes483

Datapath Organization484

Control Organization  487

Data Hazards  489

Control Hazards  496

104The Complex Instruction Set

Computer500

ISA Modifications  502

Datapath Modifications  503

Control Unit Modifications505

Microprogrammed Control506

Microprograms for Complex

Instructions508

105More on Design  511

Advanced CPU Concepts  512

Recent Architectural Innovations515

106Chapter Summary  518

References  519

Chapter 11

INPUTOUTPUT AND

COMMUNICATION 522

111Computer I/O522

112Sample Peripherals 523

Keyboard  523

Hard Drive  524

Liquid Crystal Display Screen  526

I/O Transfer Rates  529

113I/O Interfaces  529

I/O Bus and Interface Unit  530

Example of I/O Interface  531

Strobing  532

Handshaking  534

114Serial Communication  535

Synchronous Transmission  536

The Keyboard Revisited  537

A PacketBased Serial I/O Bus  538

115Modes of Transfer  541

Example of ProgramControlled

Transfer542

InterruptInitiated Transfer  543

116Priority Interrupt  545

Daisy Chain Priority  545

Parallel Priority Hardware  547

117Direct Memory Access  548

DMA Controller  549

DMA Transfer  551

118Chapter Summary  552

References  552

Chapter 12

MEMORY SYSTEMS 555

121Memory Hierarchy555

122Locality of Reference558

123Cache Memory  560

Cache Mappings  562

Line Size  567

Cache Loading  568

Write Methods  569

Integration of Concepts570

Instruction and Data Caches572

MultipleLevel Caches573

124Virtual Memory  573

Page Tables  575

Translation Lookaside Buffer577

Virtual Memory and Cache579

125Chapter Summary579

References580

第1章

数字系统与信息

11信息表示

数字计算机

计算机外围扩展

通用计算机详解

12计算机系统设计的抽象层次

13数字系统

二进制数

八进制与十六进制数

数值范围

14算术运算

15十进制编码

16字母数字编码

ASCII字符编码

奇偶校验位

17格雷码

18本章小结

参考文献

第2章

组合逻辑电路

21二进制逻辑与门电路

二进制逻辑

逻辑门

HDL门级建模

22布尔代数

布尔代数的基本定律

代数运算

函数互补

23标准形式

最小项与最大项

积之和

和之积

24两级电路优化

成本准则

卡诺图结构

二变量卡诺图

三变量卡诺图

25卡诺图操作

实质蕴涵项

非实质蕴涵项

和之积优化

无关条件

26异或运算符与门电路

27门电路传输延迟

28HDL概述

29HDL表示——VHDL

210HDL表示——Verilog

211本章小结

参考文献

第3章

组合逻辑设计

31层次化设计入门

32工艺映射

33组合功能模块

34基本逻辑函数

值固定/传输/取反

多比特函数

使能控制

35解码器

解码器与使能组合

基于解码器的组合电路

36编码器

优先级编码器

编码器扩展

37选择器

多路复用器

基于多路复用器的组合电路

38迭代组合电路

39二进制加法器

半加器

全加器

二进制行波进位加法器

310二进制减法 

补码系统 

二进制补码减法 

311加减法器 

带符号二进制数 

带符号加减法 

溢出检测 

HDL加法器模型 

行为级描述 

312其他算术函数 

逻辑优化 

递增

递减

常数乘法 

常数除法 

零填充与符号扩展

313本章小结 

参考文献

 

第4章

时序电路

41时序电路定义 

42锁存器 

SR与锁存器 

D锁存器 

43触发器 

边沿触发器 

标准图形符号 

直接输入端口 

44时序电路分析

输入方程 

状态表

状态图 

时序电路仿真 

45时序电路设计 

设计流程

状态图与状态表推导 

状态编码 

D触发器设计 

未用状态设计

设计验证 

46状态机图与应用 

状态机模型 

输入条件约束

状态机设计实例 

47时序电路HDL表示——VHDL

48时序电路HDL表示——Verilog

49触发器时序 

410时序电路时序 

411异步交互 

412同步与亚稳态

413同步电路缺陷 

414本章小结 

参考文献

 

第5章

数字硬件实现

51设计空间 

集成电路

CMOS电路技术 

工艺参数

52可编程实现技术 

只读存储器

可编程逻辑阵列

可编程阵列逻辑器件

现场可编程门阵列

53本章小结 

参考文献

第6章

寄存器与寄存器传输 

61寄存器与加载使能 

62寄存器传输 

63寄存器传输操作 

64VHDL与Verilog中的寄存器传输 

65微操作 

算术微操作 

逻辑微操作

移位微操作 

66单寄存器微操作 

基于多路选择器的传输

移位寄存器 

行波计数器 

同步二进制计数器

其他计数器

67寄存器单元设计 

68多寄存器选择器与总线传输 

高阻态输出 

三态总线

69串行传输与微操作

610寄存器传输控制 

611移位寄存器与计数器的HDL

表示——VHDL

612移位寄存器与计数器的HDL

表示——Verilog

613微程序控制 

614本章小结 

参考文献

第7章

存储器 

71存储器定义

72随机存取存储器

读写操作 

时序波形 

存储器特性 

73SRAM集成电路 

74SRAM集成电路阵列 

75DRAM集成电路

DRAM存储单元

DRAM位片结构

76DRAM类型 

同步DRAM(SDRAM)

双倍数据速率SDRAM(DDR SDRAM)

RAMBUS DRAM(RDRAM)

77DRAM集成电路阵列 

78本章小结 

参考文献

 

第8章

计算机设计 

81引言 

82数据通路 

83算术逻辑部件概述

算术电路

逻辑电路

算术逻辑部件 

84移位器 

85数据通路表示 

86控制字 

87简单计算机体系结构 

指令集架构

存储资源 

指令格式 

指令规范

88单周期硬连线控制 

指令解码器

示例指令与程序 

单周期计算机问题 

89多周期硬连线控制 

810本章小结

参考文献

 

第9章

指令集架构

91计算机架构概念

基本计算机操作周期 

寄存器组

92操作数寻址

三地址指令 

二地址指令 

一地址指令

零地址指令 

寻址体系结构 

93寻址模式 

隐含模式 

立即数模式 

寄存器与寄存器间接模式 

直接寻址模式

间接寻址模式

相对寻址模式 

变址寻址模式

寻址模式总结

94多种指令集架构

95数据传输指令

栈指令 

独立I/O与内存映射I/O

96数据操作指令

算术指令 

逻辑与位操作指令 

移位指令

97浮点运算 

算术运算 

偏置指数 

标准操作数格式 

98程序控制指令 

条件分支指令

过程调用与返回指令 

99程序中断 

中断类型

外部中断处理

910本章小结 

参考文献

第10章

RISC与CISC中央处理器 

101流水线数据通路

102流水线控制

103精简指令集计算机

指令集体系结构 

寻址模式 

数据通路组织 

控制组织 

数据冒险

控制冒险

104复杂指令集计算机

ISA修改

数据通路修改

控制单元修改

微程序控制 

复杂指令的微程序 

105深入设计 

高级CPU概念 

架构创新 

106本章小结 

参考文献 

第11章

输入/输出与通信

111计算机I/O系统

112典型外设

键盘 

硬盘驱动器 

液晶显示屏

I/O传输速率

113I/O接口 

I/O总线与接口单元

I/O接口示例 

选通控制 

握手协议

114串行通信 

同步传输

键盘接口再探 

基于数据包的串行I/O总线 

115传输模式

程序控制传输示例 

中断驱动传输

116优先级中断

菊花链优先级

并行优先级硬件 

117直接存储器访问(DMA)

DMA控制器

DMA传输

118本章小结

参考文献 

第12章

存储器系统

121存储器层次结构

122访问局部性原理

123高速缓存

缓存映射方式 

行大小

缓存加载 

写入策略

概念整合 

指令与数据缓存 

多级缓存

124虚拟存储器

页表

转译后备缓冲器

虚拟内存与缓存 

125本章小结 

参考文献