- 1、本文档共37页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
定标与溢出处理 FIR滤波器 9.1 定标与溢出处理 数的定标 溢出的处理方法 常用信号处理算法中的定标方法 9.1.1 数的定标 小数定标 设定16位数的小数点处于哪一位.(表示不同大小和不同精度) Q表示法 16位数的16种Q表示及其表示的十进制数值范围。 Q表示及数值范围 Q表示及数值范围 不同的Q表示的数范围不同,精度也不相同 Q越大,数值范围越小,但精度越高 Q越小,数值范围越大,但精度就越低 例如, Q0的数值范围是-32768到+32767,其精度为1; Q15的数值范围为-1到0.9999695,精度为 1/32768 = 016位数的Qi定标:用1个符号位、i个小数位和15-i个整数位来表示。 同样的数在不同定标方式下所表示的具体数值 9.1.2 溢出的处理方法 运算结果超出寄存器所能表示的最大数。 16位定点DSP的动态范围有限. 溢出与输入信号的特性和运算法则有关 C55x几种硬件特性处理溢出: 保护位 C55x的累加器有8个保护位(39~32位),允许连续256次乘加操作 溢出标志位 C55x的每个累加器都有溢出标志位 饱和。饱和会剪掉部分输出信号,会引起信号失真和引起系统非线性。 输入定标。分析使用的系统,假定最坏的情况,对输入信号定标,以防止溢出。 固定定标。假定最坏的情况,对中间结果定标,防止溢出。 动态定标。监测中间结果的范围,在需要的时候对中间结果定标。 9.2 小数乘法 整数乘法运算缺点: 两个16位整数相乘,乘积总是“向左增长”(即小数点左侧的位数增加),即多次相乘,乘积超出定点器件的数据范围。 保存32位乘积到存储器,要占用2个CPU周期和2个字的存储器空间。 16位相乘,32位乘积再作为乘法器的输入时就显得较繁琐,不能胜任递归运算。 小数运算的优点: 乘积总是“向右增长”。超出定点器件数据范围的是不感兴趣的部分。 可以用于递归运算。 例9-1,两个Q31格式有符号小数相乘,得到一个Q31格式结果。文件名为:mpyQ31.asm。 注意: 两个带符号小数相乘,所得乘积带有2个符号位。 消除冗余符号位 在程序中设定状态寄存器ST1中的FRCT(小数方式)为1,当乘法器将结果传送至累加器时会自动左移1位。 9.3 FIR滤波器 数字滤波器是DSP的基本应用,有2种基本类型: 有限冲激响应滤波器FIR 无限冲激滤波器IIR 本节主要讨论FIR滤波器的DSP实现方法。 9.3.1 FIR滤波器的基本结构 一个FIR滤波器的输出序列和输入序列之间的关系,满足差分方程: 传递函数为 9.3.2 FIR滤波器的C语言编程实现 9.3.3 FIR滤波器的汇编语言编程实现 把信号采样加载到循环缓冲器中。 在循环缓冲器中,采取数据保持固定、反时针方向移动地址的方式,代替保持缓冲器地址固定且正方向移动数据。 FIR滤波器的循环缓冲区 例9-3,FIR滤波器的C55x汇编语言实现 (2) 汇编语言整数fir滤波器函数:fir.asm TMS320C55x的基本结构 - TMS320VC5509A的主要特性 封装和引脚功能 CPU结构 CPU寄存器 存储空间和I/O空间 堆栈操作 中断和复位操作 寻址方式 绝对寻址方式 直接寻址方式 间接寻址方式 TMS320C55x的指令系统 算术运算指令、 位操作指令 扩展辅助寄存器操作指令 逻辑运算指令 移动指令和程序控制指令 TMS320C55x软件开发流程 TMS320C55x目标文件格式 TMS320C55x汇编器 TMS320C55x汇编伪指令 TMS320C55x汇编语言源文件的书写格式 TMS320C55x链接器 C55x C/C++语言概述 C55x C/C++语言编程基础 C55x C/C++编译器的使用 TMS320C55x的C代码优化 时钟发生器 通用定时器 通用I/O口(GPIO) 外部存储器接口(EMIF) 多通道缓冲串口(McBSP) 模数转换器(ADC) 看门狗定时器(Watchdog) I2C模块 定标与溢出处理 FIR滤波器 第2章 TMS320C55x的硬件结构 第3章 TMS320C55x的指令系统 第4章 TMS320C55x汇编语言编程 第5章 C/C++语言程序设计 第6章 C55x的片上外设 第8章 TMS320C55x硬件设计实例 ● DSP最小系统设计 ● A/D与D/A设计 ● C55x在语音系统中的应用 * * 第9章 应用程序设计 9.1 定标与溢出处理 9.1 定标与溢出处理 9.1 定标与溢出处理
文档评论(0)