前言 “数字逻辑电路”“计算机组成原理”“计算机体系结构”和“嵌入式计算机及其接口技术”是计算机类专业本科生“硬件一条线”的课程,其中“计算机体系结构”属于专业课。但是,“计算机体系结构”并不是纯硬件课程,它是唯一一门把软硬件知识融合在一起的课程,以帮助理解计算机类核心课程的学习目的及其相应知识属于计算机工作过程中的哪一个环节,由此才能将各课程知识融会贯通,构建起完整的计算机系统。如通过2.1节的学习,可以使学生认识到: 存储器的结构实现与复合类型数据的结构模型存在差异,因而难以甚至无法由0和1(即硬件)直接表示,只有通过软件映像方法来组织存储,所以“数据结构”课程就是讨论复合数据的组织存储及其查找方法,其作用如同图书馆管理员的工作。因此,在掌握计算机的结构原理与工作机制及其设计实现技术的基础上,学习软硬件功能分配和硬件功能实现的最佳方法是计算机设计实现及其应用能力建构的必备知识。 “高级计算机体系结构”是计算机科学与技术一级学科和计算机体系结构二级学科的硕士研究生的基础课程,它与本科段的学习内容完全不同。计算机经过70多年的发展,体系结构已复杂多样,技术知识体系已很庞大。本科段以单处理机并行处理技术为主线,讲述计算机体系结构的基本概念、硬件功能实现的通用成熟的并行处理方法(含信息加工流水线技术、信息存储层次与并行技术以及信息传输互联网络技术)和单处理机组织结构。硕士研究生段则以多处理机体系结构为主线,讲述并行计算机体系结构的基本概念、组织结构及其相应的特殊专用技术,如性能评价方法、Cache之间一致性实现方法以及通信延迟处理方法等。 本教材共7章,分为3部分。第1章为总论基础部分,讨论计算机体系结构与并行处理、计算模型与数据驱动等系列概念,介绍计算机体系结构的分类与实现并行处理的历程,分析冯·诺依曼计算机体系结构存在的问题及其改进与发展技术途径,阐述计算机体系结构设计的原理准则、策略途径和分析方法。第2~5章为技术方法部分,其中第2章从软硬件功能分配出发,讨论计算机体系结构属性(含数据表示、指令系统、存储部件管理、总线和输入输出控制等)的优化或选择技术;第3章以用于信息加工的处理机流水线为基础,介绍流水线的基本概念,阐述流水线处理机实现的基本结构,分析线性流水线的性能与非线性流水线的调度策略,讨论流水线相关及其处理方法;第4章介绍存储系统的概念及其组织结构,讨论Cache存储体系的结构原理和组织实现技术,分析提高Cache存储体系性能的方法,阐述并行存储器种类及其结构原理;第5章介绍互连网络的基本概念,讨论常用互连函数、静态互连网络及其结构特性、动态互连网络及其组成逻辑,分析常用多级交叉开关的结构特点与寻径控制,阐述互连网络信息传递的控制方法。第6章和第7章为性能结构部分,其中第6章介绍指令级高度并行处理机的系列概念,分析指令调度及其实现途径和策略方法,讨论4种指令级高度并行处理机的结构组织及其性能;第7章阐述3种数据操作级高度并行处理机的组织结构、工作机理和性能特点,介绍各种数据操作级高度并行处理机的典型结构,讨论提高向量处理机性能的方法和适用于阵列处理机的几个算法。特别地,每章附有大量的复习题和练习题,其中复习题即是复习要点,用于帮助学生检查自己对基本知识掌握是否全面,以便于查漏补缺;练习题用于检查学生对基本知识理解的状态,以便于提高基本知识的应用能力。 本书的最大特点是研读性强。为了使教材适应当前提倡的以学生为中心的教学理论,与线上线下混合教学模式相匹配,依据基于问题学习(PBL)的教学方法,通过场景或知识关联、模拟类比等途径,在每一节开始处配置“问题小贴士”,提出本节需要讨论的知识和解决的问题,有利于激发学生进行自主研究性学习。 在本书出版过程中,得到清华大学出版社、江西师范大学计算机信息工程学院与教务处的大力支持与帮助。清华大学出版社的编辑付出了大量辛勤劳动,特别是龙启铭编辑提出了许多宝贵建议。在本书编写过程中,许多从事一线教学的同仁给出了不少建设性意见。本书还直接或间接引用了许多专家学者的文献著作(已在参考文献中列出),在此一并表示衷心感谢与敬意。 限于编者的知识、经验与能力水平,书中难免存在错误与疏漏,敬请同行专家学者和广大读者批评指正。 编者2021年7月