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

计算机系统结构(第二版)
作 者: 孙强南 孙昱东
出版社: 科学出版社
丛编项: 计算机应用与教学系列
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 电子计算机
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《计算机系统结构(第二版)》作者简介

内容简介

(第一版获第三届电子部优秀教材二等奖)本书内容是根据作者20多年来从事“计算机系统结构”等课程的教学经验及有关科研工作的成果写成的。全书以横向方式组织教学内容。力求深入浅出地全面介绍计算机系统结构的基本原理,而不只是从头至尾具体介绍某一种计算机系统。在先修课程的基础上,通过学习本书,能够比较全面地掌握计算机系统结构的基本概念、基本原理、基本结构和基本分析方法,建立起计算机系统的完整概念。“计算机系统结构”是从外部来研究计算机系统的一门学科,不同于“计算机组成原理”这门课程是从计算机系统的内部来研究的。对于属于计算机系统结构的关键内容,本书力求从系统分析和设计的角度,深入浅出地介绍这些基础内容。这部分的内容主要有:数据表示、指令系统、存储系统和输入输出系统。全书共分12章。第1章介绍计算机系统结构的基本概念,包括计算机系统的层次结构、系统结构的定义、分类、设计技术、评价标准和系统结构的发展等。第2章介绍数据表示、寻址技术、指令格式的优化设计、CISC指令系统和RISC指令系统等。第3章介绍存储系统原理、虚拟存储器和高速缓冲存储器等。第4章介绍输入输出原理、中断系统、通道处理机和输入输出处理机。第5章介绍先行控制技术、流水线处理机、超标量处理机、超流水线处理机和超标量超流水线处理机等。第6章介绍向量的基本概念、向量处理机结构、提高向量处理机性能的方法、向量处理机的性能评价等。第7章介绍互连网络的基本概念、消息传递机制和互连网络实例。第8章介绍SIMD计算机模型、结构、实例和SIMD计算机的应用。第9章介绍多处理机结构、性能和Cache一致性等。第10章介绍多处理机算法,包括同步技术、并行搜索、串行算法到并行算法的转换、并行程序设计语言及其实现方法等。第11章介绍数据流计算机、数据库机与知识库机、面向函数程序设计语言的归约机。最后第12章是实验:DLX处理器,通过实验能够加深对本书主要内容的理解。每章后附有大量习题。自从本书第一版发行以来,计算机系统结构在许多方面有了新的发展,如超标量、超流水线及超标量超流水线结合的系统结构在微处理机中已经得到广泛应用,并行处理及其互连网络的发展非常迅速。本书对各章内容都进行了重写。与第一版相比,主要有如下特点:第一,反映了国内外计算机系统结构方面比较成熟的研究成果和最新的发展。第二,内容更加全面。本书加入了许多新的内容。凡属于计算机系统结构的主要内容,在本书中都有介绍。第三,...

图书目录

第一章 计算机系统结构的基本概念

1. 1 计算机系统结构

1. 1. 1 计算机系统层次结构

1. 1. 2 计算机系统结构定义

1. 1. 3 计算机组成与实现

1. 1. 4 计算机系统结构的分类

1. 2 计算机系统设计技术

1. 2. 1 计算机系统设计的定量原理

1. 2. 2 计算机系统设计者的主要任务

1. 2. 3 计算机系统设计的主要方法

1. 3 系统结构的评价标准

1. 3. 1 性能

1. 3. 2 成本

1. 4 计算机系统结构的发展

1. 4. 1 冯·诺依曼结构

1. 4. 2 软件对系统结构的影响

1. 4. 3 价格对系统结构的影响

1. 4. 4 应用对系统结构的影响

1. 4. 5 VLSI对系统结构的影响

1. 4. 6 技术的发展对价格的影响

1. 4. 7 算法和系统结构

习题一

第二章 指令系统

2. 1 数据表示

2. 1. 1 数据表示与数据类型

2. 1. 2 浮点数据表示

2. 1. 2. l 俘点数的表数范围

2. 1. 2. 2 浮点数的表数精度

2. 1. 2. 3 浮点数的表数效率

2. 1. 2. 4 浮点数尾数基值的选择

2. 1. 2. 5 浮点数格式的设计

2. 1. 2. 6 浮点数的舍入处理

2. 1. 2. 7 警戒位的设置方法

2. 1. 3 自定义数据表示

2. 1. 3. 1 带标志符的数据表示法

2. 1. 3. 2 数据描述符表示法

2. 2 寻址技术

2. 2.1 编址方式

