0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

簡述STM32G4芯片內(nèi)不同空間運(yùn)行代碼的速率比較

茶話MCU ? 來源:茶話MCU ? 作者:茶話MCU ? 2021-11-26 11:34 ? 次閱讀

最近有人問起程序在STM32G4片內(nèi)不同存儲空間運(yùn)行的速度差異。說實(shí)在的,這個很難說死或說出個絕對的數(shù)據(jù),畢竟結(jié)果除了跟執(zhí)行代碼的存放空間有關(guān)外,還跟代碼本身的內(nèi)容、程序邏輯、編譯工具及優(yōu)化等級等都息息相關(guān)。我這里設(shè)計(jì)了一個小測試程序做了下簡單比較,以供參考。

我們不妨先看看STM32G4系列內(nèi)部系統(tǒng)框架圖。下圖是STM32G4芯片的系統(tǒng)框架圖,我將測試程序放在圖中三個黃色高亮位置來運(yùn)行。

f6d4720e-4ddc-11ec-9eda-dac502259ad0.png

我將程序分別放在CCM、通用SRAM1、Flash區(qū)來運(yùn)行,基于不同的配置,即是否開啟指令預(yù)取、指令/數(shù)據(jù)Cache等,得到下面一個表格。代碼所在區(qū)域欄里的數(shù)據(jù)代表各種情形下的執(zhí)行時(shí)間。

f712c19e-4ddc-11ec-9eda-dac502259ad0.png

從上面表格可以看出,相同配置下在CCM里執(zhí)行速率總是最高。

至于代碼放在SRAM和Flash里的執(zhí)行速率,不同配置下結(jié)果并不太一樣。比如在開啟prefetch和使能指令/數(shù)據(jù)Cache時(shí),即第(1)種配置條件下,在SRAM里運(yùn)行的速率是最慢的,只有在上圖中的第(3)種情形下,代碼在SRAM里運(yùn)行速率相比在FLASH里運(yùn)行才凸顯出明顯優(yōu)勢。

對于STM32G4系列芯片,芯片復(fù)位后其Prefetch功能是關(guān)閉的,而指令/數(shù)據(jù)Cache是開啟的,即復(fù)位后默認(rèn)為上面的第(2)種情形。結(jié)合上圖,我們不難看出情形(1)與情形(2)的差別不大,至少不顯著。

上面數(shù)據(jù)雖只是基于特定代碼測試而得,但作為基本的方向性判斷還是可以的。

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 芯片
    +關(guān)注

    關(guān)注

    450

    文章

    49636

    瀏覽量

    417208
  • STM32
    +關(guān)注

    關(guān)注

    2258

    文章

    10828

    瀏覽量

    352499
  • CCM
    CCM
    +關(guān)注

    關(guān)注

    0

    文章

    142

    瀏覽量

    23699

原文標(biāo)題:STM32G4芯片內(nèi)不同空間運(yùn)行代碼的速率比較

