图书介绍

电子与嵌入式系统设计译丛 DSP嵌入式实时系统权威指南pdf电子书版本下载

电子与嵌入式系统设计译丛  DSP嵌入式实时系统权威指南
  • (美)罗伯特·奥沙纳(Robert Oshana)著;王建群译 著
  • 出版社: 北京:机械工业出版社
  • ISBN:9787111576419
  • 出版时间:2017
  • 标注页数:429页
  • 文件大小:56MB
  • 文件页数:458页
  • 主题词:数字信号处理

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
下载压缩包 [复制下载地址] 温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页

下载说明

电子与嵌入式系统设计译丛 DSP嵌入式实时系统权威指南PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 数字信号处理简介 1

1.1 何谓数字信号处理 1

1.2 DSP的优势 2

1.3 DSP系统 2

1.3.1 模数转换 3

1.3.2 奈奎斯特准则 4

1.3.3 数模转换 6

1.4 DSP的应用 6

1.5 低功耗DSP应用 8

1.6 总结 9

第2章 实时系统与嵌入式系统概述 11

2.1 实时系统 11

2.1.1 软实时和硬实时系统 11

2.1.2 实时系统和分时系统的区别 11

2.1.3 DSP系统是硬实时系统 12

2.1.4 实时事件特征 13

2.2 高效运行和运行环境 14

2.3 实时系统设计的挑战 14

2.3.1 响应时间 15

2.3.2 从故障中恢复 15

2.4 分布式和多处理器构架 16

2.4.1 系统初始化 16

2.4.2 处理器接口 16

2.4.3 负载分配 16

2.4.4 集中的资源分配和管理 16

2.5 嵌入式系统 17

2.6 总结 18

第3章 嵌入式DSP系统开发生命周期概述 20

3.1 嵌入式系统 20

3.2 嵌入式DSP系统的生命周期 20

3.2.1 步骤1:研究系统的整体需求 20

3.2.2 步骤2:选择系统所需的硬件组件 21

3.2.3 硬件门电路 22

3.2.4 软件可编程 22

3.2.5 通用处理器 22

3.2.6 微控制器 23

3.3 FPGA解决方案 23

3.4 一个通用的信号处理解决方案 27

3.5 DSP加速决策 28

3.6 DSP处理的模型 32

3.6.1 输入/输出选择 33

3.6.2 计算DSP性能 34

3.6.3 DSP软件 36

3.7 代码的调整和优化 37

3.8 典型的DSP开发流程 38

3.9 总结 43

第4章 可编程DSP体系结构 44

4.1 可编程DSP体系结构的共性 44

4.2 内存体系结构 48

4.2.1 内存访问宽度 49

4.2.2 对齐问题 49

4.3 数据操作 49

第5章 FPGA在无线通信中的应用 51

5.1 概述 51

5.1.1 空间复用的MIMO系统 52

5.1.2 Flex-Sphere检测器 53

5.1.3 改良实数分解排序 55

5.1.4 软件无线电手机可配置检测器的FPGA设计 56

5.1.5 改良实值分解 58

5.1.6 MT=3的Xilinx FPGA实现结果 58

5.1.7 MT=4的Xilinx.FPGA实现结果 59

5.1.8 仿真结果 59

5.2 针对WiMAX的波束成形 61

5.2.1 在宽带系统中的波束成形 61

5.2.2 波束成形系统的计算要求和性能 63

5.2.3 使用WARPLab的波束成形实验 65

5.2.4 实验设置及结果 67

5.3 总结 69

参考文献 69

第6章 DSP软硬件协同 72

6.1 概述 72

6.2 嵌入式设计中的FPGA 72

6.3 ASIC与FPGA 74

6.4 软件可编程数字信号处理 75

6.5 通用型嵌入式内核 76

6.6 总结 76

6.6.1 架构 76

6.6.2 以应用为导向的设计 77

参考文献 77

第7章 DSP算法概述 78

7.1 DSP应用 78

7.2 信号与系统 78

7.2.1 DSP系统 79

7.2.2 混叠 79

7.3 基本的DSP系统 80

7.4 频率分析 81

7.4.1 卷积 81

7.4.2 相关性 82

7.4.3 FIR滤波器设计 82

7.4.4 加窗 83

7.5 算法实现:DSP架构 85

7.5.1 数字格式 86

7.5.2 溢出和饱和 86

