你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【STM32U3 评测】3.开启HSP计算FFT时间

[复制链接]
jundao721 发布时间:2026-6-2 16:58
      STM32U3C5 是带HSP硬件加速器的。也是第一次使这个功能,摸索着进行测试,顺便和上一次开启FPU 计算进行对比。; n' f9 [. J4 T) f* H  ?2 G3 u3 ]" D
还是使用上一次的FFT 的CubeMX文件进行配置,勾选Pinout & Configuration 栏中Computing->HSP1。如图1所示:
' y' L4 F" j& r7 H$ k 3-1.png 3 p. L' O+ {* t  \! [* d
图1
3 x" v0 J( M9 ]8 b0 W) l
# Y. A" e: s) [7 b* v% P# d在下面Middleware and Software Packs中选择HSP_ENGINE,勾选Accelerator,如图2所示:: C) [6 ~, f3 ~" h7 I1 H7 G
3-2.png ) q1 X+ u! K) F8 b6 h. C. `$ ~1 c
图2
$ u: _; i6 \' y. i
6 N4 }; [' F1 T& d) o) S, M" z; s: l其他参数默认即可。重新生成Cmake项目。
4 A1 g" L4 O! }: s% _9 z, h( H8 I. b) v6 O3 ]) ^

! v, G8 A/ |! M% u! D添加主要测试代码,如下所示:
7 S/ g( n* ^3 Z( V) s  w) o1 w
  1. HSP_ACC_Fft_f32(hsp, hsp_cfft_buffer, HSP_LOG2NBP_256, 0U, 0U);2 x4 {. ~5 ~4 s1 G" M9 B
  2. HSP_ACC_CmplxMag_f32(hsp, hsp_cfft_buffer, magnitude_hsp, FFT_SIZE);2 K3 k4 l' S+ I* U; Z: j, T$ x

  3. 1 X& J5 Z% R! |" \- ]
  4. volatile uint32_t hsp_cycles = DWT->CYCCNT - hsp_start;
    3 L, w9 [4 E8 r( ^  e' ^2 i
  5. printf("HSP Direct Command FFT computation took %lu cycles\r\n", hsp_cycles);
复制代码

% i, {, H- j; w6 a编译,DEBUG,观察左侧Variables 的时间,要比FPU的快3X多。测试结果如图3所示:3 I+ r: z8 ?0 Q- D; c: q
3-3.png
% e/ M5 H5 Q8 b* @图3/ v- Q4 ^0 J3 _$ o
" e1 d+ s; ]  o  d4 g5 E
实际应用中,简单的FFT直接使用FPU就行了,复杂的信号处理必须上HSP。& U1 P( v1 {* w% [' F. K! I
: |* T1 x* a) ]! h# z' w) |6 o
0 U0 s. i$ I; b! _! ?. D8 ^
收藏 评论0 发布时间:2026-6-2 16:58

举报

0个回答

所属标签

相似技术帖

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版