0 简介
介绍几种缩短控制算法执行时间的方法,对于更高性能的DSP可以采用CLA以及TMU来缩短算法执行时间。
1 控制算法加速方法
1.1 方法1:将控制算法拷贝到RAM中运行
此方法只需要添加一行代码和一个预定义,即可达到算法整体加速的目的。
#pragma CODE_SECTION(Ad_Cali_Process,".TI.ramfunc");
ramfunc是在flash中进行加载,并在RAM中进行运行的(具体哪块RAM看CMD配置)。因此在main函数中需要有下列语句,代表DSP开机运行时程序从flash中加载到ram中运行。
MemCopy(&RamfuncsRunStart,&RamfuncsLoadStart,&RamfuncsLoadSize);
目前项目中用到这种方法,将控制相关的函数均放在ram中运行。
1.2 方法2:使用fastRTS Library以缩短除法,开根号等运算执行时间
这在含有除法以及开根号算法中,这种方法可以大大降低运行时间。dsp在150mhz的频率下,不适用RTS库,运行一个除法运算需要260个周期才能完成,使用RTS库后仅仅需要59个周期就可以完成。
2 扩展阅读
1、DSP_TMS320F28377D_算法加速方法1_拷贝程序到RAM运行:https://www.yii666.com/blog/683523.html
2、DSP28335算法加速技巧:https://zhuanlan.zhihu.com/p/454095567