(WIP)RISC-V Machine-Level ISA
6/19/25About 1 min
3. Machine-Level ISA, Version 1.13
本篇為 RISC-V Machine-Level ISA(Version 20241101)的中文翻譯與筆記,原文可於官方 github 的第 3 章中看到。 大部分的情況下我會直接直譯,但有些地方我覺得文件實在寫得很繞,那種地方我就會直接用我自己的話寫了,或是多補一個 Tips Block 做解釋
本篇內的 Info block 為原文中的補充段落,我全部都有翻,但會依照前後文的語境來決定要不要安插 Info block 進來,也就是說雖然本文中有些段落不在藍色的 Info 區塊內,但在原文中其屬於補充段落。 至於綠色的 Tips block 則是我個人的補充筆記
3.1. Machine-Level CSRs
除了本節所描述的 machine-level 的 CSR 外,M-mode 的程式碼也可以存取所有較低權限等級的 CSR
3.1.1. Machine ISA (misa
) Register
misa 這個 CSR 是一個 WARL 類型的可讀寫暫存器,用來回報該 hart 所支援的 ISA。 每個實作都必須要讓這個暫存器可以被讀取,但也可以回傳 0,代表 misa 暫存器未被實作,這種情況下需要透過額外的非標準機制來判斷 CPU 的能力