第1章 绪论 1
1.1 数字信号处理概述 2
1.2 可编程DSP芯片 3
1.2.1 DSP芯片的发展概况 3
1.2.2 DSP芯片的特点 4
1.2.3 DSP芯片的分类 7
1.2.4 DSP芯片的应用 8
1.2.5 DSP芯片的发展现状和趋势 8
1.3 DSP系统 12
1.3.1 DSP系统的构成 12
1.3.2 DSP系统的特点 12
1.3.3 DSP系统的设计过程 13
1.3.4 DSP芯片的选择 14
1.4 DSP产品简介 16
本章小结 17
思考题与习题 17
第2章 TMS320C54x的硬件结构 18
2.1 'C54x的基本结构 19
2.2 'C54x的主要特性和外部引脚 21
2.2.1 'C54x的主要特性 21
2.2.2 'C54x的引脚功能 22
2.3 'C54x的内部总线结构 27
2.4 'C54x的中央处理器 28
2.4.1 算术逻辑运算单元(ALU) 28
2.4.2 累加器A和B 30
2.4.3 桶形移位寄存器 31
2.4.4 乘法-累加单元(MAC) 32
2.4.5 比较、选择和存储单元(CSSU) 34
2.4.6 指数编码器(EXP) 34
2.4.7 CPU状态和控制寄存器 35
2.5 'C54x的存储空间结构 39
2.5.1 存储空间结构 39
2.5.2 程序存储空间 40
2.5.3 数据存储空间 42
2.5.4 I/O空间 44
2.6 'C54x的片内外设电路 44
2.7 'C54x的系统控制 47
2.7.1 程序地址的产生 47
2.7.2 流水线操作 48
2.7.3 系统的复位 59
2.7.4 中断操作 60
2.7.5 省电和保持方式 61
2.8 'C54x的外部总线 63
2.8.1 外部总线接口 63
2.8.2 外部总线等待状态控制 64
2.8.3 外部总线接口时序 68
本章小结 71
思考题与习题 71
第3章 TMS320C54x的指令系统 73
3.1 寻址方式 74
3.1.1 立即寻址 74
3.1.2 绝对寻址 75
3.1.3 累加器寻址 75
3.1.4 直接寻址 76
3.1.5 间接寻址 77
3.1.6 存储器映像寄存器寻址 81
3.1.7 堆栈寻址 81
3.2 TMS320C54x指令的表示方法 81
3.2.1 指令系统中的符号 82
3.2.2 指令系统中的运算符 84
3.3 TMS320C54x的指令系统 84
3.3.1 数据传送指令 84
3.3.2 算术运算指令 86
3.3.3 逻辑运算指令 90
3.3.4 程序控制指令 91
3.3.5 并行操作指令 92
3.3.6 重复操作指令 94
本章小结 95
思考题与习题 95
第4章 汇编语言程序的开发工具 97
4.1 TMS320C54x软件开发过程 98
4.2 汇编语言程序的编辑、汇编和链接过程 100
4.3 COFF的一般概念 101
4.3.1 COFF文件的基本单元 102
4.3.2 汇编器对段的处理 103
4.3.3 链接器对段的处理 106
4.3.4 链接器对程序的重新定位 108
4.3.5 程序装入 109
4.3.6 COFF文件中的符号 109
4.4 源程序的汇编 110
4.4.1 汇编程序的运行 110
4.4.2 汇编时的列表文件 111
4.4.3 汇编伪指令 113
4.4.4 宏定义和宏调用 122
4.5 链接器的使用 124
4.5.1 链接器的运行 125
4.5.2 链接器命令文件的编写与使用 126
4.5.3 目标库 127
4.5.4 MEMORY命令 128
4.5.5 SECTIONS命令 130
4.5.6 多个文件的链接实例 132
本章小结 135
思考题和习题 136
第5章 TMS320C54x的汇编语言程序设计 137
5.1 概述 138
5.1.1 汇编语言源程序格式 138
5.1.2 汇编语言中的常数与字符串 140
5.1.3 汇编源程序中的符号 142
5.1.4 汇编源程序中的表达式 145
5.2 堆栈的使用方法 147
5.3 控制程序 148
5.3.1 分支操作程序 149
5.3.2 循环操作程序 152
5.4 算术运算程序 152
5.4.1 加减法运算和乘法运算 152
5.4.2 除法运算 153
5.4.3 长字运算和并行运算 154
5.5 重复操作程序 157
5.5.1 单指令重复操作 158
5.5.2 块程序重复操作 158
5.5.3 循环嵌套 159
5.6 数据块传送程序 160
5.7 小数运算程序 162
5.8 浮点运算程序 164
本章小结 167
思考题与习题 167
第6章 应用程序设计 169
6.1 FIR滤波器的DSP实现 170
6.1.1 FIR滤波器的基本结构 170
6.1.2 FIR滤波器的设计方法 171
6.1.3 FIR滤波器的MATLAB设计 173
6.1.4 FIR滤波器的DSP实现 176
6.1.5 FIR滤波器的设计实例 184
6.2 IIR滤波器的DSP实现 187
6.2.1 IIR滤波器的基本结构 187
6.2.2 IIR滤波器的设计 190
6.2.3 IIR滤波器的MATLAB设计 192
6.2.4 IIR滤波器的DSP实现 197
6.3 快速傅里叶变换(FFT)的DSP实现 203
6.3.1 FFT算法的简介 203
6.3.2 FFT算法的DSP实现 206
6.4 正弦波信号发生器 217
6.4.1 产生正弦波的算法 217
6.4.2 正弦波的实现 218
本章小结 223
思考题与习题 224
第7章 TMS320C54x片内外设、接口及应用 225
7.1 'C54x的主机接口 226
7.2 'C54x的定时器 230
7.2.1 定时器结构 230
7.2.2 'C54x定时器/计数器的应用 232
7.3 'C54x的串行口 240
7.3.1 标准同步串行口 241
7.3.2 缓冲同步串行口 245
7.3.3 TDM时分复用串行口 250
7.3.4 McBSP多通道带缓冲串行口 251
7.3.5 'C54x串行口的应用 265
7.4 'C54x的中断系统 268
7.4.1 中断寄存器 268
7.4.2 中断控制 269
7.4.3 中断系统的应用 273
本章小结 277
思考题与习题 277
第8章 TMS320C54x的硬件设计 278
8.1 硬件设计概述 279
8.2 DSP系统的基本设计 280
8.2.1 电源电路的设计 281
8.2.2 复位电路的设计 283
8.2.3 时钟电路的设计 285
8.3 DSP的电平转换电路设计 289
8.4 DSP存储器和I/O的扩展 292
8.4.1 程序存储器的扩展 292
8.4.2 数据存储器的扩展 293
8.4.3 I/O的扩展应用 295
8.4.4 综合扩展应用 300
8.5 DSP与A/D和D/A转换器的接口 300
8.5.1 'C54x与A/D转换器的接口 301
8.5.2 'C54x与D/A转换器的接口 311
8.6 DSP系统的硬件设计实例 316
8.6.1 基于G.729A标准的DSP实时系统的设计 316
8.6.2 语音基带处理模块的设计 321
本章小结 330
思考题与习题 331
第9章 DSP集成开发环境CCS 334
9.1 CCS的简介 335
9.1.1 CCS的组成 335
9.1.2 CCS的主要功能 336
9.2 CCS的安装及设置 337
9.2.1 系统配置要求 337
9.2.2 安装CCS软件 337
9.2.3 CCS系统配置 337
9.2.4 CCS文件名介绍 339
9.3 CCS的基本操作 339
9.3.1 CCS的窗口和工具条 340
9.3.2 文件的编辑 344
9.3.3 反汇编窗口的使用 347
9.3.4 存储器窗口的使用 349
9.3.5 寄存器窗口的使用 352
9.3.6 观察窗口的使用 353
9.4 CCS工程项目的创建 356
9.4.1 工程项目的管理 356
9.4.2 工程项目的建立、打开和关闭 358
9.4.3 工程项目的构建 358
9.5 CCS工程项目的调试 361
9.5.1 程序的运行控制 361
9.5.2 断点 365
9.5.3 探测点 367
9.5.4 图形工具的使用 369
9.5.5 数据输入与输出 373
9.5.6 评价点 375
9.6 CCS开发软件使用举例 378
9.6.1 CCS开发流程 378
9.6.2 CCS使用举例 378
本章小结 383
思考题与习题 384
附录A TMS320C54x芯片引脚图 385
附录B TMS320C54x系列DSP芯片汇总表 395
附录C TMS320C54x助记符汇编指令集 397
参考文献 407