文章出處:【微信號:stmcu832,微信公眾號:茶話MCU】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    STM32G4系列到底支不支持位帶操作

    印象中不止一次有人詢問STM32G4系列到底支不支持位帶操作。
    的頭像 發(fā)表于 07-29 09:45 ?1100次閱讀
    <b class='flag-5'>STM32G4</b>系列到底支不支持位帶操作

    stm32G4的tim2有霍爾模式,能不能用tim1的通道4連接tim2?

    stm32G4的tim2有霍爾模式,能不能用tim1的通道4連接tim2
    發(fā)表于 07-24 07:47

    STM32G4系列芯片定時(shí)器的延時(shí)輸出問題

    有人使用STM32G4系列芯片內(nèi)部的多個定時(shí)器做PWM輸出,輸出頻率一樣,占空比也一樣,均為50%。可是,當(dāng)他中途調(diào)整各個定時(shí)器以相同的工作參數(shù),即改變ARR的值和CCR值后,會發(fā)現(xiàn)TIM2和TIM5兩個定時(shí)器要比其它定時(shí)器延時(shí)等待一段長達(dá)20s左右的時(shí)間后才恢復(fù)正常PW
    的頭像 發(fā)表于 07-01 09:45 ?1024次閱讀
    <b class='flag-5'>STM32G4</b>系列<b class='flag-5'>芯片</b>定時(shí)器的延時(shí)輸出問題

    STM32G4芯片怎么使用最新功能三角函數(shù)?

    求助各位大佬: STM32G4芯片怎么使用最新功能三角函數(shù)?
    發(fā)表于 04-15 08:17

    請問STM32G4的ADC1,ADC2,ADC3,ADC4可以同時(shí)工作在獨(dú)立模式嗎?

    咨詢下各位: STM32G4的ADC1,ADC2,ADC3,ADC4可以同時(shí)工作在獨(dú)立模式嗎?每個ADC的觸發(fā)條件為同一個條件?;蛘哒f其他STM32也行。這樣是否相當(dāng)于我同事采樣和轉(zhuǎn)換4
    發(fā)表于 04-10 06:01

    STM32G4 FLASH全為0x00的原因?怎么解決?

    請教一下大家,我想測試STLINK UTILITY的Automatic Mode功能(芯片STM32G474的開發(fā)板自帶的STM32G474RET6U),來測試一下量產(chǎn)刷程序(配合設(shè)置讀保護(hù)
    發(fā)表于 04-08 07:06

    STM32G4系列的comp比較器的剎車事件和比較中斷怎么用?

    STM32G4系列的comp比較器的剎車事件和比較中斷怎么用
    發(fā)表于 04-03 07:33

    請問STM32G4的推挽PWM如何配置?

    STM32G4的推挽PWM如何配置?
    發(fā)表于 04-03 06:17

    使用RT-Thread操作系統(tǒng)時(shí),在STM32G4系列微控制器上使用PWM設(shè)備驅(qū)動時(shí)遇到了編譯錯誤怎么解決?

    我在使用RT-Thread操作系統(tǒng)時(shí),嘗試在STM32G4系列微控制器上使用PWM設(shè)備驅(qū)動時(shí)遇到了編譯錯誤。具體來說,問題出現(xiàn)在處理不同STM32系列時(shí)鐘配置的條件編譯指令中。編譯器報(bào)告了一個“懸空
    發(fā)表于 03-22 07:22

    對于STM32G4系列的MCU,其GPIO的位操作是否還支持位帶操作?

    STM32G4的memory map。GPIO是掛在AHB2總線上的。 但是手冊里面沒有明確找到,其別名區(qū)的起始地址。
    發(fā)表于 03-21 07:34

    求一種基于STM32G4芯片TIM+SPI+DMA應(yīng)用設(shè)計(jì)方案

    現(xiàn)在有STM32用戶使用STM32G474R芯片開發(fā)產(chǎn)品,其中用到TIM1做電源驅(qū)動,TIM1工作在中心對齊計(jì)數(shù)模式。
    的頭像 發(fā)表于 03-17 10:57 ?1353次閱讀
    求一種基于<b class='flag-5'>STM32G4</b><b class='flag-5'>芯片</b>TIM+SPI+DMA應(yīng)用設(shè)計(jì)方案

    stm32G4 H7系列的HRTIM高分辨率定時(shí)器可以做捕獲輸入嗎?

    stm32G4,H7系列的HRTIM高分辨率定時(shí)器可以做捕獲輸入嗎,如果可以輸入引腳在哪。想測量外部脈沖頻率600-800KHz,誤差盡量?。ā?0Hz) 有什么方案給推薦一下。謝謝!!
    發(fā)表于 03-15 07:33

    請問STM32G4系列的MCU可以支持以太網(wǎng)嗎?

    請問STM32G4系列的MCU可以支持以太網(wǎng)嗎?該系列同時(shí)支持以太網(wǎng)和USB Host或OTG接口的型號有嗎?
    發(fā)表于 03-15 06:14

    STM32G4 UART+TIMER+DMA應(yīng)用示例

    這里使用STM32G4系列Nucleo開發(fā)板演示如下需求的實(shí)現(xiàn)過程。
    的頭像 發(fā)表于 11-27 10:42 ?1722次閱讀
    <b class='flag-5'>STM32G4</b> UART+TIMER+DMA應(yīng)用示例

    STM32G4 應(yīng)用程序與 Option Bytes 同時(shí)燒錄問題

    STM32G4 應(yīng)用程序與 Option Bytes 同時(shí)燒錄問題
    的頭像 發(fā)表于 09-28 18:02 ?906次閱讀
    <b class='flag-5'>STM32G4</b> 應(yīng)用程序與 Option Bytes 同時(shí)燒錄問題