A53 cache的架构解读
引流關鍵詞:緩存,高速緩存,cache, CCI,CMN,CCI-550,CCI-500,DSU,SCU,L1,L2,L3,system cache, Non-cacheable,Cacheable, non-shareable,inner-shareable,outer-shareable, optee、ATF、TF-A、Trustzone、optee3.14、MMU、VMSA、cache、TLB、arm、armv8、armv9、TEE、安全、內存管理、頁表…
快速鏈接:
.
👉👉👉 個人博客筆記導讀目錄(全部) 👈👈👈
目錄
- 1. A53使用經典的 `bit-LITTLE`架構
- 2. A53的cache配置
- 3. cache的層級結構:
- 4. L2 memory System系統介紹
- 5. 多cluster之間的緩存一致性
- 6. CCI的介紹(以CCI-550為例)
- 7. 經典示例框圖
1. A53使用經典的 bit-LITTLE架構
以下是一張比較早期的經典的bit-LITTLE的架構圖
2. A53的cache配置
L1 I-Cache
- 可配:8KB, 16KB, 32KB, or 64KB
- cacheline:64bytes
- 2路組相連
- 128-bit的讀L2 memory的接口
L1 D-Cache
- 可配:8KB, 16KB, 32KB, or 64KB
- cacheline:64bytes
- 4路組相連
- 256-bit的寫L2 memory的接口
- 128-bit的讀L2 memory的接口
- 64-bit的讀L1到datapath
- 128-bit的寫datapath到L1
L2 memory System
- 集成了SCU( Snoop Control Unit ),做多可以連接4個core
- SCU內重復拷貝了 L1 Data Cache的TAGs
- L2 memory system對外的接口,可以是ACE 或 CHI,128-bit寬度
L2 cache
- 可配置的: 128KB, 256KB, 512KB, 1MB and 2MB.
- cacheline:64bytes
- Physically indexed and tagged cache(PIPT)
- 16路組相連的結構
L1 data cache TAG
A53的L1 Data cache遵從的是MOESI協議,如下所示在L1 data cache的tag中存有MOESI的標記位
MOESI state
L1 Instruction cache TAG
L1 instruction cache是只讀的,所以也就無需硬件維護的多core之間instruction cache的一致性,所以也就無需組從MOESI協議,以下展示了*L1 Instruction cache的TAG,其中標記為很少,無MESI標記位。
3. cache的層級結構:
- L1 cache是private的在core中
- L2 cache是share的在cluster中
4. L2 memory System系統介紹
在bit.LITTLE架構中中,在Cluster中,有一個SCU單元,SCU單元主要是執行和維護L1 cache的一致性(MESI協議 或 其變體如MOESI協議)。
在L2 Memory System的中,除了包含L2 cache,也會包含L1 Duplicate tag RAM(這里指的其實是L1 Data Cache Tags)。
5. 多cluster之間的緩存一致性
cluster和外界的接口,可以是ACE或CHI(目前常用的是ACE,后面的趨勢可能是CHI)
- 如果使用的是ACE,那么多cluster之間的一致性,依靠CCI + ACE 來維護
- 如果使用的是CHI,那么多cluster之間的一致性,依靠CMN + CHI來維護
6. CCI的介紹(以CCI-550為例)
CCI-550 包含一個包容性監聽過濾器(snoop filter),用于記錄存儲在ACE 主緩存。
偵聽過濾器可以在未命中的情況下響應偵聽事務,并偵聽適當的主控只有在命中的情況下。Snoop 過濾器條目通過觀察來自 ACE 主節點的事務來維護以確定何時必須分配和取消分配條目。
偵聽過濾器可以響應多個一致性請求,而無需向所有人廣播ACE 接口。例如,如果地址不在任何緩存中,則監聽過濾器會以未命中和將請求定向到內存。如果地址在處理器緩存中,則請求被視為命中,并且指向在其緩存中包含該地址的 ACE 端口。
7. 經典示例框圖
總結
以上是生活随笔為你收集整理的A53 cache的架构解读的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 多级cache之间的替换(缓存)策略
- 下一篇: 03-cache的查询原理