- 1、本文档共33页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验一 CCS使用及DSP 基本数学运算
一、实验目的:
1、 熟悉CCS 集成开发环境,掌握工程的生成方法;
2、 熟悉SEED-DTK5416实验环境;
3、 掌握CCS 集成开发环境的调试方法;
4、 了解数在计算过程中的定标,掌握数的定点、浮点表示方法,定点、浮点基本运算以及定点、浮点间的相互转换。
二、实验内容:
1、 DSP源文件的建立;
2、 DSP程序工程文件的建立;
3、 编译与链接的设置,生成可执行的DSP 文件;
4、 进行DSP 程序的调试与改错;
5、 学习使用CCS 集成开发工具的调试工具;
6、 观察实验结果;
三、实验知识背景:
在DSP 编程过程中,数以二进制、十进制、与十六制表示均可。在定点DSP 的运算过程中,数一般采用二进制与二进制补码的形式进行运算的。其中二进制数只能代表正数不能代表负的数,而二进制补码记数系统弥补了这一缺点。它的构成如下;
在二进制的基础上,加一符号位。符号位位于二进制数的最高位
当为正数时,符号位为0,为负数时,符号位为1
当采用二进制补码进行数的运算时,具有如下的两个优点:
可以将加法与减法统一成加法运算
符号位可以进行扩展,而其数值不变,这可以使一个比较小的数存放到比较大的寄存器当中
例:
1×2 + 0×1 = -2 (11110)2 = 1×(-16)+ 1×8 + …… +
当将其符号位扩展三位,放入一8位的寄存器中
1×2 + 0×1 = -2 2 = 1×(-128)+ 1×64 + …… +
这将为运算提供极大的方便,因而在定点的DSP 中,大多数情况采用二进制补码形式。 C5000系列的DSP 硬件只支持定点运算,浮点运算要通过软件来实现。其运算字长为16位,也就是说,DSP 所能表示的整数的范围也就决定了,其范围为-32768到32767。 而在很多情况下,数学运算过程中不一定是整数,而且动态范围也不是固定不变的。如何解决这个问题?对于只支持定点运算的CPU 来说,在硬件上并没有提供小数点定位的机制。只有靠软件中人为地假设将小数点放在16位数据中的不同位置,就可以表示不同大小与不同精度的数据了,这就是数的定标。
数的定标有Q 与S 两种表示方法。在Q 表示法中,Q 代表(Quantity of Fractional Bits)数中尾数部分的位数,即小数点右边的位数。而S 表示法中,S 代表数中整数部分的位数,即小数点左边的位数。实用中一般用Q 表示法,例:Q 0表示小数点在第0位的右边,即为整数。Q 15表数小数点在第15位的右边,即为小于1的小数(以二进制补码表示,第15位为符号位)。下表给出了16位数的16种不同的Q 表示法。并列出了它们所能表示的十进
=
制数的范围。 Q 表示法 S 表示法 十进制数表示的范围
-1≤x ≤0.9999695
-2≤x ≤1.9999390
-4≤x ≤3.9998779
-8≤x ≤7.9997559
-16≤x ≤15.9995117
-32≤x ≤31.9990234
-64≤x ≤63.9980469
-128≤x ≤127.9960938
-256≤x ≤255.9921875
-512≤x ≤511.9804375
-1024≤x ≤1023.96875
-2048≤x ≤2047.9375
-4096≤x ≤4095.875
-8192≤x ≤8191.75
-16384≤x ≤16383.5
-32768≤x ≤32767
对于加法和减法运算来说,其运算结果并不会改变小数点的位置,也就是说,2个Q 15的数相加或相减,其结果还是1个Q 15的数。而对于乘法运算则不然,2个Q 15的数相乘,其结果将是1个Q 30的数,符号位由1位扩展为2位。如果保留高16位,舍弃低16位,
此时,要想将乘法结果与另1个Q 15的数相加或则将得到1个带有2个符号位的Q 14的数。
相减,则需要对由乘法运算得到的带有2个符号位的Q 14的数去掉一个符号位,规一化为Q 15的数,即要左移1位。
对于C5000系列,在数值运算中一般采用Q 15数制。这是由于C5000在进行乘法运算时,其乘法运算单元具有自动左移一位的功能。这样可以将两个Q 15相乘后得到一Q 30的数据中的两个符号位去除一个,保证其结果的正确性。下面举例进行说明:
十进制乘法 0.5×0.5 = 0.25
当二进制数相乘时 0.100000000000000 ;Q 15
× 0.100000000000000 ;Q 15
00.0100000000000000000000000000 = 0.25 ;Q 30
↑符号位
在结果保存时一般只保存两个Q 15的定点数相乘后得到一个带2个符号位的Q 30的数,
与输入数据相同的精度的结果
您可能关注的文档
最近下载
- 民用建筑通用规范GB55031-2022(完整清晰版).pdf
- SY_T 4113.1-2018 管道防腐层性能试验方法 第1部分:耐划伤测试.docx VIP
- 江苏省无锡市江阴市长泾片2024-2025学年七年级上学期期中考试语文试题(含答案).pdf VIP
- 燃气安全日常巡检与维护方法.pptx
- 市直机关单位整治群众身边不正之风问题集中整治工作阶段性工作总结.docx VIP
- 地下连续墙施工方案(附:工程临时用电施工方案).doc
- 汽轮发电机组转子找中心计算公式.xls VIP
- 惠州市高2024届高三第二次调研考试政治试卷(含答案).docx
- SY∕T 4113.8-2020 管道防腐层性能试验方法 第8部分:耐磨性能测试.pdf
- HRN日本报知机百仕达五斯消防主机操作说明书.pdf
文档评论(0)