2. 2. 1. 1 编址单位

2. 2. 1. 2 零地址空间个数

2. 2. 1. 3 输入输出设备的非线性编址

2. 2. 1. 4 并行存储器的编址技术

2. 2. 2 寻址方式

2. 2. 2. 1 寻址方式的设计思想

2. 2. 2. 2 间接寻址与变址寻址

2. 2. 2. 3 寄存器寻址

2. 2. 2. 4 堆栈寻址方式

2. 2. 3 定位方式

2. 2. 3. 1 逻辑地址与物理地址

2. 2. 3. 2 直接定位方式

2. 2. 3. 3 静态定位方式

2. 2. 3. 4 动态定位方式

2. 3 指令格式的优化设计

2. 3. 1 指令的组成

2. 3. 2 操作码的优化表示

2. 3. 2. 1 固定长操作码

2. 3. 2. 2 Huffman编码法

2. 3. 2. 3 扩展编码法

2. 3. 3 地址码的优化表示

2. 3. 3. 1 地址码个数的选择

2. 3. 3. 2 缩短地址码长度的方法

2. 3. 4 指令格式设计举例

2. 4 指令系统的功能设计

2. 4. 1 基本指令系统

2. 4. 2 复杂指令系统 CISC

2. 4. 2. 1 目标程序的优化

2. 4. 2. 2 对高级语言编译程序的支持

2. 4. 2. 3 操作系统的优化实现

2. 4. 3 精简指令系统 RISC

2. 4. 3. 1

从 CISC到RISC

2. 4. 3. 2 RISC的定义与特点

2. 4. 3. 3 减少指令平均执行周期数是RISC思想的精华

2. 4. 3. 4 RISC的关键技术

2. 4. 3. 5 RISC优化编译技术

习题二

第三章 存储系统

3. 1 存储系统原理

3. 1. 1 存储系统的定义

3. 1. 2 存储器的层次结构

3. 1. 3 频带平衡

3. 1. 4 并行存储器

3. 1. 4. 1 并行访问存储器

3. 1. 4. 2 交叉访问存储器

3. 1. 4. 3 一种无访问冲突存储器

3. 2 虚拟存储器

3. 2. 1 虚拟存储器工作原理

3. 2. 2 地址的映象与变换

3. 2. 2. 1 段式虚拟存储器

3. 2. 2. 2 页式虚拟存储器

3. 2. 2. 3 段页式虚拟存储器

3. 2. 2. 4 外部地址变换

3. 2. 3 加快内部地址变换的方法

3. 2. 3. 1 目录表

3. 2. 3. 2 快慢表

3. 2. 3. 3 散列函数

3. 2. 3. 4 虚拟存储器举例

3. 2. 4 页面替换算法及其实现

3. 2. 4. 1 页面替换算法

3. 2. 4. 2 堆栈型替换算法

3. 2. 4. 3 页面替换算法的实现

3. 2. 5 提高主存命中率的方法

3. 2. 5. 1 页面大小的选择

3. 2. 5. 2 主存容量

3. 2. 5. 3 页而调度方式

3. 3 高速缓冲存储器 Cache

3. 3. 1 基本工作原理

3. 3. 2 地址映象怀变换方法

3. 3. 2. 1 全相联映象及其变换

3. 3. 2. 2 直接映象及其变换

3. 3. 2. 3 组相联映象及其变换

3. 3. 2. 4 位选择组相联映象及其变换

3. 3. 2. 5 段相联映象及其变换

3. 3. 3 Cache替换算法及其实现

3. 3. 3. 1 轮换法及其实现

3. 3. 3. 2 LFU算法及其实现

3. 3. 3. 3 比较对法

3. 3. 3. 4 堆栈法

3. 3. 4 Cache的性能分析

3. 3. 4. 1 Cache系统的加速比

3. 3. 4. 2 Cache的一致性问题

3. 3. 4.3 Cache的预取算法

3. 4 三级存储系统

3. 4. 1 虚拟地址Cache

3. 4. 2 全Cache技术

习题三

第四章

输入输出系统

4. 1 输入输出原理

4. 1. 1 输入输出系统的特点

4. 1. 1. 1 异步性

4. 1. 1. 2 实时性

4. 1. 1. 3 与设备无关性

4. 1.2 输入输出系统的组织方式

4. 1. 2. 1 自治控制

4. 1. 2. 2 层次结构

4. 1. 2. 3 分类组织

4. 1. 3 基本输入输出方式

4. 1. 3. 1 程序控制输入输出方式

