《DSP集成开发与应用实例》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:张雄伟等编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2002
  • ISBN:7505377035
  • 页数:359 页
图书介绍:可编程DSP芯片的开发与应用是当前通信与电子领域的热点问题。本书在简要介绍DSP芯片的基本概念及DSP应用系统的基础上,分三部分介绍DSP芯片的开发与应用方法。首先介绍了基于C语言的DSP定点运算实例,为开发定点DSP程序奠定了原理基础;其次介绍了美国得州仪器公司推出的先进的DSP集成开发环境CCS(Code Composer Studio),为开发DSP程序奠定了工具基础;最后以TMS320C5000系列DSP芯片为例介绍了DSP芯片的软、硬件实例和系统实例,为开发DSP系统奠定了实用基础。本书是《DSP芯片的原理与开发应用》及其第2版的姊妹篇,旨在使读者掌握先进的DSP开发工具,提高DSP芯片的开发与应用能力。本书可供通信和电子等领域从事DSP系统设计的广大科技人员和高等学校的教师阅读参考,也可作为相关专业研究生、高年级本科生和DSP芯片应用培训人员的参考教材。

第1章 DSP概述 1

1.1 引言 1

1.2 DSP芯片的基本概念 2

1.3 DSP应用系统的构成 3

1.4 DSP应用系统的设计过程 3

1.5 DSP应用系统的开发工具 4

1.6 TI 系列DSP芯片简介 5

1.6.1 TI系列DSP芯片概貌 5

1.6.2 TMS320C2000系列简介 5

1.6.3 TMS320C5000系列简介 7

1.6.4 TMS320C6000系列简介 11

1.6.5 TI 其他DSP芯片简介 15

1.7 小结 16

第2章 基于C语言的DSP定点运算实例 17

2.1 DSP定点运算的基本原理 17

2.1.1 定点的基本概念 17

2.1.2 溢出及处理方法 17

2.1.3 舍入及截尾 18

2.2 定义及基本运算 19

2.2.1 定义 19

2.2.2 基本运算 19

2.3 加法运算的C定点实现实例 21

2.4 减法运算的C定点实现实例 24

2.5 乘法运算的C定点实现实例 26

2.6 乘累加/乘累减运算的C定点实现实例 27

2.7 除法运算的C定点实现实例 29

2.8 移位运算的C定点实现实例 31

2.9 归一化运算的C定点实现实例 36

2.10 非线性运算的C定点实现实例 38

2.10.1 幂运算的C语言定点程序 38

2.10.2 对数运算的C语言定点程序 39

2.10.3 开平方运算的C语言定点程序 40

2.11 小结 41

第3章 CCS的基本特征及安装设置 42

3.1 引言 42

3.2 CCS软件安装与设置 43

3.2.1 CCS软件安装 43

3.2.2 CCS文件组织与环境变量 43

3.2.3 CCS软件设置 44

3.2.4 CCS软件设置错误排查 46

3.3 CCS组件及其特征 47

3.3.1 代码产生工具 48

3.3.2 CCS集成开发环境 49

3.3.3 DSP/BIOS插件 50

3.3.4 硬件仿真和实时数据交换 53

第4章 CCS集成环境与Simulator使用 56

4.1 引言 56

4.2 菜单与工具栏 57

4.2.1 菜单 57

4.2.2 工具栏 65

4.3 实例1:设计一个简单程序 67

4.3.1 创建一个新工程 67

4.3.2 将文件添加到工程中 67

4.3.3 查看代码 68

4.3.4 生成和运行程序 70

4.3.5 更改Build选项并更正语法错误 70

4.3.6 使用断点和Watch窗口 71

4.3.7 使用Watch窗口观察结构体 72

4.3.8 观察代码执行统计 72

4.3.9 练习 74

4.4 实例2:从文件中读取数据并测试算法 74

4.4.1 打开并检查一个工程 74

4.4.2 查看代码 75

4.4.3 添加Probe Point从PC文件中读取数据 76

4.4.4 显示图形 78

4.4.5 程序和图形的动画显示 79

4.4.6 调节增益 80

4.4.7 查看可视范围之外的变量 80

4.4.8 使用GEL文件 81

4.4.9 调整和剖切ProcessingLoad 82

4.4.10 练习 82

第5章 DSP/BIOS原理及应用 84

5.1 引言 84

5.2 DSP/BIOS组件 85

5.2.1 DSP/BIOS实时库与API函数 85

5.2.2 DSP/BIOS配置工具 85

5.2.3 DSP/BIOS插件 86

5.3 命名规则 86

5.3.1 头文件名 86

5.3.2 对象名 87

5.3.3 操作名 87

5.3.4 数据类型名 88

5.3.5 存储器段名 88

5.4 程序生成 89

5.4.1 配置工具的使用 89

5.4.2 创建DSP/BIOS程序时使用的文件 91

5.4.3 编译和链接DSP/BIOS应用程序 92

5.5 实例1:一个简单的DSP/BIOS程序 93

5.5.1 创建一个配置文件 93

5.5.2 将DSP/BIOS文件添加到工程中 94

5.5.3 用CCS测试 95

5.5.4 分析DSP/BIOS代码执行时间 96

5.5.5 练习 97

5.6 DSP/BIOS仪表 98

5.6.1 软件仪表与硬件仪表的比较 98

5.6.2 仪表性能 98

5.6.3 仪表API 99

5.6.4 显式仪表与隐式仪表 99

5.7 线程调度 100

5.8 实例2:调试DSP/BIOS程序 101

5.8.1 打开并检查一个工程 101

5.8.2 查看源代码 102

5.8.3 修改配置文件 103

