当前位置:首页 > 工业技术
计算机原理与体系结构
计算机原理与体系结构

计算机原理与体系结构PDF电子书下载

工业技术

  • 电子书积分:16 积分如何计算积分?
  • 作 者:王海瑞,袁梅宇主编;张智斌,李亚,张国银,欧阳鑫,陈榕副主编
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2015
  • ISBN:9787302375227
  • 页数:540 页
图书介绍:本书全面系统的讲解计算机体系结构的相关知识。首先在引言中讲解计算机的发展与计算机体系结构的变化与发展,然后从数据表示、数字逻辑的基础开始逐步引导,由浅及深系统完善读者的知识基础;进而逐步深入至运算器单元与控制器单元的组成、结构、控制以及工作原理;其后系统的讲解控制器的性能提高、计算机存储系统以及输入输出系统与总线;最后在本书最后两个章节讲解在高性能计算的需求下产生的并行计算与虚拟存储系统。
《计算机原理与体系结构》目录

第1章 引言 1

1.1 计算机及其发展 1

1.1.1 计算机发展史 1

1.1.2 计算机的分类 3

1.1.3 计算机的应用领域 5

1.2 冯·诺依曼计算机及系统组成 6

1.2.1 冯·诺依曼计算机的特点 6

1.2.2 计算机的硬件系统 7

1.2.3 计算机的软件系统 8

1.2.4 计算机硬件与软件的关系 9

1.3 计算机系统的基本概念 10

1.3.1 计算机系统中的层次概念 10

1.3.2 计算机体系结构 12

1.3.3 存储程序计算机体系结构及其发展 13

1.3.4 计算机实现技术及其发展 15

1.3.5 计算机技术的挑战和体系结构的生命周期 20

1.4 计算机性能评价指标 22

1.4.1 机器字长 22

1.4.2 存储容量 23

1.4.3 运算速度 23

1.4.4 兼容性 23

1.5 课后习题 23

课后习题答案 24

第2章 计算机中的数据信息 27

2.1 进位记数制 27

2.2 数值转换 30

2.2.1 多项式替代法 30

2.2.2 基数乘除法 30

2.2.3 混合法 32

2.2.4 数制转换中小数位数的确定 32

2.3 计算机中数值数据的表示 33

2.3.1 真值与机器码 33

2.3.2 原码表示 34

2.3.3 反码表示 35

2.3.4 补码表示 36

2.3.5 移码表示 37

2.3.6 原码、反码和补码之间的转换 38

2.4 二-十进制编码 39

2.4.1 8421码 39

2.4.2 余3码 39

2.4.3 2421码 40

2.5 计算机中非数值数据的表示 40

2.5.1 ASCII码 40

2.5.2 Unicode码 44

2.5.3 汉字国标码GB 2312—80 46

2.5.4 汉字点阵显示 47

2.5.5 校验码 49

2.6 高级数据表示 51

2.6.1 自定义数据表示 51

2.6.2 向量数组数据表示 52

2.6.3 堆栈数据表示 53

2.6.4 引入数据表示的原则 53

2.7 课后习题 58

课后习题答案 58

第3章 数字逻辑基础 60

3.1 数字信号基础 60

3.1.1 电源电压 60

3.1.2 逻辑电平 60

3.1.3 噪声容限 61

3.1.4 直流电压传输特性 61

3.1.5 静态约束 62

3.2 半导体基础 63

3.2.1 半导体 63

3.2.2 二极管 64

3.2.3 电容 64

3.2.4 MOS晶体管 64

3.3 布尔表达式 67

3.3.1 术语 67

3.3.2 与或式 67

3.3.3 或与式 68

3.4 布尔代数 69

3.4.1 公理 69

3.4.2 单变量定理 69

3.4.3 多变量定理 71

3.4.4 定理的统一证明方法 72

3.4.5 等式化简 72

3.5 卡诺图化简法 73

3.5.1 卡诺图的构成 73

3.5.2 布尔函数在卡诺图上的表示 74

3.5.3 卡诺图的性质 75

3.5.4 卡诺图化简的基本步骤 75

3.6 列表化简法 77

3.6.1 用列表法确定布尔函数的所有质蕴涵项 77

3.6.2 用质蕴涵表确定必要质蕴涵 78

3.6.3 求函数的最小覆盖 79

3.7 逻辑门电路基础 82

3.7.1 与门 82

3.7.2 或门 83

3.7.3 非门 85

3.7.4 与非门 86

