出版社:机械工业出版社
年代:2012
定价:45.0
本书在传统的计算机体系结构教科书的基础之上扩展了嵌入式系统的内容,并以新颖而完整的视角看待今天的计算机体系结构。前两章讲了计算机的发展和算术处理基础知识,随后分别介绍了CPU结构、功能单元、性能优化、外部接口、实际嵌入式处理和计算的未来。本书不仅通过大量的图表和例子来增强可读性,同时文中还穿插了许多注释框来拓宽读者的视野,其中包括一些额外的例子、有趣的信息摘要和附加的解释。书中除了包含嵌入式工程师所需的所有与典型计算机体系结构理论课程有关的主要内容外,还包括大量对目标读者有用的信息——甚至给读者提供建立和测试自定义软核处理器的机会,每一个主要的章节末尾都配有思考题。
出版者的话
前言
致谢
第1章 引言
1.1 本书组织结构
1.2 进化过程
1.3 计算机发展阶段划分
1.3.1 第一代计算机
1.3.2 第二代计算机
1.3.3 第三代计算机
1.3.4 第四代计算机
1.3.5 第五代计算机
1.4 云、普适、网格和超并行计算机
1.5 未来
1.6 小结
第2章 基础知识
2.1 计算机组成
2.1.1 Flynn分类法
2.1.2 连接方式
2.1.3 计算机结构层次视图
2.2 计算机基本原理
2.3 数字格式
2.3.1 无符号二进制
2.3.2 原码
2.3.3 反码
2.3.4 补码
2.3.5 移码(excess-n)
2.3.6 BCD码
2.3.7 定点数表示法
2.3.8 符号扩展
2.4 算术运算
2.4.1 加法
2.4.2 并行进位传递加法器
2.4.3 超前进位
2.4.4 减法
2.5 乘法
2.5.1 加法迭代法
2.5.2 部分积方法
2.5.3 移位加方法
2.5.4 Booth和Robertson方法
2.6 除法
2.7 定点数格式的运算
2.7.1 定点数的运算
2.7.2 定点数的乘除
2.8 浮点数
2.8.1 广义浮点数
2.8.2 IEEE754浮点标准
2.8.3 IEEE754标准模式
2.8.3.1 规格化模式
2.8.3.2 非规格化模式
2.8.3.3 其他模式数
2.8.4 IEEE754数的范围
2.9 浮点数处理
2.9.1 IEEE754数的加减运算
2.9.2 IEEE754数的乘除法
2.9.3 IEEE754中间格式
2.9.4 舍入
2.10 小结
思考题
第3章 CPU基础
3.1 什么是计算机
3.2 让计算机为你服务
3.2.1 程序存储
3.2.2 存储架构
3.2.3 程序传输
3.2.4 控制单元
3.2.5 微指令
3.2.6 RISC和CISC的对比
3.2.7 处理器实例
3.3 指令处理
3.3.1 指令集
3.3.2 取指和译码
3.3.2.1 指令译码
3.3.2.2 取操作数
3.3.2.3 分支
3.3.2.4 立即数
3.3.3 压缩指令集
3.3.4 寻址模式
3.3.5 堆栈机和逆波兰表示法
3.4 数据处理
3.4.1 数据的格式和表达
3.4.2 数据流
3.4.3 数据存储
3.4.4 内部数据
3.4.5 数据处理
3.4.5.1 在小位宽CPU上处理大位宽数字
3.4.5.2 定点CPU上的浮点数
3.4.5.3 复数
3.5 自顶向下方法
3.5.1 计算机的能力
3.5.1.1 功能
3.5.1.2 时钟频率
3.5.1.3 位宽
3.5.1.4 内存
3.5.2 性能衡量和统计
3.5.3 性能评估
3.6 小结
思考题
第4章 处理器内部组成
4.1 内部总线结构
4.1.1 程序员的角度
4.1.2 分解互联排列
4.1.3 ADSP21xx总线排列
4.1.4 数据与程序同时访存
4.1.5 双总线体系结构
4.1.6 单总线体系结构
4.2 算术逻辑单元
4.2.1 ALU功能
4.2.2 ALU设计
4.3 内存管理单元
4.3.1 对虚拟存储的需求
4.3.2 MMU操作
4.3.3 退回算法
4.3.4 内部存储碎片和片段
4.3.5 外部碎片
4.3.6 改进的MMU
4.3.7 内存保护
4.4 cache
4.4.1 直接相联cache
4.4.2 组相联cache
4.4.3 全相联cache
4.4.4 局部性原则
4.4.5 cache替换算法
4.4.6 cache性能
4.4.7 cache一致性
4.5 协处理器
4.6 浮点运算单元
4.6.1 浮点仿真
4.7 SIMD流指令扩展(SSE)和多媒体扩展
4.7.1 多媒体扩展(MMX)
4.7.2 MMX实现
4.7.3 MMX的使用
4.7.4 SIMD流指令扩展(SSE)
4.7.5 使用SSE和MMX
4.8 嵌入式系统中的协处理
4.9 小结
思考题
第5章 提高CPU性能
5.1 CPU加速技术简介
5.2 流水线
5.2.1 多功能流水线
5.2.2 动态流水线
5.2.3 改变流水线模式
5.2.4 数据相关冒险
5.2.5 条件冒险
5.2.6 条件分支
5.2.7 编译时流水线补偿
5.2.8 相对地址分支
5.2.9 流水线的指令集补偿
5.2.10 运行时流水线补偿
5.3 复杂指令集(CISC)和精简指令集(RISC)
5.4 超标量体系结构
5.4.1 简单超标量
5.4.2 多发送超标量
5.4.3 超标量的性能
5.5 每周期的指令数
5.5.1 不同体系结构的IPC
5.5.2 IPC度量
5.6 硬件加速器
5.6.1 零开销循环
5.6.2 地址处理硬件
5.6.3 影子寄存器
5.7 分支预测
5.7.1 分支预测的必要性
5.7.2 单T位预测器
5.7.3 双位预测器
5.7.4 计数器和移位器预测器
5.7.5 局部分支预测器
5.7.6 全局分支预测器
5.7.7 G选择预测器
5.7.8 G共享预测器
5.7.9 混合预测器
5.7.10 分支目标缓冲
5.7.11 基本代码段
5.7.12 分支预测总结
5.8 并行机器
5.8.1 SISD向MIMD的演变
5.8.2 为提高性能而采用并行
5.8.3 其他并行处理
5.9 Tomasulo算法
5.9.1 Tomasulo算法的原理
5.9.2 Tomasulo系统的例子
5.9.3 嵌入式系统中的Tomasulo算法
5.10 小结
思考题
第6章 外部总线
6.1 总线接口
6.1.1 总线控制信号
6.1.2 直接存储器存取(DMA)
6.2 并行总线规范
6.3 标准接口
6.3.1 系统控制接口
6.3.2 系统数据总线
6.3.2.1 ISA总线及其衍生总线
6.3.2.2 PC/
6.3.2.3 PCI
6.3.2.4 LVDS
6.3.3 输入/输出总线
6.3.4 外设器件总线
6.3.5 与网络设备的接口
6.4 实时性问题
6.4.1 外部激励
6.4.2 中断
6.4.3 实时性定义
6.4.4 时间范围参数
6.4.5 硬件体系结构对实时操作系统的支持
6.5 中断和中断处理
6.5.1 中断的重要性
6.5.2 中断过程
6.5.2.1 中断事件通知处理器
6.5.2.2 CPU完成正在进行的工作
6.5.2.3 转入中断服务例程
6.5.2.4 中断重定向
6.5.3 高级中断处理
6.5.4 共享中断
6.5.5 可重入代码
6.5.6 软件中断
6.6 无线
6.6.1 无线技术
6.6.2 无线接口
6.6.3 无线相关问题
6.7 小结
思考题
第7章 实用嵌入式CPU
7.1 概述
7.2 微处理器不只是核
7.3 功能需求
7.4 时钟
7.5 时钟与功耗
7.5.1 传输延迟
7.5.2 电流相关问题
7.5.3 时钟问题解决方法
7.5.4 低电压设计
7.6 存储
7.6.1 早期的计算机存储
7.6.2 只读存储器
7.6.3 随机存取存储器
7.6.3.1 静态RAM
7.6.3.2 动态RAM
7.6.3.3 DRAM的寻址机制
7.7 分页与重叠
7.8 嵌入式系统中的存储
7.8.1 非易失存储器
7.8.2 易失存储器
7.8.3 其他存储器
7.9 测试和验证
7.9.1 集成电路设计和制造问题
7.9.2 内置自测(BIST)
7.9.3 联合测试行动小组(JTAG)
7.10 错误检测和纠正
7.11 看门狗定时器和复位监测
7.12 逆向工程
7.12.1 逆向工程过程
7.12.1.1 功能分析
7.12.1.2 物理结构分析
7.12.1.3 材料清单
7.12.1.4 系统架构
7.12.2 详细的物理布局
7.12.2.1 电气连接原理图
7.12.2.2 存储程序
7.12.2.3 软件
7.13 防止逆向工程
7.13.1 存储程序的被动模糊
7.13.2 可编程逻辑家族
7.13.3 主动RE防范
7.13.4 主动RE防范分类
7.14 小结
思考题
第8章 CPU设计
8.1 软核处理器
8.1.1 微处理器不仅仅有处理器核
8.1.2 软核处理器的优点
8.1.2.1 性能
8.1.2.2 可用性
8.1.2.3 效率
8.1.2.4 人为因素
8.2 软硬件协同设计
8.3 现成的软核
8.4 制作自己的软核
8.5 CPU设计规格说明
8.5.1 CPU体系结构
8.5.2 总线
8.5.3 程序及数据存储
8.5.4 逻辑运算
8.5.5 指令处理
8.5.6 系统控制
8.6 指令集
8.6.1 CPU控制
8.6.1.1 闲置状态
8.6.1.2 取指状态
8.6.1.3 执行状态
8.7 CPU实现
8.7.1 测试的重要性
8.7.2 定义操作和状态:defs.v
8.7.3 第一个小模块:counter.v
8.7.4 CPU控制:state.v
8.7.5 程序和变量存储:ram.v
8.7.6 堆栈:stack.v
8.7.7 算术、逻辑和乘法单元:alu.v
8.7.8 综合测试:tinycpu.v
8.8 CPU测试及运行
8.9 编程并使用CPU
8.9.1 编写TinyCPU程序
8.9.2 TinyCPU编程工具
8.10 小结
思考题
第9章 未来
9.1 单比特体系结构
9.1.1 位串行加法
9.1.2 位串行减法
9.1.3 位串行逻辑电路和处理
9.2 超长指令字体系结构
9.2.1 VLIW的基本原理
9.2.2 VLIW的难题
9.3 并行与大规模并行计算机
9.3.1 大型计算机集群
9.3.2 小型计算机集群
9.3.2.1 从嵌入式系统中解放计算资源
9.3.2.2 并行处理单元
9.3.3 并行和集群处理注意事项
9.3.4 互连策略
9.4 异步处理器
9.4.1 数据流控制
9.4.2 避免流水线冒险
9.5 替代数字格式系统
9.5.1 多值逻辑
9.5.2 带符号数字的表示
9.6 光计算
9.6.1 光电全加器
9.6.2 光电底板
9.7 科幻小说还是未来的现实
9.7.1 分布式计算
9.7.2 湿件(大脑)
9.8 小结
附录A 内存大小的标准表示方法
附录B 开放系统互连模型
B.1 引言
B.2 OSI层次
B.3 小结
附录C 探索cache大小和结构安排的权衡设计方法
C.1 引言
C.2 准备工作
C.3 安装Cacti和Dinero
C.4 工具的使用
C.5 不同cache设计方案的实验
C.6 cache设计中的进一步信息
思考题
附录D 嵌入式计算机上的无线技术
D.1 引言
D.2 802.11a,b和g
D.3 802.11n
D.4 802.
D.5 802.
D.6 蓝牙
D.7 GSM
D.8 GPRS
D.9 ZigBee
D.10 无线USB
D.11 近距离通信
D.12 WiBro
D.13 无线设备总结
D.14 应用举例
D.15 小结
附录E 编译和仿真TinyCPU的工具
E.1 准备和软件获取
E.2 如何编译和仿真Verilog
E.3 如何查看仿真输出
E.4 高级测试平台
E.5 小结
附录F TinyCPU编译和汇编代码的工具
F.1 引言
F.2 汇编过程
F.3 汇编器
F.4 汇编程序实例
F.5 编译器
F.6 小结
索引
《计算机科学丛书:计算机体系结构嵌入式方法》在传统计算机体系结构教科书的基础之上扩展了嵌入式系统的内容,并以新颖而完整的视角看待今天的计算机体系结构。前两章讲了计算机的发展和算术处理基础知识,随后分别介绍了CPU结构、功能单元、性能优化、外部接口、实际嵌入式处理和计算的未来。本书不仅通过大量的图表和例子来增强可读性,同时文中还穿插了许多注释框来拓宽读者的视野,其中包括一些额外的例子、有趣的信息摘要和附加的解释。书中除了包含嵌入式工程师所需的所有与典型计算机体系结构理论课程有关的主要内容外,还包括大量对目标读者有用的信息——甚至给读者提供建立和测试自定义软核处理器的机会,每一个主要的章节末尾都配有思考题,在教学指南中有参考答案。
《计算机科学丛书:计算机体系结构嵌入式方法》适合于选择了计算机体系结构相关课程的本科生,尤其是大三学生,也适合于那些在开始更深层次的课题之前需要了解计算机体系结构最新知识的研究生,还适合于行业工程师。
书籍详细信息 | |||
书名 | 计算机体系结构站内查询相似图书 | ||
丛书名 | 计算机科学丛书 | ||
9787111379041 如需购买下载《计算机体系结构》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN | |||
出版地 | 北京 | 出版单位 | 机械工业出版社 |
版次 | 1版 | 印次 | 1 |
定价(元) | 45.0 | 语种 | 简体中文 |
尺寸 | 26 × 19 | 装帧 | 平装 |
页数 | 498 | 印数 | 4000 |
张先凤, 刘亮, 著
(美) 科默 (Comer,D.E.) , 著
(美) 亨尼西 (Hennessy,J.L.) , (美) 帕特森 (Patterson,D.A.) , 著
祁林, 编著
苏格兰学历管理委员会, 著
(美) 亨尼西 (Hennessy,J.L.) 等, 著
(美) 亨尼西 (Hennessy,J.L.) , 等著
(美) 道格拉斯·科莫 (Douglas Comer) , 著
李静梅, 冯刚, 王晓霞, 编著