微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 定点DSP C55X实现浮点相关运算

定点DSP C55X实现浮点相关运算

时间:04-16 来源:嵌入式技术网 点击:

精度浮点型数据,再除以10,即得到了最后相关运算的结果。经实际运算检验,通过这种方法在C5509里进行浮点运算,最终结果实现了很高的精度,而且通过调用汇编语言,极大地提高了运算的效率。

  2.3 仿真

  实际在用户板上用TI公司提供的CCS Emulator调试程序,实现了硬件仿真;而对此DSP算法来说,也可用TI公司提供的软件仿真器(Simulator)实现软件仿真。

  TI公司提供的软件CCS中有一项强大的探测点功能。它是一个开发算法的工具,将计算机数据文件传送到目标板或计算机的缓冲区中提供DSP软件应用,而且可以通过CCS提供的图形窗口观察输入/输出数据波形。

  本次算法设计中利用CCS的断点和探测点进行数据的输入,利用图形窗口观察输入/输出的波形。

  2.4 实际运算的结果分析

  从输入波形可以看到,有4种不同的频率,可以算出最低频率是800 Hz,经过800 Hz相关运算得出的输入波形与输出波形对比如图1所示。


  在图l中,可以看到输入波形中频率最低的波形。2个波峰时间差(即周期)是0.0054-0.00416=0.00124s,取倒数是806.45,所以此波形是800Hz部分;再看输出波形,4个尖峰正好分别对应输入4个800 Hz频率分量。如果在后面再加上低通滤波器。就可以滤出更平滑的曲线,如图2所示。


  2.5 测试程序运行时间

  CCS中提供了~种评价器(profiler)。它通过收集在指定代码区间程序执行的统计性能,确定程序中各段所花费的处理器时间,从而识别并消除性能发挥的瓶颈,缩短程序的执行时间,使程序更有效;利用评价器分析可以确定执行某个特殊的函数花费了多少个时钟周期,以及对它调用的频繁度等。

  本设计中相关浮点运算通过C语言编程和C、汇编语言混合编程两种方式的对比,用CCS提供的评价器可以测出,调用汇编语言的方式比纯C语言编程方式,速度提高了51.2%。

  结语

  在定点DSP中进行浮点运算,要经过复杂的数据格式转化,因此用定点DSP取代浮点DSP,在降低设备成本的情况下,必定会提高研发的成本。

  如果直接把IEEE754标准的32位单精度浮点数据转化为16位整型数,要经过相当复杂的过程,在满足一定精度的前提下,可以使用本文的转化方式。使用C语言和汇编语言混合编程的方法,达到了大大提高运算效率的目的,不失为很灵活的编程方法。

发布者:小宇

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top