STM32系列的浮点运算能力

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/danteLiujie/article/details/51858296

总结,

CortexM4架构的都是单精度的

CotexM7结构的单双都有,目前是F7才有M7架构



从文档en.brstm32-STM32 32-bit MCU family - Leading supplier of ARM® Cortex®-M microcontrollers来看

STM32F7/4/3,

STM32L4

都带有DSP和浮点运算单元

系列 频率 特点
STM32F7 216Mhz Cortex-M7 L1-Cache 高性能
STM32F4 180Mhz Cortex-M4 高性能
STM32F3 72Mhz Cortex-M4  
STM32L4 80Mhz Cortex-M4 极低功耗

根据我们的经验,F767双精度跑一次用20+ms,23左右吧

单精度和整数运算好像没差别,可能是因为我们的测试用例用的都是双精度测试用例,等有空的时候研究下这个地方:为什么单精度和整数运算好像没差别


我们的目标是用200+ms以下,考虑到特殊情况复杂度是指数级增长,控制在160ms以下才是合理的


根据文档en.brstm32f7-STM32F7 series - High performance - 32-bit MCUs

F7系列里面,频率都是216

产品 FPU L1-Cache
STM32F7x8/9 双精度 16+16K
STM32F7x7 双精度 16+16K
STM32F7x6 单精度 4+4K
STM32F765 双精度 16+16K
STM32F745 单精度 4+4K

Cortex7的文档

8.1. About the FPU

The Cortex-M7 processor with FPU is an implementation of thesingle-precision and double-precision variant of the ARMv7-M Architecture with Floating-Point Extension (FPv5).



根据Cortex4的文档:

7.1. About the FPU

The Cortex-M4 FPU is an implementation of thesingle precision variant of the ARMv7-M Floating-Point Extension (FPv4-SP). It provides floating-point computation functionality that is compliant with the ANSI/IEEE Std 754-2008, IEEE Standard for Binary Floating-Point Arithmetic, referred to as the IEEE 754 standard. The FPU supports all single-precision data-processing instructions and data types described in the ARM Architecture Reference Manual.


所以F4/3还有L4应该都是单精度的了



展开阅读全文

没有更多推荐了,返回首页