4. 1. 3. 2 中断输入输出方式

4. 1. 3. 3 直接存储器访问 DMA 方式

4. 2 中断系统

4. 2. 1 中断源的组织

4. 2. 1. 1 中断源的种类

4. 2. 1. 2 中断源的分类组织

4. 2. 1. 3 中断优先级

4. 2. 2 中断系统的软硬件功能分配

4. 2. 2. 1 中断处理过程

4. 2. 2. 2 中断响应时间

4. 2. 2. 3 识别中断源的查询法

4. 2. 2. 4 识别中断源的串行排队链法和中断向量法

4. 2. 2. 5 识别中断源的独立请求法

4. 2. 2. 6 中断现场的保存和恢复

4. 2. 3 中断屏蔽

4. 3 通道处理机

4. 3. 1 通道的作用和功能

4. 3. 2 通道的工作过程

4. 3. 3 通道种类

4. 3. 3. 1 字节多路通道

4. 3. 3. 2 选择通道

4. 3. 3. 3 数组多路通道

4. 3. 4 通道中的数据传送过程

4. 3. 5 通道的流星分析

4. 4 输入输出处理机

4. 4. 1 输入输出处理机的作用

4. 4. 2 输入输出处理机的种类

4. 4. 3 输入输出处理机的特点

习题四

第五章 标量处理机

5. 1 先行控削技术

5. 1. 1 指令的重叠执行方式

5. 1. 2 先行控制方式的原理和结构

5. 1. 2. 1 处理机结构

5. 1. 2. 2 指令执行时序

5. 1. 2. 3 先行缓冲栈

5. 1. 2. 4 缓冲深度的设计

5. 1. 3 数据相关

5. 1. 3. 1 指令相关

5. 1. 3. 2 主存操作数相关

5. 1. 3. 3 通用寄存器数据相关

5. 1. 3. 4 变址相关

5. 1. 4 控制相关

5. 1. 4. 1 无条件转移

5. 1. 4. 2 一般条件转移

5. 1. 4. 3 复合条件转移

5. 1. 4. 4 转移预测技术

5. 1. 4. 5 短循环程序的处理

5. 2 流水线处理机

5. 2. 1 流水线工作原理

5. 2. 1. 1 从重叠到流水线

5. 2. 1. 2 时空图

5. 2. 1. 3 流水线的特点

5. 2. 2 流水线的分类

5. 2. 2. l 线性流水线与非线性流水线

5. 2. 2. 2 流水线的级别

5. 2. 2. 3 单功能与多功能流水线

5. 2. 2. 4 静态流水线与动态流水线

5. 2. 3 线性流水线的性能分析

5. 2. 3. 1 吞吐率

5. 2. 3. 2 加速比

5. 2. 3. 3 效率

5. 2. 3. 4 流水线最佳段数的选择

5. 2. 3. 5 流水线性能分析举例

5. 2. 4 非线性流水线的调度技术

5. 2. 4. 1 非线性流水线的表示

5. 2. 4. 2 非线性流水线的冲突

5. 2. 4. 3 无冲突调度方法

5. 2. 4. 4 优化调度方法

5. 2. 5 局部相关

5. 2. 5. 1 顺序流动与乱序流动

5. 2. 5. 2 数据相关及其避免方法

5. 2. 5. 3 数据重定向

5. 2. 5. 4 Tomasulo动态指令调度算法

5. 2. 6 全局相关

5. 2. 6. 1 转移的影响

5. 2. 6. 2 动态转移预测技术

5. 2. 6. 3 提前形成条件码

5. 2. 6. 4 精确断点与不精确断点

5. 3 超标量处理机与超流水线处理机

5. 3. 1 超标量处理机

5. 3. 1. 1 基本结构

5. 3. 1. 2 单发射与多发射

5. 3. 1. 3 多流水线调度

5. 3. 1. 4 资源冲突

5. 3. 1. 5 超标量处理机性能

5. 3. 2 超流水线处理机

5. 3. 2. 1 指令执行时序

5. 3. 2. 2 典型处理机结构

5. 3. 2. 3 超流水线处理机性能

5, 3. 3 超标量超流水线处理机

5. 3. 3. 1 指令执行时序

5. 3. 3. 2 典型处理机结构

5. 3. 3. 3 超标量超流水线处理机性能

习题五

第六章 向量处理机

6. 1 向量处理的基本概念

6. 1. 1 什么是向量处理

6. 1. 2 向量处理方式

6. 2 向量处理机的结构

