TMS320C28346芯片,请问如何进一步提高浮点乘除法运算速度?感觉现在计算有点慢,时钟300M,一次乘法/除法需要约350ns左右。是否有更好的方法提高计算速度?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
TMS320C28346芯片,请问如何进一步提高浮点乘除法运算速度?感觉现在计算有点慢,时钟300M,一次乘法/除法需要约350ns左右。是否有更好的方法提高计算速度?
你好,请问你目前是如何处理乘除法运算的?
你好,没有做特殊处理。首先是工程里面选择rts2800_fpu32.lib,浮点单元支持选择fpu32,然后包括了math.h和fpu.h文件,用到一些平方、开方以及fft运算。程序里面针对需要运算的浮点变量直接采用“ * ”、“ / ”等运算符。
你好,使能了FPU的话乘法指令应该计算速度很快,和定点运算效率没有什么差别
但无论浮点还是定点,都请尽量避免除法。因为C2000有内置乘法硬件加速器,乘法、加法运算速度非常快,但除法会很占资源。
在实时性很强的算法中,如果一定要用到除法,尽量让除法在中断之外计算。
你的问题中提到
一次乘法/除法需要约350ns左右
理论上乘法的速度会比除法快10倍以上,所以是否是测试有误?
另外,关于其他方法提高计算速度,我会咨询一下其他工程师,看是否有这方面的建议可以提供的。
你好,我是根据总的乘法、除法次数所用的时间预估每次乘法、除法的时间,如果乘法会比除法快10倍以上,那可能时间主要花在除法上。我这边抽空会再测一下单次乘法/除法的时间。还请帮忙看下是否有其他方法提高计算速度?谢谢。