女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

簡述STM32G4芯片內不同空間運行代碼的速率比較

茶話MCU ? 來源:茶話MCU ? 作者:茶話MCU ? 2021-11-26 11:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

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

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

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

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

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

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

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

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

編輯:jq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 芯片
    +關注

    關注

    459

    文章

    52471

    瀏覽量

    440426
  • STM32
    +關注

    關注

    2293

    文章

    11031

    瀏覽量

    364602
  • CCM
    CCM
    +關注

    關注

    0

    文章

    164

    瀏覽量

    24738

原文標題:STM32G4芯片內不同空間運行代碼的速率比較

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    STM32IDE如何設定代碼到ITCM中運行

    近期使用STM32MUX生成STM32IDE的代碼(MCU是STM32H743),目前希望可以將部分代碼定位到ITCM中
    發表于 06-24 06:45

    STM32G431移植FreeModbus

    STM32G431移植FreeModbus 的代碼已通過驗證,在WeActStudio的STM32G431CoreBoard上進行多次測試,均可正常讀取寄存器數值。STM32G431C
    發表于 04-19 16:50 ?1次下載

    使用Hal庫的SPI讀取磁邊傳感器導致STM32G4無法運行怎么解決?

    使用 HAL庫 STM32G431 + SPI ,讀取磁邊傳感器系統運行一會直接卡死,使用調試功能最后發現卡死在if ((__HAL_SPI_GET_FLAG(hspi, SPI_FLAG_TXE
    發表于 03-14 08:24

    STM32G4串口無法發送正確的信息是怎么回事?

    STM32G4串口無法發送正確的信息
    發表于 03-14 07:14

    STM32L431上使用內部RTC,時間運行到23:59:59秒后,變為了24:00:00并不是00:00:00,為什么?

    大家好,我在STM32L431上使用內部RTC,時間運行到23:59:59秒后,變為了24:00:00,并不是00:00:00,并且weekday也沒有加一,這是為什么呢?
    發表于 03-11 06:32

    STM32和MCP2515通信,STM32這端還需要接CAN PHY嗎?

    最近在做CAN通信的相關項目,STM32G4負責接收,對端是一個MCP2510+TJA1040的組合, 想問下應該如何接?STM32這端還需要接CAN PHY嗎?
    發表于 03-10 06:18

    STM32G474的DAC4無輸出怎么解決?

    STM32G474 的DAC4采用定時器4觸發dma,OUT1連接到比較器5,測試下來 DAC4沒輸出,是配置哪里有問題嗎 定時器
    發表于 03-07 06:06

    DLPC3478長時間運行投影停止是什么原因導致的?

    1 原理圖設計是根據參考設計設計的 2 元器件是使用參考設計的元器件 3 在長時間工作時候會出現投影停止,通過IIC可以讀取到芯片的信息。投影停止時間是不確定的,運行2小時-24小時都可能出現不
    發表于 02-21 07:53

    基于STM32設計的大氣氣壓檢測裝置

    長時間運行同時又要求較高計算性能的應用。特別是選用型號為STM32F103RCT6的微控制器,它不僅具備足夠的Flash存儲空間和RAM來支持復雜的軟件算法,還內置了多種通信接口,便于連接外部傳感器和其他設備。
    的頭像 發表于 01-09 11:15 ?1298次閱讀
    基于<b class='flag-5'>STM32</b>設計的大氣氣壓檢測裝置

    2.4G &amp; 5.8G無線音頻傳輸有什么區別?

    音頻芯片&模塊傳輸應用場合有: 例如: 5.8G電吉他無線收發器, 5.8G游戲耳機雙向無線傳輸, 5.8G無線直播監聽耳機、 5.8G
    發表于 09-25 11:01

    基于ST STM32G474的400W Microinverter之數字電源方案

    大聯大友尚集團 HPL (HPLAB) 實驗室設計的 400W Micromiverter ( 微型逆變器 ) 方案,使用 ST STM32G4 系列 MCU,同時控制 MPPT 與 Inverter,實現太陽能轉換成交流電并回電網。
    的頭像 發表于 08-30 12:53 ?1897次閱讀
    基于ST <b class='flag-5'>STM32G</b>474的400W Microinverter之數字電源方案

    LKT(LCS)代碼移植芯片優勢

    智能卡芯片的程序段,獲得運行結果,并以此結果作為用戶程序進一步運行的輸入數據。因此加密芯片成了產品的一部分,而
    的頭像 發表于 08-22 10:03 ?1159次閱讀

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

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

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

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

    STM32 G0系列程序運行在BANK1,擦寫BANK2失敗,為什么?

    STM32 g0系列雙BANK芯片,程序運行在BANK1時,想要擦寫BANK2,會發生Error或者HardFault。 是否不支持這樣的操作?
    發表于 07-22 07:41