种豆资源网

当前位置:首页 > 百科 > 百科综合 / 正文

计算机组成与设计:硬体、软体接口

(2020-03-05 17:52:44) 百科综合
计算机组成与设计:硬体、软体接口

计算机组成与设计:硬体、软体接口

《计算机组成与设计:硬体、软体接口》是2012年机械工业出版社出版的图书。

基本介绍

  • 书名:计算机组成与设计:硬体、软体接口
  • 作者:(美国)帕特森(David A.Patterson)、(美国)亨尼斯(John L.Hennessy)
  • 原版名称:Computer Organization and Design The Hardware/Software Interface Fourth Edition
  • 译者:康继昌、樊晓桠、安建峰
  • ISBN:7111353056, 9787111353058
  • 页数:534页
  • 出版社:机械工业出版社 
  • 出版时间:2012年1月1日
  • 装帧:平装 
  • 开本:16
  • 丛书名:计算机科学丛书

内容简介

《计算机组成与设计:硬体、软体接口(原书第4版)》是计算机组成的经典教材。全书着眼于当前计算机设计中最基本的概念,展示了软硬体间的关係,并全面介绍当代计算机系统发展的主流技术和最新成就。
同以往版本一样,《计算机组成与设计:硬体、软体接口(原书第4版)》採用MIPS处理器作为展示计算机硬体技术、彙编语言、计算机算术、流水线、存储器层次结构以及I/O等基本功能的核心。书中强调了计算机从串列到并行的最新革新,在每章中都纳入了并行硬体和软体的主题,以软硬体协同设计发挥多核性能为最终目标。
《计算机组成与设计:硬体、软体接口(原书第4版)》适合作为高等院校相关专业的本科生和研究生教材,对广大技术人员也有很高的参考价值。

编辑推荐

《计算机组成与设计:硬体、软体接口(原书第4版)》特色:涵盖从串列计算到并行计算的革命性变革,新增了关于并行化的一章,并且每章中还有一些强调并行硬体和软体主题的小节。新增一个由NVIDIA的首席科学家和架构主管撰写的附录,介绍了现代GPU的出现和重要性,首次详细描述了这个针对可视计算进行 了最佳化的高度并行化、多执行绪、多核的处理器。描述一种度量多核性能的独特方法——Roofline模型,自带AMDOpteronX4、IntelXeon5000、SunUltraSPARCT2和IBM Cell的基準测试和分析。涵盖一些关于快闪记忆体和虚拟机的新内容。提供了大量富有启发性的练习题。将AMDOpteronX4和Inter Nehalem作为贯穿《计算机组成与设计:硬体、软体接口(原书第4版)》的实例。用SPECCPU2006组件更新了所有处理器性能实例。
这 本最畅销的计算机组成书籍经过全面更新,关注现今发生在计算机体系结构领域的革命性变革二从单处理器发展到多核微处理器,从串列发展到并行。与前几版一样,《计算机组成与设计:硬体、软体接口(原书第4版)》採用了MIPS处理器来展示计算机硬体技术、彙编语言、计算机算术、流水线、存储器层次结构以及I/O等基本功能。此外,奉书还包括一些关于ARM和x86体系结构的介绍。

作者简介

作者:(美国)帕特森(David A.Patterson) (美国)亨尼斯(John L.Hennessy) 译者:康继昌 樊晓桠 安建峰 等
David A.Patterson,加州大学伯克利分校计算机科学系教授,美国国家工程研究院院士,IEEE和ACM会士,曾因成功的启发式教育方法被IEEE授予James H.Muiiigan.Jr教育奖章。他因为对RISC技术的贡献而荣获1995年IEEE技术成就奖,而在RAID技术方面的成就为他赢得了1999年IEEE。ReynoldJohnson信息存储奖。2000年他和JohnL.Hennessy分享了Johnvon Neumann奖。
John L.Hennessy史丹福大学接长。IEEE和ACM会士,美国国家工程研究院院士及美国科学艺术研究院院士。Hennessy教授因为在RISC技术 方面做出了突出贡献而荣获2001年的Eckert-Mauchly奖章,他也是2001年Seymour Cray计算机工程奖得主,并且和David A.Pafferson分享了2000年Johnvon Neumann奖。

目录

