本书是国家精品课程“计算机体系结构”的指定教材,同时也是高等学校计算机专业本科生及研究生计算机体系结构课程的通用教材。本书重点论述了现代大多数计算机都采用的比较成熟的思想、结构和方法等,同时借鉴了国际上公认的计算机系统结构高水平教材。
计算机体系结构强调从总体结构、系统分析的角度来研究计算机系统,因此本书特别强调从系统层次上学习和了解计算机。通过本书的学习,读者能把在“计算机组成原理”、“数据结构”、“操作系统”、“汇编语言程序设计”等课程中所学的软件、硬件知识有机地结合起来,从而建立起计算机系统的完整概念。
本书除了着重论述体系结构的基本概念、基本原理、基本结构和基本分析方法以外,还特别强调了采用量化的分析方法。这种方法能更具体、实际地分析和设计计算机体系结构。书中用了大量的例题说明如何进行量化分析。在本书中,体系结构的概念用于描述计算机系统设计的技术、方法和理论。主要包括计算机指令系统、计算机组成和计算机硬件实现三个方面。涵盖了处理器和多处理器、存储器、输入输出系统、互连与通信等计算机系统设计的主要内容,同时还涉及性能评价、编译和操作系统技术。
本书可读性好,语言简练,深入浅出,通俗易懂。
作为第2版,本书在内容上进行了部分的更新和增加。本书共分8章。第1章论述计算机体系结构的概念以及体系结构和并行性概念的发展,讨论影响计算机系统设计的成本和价格因素,并介绍定量分析技术基础。第2章论述计算机指令集结构设计中的一些问题,包括寻址技术、指令集的功能设计、操作数的类型和大小、指令格式等,并且介绍了RISC指令集结构的实例。第3章论述流水线的基本概念和性能分析、典型RISC流水线、流水线中的相关问题,并对向量处理机的结构及特点、关键技术及性能评价进行讨论。第4章讨论指令级并行,论述了利用软件、硬件技术开发程序中存在的指令间并行性的技术和方法,包括指令动态调度、超标量技术、分支处理技术和超长指令字技术等。第5章讨论存储层次,论述了cache的基本知识、降低cache失效率的方法、减少cache失效开销的方法以及减少命中时间的方法,并对虚拟存储器进行深入讨论。第6章讨论输入输出系统,论述了外部存储设备、I/O设备与CPU和存储器的连接、廉价磁盘冗余阵列RAID,并讨论I/O系统性能分析。第7章讨论多处理机,论述了多处理机的存储器体系结构、互连网络(包括片上网络)、同步机制以及同时多线程技术,并讨论了多处理机实例。第8章讨论机群计算机,讲述机群的结构、软件模型以及机群的分类,并介绍了4个典型的机群系统。
作为教材,使用者可以根据自己的需求,选取相应的内容。全部内容可以安排60~70个教学课时。如果去掉难度较大的第4章“指令级并行”和第8章“机群计算机”的内容,可以安排50个左右的教学课时。
本书由国防科技大学计算机学院王志英教授完成全书的统稿并编写了第7章,张春元教授编写了第1章、第4章和第3章的部分内容,沈立副教授编写了第2章、第8章和第3章的部分内容,肖晓强教授编写了第6章,姜晶菲副教授编写了第5章。
本书有配套的教辅材料,包括《计算机体系结构教学指导与习题解答》(张春元主编),《计算机体系结构实验》(沈立主编),PPT讲稿和实验模拟程序等(可以通过清华大学出版社网站下载)。
本书适合作为高等院校计算机科学与技术学科各专业以及自动化、电子工程等相关专业本科生、研究生的教材。
本书直接或间接地引用了许多专家和学者的文献或著作,在此向他们表示衷心的感谢。
由于作者水平有限,书中难免有疏漏和不妥之处,敬请读者批评指正。
作 者
2015年8月于长沙
国防科技大学计算机学院