物电系电信14年下DSP实验安排及讲义.docx
- 文档编号:30684590
- 上传时间:2023-08-19
- 格式:DOCX
- 页数:18
- 大小:366.82KB
物电系电信14年下DSP实验安排及讲义.docx
《物电系电信14年下DSP实验安排及讲义.docx》由会员分享,可在线阅读,更多相关《物电系电信14年下DSP实验安排及讲义.docx(18页珍藏版)》请在冰豆网上搜索。
物电系电信14年下DSP实验安排及讲义
2014年DSP系统开发实验安排
电信10103-10104班24人
周次
实验项目名称
课时
分组实验时间
实验
地点
指导
教师
电信10103-104
13
CCS平台启动及存储器实验
3
周日8:
00-10:
15
C302
曹斌芳
13
基本算数运算实验
2
周日10:
15-12:
00
C302
曹斌芳
15
FIR滤波器实验
3
周日8:
00-10:
15
C302
曹斌芳
15
定时器实验
2
周日10:
15-12:
00
C302
曹斌芳
电信10101-10102班52人
周次
实验项目名称
课时
分组实验时间
实验
地点
指导
教师
电信10101
电信10102
12
CCS平台启动及存储器实验
3
周六14:
00-16:
15
周日8:
00-10:
15
C302
曹斌芳
12
基本算数运算实验
2
周六16:
15-18:
00
周日10:
15-12:
00
C302
曹斌芳
14
FIR滤波器实验
3
周六14:
00-16:
15
周日8:
00-10:
15
C302
曹斌芳
14
定时器实验
2
周六16:
15-18:
00
周日10:
15-12:
00
C302
曹斌芳
电信(芙蓉)1101(23人)
周次
实验项目名称
课时
分组实验时间
实验
地点
指导
教师
芙蓉电信10101
13
CCS平台启动及存储器实验
3
周六14:
00-16:
15
C302
曹斌芳
13
基本算数运算实验
2
周六16:
15-18:
00
C302
曹斌芳
15
FIR滤波器实验
3
周六14:
00-16:
15
C302
曹斌芳
15
定时器实验
2
周六16:
15-18:
00
C302
曹斌芳
光电12101(28人)
周次
实验项目名称
课时
分组实验时间
实验
地点
指导
教师
芙蓉电信10101
6
CCS平台启动及存储器实验
3
周日8:
00-10:
15
C302
曹斌芳
6
基本算数运算实验
2
周日10:
15-12:
00
C302
曹斌芳
13
FIR滤波器实验
3
周日8:
00-10:
15
C302
曹斌芳
13
定时器实验
2
周日10:
15-12:
00
C302
曹斌芳
实验一、CCS平台启动及存储器实验
1、CCS平台启动
(一)实验目的
熟悉CCS2.0软件的使用
熟悉SZ-DSPII实验平台的使用
(二)实验设备
计算机
DSP硬件仿真器
SZ-DSPII实验开发平台
(三)实验原理
让学生了解怎样连接DSP仿真器、对CCS的仿真配置及怎样在CCS内新建工程并生成*.out文件。
(四)实验步骤
1、安装CCS2.0的Simulator方式:
双击桌面上的SetupCCS2('C5000)图标,关闭ImportConfiguration窗口,在SystemConfiguration中的MySystem的下面可看到一个类似板卡的图标,如果该图标的名称是“tisim54x”的话,就可直接关闭该窗口,不存盘退出。
如果该图标的名称不是“tisim54x”的话,在该图标上单击右键,选择remove删除该结构,然后在AvailableBoardTypes中双击“tisim54x”的图标(如果有的话),弹出BoardProperties的对话框点击“next”、“finish”然后关闭CodeComposerSetup窗口,存盘退出即可。
如果在AvailableBoardTypes中没有“tisim54x”的图标,则在右边框内单击“InstallaDeviceDriver”,在路径“c:
\ti\driver\”(此目录为CCS的安装目录)中打开tisim54x.dvr文件,在AvailableBoardTypes中可看到“tisim54x”的图标,然后按上述操作。
即生成CCS的Simulator方式。
可以以Simulator方式启动CCS。
2、安装CCS2.0的Emuliator方式:
(具体见实验课堂演示)
点击InstallaDeviceDriver,选择光盘附带的相应的驱动程序(注:
请用户自己安装光盘“CCS2.0仿真器驱动”目录下的驱动,建议安装在C盘根目录下)。
例如:
54X系列:
tixds54x;此时,AvailableBoard/SimulatorType一栏中会出现相应的驱动图标;把该图标拖动到最左边的SystemConfiguration一栏中,出现BoardProperties对话框。
在BoardName&DataFile栏中,点击NEXT;进入BoardProperties页,会显示板卡的I/O口值,再点击NEXT;
3、常用指令实验步骤((用Emulator方式调试))
1)系统连接
进行DSP实验之前,先必须连接好仿真器、实验箱及计算机,连接方法如下所示:
2)上电复位
在硬件安装完成后,确认安装正确、各实验部件及电源连接正常后,接通仿真器电源,启动计算机,此时,仿真器上的“红色小灯”应点亮,否则DSP开发系统有问题。
3)运行CCS程序
待计算机启动成功后,实验箱后面220V输入电源开关置“ON”,实验箱上电,启动CCS,此时仿真器上的“绿色小灯”应点亮,并且CCS正常启动,表明系统连接正常;否则仿真器的连接、JTAG接口或CCS相关设置存在问题,掉电,检查仿真器的连接、JTAG接口连接,或检查CCS相关设置是否正确。
注:
如在此出现问题,可能是系统没有正常复位或连接错误,应重新检查系统硬件并复位;也可能是软件安装或设置有问题,应尝试调整软件系统设置。
●成功运行程序后,首先应熟悉CCS的用户界面
(1)学会CCS环境下程序编写、调试、编译、装载,学习如何使用观察窗口等,如观察主要寄存器的变化ViewCPURegistersCPURegisters。
(2)修改样例程序,尝试DSP其他的指令。
注:
实验系统连接及CCS相关设置是以后所有实验的基础,在以下实验中这部分内容将不再复述。
(3)填写实验报告。
(CCS平台启动和CCS操作,即如何编译链接、下载和调试等)
(五)实验思考
1、如果在完全设置正确的情况下,还出现如下图1所示的错误,请分析会有哪几种原因?
2、如果出现如下所示的警告,请分析是什么原因?
图1
图2
2、存储器实验
(一)实验目的
了解DSP内部数据存储器和程序存储器的结构
了解DSP指令的几种寻址方式
(二)实验设备
计算机;DSP硬件仿真器;DSP开发实验平台
(三)实验硬件设置
在做实验之前,需要接通该实验所需的硬件电路,本实验为:
先将实验箱右侧的船型开关往“I”方向打开电源,然后将系统主板的开关S33(主板左上角)往下拨接通+/-5V电源;然后开始做实验,注意在做DSP实验时开始按了RST硬件复位后,实验中不要再按RST键,以免实验由于DSP复位而失败。
(四)实验原理
主要是对外扩数据存储器进行数据的存储、移动。
该实验所需要的硬件主要是DSP、CPLD、DRAM。
实验过程是:
让学生通过CCS5000的DSP仿真器对DSP进行仿真,向DSP外扩DRAM写入数据、读数据、数据块的移动,其操作结果通过CCS5000仿真界面进行观察。
(五)实验步骤
经过了实验一以后,相信各位同学对于CCS的基本操作已经了解,故在此不再赘述。
(1)启动CCS,编写实验程序代码(可参考随机光盘中的例程),进行
编译并加载到DSP中。
(2)采用单步运行或执行到光标处,并打开寄存器观察窗口和内存观察窗口,观察其
执行结果。
,值得注意的是,本实验需要打开三个内存窗口:
Data页的.data段起始处、Data页的.stack段起始处、以及Program页的起始处。
下面仅将例程中各小段程序进行简要说明及可观察结程序执行果的窗口:
bk1:
立即数寻址方式;打开内存窗口的数据观察窗口地址为.data段起始处2000h。
bk2:
绝对地址寻址方式-数据存储器地址寻址;数据观察窗口地址为实际程序所编。
bk3:
绝对地址寻址方式-程序存储器地址寻址;打开内存窗口的程序观察窗口地址为,实际程序所编写(如程序中定义PDAT0为1F00,地址就为1F00)。
bk4:
累加器寻址方式;打开寄存器和内存的数据观察窗口。
bk5:
直接寻址方式(DP为基准),打内存的数据观察窗口。
bk6:
直接寻址方式(SP为基准),打内存的数据观察窗口。
bk7:
间接寻址方式,打开寄存器和内存的数据观察窗口。
bk8:
存储器映射寄存器寻址方式,打开寄存器观察窗口。
bk9:
堆栈寻址方式,打开寄存器观察窗口。
Bk10:
程序存储器到数据存储器的复制,打开寄存器观察窗口。
具体实验程序请参考:
随机光盘里的a2cunchu文件夹。
(六)实验要求和思考题
1、记录以上各寻址方式的最后结果
2、如何将程序存储器其中某一起始地址的0x100个字复制到数据存储器的0x4000为起始地址的空间中?
3、修改数据指针和堆栈指针的值,观察程序的结果。
4、如何实现用C语言或者汇编语言编写一个对可用数据内存清零的程序?
实验二基本算术运算实验
(一)实验目的和要求
加、减、乘、除是数字信号处理中最基本的算术运算。
DSP中提供了大量的指令来实现这些功能。
本实验使用定点DSP实现16位定点加、减、乘、除运算的基本功能方法和编程技巧。
(二)实验设备
计算机;DSP硬件仿真器;DSP实验开发平台
(三)实验硬件设置
在做实验之前,需要接通该实验所需的硬件电路,本实验为:
先将实验箱右侧的船型开关往“I”方向打开电源,然后将系统主板的开关S33(主板左上角)往下拨接通+/-5V电源;
然后开始做实验,注意在做DSP实验时开始按了RST硬件复位后,实验中不要再按RST键,以免实验由于DSP复位而失败。
(四)实验原理
(1)定点DSP中数据表示方法
C54X是16位定点DSP。
一个16位在二进制既可表示一个整数,也可以表示一个小数。
当它表示一个整数据时,其最低位(D0)表示20,D1位表示21,次高位表示(D14)表示214。
如果表示一个有符号时,最高位(D15)为符号位,0表示正数,1表示负数。
例如,07FFFH表示最大的正整数32767(十进制),而0FFFH表示最大负数-1(负数用2的补码方式显示)。
当需要表示小数时,小数点的位置始终在最高位后,而最高位(D15)表示符号。
这样次高位(D14)表示2-1,,然后是2-2,最低位(D0)表示2-15,所以04000H表示小数0.5,01000H表示小数2-3=0.125,而0001H表示16位定点DSP能表示的最小数(有符号)2-15=0.000030517578125。
在后面的实验中,除非有特别的说明,我们指的是有符号数。
在C54x中,将一个小数用16位定点格式来表示的方法是用2-15乘以该小数,然后取整。
从上面的分析可以看出,在DSP中一个16进制的数可以表示不同的十进制数,或者是整数,或者是小数(如果表示小数,必定小于1)但仅仅是在做整数乘除或小数乘除时,系统对它们的处理才是有所区别的,而在加法运算时,系统都当成整数来处理。
(2)实现16位定点加法
LDTEMP1,A;将变量TEMP1装入寄存器A
ADDTEMP2,A;将变量TEMP2与寄存器A相加,将结果放入A
STLA,ADDRESULT;将结果(低16位)放入变量ADDRESULT中
注意,这里完成计算TEMP3=TEMP2+TEMP1,我们没有考虑TEMP1,
TEMP2是整数还是小数,在加法和下面的减法中整数运算都是一样的。
(3)实现16位定点减法
STM#TEMP1,AR3;将变量TEMP1的地址装入AR3寄存器
STM#TEMP3,AR2;将变量TEMP3的地址装入AR2寄存器
SUB*AR2+,AR3,B
STHB,SUBRESULT
(4)实现16定点整数乘法
RSBXFRCT;请FRCT标志,准备整数乘
LDTEMP1,T;将变量TEMP1装入T寄存器
MPYTEMP2,A;完成TEMP2*TENP1,结果放入A寄存器(32)位
例如,当TEMP1=1234H(十进制的4660),TEMP2=9876H(十进制的-26506),乘法的结果在A寄存器中为0F8A343F8H(十进制的-123517960)。
这是一个32位的
结果,需要两个内存单元来存放结果;
STHA,MPY_1_H;将结果(高16位)存入变量MPY_1_H
STLA,MPY_1_H;将结果(低16位)存入变量MPY_1_L
当TEMP1=10H(十进制的16),TEMP2=05H(十进制的5),乘法结果在A寄存器中为00000050H(十进制的80)。
对于这种情况,仅仅需要保存低16位即可;
STLA,MPY_1_L;将结果(低16位)存放变量MPY-1-L
(5)实现16定点小数乘法
SSBXFRCT;FRCT=1,准备小数乘法
LDTEMP1,16,A;将变量TEMPL装入寄存器A的高的16位
MPYATEMP2;完成TEMP2乘寄存器A的高的16位,结果在B中,
;同时将TEMP2装入T寄存器
STHB,MPY-F;将乘积结果的高16位存入变量MPY-F
例如,TEMP1=TEMP2=4000H(十进制的0.5),两数相乘后结果为
20000000(十进制的2-2=0.25)。
再如,TEMP1=0CCDH(十进制的0.1),TEMP2=0599AH(十进制的0.7),两数相乘后B寄存器的内容为08F5F0A4H(十进制的0.07000549323857)。
如果仅保存结果的高16位08F5H(十进制的0.06997680664063)。
有时为了提高精度,可以使用RND或使用MPYR指令对低16位做四舍五入的处理。
(6)实现16定点整数除法
LDTEMP1,T;将被除数装入T寄存器
MPYTEMP2,A;除数与被除数相乘,结果放入A寄存器
LDTEMP2,B;将除数TEMP2装入B寄存器的低16位
ABSB;求绝对值
STLB,TEMP2;将B寄存器的低16位存回TEMP2
LDTEMP1,B;将被除数TEMP1装入B寄存器的低16位
ABSB;求绝对值
RPT#15;重复SUBC指令16次
SUBCTEMP2,B;使用SUBC指令完成除法运算
BCDDIV-END,AGT;延时跳转,先执行下面两条指令,然后判
;断A,若A大于0,则跳转到标号
;DIV-END,结束除法运算
STLB,QUOT-I;将商(B寄存器的低16位)存入变量QUOT-I
STHB,REMAIN-I;将余数(B寄存器的高16位)存入变量
;REMAIN-I
XORB,B;若两数相乘的结果为负,则商也应为负。
;先将B寄存器清0
SUBQUOT-I,B;将商反号
STLB,QUOT-I;存回变量QUOT-I中
DIV-END:
(7)实现16定点小数除法
SUBC指令来完成。
但有两点需要注意:
第一,小数除法的结果一定是小数(小于一),所以被除数一定小于除数。
这与整数除法正好相反。
所以在执行SUBC指令前,应将被除数装入A或B寄存器的高16位,而不是低16位。
其结果的格式与整数除法一样,A或B寄存器的高16位为余数,低16位商。
第二,与小数乘法一样,应考虑符号对结果小数点的影响。
所以应对商右移一位,得到正确的有符号数。
其详细代码如下:
LDTEMP1,T;将被除数装入T寄存器
MPYTEMP2,A;除数与被除数相乘,结果放入A寄存器
LDTEMP2,B;将除数TEMP2装入B寄存器的低16位
ABSB;求绝对值
STLB,TEMP2;将B寄存器的低16位存回TEMP2
LDTEMP1,B;将被除数TEMP1装入B寄存器的低16位
ABSB;求绝对值
RPT#15;重复SUBC指令16次
SUBCTEMP2,B;使用SUBC指令完成除法运算
AND#0FFFFH,B;将B寄存器的高16位清为0。
;这时余数被丢弃,仅保留商
BCDDIV-END,AGT;延时跳转,先执行下面两条指令,然后判
;断A,若A大于0,则跳转到标号DIV-END,
;结束除法运算
STLB-1,QUOT-F;将商右移
STLB-1,REMAIN-I;将余数(B寄存器的高16位)存
;入变量REMAIN-I
XORB,B;若两数相乘的结果为负,则商也应为负。
;先将B寄存器清0
SUBQUOT-I,B;将商反号
STLB,QUOT-I;存回变量QUOT-I中
DIV-END:
注意:
上面的C54X的16位定点有符号小数除法通用程序没有保留余
数,商保存在变量TEMP3中。
举一个例子,当TEMP1=2CCCH(十进制0.35),TEMP2=55C2H(十进制的0.67),两数相除的结果为TEMP3=42DCH(十进制的0X42DC除以215=0.52233)。
(五)实验步骤
本实验需要使用C54X汇编语言实现加、减、乘、除的基本运算,并通过CCS的存贮器显示窗口观察结果。
实验分两步完成:
(1)启动CCS,编写实验程序代码(可参考随机光盘中的例程),进行
编译并加载到DSP中。
具体实验程序请参考:
随机光盘里的a1suanfa文件夹。
(六)思考题:
(1)如何理解DP在数据区中所起的作用?
(2)如何实现无符号数的乘法?
(3)请利用本实验程序计算以下算式的结果?
0.25*0.58374=?
0.5/0.25=?
4653/345=?
0.789687/0.876=?
实验三滤波器实验
实验四定时器实验
(一)实验目的
熟悉DSP的定时器
了解定时器中断的编程方法
学会使用定时器中断方式控制程序流程
(二)实验设备
计算机;DSP硬件仿真器;DSP实验开发平台
(三)实验硬件设置
在做实验之前,需要接通该实验所需的硬件电路,本实验为:
先将实验箱右侧的船型开关往“I”方向打开电源,然后将系统主板的开关S33(主板左上角)往下拨接通+/-5V电源;然后将CPLD/FPGA模块(SZ-7128)上的电源开关S9往下(ON)拨,开关S10往下拨来选通主板上数码管等输出指示设备;将系统主板中“MCU/DSP选择档”(位于主板右下角)选中MCU(往下拨),将“功能键6”拨上去,点击键盘中的RST键,MCU将对所用的数码管进行检测,如果所有的数码管显示正常,则将“MCU/DSP选择档”选中DSP(往上拨),将功能键1到7都拨下来。
然后开始做实验,注意在做DSP实验时开始按了RST硬件复位后,实验中不要再按RST键,以免实验由于DSP复位而失败。
(三)实验原理及说明
本实验是要求能较为准确的计时并将时钟、分钟、秒钟显示到数码管上
其硬件连接原理图请参考实验书第一章中的图六数码管显示模块,硬件框图请
参考实验二数码管显示实验,此实验是利用DSP的定时器做时钟,并将时钟、分钟、秒钟显示到数码管上。
编写程序时先编写定时器初始化程序,运用DSP定时器来定时计数,并通过定时器中断服务程序刷新数码管。
(四)实验程序框图
具体实验程序,请参考:
随机光盘里的b4ds文件夹。
(五)思考题
1、如果改变时钟模式寄存器(CLKMD)会对该实验产生什么影响?
2、请参考上述程序设计一个能精确到ms级的显示程序。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 物电系 电信 14 年下 DSP 实验 安排 讲义