DSP实验报告.docx
《DSP实验报告.docx》由会员分享,可在线阅读,更多相关《DSP实验报告.docx(18页珍藏版)》请在冰豆网上搜索。
DSP实验报告
DSP实验报告
实验一基础实验
一、实验目的
1、熟悉CCS开发环境搭建及其配置;
2、对基本的汇编命令进行学习验证;
二、实验内容
三、实验内容
四、实验过程
对老师所给示例程序按步进行,观察对应值的变化:
程序:
RSBXCPL
NOP
NOP
LD#1234h,A;立即数寻址
ST#5678h,*(DDAT1)
程序:
LD#PDAT1,A;累加器寻址
READADAT2
程序:
ST#3210h,DAT3;直接寻址(DP指针)
程序:
SSBXCPL
NOP
NOP
NOP
ST#9876h,DAT3;直接寻址(SP指针)MM
程序:
STM#DDAT3,AR0;间接寻址
ST#9876h,*AR0
五、实验总结
通过本次实验,学生基本了解了CCS开发环境搭建及其配置,也对基本的汇编命令进行学习验证,感谢老师的辛勤指导,让同学们有了一次愉快充实的实验课。
实验二汇编的数据访问
一、实验目的
1.了解DSP结构;
2.熟悉CCS开发环境;
3.熟悉TDB-C54XplusDSP试验箱的硬件环境;
4.掌握C54Xplus存储区数据访问方法。
二、实验内容
1.C54Xplus汇编初始化程序;
2.C54Xplus存储区数据访问的源程序。
三、实验要求
在程序去预留2个数据块,每块大小为128字;在数据去预留4个数据块,每块大小为128字,分别将数据区的数据移动到程序区,将程序区的数据移动到数据区,将数据区的数据移动到数据区,运行程序,通过CCS-View-CPURegisters,观察各寄存器的值;通过CCS-View-Memory,观察片内程序和数据区的值,上述各值应与源程序的结果一样。
四、实验环境
计算机、DSP仿真器、TDB-C54XplusDSP实验箱、CCS软件。
五、实验步骤
1.将DSP仿真器与计算机并口连接;
2.将DSP仿真器JTAG头插入DSP实验箱JTAG接口上;
3.打开计算机电源,当计算机启动完毕后,打开仿真器和TDB-C54XplusDSP实验箱电源,实验箱上3.3V、1.8V电源指示灯均亮,若不亮,请立即关闭电源检查连线和电源电压;
4.双击桌面CCS,进入CCS操作环境;
5.按实验一的步骤创建一个工程和源文件,并调试。
6.在Projet-BuildOptions中设置添加文件路径。
六、实验结果
1LD#40H,DP;问题1:
数据指针指向的地址是?
?
?
?
答:
40H
2SSBXINTM;禁止中断
STM#07FFFH,SWWSR;置外部等待时间;问题2:
外部数据存储区延迟几个周期?
答:
因为SWWSR中所有段设置值均为“1”,所以设置的延迟周期为7个
3_main:
CALLINIT_DATA;初始化程序区为0,数据区为0-127;问题3:
CALL指令执行需要几个周期?
答:
执行周期为4个
4STM#127,BRC
RPTB_INIT_DATA1-1;问题4:
RPTB指令如何执行?
RPTB块重复操作
STLA,*AR2+
ADD#1,0,A
NOP
NOP
_INIT_DATA1:
················
答:
设置块重复的范围,从此句的下一句开始至_INIT_DATA1前1句的程序块循环执行128次
5RPT#127;Move128value.
MVDD*AR2+,*AR3+;问题5:
MVDD指令执行需要几个周期,循环后指令输出周期变为多少?
答:
MVDD指令执行需要1个机器周期,循环后输出128个周期。
MVDD数据存储器内部传送数据
6RPT#127;Move128toprogrammemoryspace.
MVDP*AR1+,#PADD+80H;问题6:
MVDP指令是如何执行的?
答:
从2080H开始的128个单元,将数据存储器中数据传给程序存储器1F80H后的单元中。
7RPT#127;Move128wordsfromexternal
READA*AR1+;programtointernaldatamemory.;
问题7:
READA指令是如何执行的?
答:
按累加器A直接寻址1F00H后128单元中数据,并将其传给数据存储器AR1(2080H)后128单元中
8RPT#127;Move128wordsfromexternal
将128存储在BK寄存器中
实验截图:
七、实验总结
非常愉快地完成了这次实验,通过这次实验学生进一步了解了DSP结,对CCS开发环境也更加熟悉了,对C54Xplus存储区数据访问方法的有了一定掌握,也接触到了循环与分支结构的应用方法,感谢老师的辛勤指导。
实验三汇编的算术逻辑运算
1.实验目的
1.了解DSP结构;
2.熟悉CCS开发环境;
3.熟悉TDB-C54XplusDSP试验箱的硬件环境;
4.熟悉汇编语言的逻辑和算术运算。
2.实验内容
1.C54Xplus汇编初始化程序;
2.C54Xplus汇编语言的逻辑和算术运算源程序。
3.实验要求
在程序去预留2个数据块,每块大小为1024字,分别为源数据和目的数据块,将源数据块初始化为表1所示,在初始化程序中需用到循环和跳转指令,然后将源数据块复制到目的数据块,需用跳转指令;运行程序,通过CCS-View-CPURegisters,观察各寄存器的值,通过CCS-View-Memory,观察片内各数据地址的值,上述各值应与源程序计算结果一致。
4.实验环境
计算机、DSP仿真器、TDB-C54XplusDSP实验箱、CCS软件。
5.实验步骤
1.将DSP仿真器与计算机并口连接;
2.将DSP仿真器JTAG头插入DSP实验箱JTAG接口上;
3.打开计算机电源,当计算机启动完毕后,打开仿真器和TDB-C54XplusDSP实验箱电源,实验箱上3.3V、1.8V电源指示灯均亮,若不亮,请立即关闭电源检查连线和电源电压;
4.双击桌面CCS,进入CCS操作环境;
5.按实验一的步骤创建一个工程和源文件,并调试。
6.在Projet-BuildOptions中设置添加文件路径。
6.实验结果
i.SSBXINTM;禁止中断
问题1:
该语句禁止了那种类型的中断?
答:
SSBX将INTM位置1,禁止所有可屏蔽中断。
ii.RSBXCPL;
问题2:
该语句的功能是什么
答:
对ST1状态寄存器中的直接寻址编辑方式位进行复位为0,选用数据页指针DP的直接寻址方式。
iii.SSBXINTM;
问题3:
该语句的功能是什么?
答:
对ST1状态寄存器中中断屏蔽位进行置位成“1”,关闭所有屏蔽中断。
iv.ST#0055h,DATA0;
问题4:
采用了什么寻址方式?
答:
直接寻址
v.逻辑运算
AND#00ffh,A;逻辑与操作,实现A(and)#00ffh
OR#00ffh,A;逻辑或操作,实现A(or)#00ffh
XOR#00ffh,A;逻辑异或操作,实现A(xor)#00ffh
7.实验总结
非常愉快地完成了这次实验,通过这次实验学生进一步了解了DSP结,对CCS开发环境也更加熟悉了,对TDB-C54XplusDSP试验箱的硬件环境也有了初步了解,也接触到了循环与分支结构的应用方法,感谢老师的辛勤指导。
实验四汇编的循环与分支
8.实验目的
1.了解DSP结构;
2.熟悉CCS开发环境;
3.熟悉TDB-C54XplusDSP试验箱的硬件环境;
4.熟悉汇编语言的循环与分支结构。
9.实验内容
5.C54Xplus汇编初始化程序;
6.C54Xplus数据区初始化程序;
7.C54Xplus各种汇编循环源程序;
8.C54Xplus各种汇编分支源程序。
10.实验要求
运行程序,通过CCS-View-CPURegisters,观察各寄存器的值,通过CCS-View-Memory,观察片内各数据地址的值,上述各值应与源程序计算结果一致。
11.实验环境
计算机、DSP仿真器、TDB-C54XplusDSP实验箱、CCS软件。
12.实验步骤
1.将DSP仿真器与计算机并口连接;
2.将DSP仿真器JTAG头插入DSP实验箱JTAG接口上;
3.打开计算机电源,当计算机启动完毕后,打开仿真器和TDB-C54XplusDSP实验箱电源,实验箱上3.3V、1.8V电源指示灯均亮,若不亮,请立即关闭电源检查连线和电源电压;
4.双击桌面CCS,进入CCS操作环境;
5.按实验一的步骤创建一个工程和源文件,并调试。
6.在Projet-BuildOptions中设置添加文件路径。
13.实验结果
STM#DDAT0,AR2
STM#3FFH,BRC;描述从这个语句到_INIT_DATA2-1语句的功能
RPTB_INIT_DATA2-1
STLA,*AR2+
LDMAR2,B
AND#7,0,B
ADD#1,0,A
BC_INIT_DATA2-1,BNEQ
LDMAR2,B
AND#0FFF8H,0,A
AND#3FH,0,B
ADD#0F8H,0,A
XC2,BEQ
AND#078H,0,A
XC2,BEQ
ADD#8,0,A
NOP
_INIT_DATA2:
RET
答:
设置块重复的范围,从RPTB句后一句开始到_INIT_DATA2前一句作为块重复内容,重复次数为BRC中次数为3FFH次;块中嵌套一次分支转移,当满足不相等时,分支跳转至_INIT_DATA2的前一句,完成一次块重复,条件不满足时,连续执行程序,不进行跳转。
14.实验总结
非常愉快地完成了这次实验,通过这次实验学生进一步了解了DSP结,对CCS开发环境也更加熟悉了,对TDB-C54XplusDSP试验箱的硬件环境也有了初步了解,也接触到了循环与分支结构的应用方法,感谢老师的辛勤指导。
实验五数字滤波器设计
一、实验目的
1熟悉CCS开发环境;
2熟悉TDB-C54XplusDSP实验箱的硬件环境;
3掌握数字滤波器的设计过程;
4了解FIR、IIR数字滤波器的特性;
5熟悉设计FIR、IIR数字滤波器的原理和方法;
6了解DSP滤波器的特殊寻址方式。
二、实验内容
1DSP初始化;
2确定滤波器系数;
3滤波器程序。
三、实验要求
将输入波形通过设计好的数字滤波器,结果用CCS的viewGraph显示,分析数字滤波器的性能。
四、实验环境
计算机、TDB-C54XplusDSP实验箱、CCS软件。
五、实验原理
1有限冲击响应数字滤波器的基础理论;
2无限冲击响应数字滤波器的基础理论;
3模拟滤波器原理(巴特沃斯滤波器、切比雪夫滤波器、椭圆滤波器、贝赛尔滤波器);
4数字滤波器系数的确定方法;
5双线性变换的设计原理。
六、实验步骤
1将DSP仿真器与计算机并口(打印机口)或USB接口连接好;
2将DSP仿真器JTAG头插入DSP实验箱JTAG接口上;
3打开计算机电源,当计算机启动完毕后,打开仿真器和TDB-C54XplusDSP实验箱电源,实验箱上3.3V、1.8V电源指示灯均亮,若不亮,请立即关闭实验箱电源,检查连线和电源电压;
4双击桌面上CCS图标,进入CCS操作环境;
5在“TDB-C54XplusLAB\LAB08”文件目录下,打开工程文件“fir.pjt”;
6编译、链接并运行该工程,然后实验要求观察记录实验数据;
注意:
如果对实验比较熟练,建议采样如下实验步骤代替上述5、6步:
(1)确定滤波器模型,设计滤波器,确定滤波器系数;
(2)调用初始化程序,初始化DSP;
(3)编写滤波器子程序;
(4)建立工程,编译调试程序;
(6)在ProjectBuildOptions中设置添加文件的路径;
(7)通过CCS的ViewGraph下Time/Frequency察看输入输出波形;
(8)比较分析滤波器性能。
7向实验指导教师提交记录的实验数据;
8根据实验及其记录的实验数据撰写实验报告。
七、实验数据记录
1、记录FIR滤波运算输入数据波形图截图:
2、记录FIR滤波运算输出数据波形图截图:
数据执行后截图
实验时的相关代码
八、实验总结
感谢老师带领同学们进行了一次非常实用的滤波器实验,在这个实验中,学生不仅对DSP的应用有了进一步的了解,而且学会了图表的生成和调用,感谢老师的辛勤指导。