7.6 FIR滤波器的实现 86

7.6.1 利用片上RAM 88

7.6.2 特别的乘积累加指令 88

7.6.3 块滤波 88

7.6.4 分离的程序和数据总线 88

7.6.5 零开销循环 89

7.6.6 循环缓冲器 89

7.7 系统问题 90

7.8 总结 90

第8章 复杂DSP应用的高层次设计工具 91

8.1 高层次综合设计方法 91

8.2 高层次设计工具 92

8.3 Catapult C 92

8.3.1 PICO 94

8.3.2 System Generator 95

8.4 案例分析 96

8.5 使用PICO的LDPC译码器设计案例 96

8.6 使用Catapult C的矩阵乘法器设计案例 99

8.7 使用System Generator的QR分解设计实例 101

8.8 总结 104

参考文献 104

第9章 DSP软件优化:DSP系统的基准测试和性能分析 107

9.1 概述 107

9.2 编写测试框架 107

9.3 隔离DSP内核函数 110

9.3.1 提防激进的编译工具 110

9.3.2 灵活放置代码 111

9.4 真实系统行为的建模 111

9.4.1 缓存带来的影响 111

9.4.2 内存延迟带来的影响 112

9.5 系统方面的影响 112

9.6 多核/多设备环境下的执行情况 112

9.7 分析测试方法带来的额外开销 113

9.7.1 排除无关事项 114

9.7.2 中断 114

9.7.3 基准测试中运行的库函数 114

9.7.4 使用仿真工具测试 114

9.7.5 基于硬件模块的测试 115

9.7.6 性能分析结果 116

9.7.7 如何解读获取的测试结果 116

第10章 DSP软件优化:高级语言和编程模型 117

10.1 汇编语言 117

10.2 带内联函数和编译指示的C编程语言 118

10.2.1 C语言编写的FIR滤波器 119

10.2.2 内联函数 119

10.2.3 编译指令 121

10.3 嵌入式C语言 122

10.4 C++语言在嵌入式系统中的应用 122

10.5 自动矢量化编译技术 123

10.5.1 MATLAB、Labview和类FFT-W的生成器套件 124

10.5.2 MATLAB和本地编译的代码 124

10.5.3 本地代码到MATLAB和硅片上的仿真 125

第11章 优化DSP软件:代码优化 126

11.1 优化过程 126

11.2 使用开发工具 126

11.2.1 编译器优化 126

11.2.2 编译器基本配置 127

11.2.3 启用优化 127

11.2.4 其他的优化配置 128

11.2.5 使用分析器 128

11.2.6 分析生成的汇编代码 129

11.3 背景知识:理解DSP架构 129

11.4 基本C语言优化技巧 130

11.5 用内联函数发挥DSP特性 131

11.6 指针和内存访问 135

11.6.1 确保对齐方式 135

11.6.2 restrict和指针别名 136

11.7 循环 137

11.8 硬件循环 138

11.9 其他的提示和技巧 139

11.9.1 内存争用 139

11.9.2 使用未对齐访问 139

11.9.3 访问缓存 139

11.9.4 嵌入小函数 139

11.9.5 使用供应商DSP库 139

11.10 一般的循环转换 139

11.11 循环展开 140

11.11.1 背景知识 140

11.11.2 实现 140

11.12 多重采样 140

11.12.1 背景知识 140

11.12.2 实现过程 141

11.12.3 实现 141

11.13 部分求和 141

11.13.1 背景知识 141

11.13.2 实现过程 142

11.13.3 实现 142

11.14 软件流水化 143

11.14.1 背景知识 143

11.14.2 实现 143

11.15 优化技巧的应用示例:互相关 144

11.15.1 创建 144

11.15.2 原始实现方案 144

11.15.3 步骤1:用内联函数执行小数计算并指定循环计数 145

11.15.4 步骤2:指定数据对齐方式并修改成多重采样 146

11.15.5 步骤3:汇编语言优化 148

第12章 DSP优化:内存优化 151

12.1 概述 151

12.2 代码量优化 151

12.2.1 编译器标记和标记挖掘 151

12.2.2 针对ISA的代码量与性能权衡 152

12.2.3 针对代码量优化调整ABI 153

12.2.4 告诫购买者:编译器优化与代码量互不相关 160

12.3 内存布局优化 161

12.3.1 内存优化概述 161

