第1章 计算机组成原理概论 1
1.1 计算机系统的发展与应用 1
1.1.1 计算机的产生 1
1.1.2 计算机的发展 3
1.1.3 微型计算机的发展 6
1.1.4 计算机的应用 9
1.2 计算机的分类和性能指标 12
1.2.1 按计算机体系结构分类 12
1.2.2 按计算机的用途分类 14
1.2.3 按计算机的使用方式分类 14
1.2.4 按计算机的规模分类 15
1.2.5 计算机的性能指标 16
1.3 计算机系统的基本组成 18
1.3.1 计算机硬件系统 19
1.3.2 计算机软件系统 21
1.3.3 计算机系统的层次结构 23
本章小结 25
习题1 26
第2章 计算机硬件基础 27
2.1 半导体器件的开关特性 27
2.1.1 二极管的开关特性 27
2.1.2 三极管的开关特性 29
2.1.3 MOS管的开关特性 30
2.2 基本逻辑运算和基本门电路 30
2.2.1 逻辑变量和逻辑表达式 30
2.2.2 逻辑门 31
2.2.3 逻辑代数的基本定律 35
2.2.4 逻辑函数的化简 36
2.3 组合逻辑电路实例 41
2.3.1 加法器 42
2.3.2 算术逻辑部件 45
2.3.3 译码器 48
2.3.4 数据选择器 50
2.4 时序逻辑电路 51
2.4.1 触发器和锁存器 51
2.4.2 寄存器 53
2.4.3 移位寄存器 53
2.4.4 计数器 54
2.5 计算机芯片的制造过程 58
2.5.1 制造芯片的准备阶段 59
2.5.2 光刻蚀 60
2.5.3 掺杂 60
2.5.4 测试、切割和封装 61
本章小结 62
习题2 62
第3章 信息编码与数据表示 65
3.1 数值数据的表示 65
3.1.1 进位计数制 65
3.1.2 不同数制之间数的相互转换 67
3.1.3 十进制数的编码 68
3.2 数据格式 71
3.2.1 机器数 71
3.2.2 小数点的表示方法 72
3.3 定点机器数表示方法 74
3.3.1 原码表示法 74
3.3.2 补码表示法 75
3.3.3 反码表示法 77
3.3.4 移码表示法 78
3.3.5 定点机器数转换 79
3.4 浮点机器数表示方法 81
3.4.1 浮点数的格式 81
3.4.2 浮点数的规格化表示 82
3.4.3 浮点数的表示范围 84
3.5 非数值数据的表示 85
3.5.1 字符编码 85
3.5.2 汉字编码 88
3.6 校验码 91
3.6.1 奇偶校验码 92
3.6.2 海明校验码 93
3.6.3 循环冗余检验码 95
3.7 现代计算机系统的数据表示 99
本章小结 100
习题3 101
第4章 运算方法与运算器 104
4.1 定点数的加减运算及实现 104
4.1.1 补码加减运算及运算器 104
4.1.2 机器数的移位运算 108
4.1.3 移码加减运算与判溢 110
4.1.4 十进制加法运算 111
4.2 定点数的乘法运算及实现 112
4.2.1 原码乘法及实现 113
4.2.2 补码乘法及实现 116
4.2.3 阵列乘法器 120
4.3 定点数除法运算及实现 122
4.3.1 原码除法及实现 123
4.3.2 补码除法及实现 127
4.3.3 阵列除法器 131
4.4 定点运算器的组成与结构 132
4.4.1 定点运算器的组成 132
4.4.2 定点运算器的内部总线结构与通路 133
4.4.3 标志寄存器 136
4.5 浮点运算及运算器 137
4.5.1 浮点加减运算 137
4.5.2 浮点乘法运算 142
4.5.3 浮点除法运算 144
4.5.4 浮点运算器 147
4.6 浮点运算器举例 148
4.6.1 80×87算术协处理器 148
4.6.2 浮点运算流水线 154
本章小结 155
习题4 156
第5章 存储体系 159
5.1 存储体系概述 159
5.1.1 存储器的分类 159
5.1.2 存储器的层次结构 160
5.2 主存储器 162
5.2.1 主存储器性能指标 162
5.2.2 主存储器的工作原理 163
5.2.3 随机读写存储器 164
5.2.4 只读存储器 174
5.2.5 高性能的主存储器 176
5.3 主存储器与CPU的连接 178
5.3.1 存储器芯片介绍 179
5.3.2 存储容量的扩展 180
5.3.3 主存储器与CPU的连接 182
5.4 高速存储器 187
5.4.1 双端口存储器 187
5.4.2 多体交叉存储器 189
5.4.3 相联存储器 192
5.5 高速缓冲存储器 193
5.5.1 Cache的基本原理 194
5.5.2 主存与Cache的地址映射方式 196
5.5.3 替换算法 199
5.5.4 写策略 200
5.5.5 Cache的多层次设计 201
5.6 虚拟存储器 204
5.7 外存储器 206
5.7.1 磁盘存储器 206
5.7.2 RAID 209
5.7.3 光盘存储器 213
5.7.4 闪存盘 214
5.8 存储保护 217
5.9 IA32架构的存储系统举例 218
5.9.1 P6微架构下的Cache 218
5.9.2 Intel NetBurst微架构下的Cache 220
5.9.3 Intel Core微架构的多核高效内存管理技术 221
本章小结 224
习题5 224
第6章 指令系统 227
6.1 指令格式 227
6.1.1 指令操作码与地址码 227
6.1.2 指令字长和操作码扩展 230
6.2 寻址方式 231
6.2.1 指令寻址 232
6.2.2 数据寻址 232
6.3 指令类型 238
6.4 指令系统概述 240
6.4.1 指令系统的要求 241
6.4.2 指令系统的发展 241
6.4.3 CISC的特点 242
6.4.4 RISC的特点 243
6.4.5 指令系统举例 244
本章小结 252
习题6 253
第7章 控制器 256
7.1 控制器的组成及指令的执行 256
7.1.1 计算机的基本组成和功能 256
7.1.2 控制器的组成 258
7.1.3 时序系统 259
7.1.4 控制方式和时序的产生 261
7.1.5 系统结构和数据通路的设计 263
7.1.6 简单计算机系统主机各部件的实现方案 266
7.1.7 指令的执行过程 267
7.2 硬布线控制器 273
7.2.1 控制器的设计方法 273
7.2.2 硬布线控制器的结构与原理 274
7.2.3 硬布线控制器的时序系统 275
7.2.4 硬布线控制器设计举例 277
7.3 微程序控制器 285
7.3.1 微程序控制的基本概念和工作原理 285
7.3.2 简单微程序控制器的设计 287
7.3.3 微程序设计技术 291
7.3.4 微程序控制方式下模型机的设计实例 303
7.3.5 模型机微程序设计 312
7.3.6 微程序控制器与硬布线控制器的比较 317
本章小结 318
习题7 319
第8章 输入输出系统 322
8.1 概述 322
8.1.1 输入输出系统的构成 322
8.1.2 外设与CPU的连接 324
8.1.3 I/O指令格式 325
8.2 输入输出接口 326
8.2.1 I/O接口的功能 326
8.2.2 I/O接口的组成 327
8.3 主机与外设交换信息的方式 329
8.3.1 程序查询方式 329
8.3.2 程序中断方式 330
8.3.3 直接存储器访问方式 331
8.3.4 通道与输入输出处理机方式 331
8.4 中断系统 332
8.4.1 中断的基本概念 332
8.4.2 中断请求与判优 335
8.4.3 中断响应 341
8.4.4 中断服务与返回 343
本章小结 346
习题8 347
第9章 总线 349
9.1 总线的基本概念 349
9.1.1 总线的特性 349
9.1.2 总线的分类 350
9.1.3 总线的性能指标 351
9.2 系统总线的结构 352
9.3 总线信息的传送方式 355
9.4 总线仲裁和定时 356
9.4.1 总线仲裁 356
9.4.2 总线的定时 359
9.5 实用总线标准 361
9.5.1 ISA总线 361
9.5.2 EISA总线 362
9.5.3 PCI总线 362
9.5.4 PCI Express总线 366
9.5.5 RS-232C/RS-485接口总线 370
9.5.6 USB接口总线 372
9.5.7 IEEE 1394接口总线 374
本章小结 374
习题9 375
第10章 流水线与并行处理技术 377
10.1 流水线原理 377
10.1.1 流水线基本概念 377
10.1.2 流水线分类 379
10.1.3 流水线性能分析 382
10.2 流水线相关及处理 387
10.2.1 结构相关 388
10.2.2 数据相关 389
10.2.3 控制相关 393
10.2.4 流水线的中断与处理 398
10.3 流水线的调度方法 399
10.3.1 非线性流水线的静态调度技术 399
10.3.2 流水线的动态调度技术 402
10.4 高级流水线技术 406
10.4.1 超标量流水线技术 407
10.4.2 超流水线技术 413
10.4.3 超标量超流水线技术 415
10.4.4 超长指令字技术 416
10.4.5 向量流水技术 418
10.5 并行处理技术 426
10.5.1 并行处理技术的基本概念 426
10.5.2 SIMD阵列处理机 427
10.5.3 多处理机系统 429
10.6 Pentium微处理器的系统结构 434
10.6.1 Pentium Ⅱ微处理器 434
10.6.2 Pentium 4微处理器 437
10.7 片上多核处理器架构 439
10.7.1 Intel Core微架构 440
10.7.2 IBM Cell架构 444
本章小结 446
习题10 447
参考文献 452