引言
客户在使用 STM32G474 时,希望使用 FPU 进行浮点运算,并最大化其性能。本文从 STM32G474 系统的角度、ARM DSP Lib、编译选项的影响等几个方面探讨如何提升整体性能,并介绍如何使用 KEIL 工具进行测量。
STM32G474 FPU 运算性能优化
STM32G474 使用的是 ARM Cortex-M4 内核(+FPU)。一般代码会放在 FLASH 区,通过 I-Bus 读取。这里 STM32G474 有 FLASH 预取指及 CACHE Line, 无需放入 IRAM 或CCM。因为 Cortex-M4 DSP 指令中没有运算指令与加载指令并行的混合指令,所以数据存放区域及 Bus 的选择理论上对性能的影响不大。可将 FPU 运算数据放在 SRAM1。另外还需尽量避免 SRAM 的并发访问,如使能了 DMA,DMA 传输目的地可以使用 SRAM2,从而减少潜在的 SRAM 并发访问产生的性能下降。应用则需要根据实际情况,合理使用内存区域。
使用 KEIL Trace 工具进行测量
KEIL 工程下,首先选择工程选项设置,在 Debug 选项页中,右上部使用 Debugger工具栏中选 Settings。
小结
本文介绍了使用 STM32G474 FPU 进行浮点运算,从系统的角度、ARM DSP Lib、编译选项的影响等几个方面探讨如何提升整体性能,并介绍了如何利用 KEIL Trace 工具进行测量。以供在系统性能方面有需求的客户参考借鉴。
								
								
								
631