当前位置:首页 > 工业技术
计算机体系结构基础  第2版
计算机体系结构基础  第2版

计算机体系结构基础 第2版PDF电子书下载

工业技术

  • 电子书积分:12 积分如何计算积分?
  • 作 者:胡伟武;苏孟豪;王焕东
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2018
  • ISBN:9787111605485
  • 页数:306 页
图书介绍:本书由国内从事微处理器设计的一线科研人员编写而成。作者从微处理器设计的角度出发,充分考虑计算机体系结构的学科完整性,强调体系结构、基础软件、电路和器件的融会贯通。全书共分12章,包括指令系统结构、计算机硬件结构、CPU微结构、并行处理结构、计算机性能分析等主要内容,重点放在作为软硬件界面的指令系统结构,以及包含CPU、GPU、南北桥协同的计算机硬件结构。本书可作为高等学校“计算机体系结构”课程的本科生教材,同时也适合相关专业研究生或计算机技术人员参考阅读。
《计算机体系结构基础 第2版》目录

第一部分 引言 2

第1章 引言 2

1.1 计算机体系结构的研究内容 2

1.1.1 一以贯之 2

1.1.2 什么是计算机 5

1.1.3 计算机的基本组成 6

1.2 衡量计算机的指标 8

1.2.1 计算机的性能 8

1.2.2 计算机的价格 10

1.2.3 计算机的功耗 11

1.3 计算机体系结构的发展 12

1.3.1 摩尔定律和工艺的发展 13

1.3.2 计算机应用和体系结构 17

1.3.3 计算机体系结构发展 18

1.4 体系结构设计的基本原则 20

1.4.1 平衡性 20

1.4.2 局部性 21

1.4.3 并行性 22

1.4.4 虚拟化 23

1.5 本章小结 24

习题 24

第二部分 指令系统结构 26

第2章 指令系统 26

2.1 指令系统简介 26

2.2 指令系统设计原则 26

2.3 指令系统发展历程 28

2.3.1 指令集的演变 28

2.3.2 存储管理的演变 29

2.3.3 运行级别的演变 30

2.4 指令集结构 32

2.4.1 地址空间 32

2.4.2 操作数 34

2.4.3 指令操作和编码 35

2.5 RISC指令集比较 36

2.5.1 指令格式比较 36

2.5.2 寻址方式比较 36

2.5.3 公共指令功能 37

2.5.4 不同指令系统的特色 39

2.6 C语言的机器表示 40

2.6.1 过程调用 40

2.6.2 流程控制语句 41

2.7 本章小结 43

习题 44

第3章 特权指令系统 45

3.1 特权指令系统简介 45

3.2 异常与中断 47

3.2.1 异常分类 47

3.2.2 异常处理 47

3.2.3 中断 49

3.3 存储管理 51

3.3.1 存储管理的原理 51

3.3.2 TLB的结构和使用 53

3.3.3 TLB异常的处理 55

3.4 本章小结 60

习题 60

第4章 软硬件协同 62

4.1 函数调用规范 62

4.1.1 MIPS ABI整数寄存器约定 62

4.1.2 MIPS ABI函数调用约定 63

4.1.3 MIPS堆栈布局 64

4.2 中断的生命周期 66

4.3 系统调用过程 67

4.4 同步与通信 68

4.4.1 基于互斥的同步机制 68

4.4.2 非阻塞的同步机制 69

4.5 本章小结 69

习题 70

第三部分 计算机硬件结构 72

第5章 计算机组成原理和结构 72

5.1 冯·诺依曼结构 72

5.2 计算机的组成部件 73

5.2.1 运算器 73

5.2.2 控制器 74

5.2.3 存储器 76

5.2.4 输入/输出设备 81

5.3 计算机系统硬件结构发展 83

5.3.1 CPU-GPU-北桥-南桥四片结构 84

5.3.2 CPU-北桥-南桥三片结构 84

5.3.3 CPU-弱北桥-南桥三片结构 85

5.3.4 CPU-南桥两片结构 85

5.3.5 SoC单片结构 86

5.4 处理器和IO设备间的通信 86

5.4.1 IO寄存器寻址 86

5.4.2 处理器和IO设备之间的同步 87

5.4.3 存储器和IO设备之间的数据传送 88

5.4.4 龙芯3A3000 + 7A 1000桥片系统中的CPU、GPU、 DC通信 90

5.5 本章小结 91

习题 91

第6章 计算机总线接口技术 93

6.1 总线概述 93

6.2 总线分类 94

6.3 片上总线 95

6.4 内存总线 100

