《应用程序设计》PPT课件.ppt

《应用程序设计》PPT课件.ppt

ID:51645824

大小:972.50 KB

页数:86页

时间:2020-03-27

《应用程序设计》PPT课件.ppt_第1页
《应用程序设计》PPT课件.ppt_第2页
《应用程序设计》PPT课件.ppt_第3页
《应用程序设计》PPT课件.ppt_第4页
《应用程序设计》PPT课件.ppt_第5页
资源描述:

《《应用程序设计》PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第7章应用程序设计本章内容提要:定标与溢出处理基础算术运算FIR滤波器IIR滤波器快速傅里叶变换(FFT)7.1定标与溢出处理数的定标溢出的处理方法常用信号处理算法中的定标方法7.1.1数的定标小数定标的概念设定一个16位数的小数点处于该数中的哪一位可以表示不同大小和不同精度的小数Q表示法表7-1列出了一个16位数的16种Q表示及它们所能表示的十进制数值范围表7-1Q表示及数值范围不同的Q所表示的数不仅范围不同,而且精度也不相同Q越大,数值范围越小,但精度越高Q越小,数值范围越大,但精度就越低例如,Q0的数值范围是-32768到+32767,其精度为1

2、;Q15的数值范围为-1到0.9999695,精度为1/32768=0.00003051对定点数而言,数值范围与精度是一对矛盾。一个变量要想能够表示比较大的数值范围,必须以牺牲精度为代价;而想提高精度,则数的表示范围就相应地减小。在实际的定点算法中,应该根据具体问题进行折衷处理,以达到最佳效果。在C55x中,16位整数采用补码形式表示。每个采用Qi定标的16位数用1个符号位、i个小数位和15-i个整数位来表示。表7-2同样的数在不同定标方式下所表示的具体数值同样一个16位数,若小数点设定的位置不同,它所表示的数也就不同。7.1.2溢出的处理方法如果算术

3、运算结果超出寄存器所能表示的最大数就会出现溢出因为16位定点DSP的动态范围有限,所以在使用时必须注意动态范围以防溢出溢出还与输入信号的特性和运算法则有关1.溢出C55x有以下几种硬件特性可以处理溢出:保护位C55x的每个累加器都有8个保护位(39~32位),允许连续256次乘加操作而累加器不溢出溢出标志位C55x的每个累加器都有相关的溢出标志位,当累加器操作结果出现溢出时,这个标志位就会置位2.C55x的溢出处理机制饱和方式位SATD和SATASATD控制D单元的操作,SATA控制A单元的操作。如果SATD=1,当D单元发生溢出时,对D单元的结果进行

4、饱和处理。不管饱和方式位的值是什么,当累加器发生溢出时,相应的溢出标志位都会被置位A单元没有溢出标志位,但如果SATA=1,发生溢出时,结果也会进行饱和处理☼饱和处理是用最近的边界值代替溢出结果。例如,16位寄存器的范围是8000h(最小负数)~7FFFh(最大正数),饱和处理就是用7FFFh代替比7FFFh大的结果;用8000h代替比8000h小的结果。饱和。饱和是一种处理溢出的方法,但是饱和会剪掉部分输出信号,可能会引起信号失真和引起系统非线性。输入定标。分析所要使用的系统,假定最坏的情况,然后对输入信号定标,以防止溢出。但是这种方法会极大地降低输

5、出信号的精确度。固定定标。假定最坏的情况,对中间结果定标。这种方法可以防止溢出,同时增加了系统的信噪比。动态定标。可以监测中间结果的范围,只在需要的时候对中间结果定标。这种方法可以防止溢出但会增加计算量。3.溢出的处理方法7.1.3常用信号处理 算法中的定标方法FIR滤波器的定标方法在FIR滤波器中处理溢出的最好方法是设计时使滤波器的增益小于1,这样就不需要对输入信号定标。这种方法和累加器的保护位结合起来,可以有效地防止溢出。由于对信号处理的负面影响,在FIR滤波器中不使用固定定标和输入定标。如果不考虑计算量,在FIR滤波器中可以使用动态定标。对一些类

6、型的音频信号,饱和处理也是一种常用的方法。IIR滤波器的定标方法IIR滤波器的定点实现推荐使用多个二阶基本节级联组成,这样可以减小高阶滤波器频率响应灵敏度。由于滤波器系数的量化引入误差,因此避免溢出对IIR滤波器非常重要。可以通过把中间结果保存在处理器累加器来避免节间数据溢出。为防止在第k阶内部发生数据溢出,需要用增益系数对滤波器的单位脉冲响应(前馈通道)定标。动态标定方法。在每个阶段滤波器内部状态都被减半,以提高指令周期换取为代价提高了结果的精度。FFT的定标方法在FFT操作里,每次蝶形运算后数据平均增加一位。输入定标需要移位(FFT长度为N),这会

7、导致在计算FFT之前就衰减6dB。在固定定标中,每级蝶形运算输出除以2,这是最常用的FFT定标方法,因为它简单而且有比较好的信噪比。但是,对于大的FFT,这种定标可能会使信息丢失。另一种方法是动态定标,即在输出溢出时再除以2。在这种情况下,会在这个过程中指定一个变量,每定标一次变量的值加1,计算结束后根据变量的值把结果乘以一个系数。动态定标的信噪比最好,但会增加FFT循环次数。7.2基础算术运算加减运算乘法运算除法运算小数乘法7.2.1加减运算在数字信号处理中,加减运算是常见的算术运算。一般使用16位或32位加减运算,数值分析、浮点运算和其它操作可能需

8、要32位以上的运算。C55x有直接完成16位或32位加减运算的指令,但没有能直接完成多字加减运

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。