3.7.5 或非门 87

3.7.6 与或非门 88

3.8 组合逻辑网络的分析设计与举例 88

3.8.1 组合网络的分析 88

3.8.2 组合网络的设计 89

3.8.3 二进制运算电路的逻辑设计 91

3.8.4 十进制逻辑电路的设计 94

3.9 触发器 97

3.9.1 RS触发器 97

3.9.2 JK触发器 99

3.9.3 D触发器 100

3.9.4 T触发器 102

3.10 同步时序电路的分析及设计举例 103

3.10.1 概述 103

3.10.2 状态约束 104

3.10.3 系统时序 104

3.10.4 时钟偏移 106

3.10.5 亚稳态 108

3.10.6 同步器 109

3.10.7 同步时序电路的设计举例 110

3.11 异步时序电路的分析及设计举例 114

3.11.1 概述 114

3.11.2 异步时序流程表的建立与简化 117

3.11.3 流程表的状态分配 119

3.11.4 异步时序电路的设计举例 122

3.12 课后习题 128

课后习题答案 131

第4章 运算方法与运算器 136

4.1 数的定点与浮点表示 136

4.1.1 定点表示 136

4.1.2 浮点表示 137

4.2 定点加减法运算 141

4.2.1 补码加法运算 141

4.2.2 补码减法运算 143

4.2.3 溢出及其检测方法 144

4.3 定点乘法运算 145

4.3.1 原码一位乘法 145

4.3.2 原码两位乘法 146

4.3.3 补码一位乘法 148

4.3.4 补码两位乘法 149

4.3.5 阵列乘法器 150

4.4 定点数除法运算 153

4.4.1 原码和补码除法中的加减交替法 153

4.4.2 原码两位除法 156

4.4.3 阵列除法器 158

4.5 浮点算术运算 160

4.5.1 浮点加法和减法 160

4.5.2 浮点乘法运算 162

4.5.3 浮点除法运算 162

4.6 运算器电路 162

4.6.1 加法器 162

4.6.2 减法器 165

4.6.3 比较器 166

4.6.4 算术逻辑单元 166

4.6.5 移位器和循环移位器 168

4.7 74LS181运算器 169

4.7.1 74LS181算术逻辑单元的工作原理 169

4.7.2 74LS181功能测试 171

4.8 课后习题 172

课后习题答案 172

第5章 指令与指令系统 174

5.1 指令系统的发展 174

5.2 指令系统 175

5.2.1 指令系统的介绍 175

5.2.2 指令的分类 175

5.3 指令格式 176

5.3.1 零地址指令 176

5.3.2 单指令地址 177

5.3.3 双地址指令 177

5.3.4 三地址指令 177

5.3.5 多地址指令 177

5.4 寻址方式 178

5.4.1 立即数寻址 178

5.4.2 寄存器寻址 178

5.4.3 直接寻址 179

5.4.4 间接寻址 179

5.4.5 变址寻址 180

5.4.6 相对寻址 181

5.5 复杂指令系统和精简指令系统 182

5.5.1 复杂指令系统 182

5.5.2 精简指令系统 182

5.6 指令集结构的功能设计 183

5.6.1 CISC指令集结构的功能设计 183

5.6.2 RISC指令集结构的功能设计 185

5.6.3 控制指令功能设计 186

5.7 操作数的类型、表示和大小 189

5.7.1 操作数的类型 189

5.7.2 操作数的表示和大小 189

5.8 指令集格式的设计 190

5.8.1 寻址方式的表示方法 191

5.8.2 指令集格式的选择 191

5.8.3 操作码的优化设计 192

5.8.4 地址码的优化设计 193

5.9 处理器的指令周期 194

5.9.1 指令周期 194

5.9.2 非访内指令的指令周期 195

5.9.3 访内指令的指令周期 197

5.9.4 间接访问主存储器指令的指令周期 198

5.9.5 程序控制指令的指令周期 199

5.9.6 用框图语言表示指令周期 202

5.10 ARM指令集结构 203

5.10.1 DLX中的寄存器 203

5.10.2 ARM的模式 204

5.10.3 ARM的指令格式 204

5.10.4 ARM的加载存储 206

5.10.5 数据处理指令 207

5.10.6 分支和跳转操作 208

5.10.7 ARM支持协处理器操作 209

5.10.8 ARM杂项指令 209

5.10.9 ARM的伪指令 210

5.10.10 RISC体系结构与ARM的性能优势 210

