本应用笔记描述了意法半导体开发的首款指令缓存(ICACHE)和数据缓存(DCACHE)。
在 Arm® Cortex®-M33 处理器的 AHB 总线中引入的 ICACHE 和 DCACHE 嵌入到下表中列出的 STM32 微控制器(MCU)中。这些缓存使用户从内部和外部存储器提取指令和数据时或在用于外部存储器的数据流量时提高应用性能并降低功耗。
本文档提供了典型示例,以强调 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 存储器:
–指示将哪些数据包含在缓存数据存储器中的地址标签
–有效位
- 数据存储器,包含缓存的数据
DCACHE 存储器包括:
- 具有以下元素的 TAG 存储器:
–指示将哪些数据包含在缓存数据存储器中的地址标签
–有效位 特权位
– dirty 位
- 数据存储器,包含缓存的数据
ICACHE 功能
双主端口
ICACHE 通过两个 AHB 主端口来访问 AHB 总线矩阵:master1(快速总线)和 master2(慢速总线)。此功能允许在访问不同的存储区(如内部 Flash 存储器、内部 SRAM 和外部存储器)时使流量解耦,以减少缓存缺失时的CPU 停止。