打印
[活动专区]

【AT-START-F407测评】+ FFT效率测试

[复制链接]
1174|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主

抽空对240MHz运行的AT32F407VG做1024点FFT。DSP使用CMSIS DSP的arm_cortexM4lf_math.lib。无任何优化。通过TMR1对其运行时间测量,得到运行时间为589us。注意,使用优化会造成时间测量错误。

这里不得不吐槽一下,为什么在定时器配置中已经通过TMR_ClearITPendingBit(TMR1,TMR_FLAG_Update);清除中断标志位,可还是会进入一次中断。
下图为STM32F407做FFT的效率:




FFT.zip

9.02 MB

使用特权

评论回复
沙发
aple0807| | 2021-1-31 13:32 | 只看该作者
中断重入的问题之前遇到过,退出中断前加 __DSB();可以解决,M4的流水线特性导致的。

使用特权

评论回复
板凳
muyichuan2012| | 2021-2-1 09:36 | 只看该作者
请问 “下图为STM32F407做FFT的效率:”      具体是描述AT32F407还是STM32F407?

使用特权

评论回复
地板
纪国圣|  楼主 | 2021-2-1 15:42 | 只看该作者
muyichuan2012 发表于 2021-2-1 09:36
请问 “下图为STM32F407做FFT的效率:”      具体是描述AT32F407还是STM32F407?

下图指的是STM32F103和STM32F407使用ST官方的FFT算法运行时间测量结果。

使用特权

评论回复
5
纪国圣|  楼主 | 2021-2-1 22:08 | 只看该作者
这里更正一下。由于在配置TMR1时,分频系数应该是239,结果写成239-1,即238,则TMR1的时间分辨率为1.004us,则实际运行时间为591us。特此更正说明。

使用特权

评论回复
6
fcccc| | 2021-2-2 16:11 | 只看该作者
本帖最后由 fcccc 于 2021-2-2 16:12 编辑

比STM407慢这么多没理由啊他们才168Mhz.

使用特权

评论回复
7
纪国圣|  楼主 | 2021-2-2 16:59 | 只看该作者
fcccc 发表于 2021-2-2 16:11
比STM407慢这么多没理由啊他们才168Mhz.

ST使用的是专门优化过的DSP库,所以看起来数据很漂亮。我这个使用的是ARM推出的CMSIS DSP,应该没有优化,并且这个测试程序为了能正常测量出数据,也没有开优化(-O0)。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

77

主题

406

帖子

5

粉丝