資料介紹
1.前言本應(yīng)用筆記基于STM32L476平臺(tái),通過實(shí)際測(cè)量來評(píng)定使能FPU時(shí)浮點(diǎn)運(yùn)算效率的情況。2.測(cè)試工具STM32L476 Nucleo,示波器3.測(cè)試方法MCU 運(yùn)行頻率設(shè)置為16MHz,根據(jù)下面公式1 做N 次浮點(diǎn)運(yùn)算,分使能FPU和禁止FPU兩種情況,測(cè)試完成相同運(yùn)算所需要的時(shí)間。在例程中通過翻轉(zhuǎn)IO PB13 來標(biāo)定完成運(yùn)算所需要的時(shí)間。3.1 測(cè)試代碼根據(jù)公式1,分別定義A、B、C 三個(gè)常量,如下:/* Private constants---------------------------------------------------------*/#define A_CONSTANT(0.285f)#define B_CONSTANT(0.443f)#define C_CONSTANT(0.698f)根據(jù)公式做對(duì)應(yīng)的運(yùn)算并通過GPIOC Pin0 輸出,測(cè)定對(duì)應(yīng)消耗時(shí)間: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 代碼分析根據(jù)測(cè)試用的一元二次方程,經(jīng)過IAR 編譯后,匯編結(jié)果如下:3.2.1 FPU 使能從匯編代碼可以看出,使能FPU 的情況下,完成一元二次方程的運(yùn)算只需要7 條單周期指令,總共耗時(shí)為7 個(gè)Clock 周期。通過IAR 的方針模式運(yùn)行,需要的CPU cycles 為7.3.2.2 FPU 禁止從匯編代碼可以看出,未使能FPU 的情況下,完成該一元二次方程的運(yùn)算需要執(zhí)行14 條指令,其中包括3 條兩周期指令,6 條單周期指令,5 條程序跳轉(zhuǎn)指令。通過IAR 的方針模式運(yùn)行,需要的CPU cycles 為207.4.測(cè)試數(shù)據(jù)及結(jié)論IO完成兩次翻轉(zhuǎn)耗時(shí)6.48 uS;使能FPU 時(shí),除去IO 翻轉(zhuǎn)耗時(shí),完成一次運(yùn)算時(shí)間為6.52 uS(13 uS -6.48 uS),如下圖示:禁止FPU 時(shí),除去IO 翻轉(zhuǎn)耗時(shí),完成一次運(yùn)算時(shí)間為87.4 uS(93.88 uS -6.48 uS),如下圖示:小結(jié)下,根據(jù)上面相關(guān)測(cè)試數(shù)據(jù)大致可得出如下結(jié)論:? 完成同樣的一元二次方程運(yùn)算,禁止FPU時(shí)所消耗的時(shí)間約為使能FPU時(shí)消耗時(shí)間的13.4 倍左右。(mbbeetchina)
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- ES0250_STM32L476xx/STM32L486xx單片機(jī)的局限性
- STM32L476xx STM32L486xx勘誤表
- DS10198_STM32L476xx單片機(jī)數(shù)據(jù)手冊(cè)
- UM1919_面向32L476GDISCOVERY探索套件的STM32CubeL4演示固件
- AN4761_通過STM32L476、486的FSMC外設(shè)驅(qū)動(dòng)外部存儲(chǔ)器
- STM32L476入坑-2-STM32CubeMX安裝
- STM32L476入坑-1
- STM32L476RG利用串口下載程序
- 基于STM32L476G-EVAL微控制器的參考設(shè)計(jì)
- 基于STM32L476G-DISCO微控制器的參考設(shè)計(jì)
- MCU中導(dǎo)入DSP/FPU有何作用?資料下載
- STM32L476xx超低功耗手臂設(shè)計(jì)方案 4次下載
- STM32L476 NBIOT模塊和BC95開發(fā)板的源代碼詳細(xì)資料免費(fèi)下載 258次下載
- STM32L476xx_datasheet 300次下載
- STM32L476 編譯環(huán)境的搭建及串口調(diào)試 124次下載
- 如何提高單片機(jī)的運(yùn)算效率之FPU 110次閱讀
- 【GD32 MCU 入門教程】GD32 MCU FPU 使用方法 176次閱讀
- 模擬IC電路之比較器設(shè)計(jì)詳細(xì)過程 3338次閱讀
- 如何使用Keil打開GD32 FPU及使用ARM DSP庫 ? 2843次閱讀
- 淺析Cortex-M FPU的Lazy Stacking機(jī)制 863次閱讀
- stm32 24l01按鍵 改 發(fā)射頻率 3241次閱讀
- 如何提高單片機(jī)C語言程序的執(zhí)行效率 1801次閱讀
- 微雪電子STM32L476RGT6開發(fā)板簡(jiǎn)介 7737次閱讀
- 微雪電子32L476GDISCOVERY STM32L4開發(fā)板簡(jiǎn)介 3691次閱讀
- STM32F4的FPU性能的設(shè)置及要點(diǎn) 1w次閱讀
- 淺析MCU的內(nèi)存分配與代碼執(zhí)行 4419次閱讀
- 最全STM32外設(shè)資料匯總 2.8w次閱讀
- STM32F042和STM32L031性能分析和比較 1.4w次閱讀
- STM32L0X1超低功耗系列芯片引腳及特性分析 1.5w次閱讀
- 可穿戴設(shè)備開發(fā)板之:STM32 Nucleo 2897次閱讀
下載排行
本周
- 1TPS54202H降壓轉(zhuǎn)換器評(píng)估模塊用戶指南
- 1.02MB | 7次下載 | 免費(fèi)
- 2華瑞昇CR215芯片數(shù)字萬用表原理圖
- 0.21 MB | 1次下載 | 3 積分
- 3SMD LED選型目錄 燈珠手冊(cè)
- 5.36 MB | 1次下載 | 免費(fèi)
- 4Tiva C系列DK-TM4C129X入門指南
- 1.69MB | 1次下載 | 免費(fèi)
- 5電涌保護(hù)器(SPD)的選擇、安裝以及裝配
- 4.57 MB | 1次下載 | 免費(fèi)
- 6時(shí)源芯微EMC前車燈案例
- 458.59 KB | 1次下載 | 免費(fèi)
- 7bq25890、bq25892雙級(jí)聯(lián)充電器EVM(PWR692)用戶指南
- 2.02MB | 1次下載 | 免費(fèi)
- 8TPS54426降壓轉(zhuǎn)換器評(píng)估模塊用戶指南
- 847.7KB | 次下載 | 免費(fèi)
本月
- 1ADI高性能電源管理解決方案
- 2.43 MB | 156次下載 | 免費(fèi)
- 22024PMIC市場(chǎng)洞察
- 2.23 MB | 63次下載 | 免費(fèi)
- 3開關(guān)電源設(shè)計(jì)原理手冊(cè)
- 1.83 MB | 30次下載 | 免費(fèi)
- 4智能門鎖原理圖
- 0.39 MB | 28次下載 | 免費(fèi)
- 5OAH0428最新規(guī)格書(中文)
- 2.52 MB | 15次下載 | 7 積分
- 6ST7789V2單芯片控制器/驅(qū)動(dòng)器英文手冊(cè)
- 3.07 MB | 9次下載 | 1 積分
- 7LTH7充電電路和鋰電池升壓5V輸出電路原理圖
- 0.04 MB | 7次下載 | 免費(fèi)
- 8TPS54202H降壓轉(zhuǎn)換器評(píng)估模塊用戶指南
- 1.02MB | 7次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935119次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420061次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233084次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191367次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183334次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73807次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65987次下載 | 10 積分
評(píng)論
查看更多