6. 2. 1 存储器—存储器结构

6. 2. 2 寄存器—寄存器结构

6. 3 向量处理机的存取模式和数据结构

6. 3. 1 数值算法的存取模式

6. 3. 2 向量处理机的数据结构

6. 4 提高向虽处理机性能的方法

6. 4. 1 向量处理机系统结构阶设计目标

6. 4. 2 提高向量处理机性能的常用技术

6. 5 向量处理机实例

6. 5. 1 向量处理机的历史与现状

6. 5. 2 Cray Y—MP, C—90

6. 5. 3 Fujitsu VP2000和VPP5OO

6. 5. 4 向量协处理器

G. 6 向量处理机的性能评价

6. 7 关于向量处理机的几点看法

习题六

第七章 互连网络

7. 1 互连网络的基本概念

7. 1. 1 互连网络的作用

7. 1. 2 互连函数

7. 1. 3 互连网络的特性和传输的性能参数

7. 1. 4 互连网络的种类

7. 2 消息传递机制

7. 2. 1 消息寻径方式

7. 2. 2 死锁和虚拟通道

7, 2. 3 流控制策略

7. 2. 4 选播和广播寻径算法

7. 3 互连网络实例

7. 3. 1 总线互连

7. 3. 2 环形互连

7. 3. 3 交叉开关互连

7. 3. 4 混洗交换互连和合并开关

7. 3. 5 Omega网络

7. 3. 6 蝶形操作

7. 3. 7 合并网络和取与加指令

习题七

第八章 SIMD计算机

8. 1 SIMD计算机模型

8. 2 SIMD计算机的基本结构

8. 2. 1 分布式存储器结构

8. 2. 2 共享存储器结构

8. 2. 3 SIMD计算机的特点

8. 3 SIMD计算机实例

8. 3. 1 I11iac IV阵列处理机

3. 3. 2 BSP计算机

3. 3. 3 CM—2计算机

8. 3. 4 MasPar MP-1系统

8. 4 SIMD计算机的应用

8. 4. 1 数值应用问题的特征

8. 4. 2 算法举例

8. 5 连续模型的结构向何处发展

习题八

第九章

多处理机

9. 1

多处理机结构

9. 1. 1 两种多处理机结构

9. 1. 2 多处理机系统的特点

9. 2 多处理机性能模型

9. 2. 1 基本模型

9. 2. 2 N台处理机系统的基本模型

9. 2. 3 随机模型

9. 2. 4 通信开销为线性函数的模型

9. 2. 5 一个完全重叠通信的理想模型

9. 2. 6 一个具有多条通信链的模型

9. 2. 7 多处理机模型

9. 3 多处理机的Cache一致性

9. 3. 1 问题由来

9. 3. 2 监听协议

9. 3. 3 基于目录的协议

9. 4 多处理机实例

9. 4. 1 MPP

9. 4. 2 SMP

9. 4. 3 机群系统

9. 4. 3. 1 机群系统的组成. 特点和关键技术

9, 4. 3. 2 机群系统通信技术

9. 4. 3. 3 并行程序设计环境

9. 4. 3. 4 机群系统负载平衡技术

习题九

第十章

多处理机算法

10. 1 简单并行性

10. 1. 1 d0 par和do seq结构

10. 1. 2 阻塞同步

10. 1. 3 性能分析

10. 1. 4 增大粒度

lo. 1. 5 任务的初始化

10. 2 同步技术

10. 2. l 使用测试与设置指令的同步技术

10. 2. 2 使用增1和减1指令的同步技术

10. 2. 3 使用比较与交换指令的同步技术

10. 2. 4 使用取与加指令的同步技术

10. 3 并行搜索

10. 3. 1 搜索单峰函数的极大值

10. 3. 2 并行分支限界法

10. 4 串行算法到并行算法的转换

lO. 4. 1 相关性分析

10. 4. 2 开发迭代的并行性

lO. 5 同步并行算法和异步并行算法

10. 5. 1 同步并行算法

10. 5. 2 异步并行算法

10. 6 并行程序设计语言及其实现方法

lO. 6. 1 并行程序设计语言的特点

lo. 6. 2 并行程序设计模型

10. 6. 3 并行程序设计语言涉及的关键技术

10. 6. 4 并行程序设计语言的实现途径

l0. 7

小结

习题十

第十一章

计算机系统结构的新发展

11. 1 数据流计算机

11. 1. 1 数据驱动原理

11. 1. 1. 1 串行控制流与并行控制流

