前言
“计算机体系结构”是计算机硬件知识课程中的专业课,“高级计算机体系结构”或“并行处理与体系结构”是计算机学科各专业硕士研究生的基础课程,那么它们各应该包含哪些知识内容呢?根据计算机体系结构二级学科的研究任务(即软硬件功能分配和硬件功能实现的最佳方法),计算机体系结构的知识内容可以分为三大模块: 基础概念导论、结构实现通用支持技术(含计算机属优选技术、信息加工流水线技术、信息存储层次与并行技术、信息传输互联网络技术)、已有体系结构及其专用支持技术。计算机经过七十多年的发展,体系结构已复杂繁多,专用支持技术已精细多样,且并行处理能力强大,目前均是并行计算机。而从体系结构来看,目前并行计算机有流水线处理机、阵列处理机、多处理机和数据流处理机,其中,多处理机和数据流处理机为MIMD(多指令流多数据流)体系结构。MIMD计算机不仅性能甚高,且专用支持技术极为复杂、难度大。所以,本科生阶段以单指令流处理机并行处理技术为主线,讲述计算机体系结构基本概念、结构实现通用支持技术、单指令流处理机(含流水线处理机、阵列处理机)的组织结构及其特殊支持技术。硕士研究生阶段则以MIMD处理机体系结构为主线,讲述并行计算机体系结构基本概念、MIMD处理机的组织结构及其专用支持技术,如Cache之间一致性实现、数据流程序设计等。本书是《计算机体系结构》(刘超主编,ISBN: 9787302587552)的姐妹篇,具有“内容配置明确、结构逻辑清晰”的特点。
本教材共6章,可分为3部分。第1章为基础导论部分,介绍计算机体系结构及其重要概念、并行计算机的互连网络与存储设计组织,讨论并行计算机及其系列术语与发展历程、并行计算模型及其并行算法构建过程。第2~5章为多处理机部分,其中第2章针对多处理机体系结构复杂多样、性能度量与程序设计比单处理机困难,介绍多处理机及其类型特点、并行程序设计语言及其优化编译,讨论多处理机的组织模型及其类型特点、并行算法的构造方法,阐述多处理机的性能分析模型及其评测方法、程序并行性的度量计算;第3章针对具有比较优势不同类型的多处理机,介绍各种多处理机的典型结构及其专用支持技术,讨论各种多处理机的组织结构与性能特点、多核处理器及其发展缘由与多线程超线程技术;第4章针对多处理机共享存储一致性,介绍共享存储一致性及其分类、不一致性产生原因,分析共享存储Cache间一致性维护及其实现策略、共享存储Cache一致性协议与算法类型,阐述基于总线侦听Cache一致性协议规范及其实现算法、基于目录Cache一致性协议规范及其实现算法,讨论共享存储异元一致性与存储一致性及其实现策略、多级Cache包含性及其维护策略、分事务总线及其实现策略;第5章针对多处理机的通信与同步,介绍多处理机通信性能指标、通信时延处理策略及其容忍技术,讨论多处理机通信的协议结构及其底层实现方法、路径选择及其算法和多处理机同步操作的原语及其种类、实现方法。第6章为数据流处理机部分,针对数据流计算机,介绍数据驱动原理、数据流计算机及其特征、存在问题、结构模型,讨论数据流处理机的指令结构及其处理过程、数据流程序图及设计语言。另外,每章附有练习题,用于检查学生对每章知识理解的状态。
在本书出版过程中,得到了清华大学出版社、江西师范大学计算机信息工程学院与教务处的大力支持与帮助,清华大学出版社编辑们付出了大量辛勤劳动,特别是龙启铭编辑提出了许多宝贵建议;在本书编写过程中,直接或间接引用了许多专家学者的文献著作(已通过参考文献部分列出),在此一并表示衷心感谢与敬意。
限于编者的知识经验与能力水平,书中难免存在错误与疏漏之处,敬请同行专家学者和广大读者批评指正。
编者
2023年9月