6.5 系统总线 107

6.5.1 HyperTransport总线 107

6.5.2 HT包格式 110

6.6 设备总线 111

6.6.1 PCIE总线 112

6.6.2 PCIE包格式 113

6.7 本章小结 113

习题 114

第7章 计算机系统启动过程分析 115

7.1 处理器核初始化 115

7.1.1 处理器复位 116

7.1.2 调试接口初始化 117

7.1.3 TLB初始化 119

7.1.4 Cache初始化 120

7.2 总线接口初始化 122

7.2.1 内存初始化 123

7.2.2 1O总线初始化 123

7.3 设备的探测及驱动加载 124

7.4 多核启动过程 129

7.4.1 初始化时的多核协同 129

7.4.2 操作系统启动时的多核唤醒 130

7.4.3 核间同步与通信 131

7.5 本章小结 132

习题 132

第四部分 CPU的微结构 134

第8章 运算器设计 134

8.1 二进制与逻辑电路 134

8.1.1 计算机中数的表示 134

8.1.2 MOS晶体管工作原理 139

8.1.3 CMOS逻辑电路 141

8.2 简单运算器设计 148

8.2.1 定点补码加法器 148

8.2.2 减法运算实现 153

8.2.3 比较运算实现 153

8.2.4 移位器 154

8.3 定点补码乘法器 155

8.3.1 补码乘法器 155

8.3.2 Booth乘法器 157

8.3.3 华莱士树 161

8.4 本章小结 164

习题 165

第9章 指令流水线 167

9.1 单周期处理器 167

9.2 流水线处理器 169

9.3 指令相关和流水线冲突 171

9.3.1 数据相关引发的冲突及解决办法 172

9.3.2 控制相关引发的冲突及解决方法 175

9.3.3 结构相关引发的冲突及解决办法 176

9.4 流水线与异常处理 176

9.5 提高流水线效率的技术 177

9.5.1 多发射数据通路 177

9.5.2 动态调度 178

9.5.3 转移预测 181

9.5.4 高速缓存 183

9.6 本章小结 186

习题 188

第五部分 并行处理结构 190

第10章 并行编程基础 190

10.1 程序的并行行为 190

10.1.1 指令级并行性 190

10.1.2 数据级并行性 191

10.1.3 任务级并行性 191

10.2 并行编程模型 191

10.2.1 单任务数据并行模型 192

10.2.2 多任务共享存储编程模型 192

10.2.3 多任务消息传递编程模型 192

10.2.4 共享存储与消息传递编程模型的编程复杂度 193

10.3 典型并行编程环境 196

10.3.1 数据并行SIMD编程 196

10.3.2 POSIX编程标准 197

10.3.3 OpenMP标准 200

10.3.4 消息传递编程接口 206

习题 211

第11章 多核处理结构 212

11.1 多核处理器的发展演化 212

11.2 多核处理器的访存结构 215

11.2.1 通用多核处理器的片上Cache结构 215

11.2.2 存储一致性模型 217

11.2.3 Cache一致性协议 219

11.3 多核处理器的互连结构 223

11.4 多核处理器的同步机制 228

11.5 典型多核处理器 233

11.5.1 龙芯3号多核处理器 233

11.5.2 Intel SandyBridge架构 234

11.5.3 IBM Cell处理器 236

11.5.4 NVIDIA CPU 237

11.5.5 Tile64处理器 239

习题 241

第六部分 系统评价与性能分析 244

第12章 计算机系统评价和性能分析 244

12.1 计算机系统性能评价指标 244

12.1.1 计算机系统常用性能评价指标 244

12.1.2 并行系统的性能评价指标 248

12.2 测试程序集 249

12.2.1 微基准测试程序 250

12.2.2 SPEC CPU基准测试程序 258

12.2.3 并行系统基准测试程序 263

12.2.4 其他常见的基准测试程序集 264

12.3 性能分析方法 265

12.3.1 分析建模的方法 267

12.3.2 模拟建模的方法和模拟器 268

12.3.3 性能测量的方法 270

12.4 性能测试和分析实例 282

12.4.1 动态执行指令的数目和分类 283

12.4.2 SPEC CPU基准测试程序的分值对比 285

12.4.3 动态执行指令数对比 286

12.4.4 IPC对比 288

12.4.5 分支误预测率和分支吞吐率对比 289

12.4.6 存储访问延迟对比 292

12.4.7 存储访问操作的并发性 293

12.4.8 并发操作性对比 294

习题 295

总结:什么是计算机体系结构 297

参考文献 305

返回顶部