5.10.11 RISC体系结构的优势 211

5.10.12 体系结构的性能优势 211

5.11 RISC指令并行处理 212

5.11.1 指令级并行概念 212

5.11.2 实现指令集并行处理的技术 213

5.12 课后习题 214

课后习题答案 215

第6章 控制器及性能提高 219

6.1 控制器的构成 219

6.1.1 中央处理器的功能与组成 219

6.1.2 控制器的功能及结构框图 223

6.1.3 控制方式及时序部件 226

6.1.4 中断系统 231

6.2 微操作命令分析 233

6.2.1 取指周期 233

6.2.2 间访周期 233

6.2.3 执行周期 233

6.2.4 中断周期 235

6.3 指令的执行过程 236

6.3.1 顺序控制 236

6.3.2 超前控制 237

6.3.3 流水线控制 238

6.4 流水线技术 239

6.4.1 流水线的基本概念 239

6.4.2 流水线的分类 241

6.4.3 流水线中的相关 243

6.5 RISC处理器的指令流水线 260

6.5.1 ARM7流水线技术 261

6.5.2 ARM9流水线技术 261

6.5.3 ARM11流水线技术 262

6.6 流水线性能分析 263

6.6.1 线性流水线的性能分析 263

6.6.2 线性流水线的性能分析举例 268

6.6.3 非线性流水线的调度技术简介 269

6.7 超标量体系结构 271

6.7.1 简单超标量 272

6.7.2 多发送超标量 273

6.7.3 超标量性能 274

6.8 分支预测 275

6.8.1 分支预测的必要性 275

6.8.2 单T位预测器 276

6.8.3 双位预测器 278

6.8.4 计数器、移位器和预测器 279

6.8.5 局部分支预测器 280

6.8.6 全局分支预测器 282

6.8.7 G选择预测器 284

6.8.8 G共享预测器 285

6.8.9 混合预测器 286

6.8.10 分支目标缓冲 287

6.9 微程序控制器 289

6.9.1 微程序控制原理 289

6.9.2 微程序设计技术 289

6.10 硬布线控制器 293

6.10.1 基本思想 293

6.10.2 硬布线控制逻辑设计中的若干问题 294

6.10.3 硬布线控制器和微程序控制器的比较 295

6.11 课后习题 296

课后习题答案 297

第7章 存储系统 300

7.1 存储系统的层次结构 300

7.2 主存储器 301

7.2.1 主存储器的分类 301

7.2.2 读写存储器 303

7.2.3 非易失性半导体存储器 307

7.3 主存储器组成 309

7.3.1 位扩展 309

7.3.2 字扩展 310

7.3.3 字位扩展 311

7.4 相联存储器 312

7.5 高速缓冲存储器 314

7.5.1 高速缓冲存储器概述 314

7.5.2 映像规则 319

7.5.3 查找方法 321

7.5.4 替换算法 322

7.5.5 写策略 323

7.5.6 高速缓冲寄存器的结构 325

7.5.7 高速缓冲存储器的性能分析 327

7.5.8 高速缓冲存储器的性能改进 331

7.6 降低cache失效率的方法 331

7.6.1 增加cache块大小 334

7.6.2 提高相联度 336

7.6.3 Victim cache 337

7.6.4 伪相联cache 338

7.6.5 硬件预取技术 339

7.6.6 由编译器控制的预取 340

7.6.7 编译器优化 342

7.7 减少cache失效开销 346

7.7.1 让读失效优先于写 346

7.7.2 子块放置技术 346

7.7.3 请求字处理技术 347

7.7.4 非阻塞cache技术 348

7.7.5 采用两级cache 349

7.8 减少命中时间 352

7.8.1 容量小、结构简单的cache 352

7.8.2 虚拟cache 353

7.8.3 写操作流水化 355

7.8.4 cache优化技术总结 355

7.9 外部存储设备 356

7.9.1 磁盘设备 356

7.9.2 Flash存储器 360

7.9.3 磁带设备 361

7.9.4 光盘设备 362

7.10 廉价磁盘冗余阵列 363

7.10.1 RAID0 364

7.10.2 RAID1 366

7.10.3 RAID2 367

7.10.4 RAID3 368

7.10.5 RAID4 369

7.10.6 RAID5 370

7.10.7 RAID6 371

7.10.8 RAID7 371

7.10.9 RAID的实现与发展 372

7.11 虚拟存储器 373

7.11.1 虚拟存储器基本原理 373

7.11.2 页式虚拟存储器 374

