苏大电子信息学院DXP实验报告
实验一 DSP 程序的调试和分析方法
第一部分:DSP CPU 基础
一、实验目的
1.了解TMS320C5400系列汇编语言程序的基本格式,以及编译、连接的基本过程
2.熟悉Code Composer Studio的使用
3.了解C5400中标志位对计算的影响,以及计算对标志位的影响
二、实验设备
1.集成开发环境CCS 2.实验代码cpu_basic.s54、cpu_basic.cmd和cpu_basic.gel
三、实验内容
1.基本操作 运行CCS,选择C54xx Simulator 建立一个新的项目,并加入文件cpu_basic.s54和cpu_basic.cmd 载入cpu_basic.gel 在Project→Option中加入适当的编译和连接的选项 Build整个项目,产生可执行代码(.out) File→Load Program,装载可执行代码,并运行。
2. 基本调试 设置断点 单步执行。
3. 练习观察并理解程序和数据空间安排 测试SXM、OVM、C16、FRCT对计算结果的影响 测试计算和逻辑运算对TC、C、OVA、OVB的影响。
4. DSK仿真练习
a) 测试SMUL标志对计算的影响
b) 测试MP/MC、OVLY、DROM对计算结果的影响 MP/MC=0,切换DROM的数值,观测0xfc00地址存放的A、U律数据是否存在 MP/MC=0,OVLY=1, 观测0x1000地址存放程序是否存在(改变该处为只读)。
四、实验结果和提示
1. 与运算相关的标志位 SXM 当SXM置1时,数据读写按照符号扩展的方式,因此A=0xff ffff ff80 当SXM 置0时,数据读写为无符号扩展的方式,因此A=0x00 0000 ff80 OVM 当OVM置1时,数据运算的结果将按照32位饱和,因此A=0xff 8000 0000 当OVM 置0时,数据运算不饱和,因此B=0x00 fffe 0000
C16 双16位计算比较 FRCT 乘法移位比较
TC 比特测试比较 C 进位、借位和大小比较 OVA, OVB 溢出标志比较 SMUL(软件仿真器无法模拟该标志位,需用DSK开发板观察该位的影响) 乘法饱和
2. 与存储器配置相关的标志位 DROM ROM映射到数据空间 从View菜单的Graph中选择Time/Frequency即可生成一个时/频显示窗口,首先弹出 的是”Graph Property”对话框,将其中Start Address 改为0xfe00。正弦表的长度为0x0100 即256,Acquisition Buffer Size和Display Data size设为256,
(1) 若MC为0,DROM为1,page 设为data 或program,如图: