- 1、本文档共19页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
10级DSP实验指导书
《DSP技术实验指导书
2013年4月20日
实验一 CCS基本操作
实验目的
熟悉CCS 2.0软件的使用
掌握使用DSP实现16位定点加、减、乘、除运算的编程方法
实验设备
计算机
实验原理
(1)定点DSP中数据表示方法
C54X是16位定点DSP。一个16位在二进制既可表示一个整数,也可以表示一个小数。当它表示一个整数据时,其最低位(D0)表示20,D1位表示21,次高位表示(D14)表示214。如果表示一个有符号时,最高位(D15)为符号位,0表示正数,1表示负数。在C54x中,将一个小数用16位定点格式来表示的方法是用2-15乘以该小数,然后取整。
(2)实现16位定点加法
C54x中提供了多条用于加法的指令,如ADD,ADDC,ADDM和ADDS。其中ADDS用于无符号数的加法运算,ADDC用于带进位的加法运算(如32位扩展精度加法),而ADDM专用于立即数的加法。
(3)实现16位定点减法
C54X中提供了多条用于减法的指令,如SUB,SUBC,SUBM和SUBS。其中SUBS用于无符号数的减法运算,SUBB用于带进位的减法运算(如32位扩展精度减法),而SUBC是移位减(有条件减法),DSP中除法就是用该条指令来实现的。
(4)实现16定点整数乘法
在C54中提供大量的乘法运算指令,其结果都是的32位,放在A或B寄存器中。乘法指令输入变量非常灵活,可以是T寄存器、立即数、存贮单元和A或B寄存器的高16位。在C54X中,一般对数据的处理都当做有符号数,如果是无符号数乘时,请使用MPYU指令。这是一条专用于无符号数乘法运算的指令,而其它指令都是有符号数的乘法。
(5)实现16定点小数乘法
在C54X中,小数的乘法与整数乘法基本一致,只是由于两个有符号的小数相乘,其结果的小数点的位置在次高的后面,所以必须左移一位,才能得到正确的结果。C54X中提供了一个状态位FRCT,将其设置为1时,系统自动将乘积结果左移移位。但注意整数乘法时不能这样处理,所以上面的实验中一开始便将FRCT清除。两个小数(16位)相乘后结果为32位,如果精度允许的话,可以只存放高16位,将低16位丢弃,这样仍可得到16位的结果。有时为了提高精度,可以使用RND或使用MPYR指令对低16位做四舍五入的处理。
(6)实现16定点整数除法
在C54X中没有提供专门的除法指令,一般有两种方法来完成除法。一种是用乘法来代替,除以某个数相当于乘以其倒数,所以先求出其倒数,然后相乘。这种方法对于除以常数特别适用。另一种方法是使用SUBC指令,重复16次减法完成除法运算。下面我们以TEMP1/TEMP2为例,说明如何使用SUBC指令实现整数除法,其中变量TMP1为被除数,TMP2为除数,结果即商存放在变量TEMP3中。在完成整数除法时,先判断结果的符号。方法是将两数相乘,保存A或B的高16位以便判断结果的符号。然后只做两个正数的除法,最后修正结果的符号。为了实现两个数相除,先将被除数装入A或B 的低16位,接着重复执行SUBC指,用除数重复减16次后,除法运算的商在累加器的低16位,余数在高16位。
(7)实现16定点小数除法
下面给出的是小数除法与前面的整数除法基本一致,也是使用循环的SUBC指令来完成。但有两点需要注意:第一,小数除法的结果一定是小数(小于一),所以被除数一定小于除数。这与整数除法正好相反。所以在执行SUBC指令前,应将被除数装入A或B寄存器的高16位,而不是低16位。其结果的格式与整数除法一样,A或B寄存器的高16位为余数,低16位商。第二,与小数乘法一样,应考虑符号对结果小数点的影响。所以应对商右移一位,得到正确的有符号数。
实验步骤
1.新建一个工程
如果你的CCS安装在C:\ti目录下,请在d:\下新建一个目录,名为sf。
将sf.asm文件拷贝到新目录中。
运行CCS程序。
选择Project (New菜单。
在窗口中,选择你新建的目录,键入sf作为工程文件名,然后单击完成。CCS会给你新建一个叫sf.pjt的工程文件,他将保存你的工程文件设置,和工程引用相关文件。
2.往工程中加入文件
选择project(Add Files to Project,选择sf.asm加入工程中;
选择project(Add Files to Project,选择sf.cmd加入工程中。
3.浏览代码
和Windows的资源管理器相似,只要打开+号展现下面的文件,然后双击文件的图标,在主窗口就会显示相应文件的原始代码。
4.编译/执行程序
选择Project(Rebuild All或工具栏中的相应按钮。
编译成功后,选择File(Load Program。选择你刚编译的可执行程序sf.out。
选择Debug(Run,或工具栏中的相应图标。
5. 程
您可能关注的文档
- (RJ-SY)选修3—5第十六章 动量守恒定律1-3节.doc
- (Multisim数电仿真)计数译码和显示电路.doc
- (好)电抗器作用.doc
- (人教版)初中化学导学案第一单元.doc
- (二)心电图基础有关知识.doc
- (可编辑)福建省厦门市2012年高三5月质检理综试题.doc
- (怎样巧拟文章的标题,唤起读者的阅读兴趣呢)作文训练.doc
- (异地监控设置)动态域名解析的设置.doc
- (总结一)poj简单动态规划.doc
- (机电一体化课程设计).doc
- 第三单元解决问题的策略 三年级下册数学高频考点重难点讲义(苏教版)(1).docx
- 4.4 解比例 数学六年级下册同步培优讲义(苏教版).docx
- 第四单元《根据方向与距离确定物体位置》(教案)五年级下册数学青岛版.docx
- (奥数典型题)第三讲 分解质因数 五年级下册数学思维拓展提升讲义(人教版).docx
- 2.2:2、5、3的倍数-人教版五年级数学下册第二单元:因数和倍数.docx
- 第六单元正比例和反比例 六年级下册数学高频考点重难点讲义(苏教版).docx
- 第二单元除数是一位数的除法 三年级下册数学高频考点重难点讲义(人教版).docx
- 第二单元-认识三角形和四边形 四年级数学下册提升(北师大版).docx
- 第一单元观察物体(三)五年级下册数学高频考点重难点讲义(人教版).docx
- 第九单元 数学广角—推理 二年级数学下册重难点知识点(人教版).docx
文档评论(0)