使用28335,主频150MHZ,程序从flash加载到RAM中运行,做1000次float型乘法计算,启用FPU时通过GPIO口示波器测得运行时间为604uS,不使用FPU时间长达2.8mS,请问你们测试下来需要多长时间的,感觉不太对劲。
Linda:您好!
建议您启用FastRTS快速浮点库,在controlSUITE以下目录下可以找到相关参考文档controlSUITE_C28x_FPU_FastRTS.pdf:
C:\ti\controlSUITE\libs\math\FPUfastRTS\V100\doc
使用28335,主频150MHZ,程序从flash加载到RAM中运行,做1000次float型乘法计算,启用FPU时通过GPIO口示波器测得运行时间为604uS,不使用FPU时间长达2.8mS,请问你们测试下来需要多长时间的,感觉不太对劲。
user5104497:
回复 Linda:
试过的,运行时间和FPU的时长是一样的!
使用28335,主频150MHZ,程序从flash加载到RAM中运行,做1000次float型乘法计算,启用FPU时通过GPIO口示波器测得运行时间为604uS,不使用FPU时间长达2.8mS,请问你们测试下来需要多长时间的,感觉不太对劲。
user5104497:进一步测试发现是定时器中断对FPU的运行有影响,不加定时器中断跑1000次 float乘法的时间是240uS,加了三个定时器中断后跑1000次float乘法的运行时间就变为604uS了,各位高手有没有优化的解决方案,谢谢!
使用28335,主频150MHZ,程序从flash加载到RAM中运行,做1000次float型乘法计算,启用FPU时通过GPIO口示波器测得运行时间为604uS,不使用FPU时间长达2.8mS,请问你们测试下来需要多长时间的,感觉不太对劲。
Linda:
回复 user5104497:
您好!
请问加三个定时器中断的目的是?
使用28335,主频150MHZ,程序从flash加载到RAM中运行,做1000次float型乘法计算,启用FPU时通过GPIO口示波器测得运行时间为604uS,不使用FPU时间长达2.8mS,请问你们测试下来需要多长时间的,感觉不太对劲。
mangui zhang:统计时间的方式是否合理?
使用28335,主频150MHZ,程序从flash加载到RAM中运行,做1000次float型乘法计算,启用FPU时通过GPIO口示波器测得运行时间为604uS,不使用FPU时间长达2.8mS,请问你们测试下来需要多长时间的,感觉不太对劲。
user5104497:
回复 Linda:
三个定时器,一个用于实现500kHz固定占空比的方波,另外两个用于实现占空比可调的PWM波,EPM和APWM都已经用完了,所以采用定时器实现的。