RISC-V CSR寄存器
CSR是控制狀態(tài)寄存器,RISC-V中CSR寄存器,需要使用csrr、csrw、csrrw等特定指令進(jìn)行訪問。
M模式和S模式都有自己的CSR寄存器,但是大體上相同。下面列舉一些常用的CSR。
M模式CSR寄存器
mstatus
狀態(tài)寄存器,保存了全局中斷使能狀態(tài)和其他狀態(tài),例如切換模式前,保存當(dāng)前模式。
mtvec
異常入口基地址寄存器。保存發(fā)生異常時(shí)需要跳轉(zhuǎn)的地址。
medeleg
和mideleg
medeleg是異常委托,mideleg是中斷委托。例如,在M模式下發(fā)生異常或中斷時(shí),可以通過這兩個(gè)寄存器,將中斷/異常交給S模式或者其他模式處理。
mip
和mie
mie是中斷使能寄存器,對需要使能的中斷,在對應(yīng)位使能。
mip是中斷等待寄存器,表示目前正準(zhǔn)備處理的中斷。
hpm
全稱Hardware Performance Monitor,硬件性能單元,用于性能計(jì)數(shù)。包括了兩類寄存器:mhpmcounter和mhpmevent
- mhpmcounter:性能計(jì)數(shù)器
- mhpmevent:用于配置性能事件
mcounteren
和mcountinhibit
這兩個(gè)也是hpm相關(guān)的寄存器,主要用于控制hpm的使能、計(jì)數(shù)禁止。
- mcounteren:計(jì)數(shù)器使能
- mcountinhibit:禁止計(jì)數(shù)
mscratch
用于保存M模式指向hart上下文的指針,并在進(jìn)入M模式的處理程序時(shí),和用戶寄存器交換。
mepc
發(fā)生中斷時(shí),當(dāng)前程序的PC值,保存在mepc中,中斷返回時(shí),會(huì)從mepc讀取PC值。
mcause
用于保存發(fā)生中斷或異常的情況,中斷和異常描述如下:
1代表中斷,0代表異常,每個(gè)異常/中斷都有對應(yīng)的編碼值,通過mcause的值,可以很清楚的知道發(fā)生了什么中斷或異常,特別在調(diào)試過程,mcause
發(fā)揮了很大作用。
mvtal
異常值寄存器,例如發(fā)生異常時(shí),保存出錯(cuò)的地址。
S模式CSR寄存器
S模式的CSR和M模式基本上是一樣的,只不過將第一個(gè)字母m改為了s,例如mcause
改為了scause
,mvtal
改為了svtal
。它們的功能基本相同,這里就不再贅述了。
需要注意的是,S模式除了擁有M模式相同功能的CSR外,另外還增加了一個(gè)stap
寄存器。
stap
寄存器主要是給MMU使用,stap
寄存器保存了頁表的基地址,MMU通過stap
可以找到第一級(jí)頁表,進(jìn)而找到物理地址。stap
寄存器涉及到的內(nèi)容比較多,關(guān)于stap
相關(guān)內(nèi)容,以后會(huì)詳細(xì)展開講講。
-
寄存器
+關(guān)注
關(guān)注
31文章
5423瀏覽量
123431 -
內(nèi)核
+關(guān)注
關(guān)注
3文章
1410瀏覽量
41119 -
Linux
+關(guān)注
關(guān)注
87文章
11466瀏覽量
212843 -
CSR
+關(guān)注
關(guān)注
3文章
118瀏覽量
70092 -
計(jì)數(shù)器
+關(guān)注
關(guān)注
32文章
2285瀏覽量
96052 -
RISC
+關(guān)注
關(guān)注
6文章
479瀏覽量
84712
發(fā)布評論請先 登錄
【RISC-V開放架構(gòu)設(shè)計(jì)之道|閱讀體驗(yàn)】RISC-V基礎(chǔ)整數(shù)指令集RV32I
【RISC-V開放架構(gòu)設(shè)計(jì)之道|閱讀體驗(yàn)】RISC-V基礎(chǔ)整數(shù)指令集
RISC-V 基礎(chǔ)學(xué)習(xí):RISC-V 基礎(chǔ)介紹
RISC-V工作模式及寄存器基本知識(shí)
RISC-V基礎(chǔ)指令詳解
優(yōu)化的關(guān)鍵,RISC-V中的性能監(jiān)控
如何使用J-Link和Embedded Studio讀寫RISC-V處理器的CSR?
初探RISC-V—《RISC-V體系結(jié)構(gòu)編程與實(shí)踐》
RISC-V CSR 相關(guān)指令集

AArch64寄存器介紹
RISC-V MCU gp全局指針說明
用于RISC-V處理器的三重模塊化冗余ALU和寄存器文件的設(shè)計(jì)示
RISC-V PMP寄存器介紹

RISC-V特權(quán)架構(gòu)和通用寄存器

評論