7.11.3 段式虚拟存储器 377

7.11.4 快表 378

7.12 进程保护和虚存实例 381

7.12.1 进程保护 382

7.12.2 ARM的段页式存储结构 383

7.13 课后习题 386

课后习题答案 387

第8章 输入/输出系统与总线 391

8.1 引言 391

8.1.1 I/O设备的编址与I/O接口的基本功能 391

8.1.2 I/O设备数据传送方式 393

8.1.3 I/O系统性能与CPU的性能 394

8.1.4 I/O系统的可靠性 395

8.2 可靠性、可用性和可信性 396

8.3 总线系统 397

8.3.1 普林斯顿体系与哈佛体系 397

8.3.2 总线分类 399

8.3.3 总线操作 400

8.3.4 常用的系统总线 406

8.4 I/O系统性能分析 422

8.4.1 I/O性能与系统响应时间 422

8.4.2 Little定律 425

8.4.3 M/M/1排队系统 425

8.4.4 M/M/m排队系统 427

8.5 I/O与操作系统 429

8.5.1 DMA和虚拟存储器 429

8.5.2 I/O和cache数据一致性 430

8.5.3 异步I/O 431

8.5.4 块服务器和文件服务器 432

8.6 小结 432

附录A 嵌入式计算机上的无线技术 433

8.7 课后习题 442

课后习题答案 444

第9章 并行处理机与多处理机 449

9.1 引言 449

9.1.1 并行性 449

9.1.2 并行计算机体系结构的分类 450

9.1.3 SISD向MIMD的演变 450

9.1.4 并行处理面临的挑战 452

9.2 并行处理机结构与特点 454

9.2.1 并行处理机的典型结构 454

9.2.2 并行处理机的特点 455

9.3 并行计算机基本结构 456

9.3.1 Illiac Ⅳ计算机 456

9.3.2 Burroughs BSP计算机 461

9.3.3 CM-2计算机 465

9.4 互连网络的基本概念 468

9.4.1 互连网络在计算机系统中的作用 468

9.4.2 主要特性和性能参数 469

9.4.3 互连函数 471

9.4.4 互连网络的种类 475

9.5 互连网络 476

9.5.1 互连网络的性能参数 477

9.5.2 静态连接网络 479

9.5.3 动态连接网络 483

9.6 多处理机系统结构与特点 487

9.6.1 基本结构 487

9.6.2 多处理机系统特点 488

9.7 多处理机cache一致性问题 490

9.7.1 多处理机cache一致性 490

9.7.2 实现一致性的基本方案 491

9.7.3 监听协议及其实现 493

9.7.4 分布式共享存储器体系结构 494

9.7.5 基于目录的cache一致性 495

9.7.6 目录协议及其实现 496

9.8 同步 498

9.8.1 基本硬件原语 498

9.8.2 用一致性实现锁 499

9.8.3 同步性能问题 501

9.8.4 大规模机器的同步 503

9.9 同时多线程 506

9.9.1 将线程级并行转换为指令级并行 507

9.9.2 同时多线程处理器的设计 508

9.9.3 同时多线程的性能 509

9.10 先进的并行处理与多处理机介绍 511

9.10.1 网格计算机 511

9.10.2 云计算 513

9.10.3 集群机 516

9.11 小结 517

9.12 课后习题 518

课后习题答案 519

第10章 虚拟化技术原理 523

10.1 概述 523

10.1.1 虚拟化 523

10.1.2 虚拟机 523

10.1.3 全虚拟化和单虚拟化 524

10.1.4 硬件虚拟化概况 524

10.2 处理器虚拟化原理精要 526

10.2.1 体系结构背景 526

10.2.2 经典的虚拟化方法 527

10.2.3 x86 ISA分析 527

10.2.4 x86虚拟化方法 528

10.2.5 其他体系结构分析 531

10.2.6 其他体系所采用的虚拟化方法 531

10.3 内存虚拟化原理精要 531

10.3.1 概述 531

10.3.2 页表虚拟化基本思想 532

10.3.3 页表虚拟化实现 533

10.4 I/O虚拟化原理精要 534

10.4.1 全虚拟化 534

10.4.2 半虚拟化 534

10.4.3 软件模拟 536

10.5 VMM结构 537

10.5.1 概述 537

10.5.2 宿主模型 537

10.5.3 Hypervisor模型 538

10.5.4 混合模型 538

10.6 课后习题 539

课后习题答案 539

返回顶部