热门关键字:  听力密码  听力密码  新概念美语  单词密码  巧用听写练听力
图书信息

计算机体系结构(第二版)

中国水利水电出版社
    【作 者】刘超 主编 【I S B N 】978-7-5084-7990-3 【责任编辑】张玉玲 【适用读者群】本科 【出版时间】2010-12-20 【开 本】16开 【装帧信息】平装(光膜) 【版 次】第1版第1次印刷 【页 数】 【千字数】654 【印 张】25.25 【定 价】39.8 【丛 书】21世纪高等院校计算机科学与技术规划教材 【备注信息】
图书详情

    本书以程序控制计算机的并行处理技术为主线,以现代主流计算机所采用的成熟技术方法为主体,结合计算机技术的发展现状和趋势,讨论计算机体系结构的基本概念、基本理论、分析设计方法和提高并行性的处理技术及其应用实现的结构模型,阐述指令级、操作级和进程级高度并行处理机或系统的组织技术、基本结构和性能特点及其评测。

    本书共8章,可分为三个部分:第1章为第一部分,介绍计算机体系结构的基本概念、影响因素、演变过程、分析设计方法和并行处理的基本理论;第2~5章为第二部分,介绍流水线技术、互联网络技术、计算机属性优选技术和存储组织技术等提高计算机性能的处理技术以及这些技术对计算机性能提高的评测;第6~8章为第三部分,介绍指令级高度并行、操作级高度并行和多处理机的结构模型、性能特点及其评测。

    本书结构完整、逻辑性强、层次清晰、语言精炼、内容丰富实用,可作为高等院校计算机专业本科生“计算机系统结构”课程的教材,也可作为有关专业研究生和相关领域科技人员的参考书。建议前6章必讲,后两章选讲,教学课时以70~80为宜。

    1. 内容丰富、重点明显。强调基本概念、基本理论和技术方法的系统完善,弱化体系结构的多样性。

    2. 内容实用。在保证知识体系完整的前提下,尽量避免与本科段其他课程内容重复,且留有知识空间以便硕士段开设“高级计算机体系结构”。

    3. 适应性强。将理论方法与体系结构模型分开,突出前者来满足不同学时的需要。

    4. 逻辑性强、结构新颖。严格按照知识体系的前导后继关系组织章节。

    计算机体系结构又称计算机系统结构。在学科领域中,计算机系统结构是计算机科学与技术的二级学科,高等院校在本科阶段设置“计算机体系结构”课程是近十年才普及的。“数字逻辑”、“计算机组成原理”、“计算机体系结构”和“微型计算机及其接口技术”是计算机科学与技术专业本科生硬件一条线的必修课程,其中“计算机体系结构”属于专业课。“高级计算机体系结构”是计算机科学与技术一级学科和二级学科——计算机体系结构的硕士研究生的基础课程。

    1.人们对“计算机体系结构”课程在概念认识上的误区

    在概念认识上,人们对“计算机体系结构”课程存在许多误区。

    首先,认为没有必要单独开设“计算机体系结构”课程,导致许多地方高等院校的计算机科学与技术专业本科阶段还没有开设该课程。①从计算机硬件系统设计来看,包含结构设计、逻辑设计和物理实现三个层次,这如同软件系统设计一样,包含概要设计、详细设计和编程实现。硬件系统三个层次的结构设计虽然在内容上界限模糊,但学习时分别对应“计算机体系结构”、“计算机组成原理”和“微型计算机及其接口技术”三门课程,不仅极具科学性,还可使学生深刻理解它们的区别和对应的方法技术。②从“计算机体系结构”技术知识来看,教学内容覆盖了“计算机组成原理”、“编译技术”、“操作系统”、“数据结构”、“数字逻辑”、“微型计算机及其接口技术”等重要课程,是唯一一门把软硬件技术知识融合在一起的课程。有了计算机体系结构方面的知识,程序员就能理解程序设计中不同选择和取舍对程序效率的影响,迅速地查明故障来源,改善编程过程。使学生不仅知其然,还知其所以然。

    其次,认为“计算机体系结构”与“计算机组成原理”两门课程的知识重复度高,其实不然,计算机体系结构课程在知识层次上高于计算机组成原理,两门课程的本质核心截然不同。①从概念结构来看,“计算机组成原理”仅介绍最原始最简单的计算机结构模型,为各功能部件的讲述做一个铺垫;“计算机体系结构”则是以最简单结构模型为基础,以提高计算机性能为目的,提出改进的技术方法,为各种现代并行计算机体系结构的讲述做一个铺垫,比如指令多处理机、阵列处理机、向量处理机和多处理机系统等。②从课程内容组织来看,“计算机组成原理”是按功能部件展开的,讲述部件的功能作用和采用原始简单的技术方法实现其功能的工作原理与逻辑结构的设计;“计算机体系结构”则是按信息处理展开的,讲述软硬界面划分的权衡策略与优化方法、分析设计技术及其对计算机性能提高的作用与支持其实现的概念性结构。③从同一技术知识来看,“计算机组成原理”、“微型计算机及其接口技术”和“计算机体系结构”在内容上有一定相似,但“计算机组成原理”讲述的是普遍性,“微型计算机及其接口技术”讲述的是特殊性,“计算机体系结构”讲述的是将普遍性转化到特殊性的思维方法,比如计算机中用到的寻址方式很多,微型计算机要选用哪些、如何选择则是由计算机体系结构的技术知识来解决。

    再次,认为“计算机体系结构”是硕士研究生的基础课程,导致计算机科学与技术专业本科阶段的知识体系“软化”和“应用化”。①本科计算机科学与技术专业的“数字逻辑”、“计算机组成原理”、“计算机体系结构”硬件一条线课程与“数据结构”、“操作系统”、“编译技术”软件一条线课程依次相对应,“编译技术”是本科课程,“计算机体系结构”也应设置。其根本原因在于“重软轻硬”,事实上,计算机科学与技术在经过先硬后软的发展过程之后,已进入了软硬件协同优化设计阶段,即计算机体系结构发展阶段。②计算机科学与技术专业在应用软件开发方面不如软件工程专业,在硬件开发方面不如电子技术专业,唯有在系统软件和嵌入式系统开发上有独特的优势。而系统软件和嵌入式系统开发需要计算机体系结构的技术知识来支撑。③经过60多年的发展,计算机体系结构复杂多样,技术知识体系已很庞大,需要分两个阶段学习,区分两个阶段的教学内容是关键。本科阶段以并行处理技术为主线,讲述计算机体系结构基本概念、通用技术方法(如加工(流水线)技术、存储组织技术、信息交换(互联网络)技术)和单处理机的体系结构。硕士研究生阶段以体系结构为主线,讲述并行计算机体系结构基本概念、体系结构(如阵列处理机、向量处理机、多处理机、非程序控制计算机)及其相应的专用技术。

    2.“计算机体系结构”课程的特点

    “计算机体系结构”作为本科计算机科学与技术专业跨越软硬件技术知识体系的高年级课程,具有以下特点:

    (1)综合性强,知识面广。计算机体系结构所涉及的知识几乎与所有计算机专业基础和相关的前继课程的知识有关,需要对各课程知识融会贯通,才能理解其中的基本概念和理论方法。比如讲流水线技术,一定要以“计算机组成原理”中的指令执行过程和“微型计算机及其接口技术”中的8086处理机由EU和BIU两个功能部件并行操作作为切入点,在提出一二次重叠的概念基础上,才能使学生透彻理解流水线技术的基本概念、理论方法,以及应用对计算机并行性提高是基于时间并行的原理。

    (2)理论性强,抽象繁杂。计算机体系结构所涉及的名词不仅多,而且一般都是抽象的概念,没有对应的实体。理论方法一般是应用到大中型计算机系统上,学生接触不到相应的机器。实验环境缺乏,实践教学基本空白,学生对计算机体系结构改进的理论方法难以获得直观认识。

    (3)教学内容变化快。计算机体系结构已进入了快速发展阶段,原有的理论方法不断深入,比如哪些多级交叉开关动态网络是常用的等,新的理论方法不断提出,比如模式匹配驱动的计算机模型等。

    3.合理定位教学内容,使教材具有自身的特点

    在课程内容的选择上,按照学科知识体系的完整性、适时性和针对性原则来组织。在保证课程内容既没有知识的简单重复、又没有重要知识缺失的前提下,适当补充新知识。尤其是对于地方性高等院校,应强调概念方法,减少量化分析;应强调成熟广泛应用理论方法的深入完善,减少新概念、新方法的出现;应强调与微型计算机体系结构的结合,适当介绍大中型计算机的体系结构。本书作者长期从事“计算机体系结构”本科生与硕士研究生课程的教学,查阅和综合分析了相关资料,吸收国内同类教材编写思路,结合地方高等院校的实际,在2005年于中国水利水电出版社出版的《计算机系统结构》的基础上,对教材内容进行大刀阔斧的改进并重组,构建了课程内容,编写了本书。

    本书以程序控制计算机的并行处理为主线,突出并行处理技术是改善计算机体系结构的关键技术。在系统介绍计算机体系结构的基本概念、整机体系结构分析设计的理论方法、计算机体系结构发展的方向架构基础上,从实现并行性的技术途径——时间重叠、资源重复和资源共享出发,详细讲述流水线技术(加工技术)、存储组织技术(存储技术)、互联网络技术(传输技术)、计算机属性优化选择技术等的基本概念和理论方法、实现的逻辑结构要求、提高计算机性能的评测,简述指令级高度并行处理机、数据操作级并行处理机、多处理机等实现的技术基础、结构模型和性能特点。

    本书的主要特点是:①内容章节安排思路新,将计算机体系结构分析设计的理论方法与并行处理机体系结构模型分开,突出前者来满足不同学时的需要;②强调基本概念、基本理论和技术方法的系统完善,削弱体系结构的多样性;③注重基本概念的一般解释,而不是典型狭义解释;④在保证知识体系完整的前提下,尽量避免与其他课程内容的重复。

    本书由刘超任主编,胡全连、吴克捷、郑燚任副主编,参加编写的还有杨印根、周琪云、周新、周一凡、葛玮、罗文兵、乐兵、何春旺等。在编写与出版过程中得到了江西师范大学甘登文教授等和中国水利水电出版社朱敦名教授的关心与帮助,在此表示感谢。

    由于作者水平有限,书中疏漏甚至错误之处在所难免,敬请各位专家、读者批评指正。

    编 者

    2010年9月

    第二版前言
    第一版前言

    第1章 计算机体系结构导论 1
    1.1 计算机体系结构的基本概念 1
    1.1.1 提高计算机性能的硬件因素 1
    1.1.2 广义的计算机语言与虚拟计算机 2
    1.1.3 计算机体系结构及其范畴 3
    1.1.4 计算机组成与计算机实现 4
    1.1.5 计算机体系结构的特性 6
    1.2 计算机体系结构的演变 10
    1.2.1 计算机体系结构的基本模型 10
    1.2.2 计算机体系结构存在的主要问题
    及其改进 12
    1.2.3 计算机体系结构的演变过程 14
    1.3 影响计算机体系结构的因素 16
    1.3.1 影响计算机体系结构的基本因素 16
    1.3.2 编译技术与计算机体系结构的关系 20
    1.3.3 算法与计算机体系结构的关系 23
    1.3.4 计算机体系结构的分类 23
    1.4 计算机体系结构中的并行性及其发展 27
    1.4.1 并行性与并行处理 27
    1.4.2 并行性等级的划分 28
    1.4.3 提高计算机并行性的技术途径 29
    1.4.4 多机系统及其耦合度 29
    1.4.5 多处理机系统 30
    1.4.6 计算机体系结构实现并行处理的历程 31
    1.5 计算机体系结构设计的基础 34
    1.5.1 计算机体系结构设计的原则 34
    1.5.2 计算机体系结构设计的方法 35
    1.5.3 软件可移植性及其实现的方法 36
    1.5.4 计算机体系结构设计的定量原理 38
    1.5.5 CPU性能分析 39
    1.6 计算机系统的评价 41
    1.6.1 计算机系统评价的概念 41
    1.6.2 计算机系统的性能 41
    1.6.3 计算机系统的成本与价格 42
    1.6.4 程序执行时间的测定 43
    习题一 45
    第2章 流水线技术 49
    2.1 流水线的基本概念 49
    2.1.1 多条指令的执行方式 49
    2.1.2 什么是流水线 50
    2.1.3 流水线的表示方法 51
    2.1.4 流水线的分类 52
    2.1.5 流水线的特点 55
    2.2 处理机实现流水线的基本结构 56
    2.2.1 重叠执行方式的基本结构 56
    2.2.2 先行控制方式的基本结构 57
    2.2.3 先行控制指令流水线的基本结构 60
    2.2.4 运算操作流水线和宏流水线的
    基本结构 61
    2.2.5 流水线结构设计中的若干问题 61
    2.3 线性流水线的性能及其分析 62
    2.3.1 吞吐率(Through Put rate,TP) 62
    2.3.2 加速比(Speedup ratio,S) 64
    2.3.3 效率(Efficiency,E) 64
    2.3.4 吞吐率、加速比和效率之间的关系 65
    2.3.5 流水线“瓶颈”问题的解决方法 65
    2.3.6 流水线最佳段数的选择 67
    2.4 流水线中的相关及其处理 70
    2.4.1 流水线中相关的基本概念 70
    2.4.2 资源相关 71
    2.4.3 操作数相关 73
    2.4.4 指令相关 76
    2.4.5 变址相关 76
    2.4.6 条件转移相关及其对流水线效率的
    影响 77
    2.4.7 条件转移相关的处理技术 79
    2.4.8 无条件转移相关 85
    2.4.9 中断转移相关 85
    2.5 非线性流水线的调度 86
    2.5.1 问题的提出 86
    2.5.2 非线性流水线调度的相关术语
    及其计算方法 88
    2.5.3 最小启动循环调度策略的求解
    及其实现 89
    2.5.4 非线性流水线的优化调度方法 91
    2.5.5 多功能非线性流水线的调度 93
    习题二 95
    第3章 互联网络技术 101
    3.1 互联网络的基本概念 101
    3.1.1 互联网络及其组成与特征 101
    3.1.2 互联网络的描述工具 103
    3.1.3 常用的基本互连函数 104
    3.1.4 互联网络结构特性和传输性能参数 108
    3.1.5 互联网络的分类 110
    3.2 静态互联网络 112
    3.2.1 静态互联网络及类型 112
    3.2.2 静态互联网络的结构 112
    3.2.3 静态互联网络特性的比较 116
    3.3 动态互联网络 116
    3.3.1 动态互联网络及其互连形式 116
    3.3.2 总线互联网络 116
    3.3.3 交叉开关互联网络 117
    3.3.4 多级交叉开关互联网络 118
    3.3.5 动态互联网络特性的比较 120
    3.4 常用的多级交叉开关动态互联网络 121
    3.4.1 多级动态网络(Omega网络) 121
    3.4.2 STARAN多级动态网络 123
    3.4.3 间接二进制n方体多级动态网络 127
    3.4.4 多级动态网络 128
    3.4.5 DM多级动态网络 129
    3.4.6 基准多级动态网络 130
    3.4.7 可重排3级Clos网络 131
    3.4.8 Benes二进制置换网络 132
    3.5 互联网络的消息传递 135
    3.5.1 消息传递的格式与方式 135
    3.5.2 路由选择及其方法 138
    3.5.3 算术选路算法 140
    3.5.4 虚拟通道 141
    3.5.5 死锁 142
    3.5.6 流量控制策略 147
    3.5.7 选播和广播寻径 150
    习题三 152
    第4章 计算机属性优选技术 157
    4.1 数据表示 157
    4.1.1 数据表示的基本概念 157
    4.1.2 引入数据表示的基本原则 159
    4.1.3 自定义数据表示 159
    4.1.4 向量与堆栈数据表示 163
    4.1.5 浮点数的尾数基值及其格式设计 165
    4.1.6 原子类型操作数的大小 168
    4.2 寻址技术与存储保护 169
    4.2.1 编址方式 169
    4.2.2 寻址方式 171
    4.2.3 程序装入与定位 172
    4.2.4 存储保护 174
    4.3 指令格式的优化设计 176
    4.3.1 指令系统设计的基础 176
    4.3.2 指令系统的结构分类 178
    4.3.3 指令字的编码格式 179
    4.3.4 指令格式中的地址码 181
    4.3.5 指令格式中的操作码编码 183
    4.3.6 指令系统中的控制指令 187
    4.4 指令系统的功能设计 191
    4.4.1 指令系统功能的发展与改进 191
    4.4.2 复杂指令系统的功能设计 193
    4.4.3 精简指令系统的功能设计 195
    4.4.4 精简指令系统计算机 196
    4.5 输入输出系统与总线 200
    4.5.1 输入输出系统的概述 200
    4.5.2 输入输出系统控制方式 202
    4.5.3 输入输出系统组织方式 204
    4.5.4 中断系统的软硬件功能分配 204
    4.5.5 总线 210
    习题四 217
    第5章 并行存储器与存储系统的组织 224
    5.1 并行存储器与相联存储器 224
    5.1.1 并行存储器及其实现途径 224
    5.1.2 单体多字存储器 224
    5.1.3 多体多字交叉编址存储器 226
    5.1.4 多体多字存储器的无访问冲突 229
    5.1.5 相联存储器 230
    5.2 存储系统的组织原理 233
    5.2.1 存储系统的基本概念 233
    5.2.2 存储系统组织的基本思想 234
    5.2.3 存储的基本层次和三级
    存储系统 236
    5.2.4 三级存储系统的组织方式 238
    5.2.5 存储系统的性能指标 239
    5.3 Cache存储系统的组织基础 241
    5.3.1 Cache存储系统的工作原理 241
    5.3.2 几种地址映像和地址变换
    的方法 242
    5.3.3 替换算法及其实现 251
    5.3.4 Cache存储系统的一致性维护 255
    5.3.5 Cache存储系统的性能指标 257
    5.4 提高Cache存储系统性能的方法 261
    5.4.1 不命中的类型 262
    5.4.2 降低Cache不命中率的方法 262
    5.4.3 减少Cache不命中开销的方法 268
    5.4.4 减少Cache命中时间的方法 272
    5.4.5 Cache优化技术的比较 275
    习题五 276
    第6章 指令级高度并行处理机的组织 284
    6.1 指令级高度并行处理机的基本概念 284
    6.1.1 标量指令与标量处理机 284
    6.1.2 指令级并行的实现方法
    及其衡量指标 284
    6.1.3 指令发射及其类型 285
    6.1.4 指令调度及其基本方法 286
    6.1.5 静态指令调度——软件方法 286
    6.2 硬件动态指令调度——硬件方法 289
    6.2.1 动态指令调度的基本思想 289
    6.2.2 记分牌指令调度方法 290
    6.2.3 Tomasulo指令调度方法 296
    6.3 基于硬件技术的多发射处理机 303
    6.3.1 超标量处理机
    (Superscalar Processor) 303
    6.3.2 超流水线处理机
    (Superpipelining Processor) 308
    6.3.3 超标量超流水线处理机 311
    6.3.4 四种不同类型处理机的性能比较 314
    6.4 基于软件技术的多发射处理机 315
    6.4.1 超长指令字处理机及其结构原理 315
    6.4.2 超长指令字处理方式的特征 316
    6.4.3 超长指令字与超标量两种
    处理方式的区别 317
    6.4.4 超长指令字处理机实例——Cydra 5
    处理机 318
    习题六 318
    第7章 数据操作级高度并行处理机 322
    7.1 向量处理机 322
    7.1.1 向量处理的基本概念 322
    7.1.2 向量处理的基本方式 323
    7.1.3 向量处理机的基本结构 325
    7.1.4 向量处理机的指令 327
    7.1.5 提高向量处理机性能的常用技术 329
    7.1.6 向量处理机的性能 334
    7.1.7 向量处理机实例 335
    7.1.8 向量协处理器 340
    7.2 阵列处理机 344
    7.2.1 阵列处理机操作模型与特点 344
    7.2.2 阵列处理机的基本结构 345
    7.2.3 阵列处理单元的结构 347
    7.2.4 阵列处理机的并行算法 348
    7.2.5 阵列处理机的实例 351
    7.3 脉动阵列处理机 362
    7.3.1 脉动阵列处理机的基本原理 362
    7.3.2 脉动阵列处理机的优缺点 363
    7.3.3 特定算法的脉动阵列处理机结构 364
    7.3.4 通用脉动阵列处理机结构 366
    习题七 368
    第8章 多处理机 371
    8.1 多处理机的基本概念 371
    8.1.1 多处理机及其一般模型 371
    8.1.2 多处理机的分类 372
    8.1.3 多处理机的特点 375
    8.1.4 多处理机的操作系统 376
    8.2 多处理机的Cache一致性 377
    8.2.1 多处理机Cache间不一致性的由来 377
    8.2.2 多处理机Cache不一致的处理方法 378
    8.2.3 写无效总线监听协议法 379
    8.2.4 基于目录协议法 382
    8.3 机群系统 384
    8.3.1 机群系统及其特点 384
    8.3.2 机群系统的软硬件结构 386
    8.3.3 机群系统的关键技术 388
    习题八 391
    参考文献 393
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册