打印
[应用相关]

单片机计算FFT很慢,在开启FPU后有没有其他办法更快点。

[复制链接]
1553|47
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
风之呢喃|  楼主 | 2025-2-28 16:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如何利用FPU加速卡尔曼滤波算法,将计算时间从500μs缩短至100μs以下?

使用特权

评论回复
评论
muyichuan2012 2025-3-10 14:37 回复TA
有调用CMSIS DSP库没有? 
沙发
modesty3jonah| | 2025-3-9 19:31 | 只看该作者
利用硬件加速模块              

使用特权

评论回复
板凳
jonas222| | 2025-3-9 20:08 | 只看该作者
如果单片机内置了专用的FFT硬件加速器,那么直接使用这些加速器将是最有效的方法。

使用特权

评论回复
地板
chenci2013| | 2025-3-9 21:48 | 只看该作者
如果单片机没有FPU或者FPU性能不足,可以考虑使用定点运算来代替浮点运算。定点运算通常更快,因为它使用整数运算,不需要复杂的浮点数处理。

使用特权

评论回复
5
vivilyly| | 2025-3-10 11:53 | 只看该作者
汇编语言可以直接操作 CPU 的寄存器和指令集,能够更高效地完成计算任务。

使用特权

评论回复
6
backlugin| | 2025-3-10 15:05 | 只看该作者
可以在特定条件下显著提高计算速度。你可以根据具体需求选择合适的快速算法。

使用特权

评论回复
7
uiint| | 2025-3-10 18:18 | 只看该作者
虽然FPU可以加速浮点运算,但在某些情况下,使用定点运算可能会更高效。你可以将浮点数转换为定点数进行计算,最后再转换回浮点数。这可以减少浮点运算的开销。

使用特权

评论回复
8
我只会加减乘除| | 2025-3-11 11:47 | 只看该作者
用移位代替除法

使用特权

评论回复
9
uytyu| | 2025-3-11 13:13 | 只看该作者
合理安排数据的存储方式,减少内存访问时间。

使用特权

评论回复
10
tifmill| | 2025-3-11 15:11 | 只看该作者
在FFT计算过程中,尽量减少中断的发生,因为中断处理会打断FFT计算,增加额外的开销。

使用特权

评论回复
11
tabmone| | 2025-3-11 17:04 | 只看该作者
如果单片机支持,可以使用硬件加速器来加速FFT计算。

使用特权

评论回复
12
primojones| | 2025-3-11 20:05 | 只看该作者
通过代码优化,如减少不必要的计算、优化循环结构、使用更高效的算法等,可以进一步提高FFT的计算速度。

使用特权

评论回复
13
mattlincoln| | 2025-3-12 16:16 | 只看该作者
将FFT计算中的循环结构进行展开,减少循环控制的开销,提高指令执行的效率

使用特权

评论回复
14
jtracy3| | 2025-3-12 17:57 | 只看该作者
在进行FFT计算之前,对输入数据进行排序和分组,使得数据在计算过程中具有更好的局部性,便于处理器进行缓存优化,从而提高数据访问速度。

使用特权

评论回复
15
hudi008| | 2025-3-12 19:38 | 只看该作者
FFT计算中存在大量的对称性,充分利用这些对称性可以减少计算次数。

使用特权

评论回复
16
uptown| | 2025-3-12 21:41 | 只看该作者
FFT 计算通常需要大量的数据存储和访问。

使用特权

评论回复
17
febgxu| | 2025-3-14 10:32 | 只看该作者
预先计算并存储一些常用的三角函数值(如正弦、余弦值)在查找表中。在FFT计算过程中,直接通过查表获取所需的三角函数值,而不是实时计算,这样可以大大节省计算时间。

使用特权

评论回复
18
i1mcu| | 2025-3-14 12:15 | 只看该作者
通过降低采样率和FFT的大小              

使用特权

评论回复
19
benjaminka| | 2025-3-14 13:57 | 只看该作者
对于一些关键的计算函数,可以使用内联函数来减少函数调用的开销;对于性能要求极高的部分代码,可以使用汇编语言编写,以充分发挥单片机的硬件特性,提高代码的执行效率。

使用特权

评论回复
20
hilahope| | 2025-3-14 15:59 | 只看该作者
不同的 FFT 算法在计算复杂度和性能上有所差异。

使用特权

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

本版积分规则

1

主题

9

帖子

0

粉丝