本书重点讲授计算机单处理机系统的组成和工作原理。在此基础上,扩展讲授并行计算机的体系结构。书中内容分为13章: (1)计算机系统概论; (2)运算方法和运算器; (3)内部存储器; (4)指令系统; (5)中央处理机; (6)总线系统; (7)外围设备; (8)输入/输出系统; (9)操作系统支持; (10)安腾高性能处理机体系结构; (11)并行体系结构; (12)教学实验设计; (13)课程综合设计。在附录A中介绍了配套光盘与教学设备。
本书是作者对“计算机组织与体系结构”课程体系、教学内容、教学方法、教学手段进行综合改革的具体成果。
本书特色: 基础性、时代性、系统性、实践性、实用性、启发性融为一体,文字教材、多媒体CAI软件、教学课件、习题答案库、自测试题库、教学仪器、实验设计、课程设计综合配套,形成“理论、实验、设计”三个过程相统一的立体化教学体系。本书文字流畅、通俗易懂,有广泛的适应面,可作为高等学校计算机系的教材,也可作为成人自学考试和全国计算机等级考试NCRE(四级)用书。
“计算机组织与体系结构”是计算机科学与技术系的一门硬件核心专业基础课程。从课程地位来说,它在先导课和后续课之间起着承上启下的作用。
“计算机组织与体系结构”重点讲授单处理机系统的组织和工作原理,在此基础上扩充讲授并行计算机系统的体系结构。课程教学具有知识面广、内容多、难度大、更新快等特点。另一方面,体现课程特点的教材对于提高教学水平和培养人才的质量起着十分重要的作用。作者认为,一本好的“计算机组织与体系结构”教材主要应具备下述特点:
(1) 基础性强,知识结构合理,为学生建立终生知识体系打下良好基础。
(2) 系统性强,知识模块彼此交互,使学生能清晰地建立计算机整机概念。
(3) 时代性强,及时反映前沿方向,以适应计算机科学技术快速发展的需要。
(4) 实践性强,理论教学与实践教学结合,注重学生的智力开发和能力培养。
(5) 应用性强,有较广的适应面,以适应学生在各类计算机上从事开发应用的需要。
(6) 启发性强,结合计算机科学技术的重大进展,培养学生的创新思维和创新意识。
按CCC2005教学计划,本课程的先修课是“数字逻辑与数字系统”.
作者根据多年从事计算机硬件课程理论教学和实践教学的经验,从传授知识和培养能力的目标出发,结合本课程教学的特点、难点和要点,在这次新版教材编写中又进行了课程体系、教学内容、教学方法和教学手段的改革,使文字教材、多媒体CAI软件、教学课件、习题库、试题库、教学仪器、实验设计、课程设计综合配套,力求形成“理论、实验、设计”三个过程相统一的立体化教学体系。
理论教学计划64学时。授课学时建议: 第1章3(学时,下同),第2章9,第3章9,第4章4,第5章12,第6章4,第7章4,第8章6,第9章4,第10章4,第11章5。实验教学16学时,与理论教学同步进行;另外,可在小学期集中安排2周时间的课程综合设计实践。
倪辉、覃健诚、张杰、靳秀国、杨秦、陈楠、冯一兵、祁之力、王军德、张振华、刘俊荣、李娇娇、宗华丽、王晓梅、胡文发、李贞、王坤山、肖炜、崔洪浚、白媛、郝静、吴璇、杨光辉、杨孟柯等参与了第4版文字教材、CAI软件、教学课件、习题库、试题库、教学仪器、实验设计、课程设计等的编写和研制工作,限于版面,未能在封面上一一署名。 本书由中国科学院计算技术研究所国家智能计算机研究开发中心陈鸿安研究员主审。清华大学科教仪器厂李鸿儒教授给予了大力帮助。国防科技大学计算机学院王志英教授为本书的出版付出了心血。在此,作者一并向他们表示衷心感谢。
作者2008年8月于北京
附录A 《计算机组织与体系结构》(第4版·立体化教材)
配套光盘与教学设备
(1) 《计算机组织与体系结构(第4版·立体化教材)》(彩图1),文字教材,白中英主编,清华大学出版社,2008年出版。购书电话: (010)
(2) 《计算机组织与体系结构(第4版)立体化课件》(彩图2),以文字教材为蓝本开发的教师授课用电子教材。清华大学出版社,2008年出版。本课件已集成到资源库光盘中。
(3) 《计算机组织与体系结构(第4版)CAI软件》(彩图3),配合主教材各章重点和难点内容开发的360个多媒体CAI演示软件,图文声并举,形象直观。清华大学出版社,2008年版。本软件已集成到资源库光盘中。
(4) 《计算机组织与体系结构(第4版)习题答案库》(彩图4),提供文字教材各章中习题的参考答案。清华大学出版社,2008版。本答案库已集成到资源库光盘中。
(5) 《计算机组织与体系结构(第4版)自测试题库》(彩图5),配合文字教材开发的试题库软件,内容包含本科生期末试卷、大专生期末试卷、研究生入学试卷各10套。清华大学出版社,2008年版。本软件已集成到资源库光盘中。
(6) "TEC-5数学逻辑与计算机组成实验系统”(彩图6),清华大学科教仪器厂研发的专利产品。本仪器可进行数字逻辑与数字系统、计算机组成原理、计算机组织与体系结构三门课程的教学实验及课程设计,配有《TEC-5计算机组成辅助实验软件》光盘。
(7) "TEC-8计算机组织与体系结构实验系统”(彩图7),与文字教材配套的教学实验仪器(专利产品),清华大学科教仪器厂研制。本仪器使用先进的可编程芯片,功能完善,价格低廉,可靠性高,采用双端口存储器、指令/数据双总线体制和先进的流水技术。
本仪器开设以下6个基本教学实验,并配有《TEC-8辅助实验软件》光盘:
① 运算器实验(含乘法硬件); ② 双端口存储器实验;
③ 数据通路实验;④ 微程序控制器实验;
⑤ CPU组成与指令周期实验; ⑥ 中断原理实验。
本仪器开设以下3个综合课程设计,供计算机组成原理、计算机组织与体系结构、计算机系统结构三门课程选做:
① 一台模型计算机的设计与调试(硬联线控制器常规方案设计);
② 一台模型计算机的设计与调试(微程序控制器流水方案设计);
③ 一台模型计算机的设计与调试(硬联线控制器流水方案设计).
上述所有实验随仪器提供详细的电路图、程序和教师用实验指导书。
联系电话: 北京(010)62782245,传真: (010)62782245
第1章 计算机系统概论 /1
1.1 计算机的分类 /1
1.2 计算机的发展简史 /2
1.2.1 计算机的五代变化 /2
1.2.2 半导体存储器的发展 /3
1.2.3 微处理器的发展 /3
1.2.4 计算机的性能指标 /5
1.3 计算机的硬件 /5
1.3.1 硬件组成要素 /5
1.3.2 运算器 /7
1.3.3 存储器 /7
1.3.4 控制器 /8
1.3.5 适配器与输入输出设备 /11
1.4 计算机的软件 /11
1.4.1 软件的组成与分类 /11
1.4.2 软件的发展演变 /12
1.5 计算机系统的层次结构 /13
1.5.1 多级组成的计算机系统 /13
1.5.2 软件与硬件的逻辑等价性 /14
1.5.3 三个常用术语的物理概念 /15
1.5.4 计算机体系结构的分类 /15
本章小结 /16
习题 /16
第2章 运算方法和运算器 /18
2.1 数据与文字的表示方法 /18
2.1.1 数据格式 /18
2.1.2 数的机器码表示 /21
2.1.3 字符与字符串的表示方法 /25
2.1.4 汉字的表示方法 /27
2.1.5 校验码 /28
2.2 定点加法、减法运算 /29
2.2.1 补码加法 /29
2.2.2 补码减法 /30
2.2.3 溢出概念与检测方法 /31
2.2.4 基本的二进制加法/减法器 /32
2.3 定点乘法运算 /34
2.3.1 原码并行乘法 /34
2.3.2 直接补码并行乘法 /39
2.4 定点除法运算 /41
2.4.1 原码除法算法原理 /41
2.4.2 并行除法器 /43
2.5 定点运算器的组成 /45
2.5.1 逻辑运算 /45
2.5.2 多功能算术/逻辑运算单元
/47
2.5.3 内部总线 /51
2.5.4 定点运算器的基本结构 /52
2.6 浮点运算方法和浮点运算器 /53
2.6.1 浮点加法、减法运算 /53
2.6.2 浮点乘法、除法运算 /56
2.6.3 浮点运算流水线 /58
2.6.4 浮点运算器实例 /61
本章小结 /63
习题 /63
第3章 内部存储器 /66
3.1 存储器概述 /66
3.1.1 存储器的分类 /66
3.1.2 存储器的分级 /67
3.1.3 主存储器的技术指标 /68
3.2 SRAM存储器 /68
3.2.1 基本的静态存储元阵列 /68
3.2.2 基本的SRAM逻辑结构 /69
3.2.3 读/写周期波形图 /70
3.3 DRAM存储器 /71
3.3.1 DRAM存储元的记忆原理 /71
3.3.2 DRAM芯片的逻辑结构 /72
3.3.3 读/写周期、刷新周期 /73
*3.3.4 存储器容量的扩充 /74
3.3.5 高级的DRAM结构 /76
3.3.6 DRAM主存读/写的正确性校验 /80
3.4 只读存储器和闪速存储器 /81
3.4.1 只读存储器ROM /81
3.4.2 FLASH存储器 /84
3.5 并行存储器 /87
3.5.1 双端口存储器 /87
3.5.2 多模块交叉存储器 /90
3.6 cache存储器 /93
3.6.1 cache基本原理 /93
3.6.2 主存与cache的地址映射 /95
3.6.3 替换策略 /99
3.6.4 cache的写操作策略 /100
3.6.5 Pentium 4的cache组织 /100
本章小结 /101
习题 /102
第4章 指令系统 /104
4.1 指令系统的发展与性能要求 /104
4.1.1 指令系统的发展 /104
4.1.2 对指令系统性能的要求 /105
4.1.3 低级语言与硬件结构的关系
/105
4.2 指令格式 /106
4.2.1 操作码 /107
4.2.2 地址码 /107
4.2.3 指令字长度 /108
4.2.4 指令助记符 /109
4.2.5 指令格式举例 /109
4.3 操作数类型 /112
4.3.1 一般的数据类型 /112
4.3.2 Pentium数据类型 /112
4.3.3 Power PC数据类型 /113
4.4 指令和数据的寻址方式 /113
4.4.1 指令的寻址方式 /113
4.4.2 操作数基本寻址方式 /114
4.4.3 寻址方式举例 /118
4.5 典型指令 /122
4.5.1 指令的分类 /122
4.5.2 基本指令系统的操作 /123
4.5.3 精简指令系统 /125
本章小结 /126
习题 /127
第5章 中央处理机 /129
5.1 CPU的功能和组成 /129
5.1.1 CPU的功能 /129
5.1.2 CPU的基本组成 /129
5.1.3 CPU中的主要寄存器 /131
5.1.4 操作控制器与时序产生器 /132
5.2 指令周期 /132
5.2.1 指令周期的基本概念 /132
5.2.2 MOV指令的指令周期 /134
5.2.3 LAD指令的指令周期 /136
5.2.4 ADD指令的指令周期 /137
5.2.5 STO指令的指令周期 /138
5.2.6 JMP指令的指令周期 /140
5.2.7 用方框图语言表示指令周期
/141
5.3 时序产生器和控制方式 /143
5.3.1 时序信号的作用和体制 /143
5.3.2 时序信号产生器 /144
5.3.3 控制方式 /146
5.4 微程序控制器 /147
5.4.1 微程序控制原理 /147
5.4.2 微程序设计技术 /153
5.5 硬连线控制器 /157
5.6 传统CPU /159
5.6.1 Intel 8088 CPU /159
5.6.2 IBM 370系列CPU /161
5.7 流水CPU /162
5.7.1 流水CPU的结构 /162
5.7.2 流水线中的主要问题 /164
5.7.3 奔腾CPU /166
5.8 RISC CPU /171
5.8.1 RISC CPU的特点 /171
5.8.2 RISC CPU实例 /172
5.9 多媒体CPU /176
5.9.1 多媒体技术的主要问题 /176
5.9.2 MMX技术 /177
本章小结 /179
习题 /180
第6章 总线系统 /183
6.1 总线的概念和结构形态 /183
6.1.1 总线的基本概念 /183
6.1.2 总线的连接方式 /184
6.1.3 总线的内部结构 /186
6.2 总线接口 /187
6.2.1 信息传送方式 /187
6.2.2 总线接口的基本概念 /189
6.3 总线的仲裁 /190
6.3.1 集中式仲裁 /191
6.3.2 分布式仲裁 /192
6.4 总线的定时和数据传送模式 /193
6.4.1 总线的定时 /193
6.4.2 总线数据传送模式 /195
6.5 HOST总线和PCI总线 /196
6.5.1 多总线结构 /196
6.5.2 PCI总线信号 /197
6.5.3 总线周期类型 /198
6.5.4 总线周期操作 /200
6.5.5 总线仲裁 /201
6.6 InfiniBand标准 /201
6.6.1 InfiniBand的体系结构 /201
6.6.2 InfiniBand的通信协议 /203
本章小结 /204
习题 /205
第7章 外围设备 /207
7.1 外围设备概述 /207
7.1.1 外围设备的一般功能 /207
7.1.2 外围设备的分类 /208
7.2 磁盘存储设备 /209
7.2.1 磁记录原理 /209
7.2.2 磁盘的组成和分类 /211
7.2.3 磁盘驱动器和控制器 /212
7.2.4 磁盘上信息的分布 /214
7.2.5 磁盘存储器的技术指标 /215
7.3 磁盘存储设备的技术发展 /216
7.3.1 磁盘cache /216
7.3.2 磁盘阵列RAID /217
7.3.3 可移动存储设备 /218
*7.4 磁带存储设备 /219
7.5 光盘和磁光盘存储设备 /220
7.5.1 光盘存储设备 /220
7.5.2 磁光盘存储设备 /222
*7.6 显示设备 /223
7.6.1 显示设备的分类与有关概念
/223
7.6.2 字符/图形显示器 /224
7.6.3 图像显示设备 /226
7.6.4 VESA显示标准 /227
*7.7 输入设备和打印设备 /230
7.7.1 输入设备 /230
7.7.2 打印设备 /231
本章小结 /232
习题 /233
第8章 输入/输出系统 /235
8.1 外围设备的速度分级与信息交换方式
/235
8.1.1 外围设备的速度分级 /235
8.1.2 信息交换方式 /236
8.2 程序查询方式 /238
8.3 程序中断方式 /241
8.3.1 中断的基本概念 /241
8.3.2 程序中断方式的基本I/O接口
/243
8.3.3 单级中断和多级中断 /244
8.3.4 中断控制器 /249
8.3.5 Pentium中断机制 /250
8.4 DMA方式 /252
8.4.1 DMA的基本概念 /252
8.4.2 DMA传送方式 /253
8.4.3 基本的DMA控制器 /255
8.4.4 选择型和多路型DMA控制器
/257
8.5 通道方式 /259
8.5.1 通道的功能 /260
8.5.2 通道的类型 /261
8.5.3 通道结构的发展 /262
8.6 通用I/O标准接口 /263
8.6.1 并行I/O标准接口SCSI /263
8.6.2 串行I/O标准接口IEEE 1394
/264
本章小结 /266
习题 /267
第9章 操作系统支持 /270
9.1 操作系统概述 /270
9.1.1 操作系统的概念 /270
9.1.2 操作系统的功能 /271
9.1.3 操作系统的特性及其需要解决的问题 /273
9.1.4 操作系统的硬件环境 /274
9.2 调度 /276
9.2.1 进程 /276
9.2.2 调度的层次 /277
9.2.3 处理机调度的实现 /278
9.3 存储管理 /280
9.3.1 分区式存储管理 /280
9.3.2 交换技术和分布技术 /280
9.4 虚拟存储器 /281
9.4.1 虚拟存储器的基本概念 /281
9.4.2 页式虚拟存储器 /283
9.4.3 段式虚拟存储器和段页式虚拟存储器 /285
9.4.4 虚存的替换算法 /288
9.5 存储保护 /289
9.5.1 存储区域保护 /289
9.5.2 访问方式保护 /291
9.6 奔腾系列机的虚存组织 /291
9.6.1 存储器模型 /292
9.6.2 虚地址模式 /292
9.6.3 分页模式下的地址转换 /293
本章小结 /294
习题 /295
第10章 安腾高性能处理机体系结构 /297
10.1 高性能处理机体系结构的演变 /297
10.1.1 IA体系结构的历史演变
/297
10.1.2 英特尔64位处理机的两种体系结构 /298
10.2 安腾体系结构的基本设计思想 /299
10.3 安腾指令系统结构 /302
10.3.1 执行单元与指令类型 /302
10.3.2 安腾寄存器结构 /303
10.3.3 安腾指令格式 /304
10.3.4 安腾汇编语言格式 /305
10.4 指令级并行机制 /306
10.4.1 推断执行技术 /307
10.4.2 推测技术 /309
10.5 双核安腾处理机的组成 /312
10.5.1 双核安腾处理机的基本特性
/312
10.5.2 双核安腾处理机的组织结构
/314
本章小结 /317
习题 /318
第11章 并行体系结构 /320
11.1 体系结构中的并行性 /320
11.1.1 并行性的概念 /320
11.1.2 提高并行性的技术途径 /321
11.1.3 单处理机系统中并行性的发展
/321
11.1.4 多处理机系统中并行性的发展
/322
11.1.5 并行处理机的体系结构类型
/323
11.2 超长指令字处理机 /324
11.2.1 VLIW处理机的特点 /324
11.2.2 VLIW处理机的结构模型
/325
11.2.3 典型处理机结构 /326
11.3 多线程与超线程处理机
11.3.1 指令级并行与线程级并行
/328
11.3.2 同时多线程结构 /330
11.3.3 超线程处理机结构 /331
11.4 向量处理机 /332
11.4.1 向量处理的基本概念 /332
11.4.2 向量处理机的结构 /335
11.4.3 并行向量处理机 /338
11.5 对称多处理机 /340
11.5.1 多处理机系统的分类 /340
11.5.2 SMP的基本概念 /341
11.5.3 SMP的结构和实例 /342
11.5.4 多处理机操作系统 /344
11.5.5 多处理机的cache一致性
/345
11.6 机群系统 /347
11.6.1 机群系统的定义和特点 /347
11.6.2 机群系统的体系结构 /348
11.6.3 IBM SP2系统 /350
11.6.4 超级刀片系统 /351
本章小结 /354
习题 /355
第12章 教学实验设计 /357
12.1 教学实验仪器与测试工具 /357
12.1.1 TEC-8计算机组成与体系结构实验系统 /357
12.1.2 逻辑测试笔 /358
12.2 TEC-8实验系统结构和操作 /359
12.2.1 模型计算机时序信号 /359
12.2.2 模型计算机组成 /359
12.2.3 模型计算机指令系统 /362
12.2.4 开关、按钮、指示灯 /363
12.2.5 E2PROM中微代码的修改
/365
12.3 运算器组成实验 /371
12.4 双端口存储器实验 /376
12.5 数据通路实验 /380
12.6 微程序控制器实验 /385
12.7 CPU组成与机器指令执行实验 /391
12.8 中断原理实验 /395
第13章 课程综合设计 /399
13.1 模型机硬连线控制器设计 /399
13.2 模型机流水微程序控制器设计 /404
13.3 模型机流水硬连线控制器设计 /407
13.4 含有阵列乘法器的ALU设计 /409
附录A 配套光盘与教学设备 /412
参考文献 /413