每個(gè) PMP 區(qū)域都由一個(gè) 8 位 pmpXcfg 字段描述,與一個(gè) 64 位 pmpaddrX寄存器結(jié)合使用,該寄存器保存受保護(hù)區(qū)域的基地址。每個(gè)區(qū)域的范圍取決于下一節(jié)中描述的尋址 (A) 模式。pmpXcfg 字段位于 64 位 pmpcfgY CSR中。
每個(gè) 8 位 pmpXcfg 字段包括一個(gè)讀、寫(xiě)和執(zhí)行位,外加一個(gè)兩位地址匹配字段 A 和一個(gè)鎖定位 L。允許重疊區(qū)域,其中編號(hào)最小的 PMP條目勝出該區(qū)域。
PMP 配置寄存器
對(duì)于 RV64 架構(gòu),未實(shí)現(xiàn) pmpcfg1 和 pmpcfg3。這減少了占用空間,因?yàn)?pmpcfg2 已經(jīng)包含 RV32 和 pmp11cfg的配置字段 pmp8cfg 和 RV64。
pmpcfgY 和 pmpaddrX 寄存器只能通過(guò) CSR 特定指令訪問(wèn),例如用于讀取的 csrr 和用于寫(xiě)入的 csrw。
復(fù)位后,PMP 寄存器字段 A 和 L 設(shè)置為 0。RISC?V 指令集手冊(cè)第 II 卷:特權(quán)架構(gòu)版本 1.10 未指定所有其他 hart狀態(tài)。
下面是一些使用 NAPOT 地址模式的例子。
PMP 地址寄存器
PMP 有 8 個(gè)地址寄存器。每個(gè)地址寄存器 pmpaddrX 都與相應(yīng)的 pmpXcfg字段相關(guān)聯(lián)。每個(gè)地址寄存器都包含右移兩位的受保護(hù)區(qū)域的基地址,以實(shí)現(xiàn)最小 4 字節(jié)對(duì)齊。
根據(jù) RISC?V 指令集手冊(cè),第二卷:特權(quán)架構(gòu),版本 1.10,最大編碼地址位為 [55:2]
-
寄存器
+關(guān)注
關(guān)注
31文章
5435瀏覽量
124606 -
內(nèi)核
+關(guān)注
關(guān)注
3文章
1416瀏覽量
41462 -
PMP
+關(guān)注
關(guān)注
0文章
45瀏覽量
18443 -
RISC
+關(guān)注
關(guān)注
6文章
482瀏覽量
85020 -
架構(gòu)
+關(guān)注
關(guān)注
1文章
528瀏覽量
25996 -
sifive
+關(guān)注
關(guān)注
0文章
37瀏覽量
9609
發(fā)布評(píng)論請(qǐng)先 登錄
【RISC-V開(kāi)放架構(gòu)設(shè)計(jì)之道|閱讀體驗(yàn)】RISC-V基礎(chǔ)整數(shù)指令集
RISC-V 基礎(chǔ)學(xué)習(xí):RISC-V 基礎(chǔ)介紹
RISC-V工作模式及寄存器基本知識(shí)
RISC-V基礎(chǔ)指令詳解
如何在RISC-V處理器上使用FreeRTOS?
RISC-V開(kāi)源處理器核介紹
玄鐵VirtualZone:基于RISC-V架構(gòu)的安全擴(kuò)展
初探RISC-V—《RISC-V體系結(jié)構(gòu)編程與實(shí)踐》
RISC-V 發(fā)展
AArch64寄存器介紹
RISC-V MCU gp全局指針說(shuō)明
用于RISC-V處理器的三重模塊化冗余ALU和寄存器文件的設(shè)計(jì)示
RISC-V特權(quán)架構(gòu)和通用寄存器

RISC-V CSR寄存器介紹

評(píng)論