本應用筆記描述了意法半導體開發(fā)的首款指令緩存(ICACHE)和數(shù)據(jù)緩存(DCACHE)。
在 Arm? Cortex?-M33 處理器的 AHB 總線中引入的 ICACHE 和 DCACHE 嵌入到下表中列出的 STM32 微控制器(MCU)中。這些緩存使用戶從內(nèi)部和外部存儲器提取指令和數(shù)據(jù)時或在用于外部存儲器的數(shù)據(jù)流量時提高應用性能并降低功耗。
本文檔提供了典型示例,以強調(diào) ICACHE 和 DCACHE 功能,并便于配置。
STM32L5 系列智能架構
此架構基于總線矩陣,允許多個主設備(Cortex-M33、ICACHE、DMA1/2 和 SDMMC1)訪問多個從設備(如Flash 存儲器、SRAM1/2、OCTOSPI1 或 FSMC)。
STM32U5 系列智能架構
此架構基于總線矩陣,允許多個主設備(Cortex-M33、ICACHE、DCACHE、GPDMA1、DMA2D 和SDMMC1/2)訪問多個從設備(如 Flash 存儲器、SRAM1/2/3/4、BKPSRAM、OCTOSPI1/2 或 FSMC)。
ICACHE 存儲器包括:
- 具有以下元素的 TAG 存儲器:
–指示將哪些數(shù)據(jù)包含在緩存數(shù)據(jù)存儲器中的地址標簽
–有效位
- 數(shù)據(jù)存儲器,包含緩存的數(shù)據(jù)
DCACHE 存儲器包括:
- 具有以下元素的 TAG 存儲器:
–指示將哪些數(shù)據(jù)包含在緩存數(shù)據(jù)存儲器中的地址標簽
–有效位 特權位
– dirty 位
- 數(shù)據(jù)存儲器,包含緩存的數(shù)據(jù)
ICACHE 功能
雙主端口
ICACHE 通過兩個 AHB 主端口來訪問 AHB 總線矩陣:master1(快速總線)和 master2(慢速總線)。此功能允許在訪問不同的存儲區(qū)(如內(nèi)部 Flash 存儲器、內(nèi)部 SRAM 和外部存儲器)時使流量解耦,以減少緩存缺失時的CPU 停止。