05-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、安全、內存管理、頁表…
快速鏈接:
.
👉👉👉 個人博客筆記導讀目錄(全部) 👈👈👈
目錄
- CLIDR_EL1 : Cache Level ID Register
- CTR_EL0 : Cache Type Register
- CCSIDR_EL1 和 CSSELR_EL1
- DCZID_EL0 : Data Cache Zero ID Register
- SCTLR_ELx
cache的很多結構、緩存替換策略、協議都是和硬件相關的,很多也都是更改不了的。對于不同的架構不同的core,可能都是不一樣的。那么這些信息是如何告訴操作系統的呢?
操作系統需要知道以下信息:
- 有多少級緩存?
- cacheline有多大?
- 緩存中有多少set,多少way?
- 對于清零操作,有多少數據將清零?
CLIDR_EL1 : Cache Level ID Register
(注意,沒有CLIDR_EL0 、CLIDR_EL2 、CLIDR_EL3 , 只有CLIDR_EL1 。)
提供cache的層級關系,以及Inner cache的定義。
CTR_EL0 : Cache Type Register
(注意,沒有CTR_EL1、CTR_EL2、CTR_EL3, 只有CTR_EL0。)
獲取cache的一些信息,如cache line的大小
CCSIDR_EL1 和 CSSELR_EL1
(這兩個寄存器,也是只有EL1,沒有EL0/2/3后綴)
CSSELR_EL1寫入cache level值,然后從CCSIDR_EL1中讀取該level cache的 set、way信息
(CSSELR_EL1)
(CCSIDR_EL1 )
DCZID_EL0 : Data Cache Zero ID Register
(注意,沒有DCZID_EL1、DCZID_EL2、DCZID_EL3, 只有DCZID_EL0。)
DC ZVA, 按照虛擬地址數據清零,那么是給多少size的數據清零呢,由DCZID_EL0配置。
BS, bits [3:0]–Log2 of the block size in words.
SCTLR_ELx
(注意,有SCTLR_EL1、SCTLR_EL2、SCTLR_EL3, 沒有SCTLR_EL0。)
SCTLR.I : disable or enable I-Cache
SCTLR.C: disable or enable D-Cache
SCTLR.M: disable or enable MMU
總結
以上是生活随笔為你收集整理的05-cache相关的系统寄存器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 00-深入学习cache
- 下一篇: 草稿--深度学习cache系列