12.3.2 集中优化工作 162

12.3.3 向量化和动态代码计算比例 162

12.3.4 数据结构、数据结构数组及其混合 164

12.3.5 针对内存性能的循环优化 166

12.3.6 数据对齐方式的连锁效应 166

12.3.7 选择合适的数据类型会获得丰厚回报 166

第13章 针对功耗的软件优化 168

13.1 概述 168

13.2 了解功耗 168

13.3 测量功耗 171

13.3.1 使用电表测量功率 171

13.3.2 使用霍尔传感器型IC测量功率 171

13.3.3 稳压器模块电源IC 172

13.4 分析应用程序的功耗 173

13.5 降低功耗 174

13.6 时钟和电压控制 177

13.7 优化数据流 182

13.7.1 优化内存访问以降低功耗 182

13.7.2 DDR概述 183

13.7.3 通过优化DDR数据流来降低功率 185

13.8 外设/通信的使用 193

13.8.1 数据的DMA和CPU的对比 195

13.8.2 算法优化 197

13.8.3 递归消除 200

13.9 总结 202

参考文献 203

第14章 DSP操作系统 204

14.1 概述 204

14.2 DSP操作系统基础 204

14.3 实时性 205

14.4 多核 208

14.5 内存管理 213

14.5.1 内存分配 213

14.5.2 虚拟内存和内存保护 213

14.6 网络 214

14.6.1 处理器间通信 214

14.6.2 网络互联 216

14.7 调度 217

14.7.1 参考模型 217

14.7.2 抢占式调度与非抢占式调度 218

14.7.3 阻塞作业与非阻塞作业 218

14.7.4 协作式调度 218

14.7.5 调度类型 219

14.7.6 调度时的多核考虑 219

14.7.7 离线调度及其可能的实现 219

14.7.8 在线调度(基于优先级的调度) 224

14.7.9 静态优先级调度 224

14.7.10 动态优先级调度 226

14.7.11 离线调度与在线调度的比较 227

14.7.12 优先级反转 227

14.8 DSP OS辅助工具 229

14.9 总结 231

参考文献 232

第15章 DSP软件开发管理 234

15.1 概述 234

15.2 开发DSP应用面对的挑战 234

15.3 DSP开发流程 235

15.3.1 概念和规范定义阶段 235

15.3.2 DSP算法标准和指导原则 236

15.3.3 高级系统设计和工程性能 237

15.3.4 软件开发 238

15.3.5 系统创建、集成和测试 238

15.3.6 工厂和现场测试 238

15.4 DSP系统的设计挑战 238

15.5 DSP高级设计工具 239

15.6 DSP工具箱 239

15.7 DSP的主机开发工具 240

15.8 通用数据流实例 242

15.9 代码调整及优化 246

15.9.1 典型DSP开发流程 246

15.9.2 新手入门 248

15.10 总结 248

第16章 DSP多核软件开发 251

16.1 概述 251

16.2 多核编程模型 252

16.2.1 多个单核系统 252

16.2.2 真正的多核系统 254

16.3 移植向导 255

16.3.1 设计上的考虑 255

16.3.2 MJPEG案例分析 256

16.3.3 实现细节 259

16.4 总结 262

第17章 DSP应用程序的开发与调试 263

17.1 集成开发环境概述 263

17.2 新建项目 263

17.3 多核DSP环境下进行编译与链接 267

17.3.1 DSP SDOS操作系统 267

17.3.2 应用程序内存映射 268

17.3.3 应用程序的编译器配置 270

17.3.4 应用程序的链接器配置 274

17.4 在多核DSP上执行和调试应用程序 277

17.4.1 创建新连接 277

17.4.2 建立运行配置 279

17.4.3 调试器使用 280

17.5 使用软件和硬件专用资源跟踪与剖析多核应用程序 285

17.5.1 软件分析设置 286

17.5.2 跟踪 287

17.5.3 重要的代码 288

17.5.4 代码覆盖 289

17.5.5 性能 290

案例分析 294

案例分析1 LTE基带软件设计 294

案例分析2 DSP在医疗器械上的应用 346

案例分析3 VoIP DSP软件系统 365

案例分析4 嵌入式DSP应用系统软件性能 401

案例分析5 定义嵌入式系统的行为 412

案例分析6 DSP在软件无线电领域的应用 421

精品推荐