11. 1. 1. 2 数据流计算机中指令的执行过程

11. 1. 1. 3 数据流计算机的指令结构

11. 1. 2 数据流计算机模型

11. 1. 2. 1 静态数据流计算机模型

11. 1. 2. 2 动态数据流计算机模型

11. 1. 2. 3 静态与动态两种数据流计算机的比较

11. 1. 2. 4 普遍化的数据流计算机结构

11. 1. 3 数据流计算机的性能分析

11. 1. 3. 1 数据流计算机的优点

11. 1. 3. 2 数据流计算机的缺点

11. 1. 3. 3 数据流计算机设计中需要解决的几个问题

11. 1. 4 数据流程序图和数据流语言

11. 1. 4. 1 数据流程序图

11. 1. 4. 2 数据流语言

11. 1. 4. 3 数据流语言的性质

11. 1. 5 静态数据流计算机结构

11. 1. 5. 1 静态数据流计算机的组成

11. 1. 5. 2 分块结构的静态数据流计算机

11. 1. 5. 3 多处理机结构的静态数据流计算机

11. 1. 5. 4 静态数据流计算机作为后端机

11. 1. 6 动态数据流计算机结构

11. 1. 6. 1 网络结构的动态数据流计算机

11. 1. 6. 2 环形结构的动态数据流计算机

11. 1. 6. 3 网状结构的动态数据流计算机

11. 1. 7 其它类型的数据流计算机

11. 1. 7. 1 利用传统多处理机结构的数据流计算机

11. 1. 7. 2 提高并行级别的数据流计算机

11. 1. 7. 3 采用多级并行的数据流计算机

11. 1. 7. 4 同步与异步相结合的数据流计算机

11. 1. 7. 5 控制流与数据流相结合的数据流计算机

11. 2 数据库机与知识库机

11. 2. 1 数据库机与知识库机模型

11. 2. 1. 1 软件后端机数据库机与知识库机

11. 2. 1. 2 智能控制后端机数据库机与知识库机

11. 2. 1. 3 硬件后端机数据库机与知识库机

11. 2. 2 数据库机和知识库机在智能计算机系统中的作用

11. 2. 2. 1 由数据库机和知识库机构成的智能计算机系统

11. 2. 2. 2 数据库机与知识库机作为网络系统中的结点机

11. 2. 2. 3 分布式数据库机与知识库机系统

11. 2. 3 数据库机与知识库机系统结构

11. 2. 3. l 数据库机与知识库机的逻辑结构

11. 2. 3. 2 数据库机与知识库机的物理结构

11. 2. 3. 3 多级存储器结构

11. 2. 3. 4 操作执行部件的结构

11. 2. 3. 5 智能接口的结构

11. 2. 4 后端机与前端机的接口

11. 2. 4. 1 逻辑接口

11. 2. 4. 2 物理接口

11. 2. 4. 3 后端机与前端机之间的接口选择

11. 2. 5 典型的数据库机与知识库机

11. 2. 5. 1 高速数据处理技术

11. 2. 5. 2 数据库机的分类

11. 2. 5. 3 Relational KBM关系知识库机

11. 2. 5. 4 PSI Delta知识库机结构

11. 2. 5. 5 PUKBM知识库机

11. 3 面向函数程序设计语言的归约机

11. 3. 1 引言

11. 3. 2 函数式语言的归约计算方法

11. 3. 3 图归约的并行实现方法

11. 3. 4 并行图归约机系统结构

习题十一

第十二章 实验:DLX处理器

12. 1 DLX基本结构

l2. 1. 1 寄存器

12. 1. 2 数据类型

12. 1. 3 数据转移寻址模式

12. 1. 4 指令格式

12. 1. 5 操作

12. 1. 6 效率

12. 2 DLX流水线结构

12. 2. 1 一个简单实现

12. 2. 2 基本流水线

12. 2. 3 扩展DLX操作使其能处理多周期操作

12. 2. 3. 1 在长延迟的流水线中的相关和专用通路

12. 2. 3. 2 维持精确的异常处理

12. 2. 3. 3 浮点流水线的性能

12. 3 实验环境与内容

l2. 3. 1 实验环境

12. 3. 2 实验内容

12. 3. 2. 1 使用WINDLX模拟器, 对Fact.s WINDLX附带的例子 作如下分析

12. 3. 2. 2 用DLX汇编语言编写矩阵乘程序, 并对该程序做如下分析

12. 3. 2. 3 用Intel X86汇编语言编写矩阵乘程序

12. 3. 3 实验总结

参考文献