TMS320C5000系列DSP的原理介绍和应用说明
目录
第一章 TMS320C54XX结构原理2
1.1 TMS320C54XX的内部结构框图及主要特性2
1.2总线结构6
1.3 中央处理单元(CPU)7
1.3.1 算术逻辑运算单元(ALU)7
1.3.2 累加器A和B10
1.3.3 桶形移位器(Barrel Shift)13
1.3.4 乘法器/加法器单元15
1.3.5 比较、选择和存储单元(CSSU)18
1.3.6 指数编码器20
1.3.7 CPU状态和控制寄存器21
1.4 存储器23
1.4.1 @C54X片内存储器配置23
1.4.2 程序存储器23
1.4.3 数据存储器27
1.4.4 I/O存储器29
第二章 数据寻址方式30
2.1 引言30
2.2 立即寻址31
2.3 绝对寻址32
2.4 累加器寻址:33
2.5 直接寻址33
2.6 间接寻址35
2.7 存储器映像寄存器(MMR)寻址41
2.8 堆栈寻址42
第三章 程序存储器寻址44
3.1 程序存储器地址生成44
3.2 程序计数器(PC)44
3.3基本程序控制45
3.3.1 分支转移45
3.3.2 调用与返回46
3.3.3 条件操作47
3.3.4 单周期条件执行指令(XC)的应用48
3.3.5 循环操作、重复操作及循环的嵌套49
3.4 复位操作53
3.5 中断53
3.5.1 中断概述53
3.5.2 中断类型55
3.5.3 中断标志寄存器(IFR)和中断屏蔽寄存器(IMR)56
3.5.4 中断处理过程57
3.5.5 重新按排中断向量地址61
3.6 省电模式62
第四章 @C54X流水操作65
4.1 @C54X流水线操作概念65
4.2延时分支转移在流水线上的操作68
4.3流水线冲突70
第5章 @C54X的开发环境和工具77
5.1 @C54X的软件开发过程77
5.2 汇编源文件格式和COFF文件的一般概念79
5.2.1 汇编源文件格式80
5.2.2 常用汇编伪指令(Assembler Directive)80
5.2.3 COFF (Common Object File Format,公用目标文件格式)文件的一般概念83
5.3 汇编器84
5.3.1 汇编器输入源程序的汇编语言要素84
5.3.2 汇编器功能84
5.3.3 运行汇编器85
5.3.4 汇编器对段的处理及列表文件格式85
5.3.5 宏定义和宏调用88
5.4 链接器90
5.4.1 链接器功能90
5.4.2 链接器对段的处理90
5.4.3 链接命令及选项92
5.4.4 链接命令文件的编写93
5.5 TMS320C54X的C编译器和C/汇编混合编程97
5.5.1 @C5000 C编译器概述98
5.5.2 @C54x C编译器内的存储器模式100
5.5.3 C语言编程规则102
5.5.4 @C54xC语言和汇编语言混合编程106
5.5.5 C编程优化DSP Lib函数库简介112
5.6 CCS集成开发环境114
5.6.1概述114
5.6.2系统配置程序“Setup CCS 2(`C5000)”114
5.6.3 CCS窗口、主菜单和工具条使用简介115
5.6.4 开发一个简单的程序118
5.6.5 探针(Probe Point)与图形显示(Graph)功能122
5.6.6 结束语124
第六章 TMS320C54X在DSP中的应用125
6.1. 扩展精度的32位乘法和16位除法运算125
6.1.1. 扩展精度的32位乘法125
6.1.2. 16位除法运算126
6.2. FIR滤波器的‘C54X实现128
6.2.1. FIR滤波器结构及其DSPs实现129
6.2.2. 线性缓冲FIR滤波的‘C54x实现130
6.2.3. 循环缓冲FIR滤波的‘C54x实现133
6.2.4. 线性相位FIR滤波器的“C54x实现136
6.3.IIR滤波器的‘C54X实现139
6.3.1. IIR滤波器结构及其DSPs实现140
6.3.2. 线性缓冲IIR滤波的‘C54x实现141
6.3.3.循环缓冲IIR滤波的‘C54x实现143
6.3.4 IIR滤波器DSPs实现中的几点注意145
6.4. 实序列X(N)FFT高效算法的‘C54X实现146
6.4.1. 实序列x(n)FFT高效算法原理146
6.4.2. 实序列x(n)FFT的‘C54x实现150
6.4.3. FFT在DSPs中实现的其他考虑160
6.4.自适应滤波器的‘C54X实现161
6.4.1. 利用LMS(Least Mean Square)算法的自适应FIR滤波器原理162
6.4.2.适用于自适应FIR滤波器的LMS指令163
6.4.2一个回波噪声消除例子164