计算机组成与设计 硬件/软件接口 原书第5版PDF电子书下载
- 电子书积分:16 积分如何计算积分?
- 作 者:(美)戴维·帕特森(DAVIDA.PATTERSON),(美)约翰L.亨尼斯(JOHNL.HENNESSY)著;王党辉,康继昌,安建峰等译
- 出 版 社:北京:机械工业出版社
- 出版年份:2015
- ISBN:9787111504825
- 页数:539 页
第1章 计算机概要与技术 1
1.1 引言 1
1.1.1 计算应用的分类及其特性 2
1.1.2 欢迎来到后PC时代 3
1.1.3 你能从本书学到什么 4
1.2 计算机系统结构中的8个伟大思想 6
1.2.1 面向摩尔定律的设计 6
1.2.2 使用抽象简化设计 6
1.2.3 加速大概率事件 6
1.2.4 通过并行提高性能 7
1.2.5 通过流水线提高性能 7
1.2.6 通过预测提高性能 7
1.2.7 存储器层次 7
1.2.8 通过冗余提高可靠性 7
1.3 程序概念入门 7
1.4 硬件概念入门 10
1.4.1 显示器 11
1.4.2 触摸屏 12
1.4.3 打开机箱 12
1.4.4 数据安全 15
1.4.5 与其他计算机通信 16
1.5 处理器和存储器制造技术 17
1.6 性能 20
1.6.1 性能的定义 20
1.6.2 性能的度量 22
1.6.3 CPU性能及其因素 23
1.6.4 指令的性能 24
1.6.5 经典的CPU性能公式 25
1.7 功耗墙 27
1.8 沧海巨变:从单处理器向多处理器转变 29
1.9 实例:Intel Core i7基准 31
1.9.1 SPEC CPU基准测试程序 31
1.9.2 SPEC功耗基准测试程序 32
1.10 谬误与陷阱 33
1.11 本章小结 35
1.12 历史观点和拓展阅读 36
1.13 练习题 36
第2章 指令:计算机的语言 40
2.1 引言 40
2.2 计算机硬件的操作 43
2.3 计算机硬件的操作数 44
2.3.1 存储器操作数 45
2.3.2 常数或立即数操作数 47
2.4 有符号数和无符号数 48
2.5 计算机中指令的表示 53
2.6 逻辑操作 58
2.7 决策指令 60
2.7.1 循环 61
2.7.2 case/switch语句 63
2.8 计算机硬件对过程的支持 64
2.8.1 使用更多的寄存器 66
2.8.2 嵌套过程 67
2.8.3 在栈中为新数据分配空间 69
2.8.4 在堆中为新数据分配空间 70
2.9 人机交互 72
2.10 MIPS中32位立即数和寻址 75
2.10.1 32位立即数 75
2.10.2 分支和跳转中的寻址 76
2.10.3 MIPS寻址模式总结 78
2.10.4 机器语言解码 79
2.11 并行与指令:同步 81
2.12 翻译并执行程序 83
2.12.1 编译器 83
2.12.2 汇编器 84
2.12.3 链接器 85
2.12.4 加载器 87
2.12.5 动态链接库 87
2.12.6 启动一个Java程序 89
2.13 以一个C排序程序作为完整的例子 90
2.13.1 swap过程 90
2.13.2 sort过程 91
2.14 数组与指针 96
2.14.1 用数组实现clear 96
2.14.2 用指针实现clear 97
2.14.3 比较两个版本的clear 97
2.1 5 高级内容:编译C语言和解释Java语言 98
2.16 实例:ARMv7 (32位)指令集 98
2.16.1 寻址模式 99
2.16.2 比较和条件分支 100
2.16.3 ARM的特色 100
2.17实例:x86指令集 102
2.17.1 Intel x86的改进 102
2.17.2 x86寄存器和数据寻址模式 103
2.17.3 x86整数操作 105
2.17.4 x86指令编码 107
2.17.5 x86总结 108
2.18 实例:ARMv8 (64位)指令集 108
2.19 谬误与陷阱 109
2.20 本章小结 110
2.21 历史观点和拓展阅读 111
2.22 练习题 112
第3章 计算机的算术运算 117
3.1 引言 117
3.2 加法和减法 117
3.3 乘法 121
3.3.1 顺序的乘法算法和硬件 121
3.3.2 有符号乘法 124
3.3.3 更快速的乘法 124
3.3.4 MIPS中的乘法 124
3.3.5 小结 125
3.4 除法 125
3.4.1 除法算法及其硬件结构 125
3.4.2 有符号除法 128
3.4.3 更快速的除法 128
3.4.4 MIPS中的除法 129
3.4.5 小结 129
3.5 浮点运算 130
3.5.1 浮点表示 131
3.5.2 浮点加法 135
3.5.3 浮点乘法 138
3.5.4 MIPS中的浮点指令 139
3.5.5 算术精确性 145
3.5.6 小结 146
3.6 并行性和计算机算术:子字并行 148
3.7 实例:x86中流处理SIMD扩展和高级向量扩展 149
3.8 加速:子字并行和矩阵乘法 150
3.9 谬误与陷阱 153
3.10 本章小结 155
3.11 历史观点和拓展阅读 158
3.12 练习题 159
第4章 处理器 162
4.1 引言 162
4.2 逻辑设计的一般方法 165
4.3 建立数据通路 167
4.4 一个简单的实现机制 173
4.4.1 ALU控制 173
4.4.2 主控制单元的设计 175
4.4.3 为什么不使用单周期实现方式 181
4.5 流水线概述 182
4.5.1 面向流水线的指令集设计 186
4.5.2 流水线冒险 186
4.5.3 对流水线概述的小结 191
4.6 流水线数据通路及其控制 192
4.6.1 图形化表示的流水线 200
4.6.2 流水线控制 203
4.7 数据冒险:旁路与阻塞 206
4.8 控制冒险 214
4.8.1 假定分支不发生 215
4.8.2 缩短分支的延迟 215
4.8.3 动态分支预测 216
4.8.4 流水线小结 220
4.9 异常 221
4.9.1 MIPS体系结构中的异常处理 221
4.9.2 在流水线实现中的异常 222
4.10 指令级并行 226
4.10.1 推测的概念 227
4.10.2 静态多发射处理器 227
4.10.3 动态多发射处理器 231
4.10.4 能耗效率与高级流水线 233
4.11 实例:ARM Cortex-A8和Intel Core i7流水线 234
4.11.1 ARM Cortex- A8 235
4.11.2 Intel Core i7 920 236
4.11.3 Intel Core i7 920的性能 238
4.12运行更快:指令级并行和矩阵乘法 240
4.13 高级主题:通过硬件设计语言描述和建模流水线来介绍数字设计以及更多流水线示例 242
4.14 谬误与陷阱 242
4.15 本章小结 243
4.16 历史观点和拓展阅读 243
4.17 练习题 243
第5章 大容量和高速度:开发存储器层次结构 252
5.1 引言 252
5.2 存储器技术 255
5.2.1 SRAM技术 256
5.2.2 DRAM技术 256
5.2.3 闪存 258
5.2.4 磁盘存储器 258
5.3 cache的基本原理 259
5.3.1 cache访问 261
5.3.2 cache缺失处理 265
5.3.3 写操作处理 266
5.3.4 一个cache的例子:内置FastMATH处理器 267
5.3.5 小结 269
5.4 cache性能的评估和改进 270
5.4.1 通过更灵活地放置块来减少cache缺失 272
5.4.2 在cache中查找一个块 275
5.4.3 替换块的选择 276
5.4.4 使用多级cache结构减少缺失代价 277
5.4.5 通过分块进行软件优化 280
5.4.6 小结 283
5.5 可信存储器层次 283
5.5.1 失效的定义 283
5.5.2 纠正一位错、检测两位错的汉明编码(SEC/DED) 284
5.6 虚拟机 287
5.6.1 虚拟机监视器的必备条件 289
5.6.2 指令集系统结构(缺乏)对虚拟机的支持 289
5.6.3 保护和指令集系统结构 289
5.7 虚拟存储器 290
5.7.1 页的存放和查找 293
5.7.2 缺页故障 294
5.7.3 关于写 297
5.7.4 加快地址转换:TLB 297
5.7.5 集成虚拟存储器、TLB和cache 300
5.7.6 虚拟存储器中的保护 302
5.7.7 处理TLB缺失和缺页 303
5.7.8 小结 307
5.8 存储器层次结构的一般框架 309
5.8.1 问题1:一个块可以被放在何处 309
5.8.2 问题2:如何找到一个块 310
5.8.3 问题3:当cache缺失时替换哪一块 311
5.8.4 问题4:写操作如何处理 311
5.8.5 3C:一种理解存储器层次结构行为的直观模型 312
5.9 使用有限状态机来控制简单的cache 314
5.9.1 一个简单的cache 314
5.9.2 有限状态机 315
5.9.3 一个简单的cache控制器的有限状态机 316
5.10 并行与存储器层次结构:cache一致性 317
5.10.1 实现一致性的基本方案 318
5.10.2 监听协议 319
5.11 并行与存储器层次结构:冗余廉价磁盘阵列 320
5.12 高级内容:实现cache控制器 320
5.13 实例:ARM Cortex-A8和IntelCore i7的存储器层次结构 320
5.14 运行更快:cache分块和矩阵乘法 324
5.15 谬误和陷阱 326
5.16 本章小结 329
5.17 历史观点和拓展阅读 329
5.18 练习题 329
第6章 从客户端到云的并行处理器 340
6.1 引言 340
6.2 创建并行处理程序的难点 342
6.3 SISD、MIMD、SIMD、SPMD和向量机 345
6.3.1 在x86中的SIMD:多媒体扩展 346
6.3.2 向量机 346
6.3.3 向量与标量的对比 347
6.3.4 向量与多媒体扩展的对比 348
6.4 硬件多线程 350
6.5 多核和其他共享内存多处理器 352
6.6 图形处理单元简介 355
6.6.1 NVIDIA GPU体系结构简介 356
6.6.2 NVIDIA GPU存储结构 357
6.6.3 GPU展望 358
6.7 集群、仓储级计算机和其他消息传递多处理器 360
6.8 多处理器网络拓扑简介 363
6.9 与外界通信:集群网络 366
6.10 多处理器测试集程序和性能模型 366
6.10.1 性能模型 368
6.10.2 Roofline模型 369
6.10.3 两代Opteron的比较 370
6.11 实例:评测Intel Core i7 960和NVIDIA Tesla GPU的Roofline模型 373
6.12 运行更快:多处理器和矩阵乘法 376
6.13 谬误与陷阱 378
6.14 本章小结 379
6.15 历史观点和拓展阅读 381
6.16 练习题 382
附录A 汇编器、链接器和SPIM仿真器 389
附录B 逻辑设计基础 437
索引 494
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《计算机辅助平面设计》吴轶博主编 2019
- 《计算机组成原理解题参考 第7版》张基温 2017
- 《云计算节能与资源调度》彭俊杰主编 2019
- 《Helmholtz方程的步进计算方法研究》李鹏著 2019
- 《计算机组成原理 第2版》任国林 2018
- 《大学计算机信息技术教程 2018版》张福炎 2018
- 《计算机自适应英语语用能力测试系统设计与效度验证 以TEM4词汇与语法题为例》张一鑫著 2019
- 《大学计算机》王观玉,周力军,杨福建主编 2019
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《看漫画学钢琴 技巧 3》高宁译;(日)川崎美雪 2019
- 《微表情密码》(波)卡西亚·韦佐夫斯基,(波)帕特里克·韦佐夫斯基著 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《海明威书信集:1917-1961 下》(美)海明威(Ernest Hemingway)著;潘小松译 2019
- 《迁徙 默温自选诗集 上》(美)W.S.默温著;伽禾译 2020
- 《上帝的孤独者 下 托马斯·沃尔夫短篇小说集》(美)托马斯·沃尔夫著;刘积源译 2017
- 《巴黎永远没个完》(美)海明威著 2017
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017
- 《新工业时代 世界级工业家张毓强和他的“新石头记”》秦朔 2019
- 《智能制造高技能人才培养规划丛书 ABB工业机器人虚拟仿真教程》(中国)工控帮教研组 2019
- 《AutoCAD机械设计实例精解 2019中文版》北京兆迪科技有限公司编著 2019