第1章 绪论 1
1.1计算机的发展史 1
1.1.1发展历史 1
1.1.2摩尔定律 2
1.2计算机的基本组成 4
1.2.1硬件系统 4
1.2.2软件系统 5
1.3计算机的层次概念 6
1.3.1计算机系统的层次结构 6
1.3.2计算机系统结构、组成与实现 7
1.4计算机的分类及性能描述 8
1.4.1计算机的分类 8
1.4.2计算机系统性能描述 11
习题 17
第2章 计算机系统中的数据表示 19
2.1数据编码 19
2.1.1数值数据的编码 19
2.1.2数据的浮点表示 26
2.1.3 BCD码 32
2.2非数值数据的编码 34
2.2.1 ASCII码 34
2.2.2汉字编码 36
2.3检错与纠错码 39
2.3.1奇偶校验码 39
2.3.2海明码 40
2.3.3循环冗余校验码 43
习题 46
第3章 运算方法与运算器 49
3.1定点数运算 49
3.1.1加减运算 49
3.1.2乘法运算 57
3.1.3除法运算 68
3.2算术逻辑运算部件 73
3.2.1单元电路 73
3.2.2算术逻辑单元集成芯片 75
3.2.3运算器的结构 77
3.3浮点运算 78
3.3.1加减运算 78
3.3.2乘除运算 81
3.3.3浮点运算的实现 83
习题 84
第4章 存储系统 88
4.1存储系统概述 88
4.1.1存储系统的层次结构 88
4.1.2存储器的分类 88
4.1.3存储器的性能指标 89
4.2内部存储器(主存储器) 90
4.2.1随机读写存储器RAM 91
4.2.2只读存储器ROM 104
4.2.3其他存储器 109
4.3高速缓冲存储器 112
4.3.1工作原理 113
4.3.2地址映射 113
4.3.3替换算法 119
4.3.4主存与Cache内容的一致性问题 120
4.3.5 Cache性能分析 121
4.4虚拟存储器 122
4.4.1虚拟存储器的概念 123
4.4.2虚拟存储器的管理 123
4.4.3几点说明 127
4.5外部存储器(辅助存储器) 128
4.5.1磁表面存储器 128
4.5.2光存储器 138
4.5.3移动存储设备 140
习题 141
第5章 指令系统 147
5.1指令系统概述 147
5.2指令系统结构层定义 148
5.2.1存储模式 149
5.2.2寄存器组织 152
5.2.3数据类型 154
5.2.4指令 154
5.3指令设计 156
5.3.1指令格式 156
5.3.2地址码设计 156
5.3.3操作码设计 157
5.3.4指令长度设计 161
5.4基本寻址方式 162
5.5 CISC与RISC 165
5.5.1指令系统结构的发展 165
5.5.2 CISC 166
5.5.3 RISC 166
5.6典型指令系统 169
5.6.1 Intel CPU指令系统 169
5.6.2 MIPS指令系统 174
习题 176
第6章 中央处理器(CPU) 179
6.1 CPU结构和微操作 179
6.1.1 CPU的功能与结构 179
6.1.2指令周期 181
6.1.3微操作 182
6.1.4控制器的组成 188
6.2硬布线控制器设计 189
6.3微程序控制器设计 196
6.3.1微程序控制原理 196
6.3.2微指令设计 198
6.3.3微程序设计 207
6.3.4微程序控制器设计 211
6.4微程序控制器与硬布线控制器的比较 213
6.5 CPU性能的测量与提高 213
6.5.1 CPU性能测量 213
6.5.2提高CPU速度的策略 219
6.6 CPU中的新技术 220
6.6.1多核技术 220
6.6.2多线程技术 222
6.6.3多核+多线程技术 224
6.7典型的CPU 225
6.7.1 Intel的CPU 226
6.7.2 Sun的CPU 227
6.7.3 MIPS的CPU 230
习题 231
第7章 流水线技术与指令级并行 236
7.1流水线处理的概念 236
7.1.1流水线的一般结构 236
7.1.2流水线的类型 237
7.2浮点运算流水线 241
7.2.1浮点加减运算流水线 241
7.2.2浮点乘除运算流水线 243
7.3指令流水线 246
7.3.1基本的指令流水线 247
7.3.2指令流水线策略 249
7.4流水线性能度量 253
7.4.1时-空图 253
7.4.2吞吐率 254
7.4.3加速比 256
7.4.4效率 257
7.4.5吞吐率、加速比和效率的关系 257
7.4.6流水线性能分析 258
7.5指令流水线的性能提高 261
7.5.1流水线的基本性能问题 261
7.5.2结构相关 262
7.5.3数据相关 263
7.5.4控制相关 264
7.6多发射处理器 269
7.6.1超标量处理器 271
7.6.2超长指令字处理器 273
7.6.3多发射处理器的限制 275
7.7指令级并行的概念 276
7.7.1指令流水线的限制 276
7.7.2突破指令流水线限制的途径 277
7.7.3指令级并行的限制 277
习题 278
第8章 总线与输入/输出系统 281
8.1概述 281
8.2总线 283
8.2.1总线类型与结构 283
8.2.2总线的信息传输方式 288
8.2.3总线仲裁 293
8.2.4典型的总线 298
8.3输入/输出接口 301
8.4输入/输出技术 304
8.4.1程序查询方式 304
8.4.2中断方式 306
8.4.3直接存储器存取方式 316
8.4.4 I/O通道方式 321
8.4.5操作系统的支持 326
8.5输入/输出设备 327
8.5.1输入设备 327
8.5.2输出设备 330
习题 334
第9章 并行体系结构 336
9.1计算机体系结构的并行性 336
9.2计算机体系结构的分类 339
9.3阵列处理机和向量处理机 341
9.3.1阵列处理机 341
9.3.2向量处理机 343
9.4互连网络 348
9.4.1基本概念 348
9.4.2网络拓扑结构 349
9.4.3常用的互连模式和互连网络 363
9.5多处理器系统 369
9.5.1 UMA对称多处理器系统 369
9.5.2 NUMA对称多处理器系统 377
9.5.3 Sun T1多处理器 380
9.6多计算机系统 380
9.6.1多计算机的概念 381
9.6.2大规模并行处理器系统 385
9.6.3集群 388
9.7并行处理面临的挑战 394
习题 395
参考文献 399