出版者的话
译者序
前言
第1章 计算机概要与技术
1.1 引言
1.1.1 计算套用的分类及其特性
1.1.2 你能从本书学到什幺
1.2 程式概念入门
1.3 硬体概念入门
1.3.1 剖析滑鼠
1.3.2 显示器
1.3.3 打开机箱
1.3.4 数据安全
1.3.5 与其他计算机通信
1.3.6 处理器和存储器製造技术
1.4 性能
1.4.1 性能的定义
1.4.2 性能的测量
1.4.3 CPU性能及其因素
1.4.4 指令的性能
1.4.5 经典的CPU性能公式
1.5 功耗墙
1.6 沧海巨变:从单处理器向多处理器转变
1.7 实例:製造以及AMD Opteron X4基準
1.7.1 SPEC CPU基準测试程式
1.7.2 SPEC功耗基準测试程式
1.8 谬误与陷阱
1.9 本章小结
1.10 拓展阅读
1.11 练习题
第2章 指令:计算机的语言
2.1 引言
2.2 计算机硬体的操作
2.3 计算机硬体的运算元
2.3.1 存储器运算元
2.3.2 常数或立即数运算元
2.4 有符号和无符号数
2.5 计算机中指令的表示
2.6 逻辑操作
2.7 决策指令
2.7.1 循环
2.7.2 case/switch语句
2.8 计算机硬体对过程的支持
2.8.1 使用更多的暂存器
2.8.2 嵌套过程
2.8.3 在栈中为新数据分配空间
2.8.4 在堆中为新数据分配空间
2.9 人机互动
2.10 MIPS中32位立即数和地址的定址
2.10.1 32位立即数
2.10.2 分支和跳转中的定址
2.10.3 MIPS定址模式总结
2.10.4 机器语言解码
2.11 并行与指令:同步
2.12 翻译并执行程式
2.12.1 编译器
2.12.2 彙编器
2.12.3 连结器
2.12.4 载入器
2.12.5 动态程式库
2.12.6 启动一个Java程式
2.13 以一个C排序程式为例
2.13.1 swap过程
2.13.2 sort过程
2.14 数组与指针
2.14.1 用数组实现clear
2.14.2 用指针实现clear
2.14.3 比较两个版本的clear
2.15 高级内容:编译C语言和解释Java语言
2.16 实例:ARM指令集
2.16.1 定址模式
2.16.2 比较和条件分支
2.16.3 ARM的特色
2.17 实例:x86指令集
2.17.1 Intel x86的改进
2.17.2 x86暂存器和数据定址模式
2.17.3 x86整数操作
2.17.4 x86指令编码
2.17.5 x86总结
2.18 谬误与陷阱
2.19 本章小结
2.20 拓展阅读
2.21 练习题
第3章 计算机的算术运算
3.1 引言
3.2 加法和减法
3.2.1 多媒体算术运算
3.2.2 小结
3.3 乘法
3.3.1 顺序的乘法算法和硬体
3.3.2 有符号乘法
3.3.3 更快速的乘法
3.3.4 MIPS中的乘法
3.3.5 小结
3.4 除法
3.4.1 除法算法及其硬体结构
3.4.2 有符号除法
3.4.3 更快速的除法
3.4.4 MIPS中的除法
3.4.5 小结
3.5 浮点运算
3.5.1 浮点表示
3.5.2 浮点加法
3.5.3 浮点乘法
3.5.4 MIPS中的浮点指令
3.5.5 算术精确性
3.5.6 小结
3.6 并行性和计算机算术:结合律
3.7 实例:x86的浮点
3.7.1 x86浮点体系结构
3.7.2 Intel SIMD流扩展2(SSE2)浮点体系结构
3.8 谬误与陷阱
3.9 本章小结
3.10 拓展阅读
3.11 练习题
第4章 处理器
4.1 引言
4.1.1 一个基本的MIPS实现
4.1.2 实现方式概述
4.2 逻辑设计惯例
4.3 建立数据通路
4.4 一个简单的实现机制
4.4.1 ALU控制
4.4.2 主控制单元的设计
4.4.3 数据通路的操作
4.4.4 控制的结束
4.4.5 为什幺不使用单周期实现方式
4.5 流水线概述
4.5.1 面向流水线的指令集设计
4.5.2 流水线冒险
4.5.3 对流水线概述的小结
4.6 流水线数据通路及其控制
4.6.1 图形化表示的流水线
4.6.2 流水线控制
4.7 数据冒险:转发与阻塞
4.8 控制冒险
4.8.1 假定分支不发生
4.8.2 缩短分支的延迟
4.8.3 动态分支预测
4.8.4 流水线小结
4.9 异常
4.9.1 异常在MIPS体系结构中的处理
4.9.2 在流水线实现中的异常
4.10 并行和高级指令级并行
4.10.1 推测的概念
4.10.2 静态多发射处理器
4.10.3 动态多发射处理器
4.11 实例:AMD Opteron X4(Barcelona)流水线
4.12 高级主题:通过硬体设计语言描述和建模流水线来介绍数字设计以及更多流水线示例
4.13 谬误与陷阱
4.14 本章小结
4.15 拓展阅读
4.16 练习题
第5章 大容量和高速度:开发存储器层次结构
5.1 引言
5.2 cache的基本原理
5.2.1 cache访问
5.2.2 cache缺失处理
5.2.3 写操作处理
5.2.4 一个cache的例子:内置FastMATH处理器
5.2.5 设计支持cache的存储系统
5.2.6 小结
5.3 cache性能的评估和改进
5.3.1 通过更灵活地放置块来减少cache缺失
5.3.2 在cache中查找一个块
5.3.3 替换块的选择
5.3.4 使用多级cache结构减少缺失代价
5.3.5 小结
5.4 虚拟存储器
5.4.1 页的存放和查找
5.4.2 缺页
5.4.3 关于写
5.4.4 加快地址转换:TLB
5.4.5 集成虚拟存储器、TLB和cache
5.4.6 虚拟存储器中的保护
5.4.7 处理TLB缺失和缺页
5.4.8 小结
5.5 存储器层次结构的一般架构
5.5.1 问题1:一个块可以被放在何处
5.5.2 问题2:如何找到一个块
5.5.3 问题3:当cache缺失时替换哪一块
5.5.4 问题4:写操作如何处理
5.5.5 3C:一种理解存储器层次结构行为的直观模型
5.6 虚拟机
5.6.1 虚拟机监视器的必备条件
5.6.2 指令集系统结构(缺乏)对虚拟机的支持
5.6.3 保护和指令集系统结构
5.7 使用有限状态机来控制简单的cache
5.7.1 一个简单的cache
5.7.2 有限状态机
5.7.3 一个简单的cache控制器的有限状态机
5.8 并行与存储器层次结构:cache一致性
5.8.1 实现一致性的基本方案
5.8.2 监听协定
5.9 高级内容:实现cache控制器
5.10 实例:AMD Opteron X4(Barcelona)和Intel Nehalem的存储器层次结构
5.10.1 Nehalem和Opteron的存储器层次结构
5.10.2 减少缺失代价的技术
5.11 谬误和陷阱
5.12 本章小结
5.13 拓展阅读
5.14 练习题
第6章 存储器和其他I/O主题
6.1 引言
6.2 可信度、可靠性和可用性
6.3 磁碟存储器
6.4 快闪式存储器
6.5 连线处理器、记忆体以及I/O设备
6.5.1 互联基础
6.5.2 x86处理器的I/O互联
6.6 为处理器、记忆体和作业系统提供I/O设备接口
6.6.1 给I/O设备传送指令
6.6.2 与处理器通信
6.6.3 中断优先权
6.6.4 在设备与记忆体之间传输数据
6.6.5 直接存储器访问和记忆体系统
6.7 I/O性能度量:磁碟和档案系统的例子
6.7.1 事务处理I/O基準程式
6.7.2 档案系统和Web I/O的基準程式
6.8 设计I/O系统
6.9 并行性与I/O:廉价磁碟冗余阵列
6.9.1 无冗余(RAID 0)
6.9.2 镜像(RAID 1)
6.9.3 错误检测和纠错码(RAID 2)
6.9.4 位交叉奇偶校验(RAID 3)
6.9.5 块交叉奇偶校验(RAID 4)
6.9.6 分散式块交叉奇偶校验(RAID 5)
6.9.7 P+Q冗余(RAID 6)
6.9.8 RAID小结
6.10 实例:Sun Fire x4150伺服器
6.11 高级主题:网路
6.12 谬误与陷阱
6.13 本章小结
6.14 拓展阅读
6.15 练习题
第7章 多核、多处理器和集群
7.1 引言
7.2 创建并行处理程式的难点
7.3 共享存储多处理器
7.4 集群和其他讯息传递多处理器
7.5 硬体多执行绪
7.6 SISD、MIMD、SIMD、SPMD和向量机
7.6.1 在x86中的SIMD:多媒体扩展
7.6.2 向量机
7.6.3 向量与标量的对比
7.6.4 向量与多媒体扩展的对比
7.7 图形处理单元简介
7.7.1 NVIDIA GPU体系结构简介
7.7.2 深入理解GPU
7.8 多处理器网路拓扑简介
7.9 多处理器基準测试程式
7.10 Roofline:一个简单的性能模型
7.10.1 Roofline模型
7.10.2 两代Opteron的比较
7.11 实例:使用屋顶线模型评估四种多核处理器
7.11.1 4个多核系统
7.11.2 稀疏矩阵
7.11.3 结构化格线
7.11.4 生产率
7.12 谬误与陷阱
7.13 本章小结
7.14 拓展阅读
7.15 练习题
附录A 图形和计算GPU
A.1 引言
A.1.1 GPU发展简史
A.1.2 异构系统
A.1.3 GPU发展成了可扩展的并行处理器
A.1.4 为什幺使用CUDA和GPU计算
A.1.5 GPU统一了图形和计算
A.1.6 GPU可视化计算的套用
A.2 GPU系统架构
A.2.1 异构CPU-GPU系统架构
A.2.2 GPU接口和驱动
A.2.3 图形逻辑流水线
A.2.4 将图形流水线映射到统一的GPU处理器
A.2.5 基本的统一GPU结构
A.3 可程式GPU
A.3.1 为实时图形编程
A.3.2 逻辑图形流水线
A.3.3 图形渲染程式
A.3.4 像素渲染示例
A.3.5 并行计算套用编程
A.3.6 使用CUDA进行可扩展并行编程
A.3.7 一些限制
A.3.8 体系结构隐含的问题
A.4 多执行绪的多处理器架构
A.4.1 大规模多执行绪
A.4.2 多处理器体系结构
A.4.3 单指令多执行绪(SIMT)
A.4.4 SIMT warp执行和分支
A.4.5 管理执行绪和执行绪块
A.4.6 执行绪指令
A.4.7 指令集架构(ISA)
A.4.8 流处理器(SP)
A.4.9 特殊功能单元(SFU)
A.4.10 与其他多处理器的比较
A.4.11 多执行绪多处理器总结
A.5 并行存储系统
A.5.1 DRAM的考虑
A.5.2 cache
A.5.3 MMU
A.5.4 存储器空间
A.5.5 全局存储器
A.5.6 共享存储器
A.5.7 局部存储器
A.5.8 常量存储器
A.5.9 纹理存储器
A.5.10 表面
A.5.11 load/store访问
A.5.12 ROP
A.6 浮点算术
A.6.1 支持的格式
A.6.2 基本算术
A.6.3 专用算术
A.6.4 性能
A.6.5 双精度
A.7 资料:NVIDIA GeForce 8800
A.7.1 流处理器阵列(SPA)
A.7.2 纹理/处理器簇(TPC)
A.7.3 流多处理器(SM)
A.7.4 指令集
A.7.5 流处理器(SP)
A.7.6 特殊功能单元(SFU)
A.7.7 光栅化
A.7.8 光栅操作处理器(ROP)和存储系统
A.7.9 可扩展性
A.7.10 性能
A.7.11 密集线性代数性能
A.7.12 FFT性能
A.7.13 排序性能
A.8 资料:将套用映射到GPU
A.8.1 稀疏矩阵
A.8.2 在共享存储器中进行快取
A.8.3 扫描和归约
A.8.4 基数排序
A.8.5 GPU上的N-Body套用
A.9 谬误与陷阱
A.10 小结
A.11 拓展阅读
附录B 彙编器、连结器和SPIM仿真器
B.1 引言
B.1.1 什幺时候使用彙编语言
B.1.2 彙编语言的缺点
B.2 彙编器
B.2.1 目标档案的格式
B.2.2 附加工具
B.3 连结器
B.4 载入
B.5 记忆体的使用
B.6 过程调用规範
B.6.1 过程调用
B.6.2 过程调用举例
B.6.3 另外一个过程调用的例子
B.7 异常和中断
B.8 输入和输出
B.9 SPIM
B.10 MIPS R2000彙编语言
B.10.1 定址方式
B.10.2 彙编语法
B.10.3 MIPS指令编码
B.10.4 指令格式
B.10.5 常数操作指令
B.10.6 比较指令
B.10.7 分支指令
B.10.8 跳转指令
B.10.9 陷阱指令
B.10.10 取数指令
B.10.11 保存指令
B.10.12 数据传送指令
B.10.13 浮点运算指令
B.10.14 异常和中断指令
B.11 小结
B.12 参考文献
B.13 练习题

标 签

搜索
随机推荐

Powered By 种豆资源网||