DSP_TMS320F28377D_算法加速方法2_添加浮点运算快速补充库rts2800_fpu32_fast_supplement.lib

继上一篇博客DSP_TMS320F28377D_算法加速方法1_拷贝程序到RAM运行_江湖上都叫我秋博的博客-CSDN博客之后,本文讲第二种DSP算法加速的方法,该方法的加速效果很明显,但是加速范围仅限于32位浮点数下面这几种函数:

DSP_TMS320F28377D_算法加速方法2_添加浮点运算快速补充库rts2800_fpu32_fast_supplement.lib_第1张图片

1 工程师的关注点

下面稍微解释一下一些可能有疑问的点

1 电机控制中经常对同一个角度求sin和cos,我的测试程序结果是:1、sin和cos分开算,加速前(不添加这个库) 695.25us; 2、加速后590us; 3、sincos一起算410us。

void sincos(float32 X, float32* PtrSin, float32* PtrCos);

2 atan2是什么意思

float32 atan2 (float32 X, float32 Y)

返回浮点参数X/Y的四象限反正切

3 isqrt是什么意思

float32 isqrt (float32 X)

返回 1.0L/sqrt(X).

4 关于division(除法),我实测试了,div函数的时间是用“/”符号时间的10倍,以后还是直接用“/”符号。 另外,这个库是没有加速效果的。

5 亲测了tan函数,虽然没有包含在官方给的范围内,但是确实有加速效果

2 添加步骤

要添加 rts2800_fpu32_fast_supplement.lib这个库,首先得有这个文件,TI官网下载controlSUITE里面有。

1、把这个文件拷到项目文件夹,必须在一级目录下,放到文件夹下不行,我测试过。

DSP_TMS320F28377D_算法加速方法2_添加浮点运算快速补充库rts2800_fpu32_fast_supplement.lib_第2张图片

2、

DSP_TMS320F28377D_算法加速方法2_添加浮点运算快速补充库rts2800_fpu32_fast_supplement.lib_第3张图片

 3、

DSP_TMS320F28377D_算法加速方法2_添加浮点运算快速补充库rts2800_fpu32_fast_supplement.lib_第4张图片

4

DSP_TMS320F28377D_算法加速方法2_添加浮点运算快速补充库rts2800_fpu32_fast_supplement.lib_第5张图片

 

步骤可用说是非常简单。不过我还是强调一下,我的测试代码是在28377D上跑的,我的CCS是7.4.0。 C2000系列其他的芯片的操作应该差不多。

关于是否可以方法1叠加

方法一链接:DSP_TMS320F28377D_算法加速方法1_拷贝程序到RAM运行_江湖上都叫我秋博的博客-CSDN博客

答:可以 亲测可叠加!  

中断中是否可用

答:可以 亲测可用!
 

后续会再推出DSP算法加速的方法与大家探讨。感谢您的阅读,如果您有什么优化方法,欢迎留言分享、收藏点赞

你可能感兴趣的:(DSP,dsp,算法加速)