本书是一本关于计算机系统结构课程的学习辅导书。全书共分为13章,内容覆盖面广,包括计算机系统结构的基础知识、指令系统的设计、流水线技术、向量处理机、指令级并行性及其开发--硬件方法、指令级并行的开发--软件方法、存储系统、输入输出系统、互联网络、多处理机、机群系统、阵列处理机、数据流计算机。每一章都由4节组成,分别是基本要求与难点、知识要点、习题以及题解。知识要点给出了各章的精华和要点。习题的类型有概念题、选择题、填空题、问答题和应用题。对于应用题,书中给出了详细的求解过程。
本书概念清晰,重点突出,覆盖面广,题型多样,是一本很有用的学习辅导书。本书与《计算机系统结构教程》(清华大学出版社)和《计算机系统结构》(高等教育出版社)是最佳的搭配,这两本书中的习题在这里都可以找到答案。当然,对于采用其他计算机系统结构教材的读者来说,也有较大的参考价值。
本书可作为计算机系统结构课程(上课或自学)的学习辅导书,也可作为计算机专业硕士研究生入学考试的复习指导书。
计算机系统结构是计算机专业及相关专业的一门重要的专业课程。本书是专门为该课程编写的辅导书,既可作为该课程的教学参考书,也可作为自学该课程的辅导书,也可作为计算机专业硕士研究生入学考试的复习指导书。
全书共有13章。各章内容如下:
第1章讲述计算机系统结构的概念以及系统结构和并行性的发展,并介绍定量分析基础。
第2章是指令系统的设计,讲述计算机指令系统设计的各个方面。
第3章是流水线技术,讲述流水线的基本概念、分类和性能分析、非线性流水线的调度,介绍流水线中的相关和冲突问题及其解决方法,并讨论流水线的实现。
第4章是向量处理机,讲述向量处理机的结构、特点和性能评价。
第5章和第6章分别讲述如何用硬件和软件的方法来开发指令级并行。
第7章是存储层次,讲述cache的基本知识以及提高cache性能的方法,并对并行主存和虚拟存储器做了简要的讨论。
第8章是输入输出系统,讲述总线及其与CPU/存储器的连接、通道处理机及其流量分析,并详细论述了廉价磁盘冗余阵列RAID.
第9章是互联网络,讲述互连函数、互联网络的特性参数、静态互联网络、动态互联网络以及消息传递机制等。
第10章是多处理机,讲述对称式共享存储器系统结构、分布式共享存储器系统结构、多cache一致性、同步、同时多线程以及MPP.
第11章是机群计算机,讲述机群的结构、软件模型以及机群的分类。
第12章是阵列处理机,讲述阵列处理机的操作模型、结构和特点以及并行算法。
第13章是数据流计算机,讲述数据流计算机模型、数据流程序图和数据流语言、静态数据流计算机结构以及动态数据流计算机结构。
每一章都由4节组成,分别是基本要求与难点、知识要点、习题以及题解。知识要点给出了各章的精华和要点。习题的类型有概念题、选择题、填空题、问答题和应用题。对于应用题,书中给出了详细的求解过程。
本书的大部分内容由张晨曦教授编写,刘依和沈立编写了部分章节,孙太一、程志强和张硕也编写了部分内容。
本书概念清晰,重点难点突出,覆盖面广,题型多样,是一本很有用的学习辅导书。本书与《计算机系统结构教程》(清华大学出版社)和《计算机系统结构》(高等教育出版社)是最佳的搭配,这两本书中的习题在这里都可以找到答案。当然,对于采用其他计算机系统结构教材的读者来说,也有较大的参考价值。
关于新的信息,请关注本课程的网站:
www.GotoSchool.net
由于作者水平有限,书中难免有错误和不妥之处,敬请读者批评指正
第1章 计算机系统结构的基础知识1
1.1 基本要求与难点1
1.1.1 基本要求1
1.1.2 难点1
1.2 知识要点1
1.2.1 计算机系统结构的基本概念1
1.2.2 计算机系统的设计3
1.2.3 计算机系统的性能评测5
1.2.4 计算机系统结构的发展7
1.2.5 计算机系统结构中并行性的发展9
1.3 习题11
1.3.1 概念题11
1.3.2 选择题11
1.3.3 填空题11
1.3.4 问答题12
1.3.5 应用题13
1.4 题解15
1.4.1 概念题15
1.4.2 选择题17
1.4.3 填空题17
1.4.4 问答题17
1.4.5 应用题19
第2章 指令系统的设计24
2.1 基本要求与难点24
2.1.1 基本要求24
2.1.2 难点24
2.2 知识要点24
2.2.1 指令系统结构的分类24
2.2.2 寻址方式25
2.2.3 指令系统的设计和优化26
2.2.4 指令系统的发展和改进28
2.2.5 操作数的类型和大小29
2.2.6 MIPS指令系统结构29
2.3 习题31
2.3.1 概念题31
2.3.2 选择题31
2.3.3 填空题32
2.3.4 问答题33
2.3.5 应用题33
2.4 题解34
2.4.1 概念题34
2.4.2 选择题35
2.4.3 填空题35
2.4.4 问答题35
2.4.5 应用题38
目 录 计算机系统结构学习指导与题解第3章 流水线技术43
3.1 基本要求与难点43
3.1.1 基本要求43
3.1.2 难点43
3.2 知识要点43
3.2.1 流水线的基本概念43
3.2.2 流水线的性能指标45
3.2.3 非线性流水线的调度47
3.2.4 流水线的相关与冲突47
3.2.5 流水线的实现51
3.3 习题55
3.3.1 概念题55
3.3.2 选择题55
3.3.3 填空题56
3.3.4 问答题56
3.3.5 应用题57
3.4 题解60
3.4.1 概念题60
3.4.2 选择题62
3.4.3 填空题62
3.4.4 问答题62
3.4.5 应用题63
第4章 向量处理机72
4.1 基本要求与难点72
4.1.1 基本要求72
4.1.2 难点72
4.2 知识要点72
4.2.1 向量的处理方式72
4.2.2 向量处理机的结构73
4.2.3 提高向量处理机性能的常用技术74
4.2.4 向量处理机的性能评价75
4.3 习题76
4.3.1 概念题76
4.3.2 填空题76
4.3.3 选择题76
4.3.4 问答题77
4.3.5 应用题77
4.4 题解79
4.4.1 概念题79
4.4.2 填空题79
4.4.3 选择题79
4.4.4 问答题80
4.4.5 应用题80
第5章 指令级并行性及其开发--硬件方法83
5.1 基本要求与难点83
5.1.1 基本要求83
5.1.2 难点83
5.2 知识要点83
5.2.1 指令级并行的概念83
5.2.2 相关与指令级并行84
5.2.3 指令的动态调度85
5.2.4 动态分支预测技术90
5.2.5 多指令流出技术93
5.3 习题96
5.3.1 概念题96
5.3.2 填空题96
5.3.3 问答题96
5.3.4 应用题97
5.4 题解100
5.4.1 概念题100
5.4.2 填空题100
5.4.3 问答题101
5.4.4 应用题103
第6章 指令级并行的开发--软件方法111
6.1 基本要求与难点111
6.1.1 基本要求111
6.1.2 难点111
6.2 知识要点111
6.2.1 基本指令调度和循环展开111
6.2.2 跨越基本块的静态指令调度113
6.2.3 静态多指令流出: VLIW技术115
6.2.4 显式并行指令计算116
6.2.5 开发更多的指令级并行121
6.3 习题124
6.3.1 概念题124
6.3.2 问答题124
6.3.3 应用题125
6.4 题解126
6.4.1 概念题126
6.4.2 问答题128
6.4.3 应用题129
第7章 存储系统133
7.1 基本要求与难点133
7.1.1 基本要求133
7.1.2 难点133
7.2 知识要点133
7.2.1 存储系统的层次结构133
7.2.2 cache基本知识136
7.2.3 降低cache不命中率141
7.2.4 减少cache不命中开销143
7.2.5 减少命中时间145
7.2.6 并行主存系统147
7.2.7 虚拟存储器149
7.3 习题150
7.3.1 概念题150
7.3.2 选择题150
7.3.3 填空题151
7.3.4 问答题152
7.3.5 应用题152
7.4 题解154
7.4.1 概念题154
7.4.2 选择题156
7.4.3 填空题156
7.4.4 问答题156
7.4.5 应用题160
第8章 输入输出系统165
8.1 基本要求与难点165
8.1.1 基本要求165
8.1.2 难点165
8.2 知识要点165
8.2.1 I/O系统的性能165
8.2.2 I/O系统的可靠性、可用性和可信性166
8.2.3 廉价磁盘冗余阵列166
8.2.4 总线169
8.2.5 通道处理机170
8.2.6 I/O与操作系统174
8.3 习题175
8.3.1 概念题175
8.3.2 选择题175
8.3.3 填空题175
8.3.4 问答题176
8.3.5 应用题176
8.4 题解178
8.4.1 概念题178
8.4.2 选择题178
8.4.3 填空题179
8.4.4 问答题179
8.4.5 应用题181
第9章 互联网络184
9.1 基本要求与难点184
9.1.1 基本要求184
9.1.2 难点184
9.2 知识要点184
9.2.1 互连函数184
9.2.2 互联网络的结构参数与性能指标186
9.2.3 静态互联网络187
9.2.4 动态互联网络189
9.2.5 消息传递机制191
9.3 习题195
9.3.1 概念题195
9.3.2 选择题195
9.3.3 填空题196
9.3.4 问答题197
9.3.5 应用题198
9.4 题解200
9.4.1 概念题200
9.4.2 选择题200
9.4.3 填空题201
9.4.4 问答题201
9.4.5 应用题203
第10章 多处理机210
10.1 基本要求与难点210
10.1.1 基本要求210
10.1.2 难点210
10.2 知识要点210
10.2.1 引言210
10.2.2 对称式共享存储器系统结构213
10.2.3 分布式共享存储器系统结构216
10.2.4 同步219
10.2.5 同时多线程223
10.2.6 大规模并行处理机226
10.2.7 多处理机实例1: T1227
10.2.8 多处理机实例2: Origin 2000227
10.3 习题228
10.3.1 概念题228
10.3.2 填空题228
10.3.3 问答题229
10.3.4 应用题229
10.4 题解230
10.4.1 概念题230
10.4.2 填空题231
10.4.3 问答题231
10.4.4 应用题233
第11章 机群系统236
11.1 基本要求与难点236
11.1.1 基本要求236
11.1.2 难点236
11.2 知识要点236
11.2.1 机群的基本结构237
11.2.2 机群的特点239
11.2.3 机群的分类239
11.3 习题240
11.3.1 概念题240
11.3.2 问答题240
11.4 题解241
11.4.1 概念题241
11.4.2 问答题241
第12章 阵列处理机243
12.1 基本要求与难点243
12.1.1 基本要求243
12.1.2 难点243
12.2 知识要点243
12.2.1 阵列处理机的操作模型和特点243
12.2.2 阵列处理机的基本结构244
12.2.3 阵列处理机实例245
12.2.4 阵列处理机的并行算法举例247
12.3 习题248
12.3.1 概念题248
12.3.2 填空题249
12.3.3 问答题249
12.3.4 应用题249
12.4 题解250
12.4.1 概念题250
12.4.2 填空题250
12.4.3 问答题251
12.4.4 应用题251
第13章 数据流计算机253
13.1 基本要求与难点253
13.1.1 基本要求253
13.1.2 难点253
13.2 知识要点253
13.2.1 数据流计算机的基本原理253
13.2.2 数据流程序图和数据流语言254
13.2.3 数据流计算机结构255
13.2.4 数据流计算机的评价258
13.3 习题260
13.3.1 概念题260
13.3.2 问答题260
13.3.3 应用题260
13.4 题解261
13.4.1 概念题261
13.4.2 问答题261
13.4.3 应用题263
参考文献265