5.8.5 更改和观察Load 107

5.8.6 分析线程统计 109

5.8.7 添加显式STS仪表 110

5.8.8 观察显式仪表 110

5.8.9 练习 112

第6章 RTDX的原理及应用 113

6.1 引言 113

6.2 可配置参数 115

6.2.1 目标缓冲区大小 115

6.2.2 主机缓冲区大小 116

6.2.3 RTDX主机录制模式 116

6.2.4 RTDX目标中断屏蔽 117

6.3 用户接口与OLE接口 117

6.3.1 用户接口 117

6.3.2 OLE接口 118

6.4 实时通信程序的设计 120

6.4.1 编写目标DSP应用程序 120

6.4.2 编写OLE自动化客户程序 122

6.4.3 在CCS中使能RTDX 125

6.4.4 运行OLE自动化客户程序 126

6.5 实例:分析程序的实时特性 126

6.5.1 打开并检查工程 126

6.5.2 修改配置文件 127

6.5.3 查看源代码的改动 128

6.5.4 在运行时使用RTDX更改Load值 129

6.5.5 更改软件中断优先级 132

6.5.6 练习 133

第7章 GEL语言与Visual Linker的使用 135

7.1 引言 135

7.2 GEL语言及其使用 135

7.2.1 GEL函数定义 136

7.2.2 GEL函数参数 136

7.2.3 调用GEL函数 137

7.2.4 加载/卸载GEL函数 139

7.2.5 将GEL函数添加到GEL菜单中 139

7.2.6 在CCS启动时自动执行GEL函数 142

7.2.7 GEL函数求值 143

7.2.8 输出窗口 144

7.2.9 嵌入GEL函数 144

7.3 Visual Linker的使用 151

7.3.1 Visual Linker开发流程 151

7.3.2 Visual Linker图形界面 152

7.3.3 使用实例 154

第8章 TMS320C5000硬件应用实例 158

8.1 HPI接口原理与应用实例 158

8.1.1 概述 158

8.1.2 HPI-8接口方式 158

8.1.3 HPI-16接口方式 162

8.1.4 利用HPI-8实现C54x与PC的并行接口 169

8.2 多通道缓冲串行口(McBSP) 177

8.2.1 概述 177

8.2.2 信号接口和控制寄存器 177

8.2.3 数据收发 184

8.2.4 串行口的初始化 184

8.2.5 应用实例 185

8.3 小结 200

第9章 TMS320C5000软件应用实例 201

9.1 TMS320C5000软件编程的几种方法 201

9.1.1 用C语言编写DSP程序实例 201

9.1.2 用汇编语言编写DSP程序实例 205

9.1.3 用代数语言编写DSP程序实例 210

9.1.4 用C语言和汇编语言混合编程 217

9.2 堆栈机制 223

9.2.1 堆栈 223

9.2.2 动态存储器分配 223

9.2.3 静态和全局变量的存储器分配 224

9.2.4 域/结构的对准 224

9.2.5 函数调用规则 224

9.3 汇编程序优化的实现方法与实例 226

9.3.1 循环优化 226

9.3.2 圆周循环寻址和并行指令 229

9.3.3 实现乘累加优化的实例 232

9.4 扩展寻址的软件实现 235

9.4.1 关于扩展寻址 235

9.4.2 建立扩展存储区系统 236

9.5 使用扩展寻址实现中断的实例 240

9.5.1 确定系统需求 240

9.5.2 默认设置 240

9.5.3 扩展程序区中断操作 242

9.6 小结 244

第10章 TMS320C5000应用实例 245

10.1 基于TMS320C54x通用I/O实现UART 245

10.1.1 UART介绍 245

10.1.2 数据格式 245

10.1.3 校验 246

10.1.4 UART实现的硬件 246

10.1.5 软件建立 246

10.1.7 发送函数 248

10.1.8 全双工操作 248

10.1.9 校验算法 251

10.1.10 比特率计算 251

10.1.11 函数小结 251

10.1.12 性能评估 252

10.1.13 UART程序代码 253

10.2 基于TMS320C54x实现DTMF信号的产生和检测 263

10.2.1 DTMF介绍 263

10.2.2 DTMF产生 264

10.2.3 DTMF产生的程序流程 265

10.2.4 DTMF检测 266

10.2.5 DTMF检测的程序流程 269

10.2.6 速度和存储需求 269

10.2.7 DTMF产生与检测软件 271

10.3 基于TMS320C54x实现FFT运算 294

10.3.1 引言 294

10.3.2 FFT的基本原理 294

10.3.3 FFT算法的C语言实现 299

10.3.4 FFT的TMS320C54x实现 302

10.4 TMS320C54x 扩展精度IIR滤波器的设计与实现 310

10.4.1 扩展精度乘法 310

10.4.2 C54x 用于扩展精度计算的指令集 311

10.4.3 IIR滤波器 311

10.4.4 用C54x 实现扩展精度乘运算 313

10.4.5 用C54x实现扩展精度IIR滤波器 314

10.5 FIR滤波器的DSP实现 324

10.6 TMS320C54x实现回波抵消应用实例 329

10.6.1 回波的产生 329

10.6.2 回波抵消的基本原理和算法 330

10.6.3 回波抵消的C54x实现 331

10.6.4 程序代码及说明 335

10.7 基于TMS320C54x实现线性预测(LPC) 342

10.7.1 LPC模型 342

10.7.2 线性预测分析 343

10.7.3 Levinson-Durbin 算法 344

10.7.4 自相关系数的C54x程序设计 344

10.7.5 Levinson-Durbin 算法的C54x程序设计 347

10.8 小结 357

参考文献 358