高性能嵌入式计算(原书第2版) 内容简介
本书从性能、功率和能耗以及成本等方面讲述现代嵌入式计算系统的设计方法。第1章概述嵌入式计算,第2章介绍各种处理器,第3章讲述编程,第4章讨论进程、操作系统,第5章介绍多处理器体系结构,第6章讲述多处理器软件,第7章介绍系统级设计和软硬件协同设计,第8章讲述物理信息系统的设计。本书包含大量实例,涵盖嵌入式计算领域的高级主题,适合对嵌入式系统感兴趣的专业人员和师生阅读。
高性能嵌入式计算(原书第2版) 目录
第1章 嵌入式计算
1.1 高性能嵌入式计算的现状
1.2 信息物理系统和嵌入式计算
1.2.1 交通工具控制和操作
1.2.2 医疗设备和系统
1.2.3 电力
1.2.4 无线电和网络
1.2.5 多媒体
1.3 设计方法
1.3.1 为什么使用设计方法
1.3.2 设计目标
1.3.3 基本设计方法
1.3.4 嵌入式设计流程
1.3.5 基于标准的设计方法
1.3.6 设计验证和确认
1.3.7 方法学
1.3.8 算法和体系结构联合开发
1.4 计算模型
1.4.1 为什么学习计算模型
1.4.2 图灵机
1.4.3 面向流模型
1.4.4 状态和控制的表示
1.4.5 并行性和通信
1.4.6 并行的来源和使用
1.5 可靠性、安全性和保密性
1.5.1 为什么需要可靠的嵌入式系统
1.5.2 可靠系统设计的基础
1.5.3 新型攻击和对策
1.6 消费类电子产品体系结构
1.6.1 蓝牙
1.6.2 WiFi
1.6.3 网络化消费类电子设备
1.6.4 高层次服务
1.7 小结和展望
本章所学内容
进一步阅读
习题
实验练习
第2章 CPU
2.1 引言
2.2 处理器的比较
2.2.1 评价处理器
2.2.2 处理器的分类
2.2.3 嵌入式处理器与通用处理器
2.3 RISC处理器和数字信号处理器
2.3.1 RISC处理器
2.3.2 数字信号处理器
2.4 并行执行机制
2.4.1 超长指令字处理器
2.4.2 超标量处理器
2.4.3 SIMD和向量处理器
2.4.4 线程级并行性
2.4.5 GPU
2.4.6 处理器资源的利用
2.5 性能可变CPU体系结构
2.5.1 动态电压和频率缩放
2.5.2 可靠性和错误感知计算
2.6 处理器存储层次结构
2.6.1 存储器组件模型
2.6.2 寄存器文件
2.6.3 缓存
2.6.4 暂存存储器
2.7 编码和安全
2.7.1 代码压缩
2.7.2 代码和数据压缩
2.7.3 低功率总线编码
2.7.4 安全性
2.8 CPU模拟
2.8.1 基于跟踪文件的分析
2.8.2 直接执行
2.8.3 微体系结构建模模拟器
2.8.4 功耗和热度的模拟与建模
2.9 自动化CPU设计
2.9.1 可配置处理器
2.9.2 指令集综合
2.10 小结
本章所学内容
进一步阅读
习题
实验练习
第3章 程序
3.1 引言
3.2 代码生成和后端编译
3.2.1 指令模型
3.2.2 寄存器分配
3.2.3 指令选择和调度
3.2.4 代码放置
3.2.5 编程环境
3.3 面向存储的优化
3.3.1 循环变换
3.3.2 全局优化
3.3.3 缓冲区、数据传输和内存管理
3.3.4 面向缓存和暂存的优化
3.3.5 面向主存的优化
3.4 程序性能分析
3.4.1 性能模型
3.4.2 路径分析
3.4.3 路径计时
3.5 计算与编程模型
3.5.1 面向中断的语言
3.5.2 数据流语言
3.5.3 面向控制的语言
3.5.4 Java
3.5.5 计算异构模型
3.6 小结
本章所学内容
进一步阅读
习题
实验练习
第4章 进程和操作系统
4.1 引言
4.2 实时进程调度
4.2.1 预备知识
4.2.2 实时调度算法
4.2.3 多关键级调度
4.2.4 动态电压和频率缩放调度
4.2.5 性能估计
4.3 语言和调度
4.4 操作系统设计
4.4.1 嵌入式操作系统的内存管理
4.4.2 实时操作系统结构
4.4.3 操作系统开销
4.4.4 对调度的支持
4.4.5 进程间通信机制
4.4.6 功耗管理
4.4.7 嵌入式设备中的文件系统
4.5 验证
4.6 小结
本章所学内容
进一步阅读
习题
实验练习
第5章 多处理器体系结构
5.1 引言
5.2 为什么需要嵌入式多处理器
5.2.1 嵌入式系统需求
5.2.2 性能和能量
5.2.3 专用性和多处理器
5.2.4 灵活性和效率
5.3 多处理器设计技术
5.3.1 多处理器设计方法
5.3.2 多处理器的建模和模拟
5.4 多处理器体系结构简介
5.5 处理单元
5.6 互连网络
5.6.1 模型
5.6.2 网络拓扑
5.6.3 路由和流控制
5.6.4 片上网络
5.7 存储系统
5.7.1 传统并行存储系统
5.7.2 存储模型
5.7.3 异构存储系统
5.7.4 一致性并行存储系统
5.8 物理分布式系统和网络
5.8.1 CAN总线
5.8.2 时间触发架构
5.8.3 FlexRay
5.8.4 航空网络
5.9 多处理器设计方法和算法
5.10 小结
本章所学内容
进一步阅读
习题
实验练习
第6章 多处理器软件
6.1 引言
6.2 嵌入式多处理器软件有何不同
6.3 实时多处理器操作系统
6.3.1 操作系统的角色
6.3.2 多处理器调度
6.3.3 动态任务的调度
6.4 嵌入式多处理器的服务和中间件
6.4.1 基于标准的服务
6.4.2 片上系统服务
6.4.3 服务质量
6.5 设计验证
6.6 小结
本章所学内容
进一步阅读
习题
实验练习
第7章 系统级设计和软硬件协同设计
7.1 引言
7.2 性能估计
7.2.1 高层综合
7.2.2 加速器估计
7.3 软硬件协同综合算法
7.3.1 程序表达
7.3.2 平台表达
7.3.3 模板驱动的综合算法
7.3.4 通用多处理器的协同综合
7.3.5 多目标优化
7.3.6 控制和I/O综合
7.3.7 存储系统
7.3.8 可重构系统的协同综合
7.4 电子系统级设计
7.5 热度感知设计
7.6 可靠性
7.7 系统级模拟
7.8 小结
本章所学内容
进一步阅读
习题
实验练习
第8章 信息物理系统
8.1 引言
8.2 控制理论和系统
8.3 控制/计算协同设计
8.4 网络化控制系统
8.5 设计方法学
8.5.1 基于模型的设计
8.5.2 形式化方法
8.6 安全性
8.7 小结
本章所学内容
进一步阅读
习题
实验练习
术语表
参考文献
索引
高性能嵌入式计算(原书第2版) 精彩文摘
聪明的读者会注意到,在这里我们并没有关心某些传统编程语言所关注的模块化等问题。虽然模块化和可维护性非常重要,但它们不是嵌入式计算特有的问题。我们提到的语言中的一些方面更专注于嵌入式系统,即必须实现多种不同类型的计算并使其顺利合作。
多种表达力可能让我们使用多种编程语言创建一个系统——我们称这些系统为异构编程(heterogeneously programmed)的系统。当多种编程语言混合使用时,需要对不同编程语言编写的模块之间的通信进行恰当设计并能够承担由此带来的负担。在一种特定语言中,语言系统一般能帮助验证某些基本操作,并且更容易思考程序如何工作。当我们混合使用多种语言时,确保程序能一起正常工作就很困难。理解每种编程语言的工作模型及其可靠通信的条件是设计异构编程系统的关键步骤。
1.4.2 图灵机
图灵机( Turing machine)是最有名的无限状态计算模型(Church首先开发了Lambda演算,但图灵机模型更为接近实际计算机的运行)。如图1—22所示,图灵机自身包含一个程序、一个读写头和一个状态。图灵机对划分为许多单元的磁带进行读写操作,其中每个单元包含一个符号。磁带可以在读写头下前后移动;读写头在磁带上可以读出或写入符号。由于磁带可无限长,因此图灵机可以描述无限状态计算。
本文来自是我太自作多情投稿,不代表电子书资源网立场,如若转载,请联系原作者获取。