资料介绍
1.前言本应用笔记基于STM32L476平台,通过实际测量来评定使能FPU时浮点运算效率的情况。2.测试工具STM32L476 Nucleo,示波器3.测试方法MCU 运行频率设置为16MHz,根据下面公式1 做N 次浮点运算,分使能FPU和禁止FPU两种情况,测试完成相同运算所需要的时间。在例程中通过翻转IO PB13 来标定完成运算所需要的时间。3.1 测试代码根据公式1,分别定义A、B、C 三个常量,如下:/* Private constants---------------------------------------------------------*/#define A_CONSTANT(0.285f)#define B_CONSTANT(0.443f)#define C_CONSTANT(0.698f)根据公式做对应的运算并通过GPIOC Pin0 输出,测定对应消耗时间:HAL_GPIO_WritePin(GPIOB,GPIO_PIN_13, GPIO_PIN_SET);temp = A_CONSTANT*x*x +B_CONSTANT*x + C_CONSTANT;HAL_GPIO_WritePin(GPIOB,GPIO_PIN_13, GPIO_PIN_RESET);3.2 代码分析根据测试用的一元二次方程,经过IAR 编译后,汇编结果如下:3.2.1 FPU 使能从汇编代码可以看出,使能FPU 的情况下,完成一元二次方程的运算只需要7 条单周期指令,总共耗时为7 个Clock 周期。通过IAR 的方针模式运行,需要的CPU cycles 为7.3.2.2 FPU 禁止从汇编代码可以看出,未使能FPU 的情况下,完成该一元二次方程的运算需要执行14 条指令,其中包括3 条两周期指令,6 条单周期指令,5 条程序跳转指令。通过IAR 的方针模式运行,需要的CPU cycles 为207.4.测试数据及结论IO完成两次翻转耗时6.48 uS;使能FPU 时,除去IO 翻转耗时,完成一次运算时间为6.52 uS(13 uS -6.48 uS),如下图示:禁止FPU 时,除去IO 翻转耗时,完成一次运算时间为87.4 uS(93.88 uS -6.48 uS),如下图示:小结下,根据上面相关测试数据大致可得出如下结论:• 完成同样的一元二次方程运算,禁止FPU时所消耗的时间约为使能FPU时消耗时间的13.4 倍左右。(mbbeetchina)
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- AN4761_通过STM32L476、486的FSMC外设驱动外部存储器 4次下载
- STM32L476入坑-2-STM32CubeMX安装 9次下载
- STM32L476入坑-1 18次下载
- 浅析USB3.0定义.xlsx下载 37次下载
- MCU中导入DSP/FPU有何作用?资料下载 5次下载
- STM32之DAC资料下载 47次下载
- 编程经验:如何提高单片机程序执行效率?资料下载 2次下载
- 简析比较器的原理及应用资料下载 26次下载
- 32位CPU中执行单元总体结构资料下载 9次下载
- 比较器的设计问题资料下载 10次下载
- 如何让ARM代码执行速度更快?资料下载 1次下载
- STM32L476xx超低功耗手臂设计方案 4次下载
- STM32L476 NBIOT模块和BC95开发板的源代码详细资料免费下载 255次下载
- PICmicro中档单片机系列之比较器 0次下载
- STM32L476 编译环境的搭建及串口调试 124次下载
- 模拟IC电路之比较器设计详细过程 413次阅读
- 如何使用Keil打开GD32 FPU及使用ARM DSP库 ? 692次阅读
- 在STM32中的func1和func2函数,哪个效率高? 288次阅读
- 浅析Cortex-M FPU的Lazy Stacking机制 337次阅读
- STM32F103系列开发_点亮LED灯 1859次阅读
- 如何提高单片机C语言程序的执行效率 1688次阅读
- 微雪电子STM32L476RGT6开发板简介 6948次阅读
- 微雪电子32L476GDISCOVERY STM32L4开发板简介 3203次阅读
- 使用Keil下载Hex文件进STM32 7665次阅读
- STM32F4的FPU性能的设置及要点 9991次阅读
- 浅析MCU的内存分配与代码执行 4311次阅读
- 关于如何提高单片机执行效率的一些建议 3504次阅读
- 最全STM32外设资料汇总 2.7w次阅读
- 可穿戴设备开发板之:STM32 Nucleo 2810次阅读
- STM32F103C8T6引脚图 43.2w次阅读
下载排行
本周
- 1TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 2开关电源基础知识
- 5.73 MB | 6次下载 | 免费
- 3100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 4嵌入式linux-聊天程序设计
- 0.60 MB | 3次下载 | 免费
- 5基于FPGA的光纤通信系统的设计与实现
- 0.61 MB | 2次下载 | 免费
- 6基于FPGA的C8051F单片机开发板设计
- 0.70 MB | 2次下载 | 免费
- 751单片机窗帘控制器仿真程序
- 1.93 MB | 2次下载 | 免费
- 8基于51单片机的RGB调色灯程序仿真
- 0.86 MB | 2次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33564次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21548次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6653次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537796次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191185次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183278次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多