0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

RISC-V PMP寄存器介紹

麥辣雞腿堡 ? 來源:嵌入式Linux充電站 ? 作者: Vincent ? 2023-10-07 17:39 ? 次閱讀

每個(gè) PMP 區(qū)域都由一個(gè) 8 位 pmpXcfg 字段描述,與一個(gè) 64 位 pmpaddrX寄存器結(jié)合使用,該寄存器保存受保護(hù)區(qū)域的基地址。每個(gè)區(qū)域的范圍取決于下一節(jié)中描述的尋址 (A) 模式。pmpXcfg 字段位于 64 位 pmpcfgY CSR中。

每個(gè) 8 位 pmpXcfg 字段包括一個(gè)讀、寫和執(zhí)行位,外加一個(gè)兩位地址匹配字段 A 和一個(gè)鎖定位 L。允許重疊區(qū)域,其中編號最小的 PMP條目勝出該區(qū)域。

PMP 配置寄存器

對于 RV64 架構(gòu),未實(shí)現(xiàn) pmpcfg1 和 pmpcfg3。這減少了占用空間,因?yàn)?pmpcfg2 已經(jīng)包含 RV32 和 pmp11cfg的配置字段 pmp8cfg 和 RV64。

圖片

pmpcfgY 和 pmpaddrX 寄存器只能通過 CSR 特定指令訪問,例如用于讀取的 csrr 和用于寫入的 csrw。

圖片

復(fù)位后,PMP 寄存器字段 A 和 L 設(shè)置為 0。RISC?V 指令集手冊第 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é)對齊。

根據(jù) RISC?V 指令集手冊,第二卷:特權(quán)架構(gòu),版本 1.10,最大編碼地址位為 [55:2]

圖片

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5250

    瀏覽量

    119200
  • 內(nèi)核
    +關(guān)注

    關(guān)注

    3

    文章

    1336

    瀏覽量

    40084
  • PMP
    PMP
    +關(guān)注

    關(guān)注

    0

    文章

    45

    瀏覽量

    18100
  • RISC
    +關(guān)注

    關(guān)注

    6

    文章

    460

    瀏覽量

    83566
  • 架構(gòu)
    +關(guān)注

    關(guān)注

    1

    文章

    501

    瀏覽量

    25374
  • sifive
    +關(guān)注

    關(guān)注

    0

    文章

    34

    瀏覽量

    9443
收藏 人收藏

    評論

    相關(guān)推薦

    RISC-V PMP調(diào)試

    RISC-V PMP調(diào)試
    的頭像 發(fā)表于 06-08 11:52 ?1690次閱讀
    <b class='flag-5'>RISC-V</b> <b class='flag-5'>PMP</b>調(diào)試

    RISC-V開放架構(gòu)設(shè)計(jì)之道|閱讀體驗(yàn)】RISC-V基礎(chǔ)整數(shù)指令集

    第2章 RV32I:RISC-V基礎(chǔ)整數(shù)指令集 本章重點(diǎn)講解構(gòu)成RISC-V基礎(chǔ)整數(shù)指令集的基本指令和指令格式。主要包含寄存器間操作的R型,用于短立即數(shù)和取數(shù)操作的I型,用于存數(shù)操作的S型,用于條件
    發(fā)表于 01-31 21:10

    RISC-V 基礎(chǔ)學(xué)習(xí):RISC-V 基礎(chǔ)介紹

    縮寫 [###] 用于標(biāo)識處理位寬,取值[32, 64,128],也就是處理寄存器位寬 [abc...xyz] 標(biāo)識該處理支持的指令模塊集合 比如:RV64IMAC, 表示6
    發(fā)表于 03-12 10:25

    RISC-V工作模式及寄存器基本知識

    RISC-V Linux為例,Linux應(yīng)用程序處于U模式,Linux內(nèi)核/uboot處于S模式,M模式則是OpenSBI。M模式擁有最高訪問權(quán)限,Linux內(nèi)核如果要訪問CSR寄存器,則必須由S模式切換
    發(fā)表于 04-12 14:06

    如何在RISC-V處理上使用FreeRTOS?

    RISC-V實(shí)現(xiàn)共有的寄存器的基本移植,以及一組macros,實(shí)現(xiàn)硬件特定的特性和擴(kuò)展。1. 快速入門為RISC-V內(nèi)核構(gòu)建FreeRTOS,步驟如下:1包含F(xiàn)reeRTOS內(nèi)核源代碼及RIS
    發(fā)表于 11-29 15:54

    RISC-V開源處理介紹

    本期文章目錄一個(gè)小型RISC-V開源處理介紹!#SOC#FPGA#RISC-V點(diǎn)擊閱讀數(shù)字積木從零開始寫RISC-V處理
    發(fā)表于 07-23 09:42

    玄鐵VirtualZone:基于RISC-V架構(gòu)的安全擴(kuò)展

    (PMP)RISC-V架構(gòu)提供了一種PMP物理內(nèi)存保護(hù)機(jī)制,用于隔離M模式與S/U模式下的內(nèi)存訪問。只有M模式才有權(quán)限配置PMP。PMP包含
    發(fā)表于 09-01 14:38

    初探RISC-V—《RISC-V體系結(jié)構(gòu)編程與實(shí)踐》

    最近有幸讀了一本介紹RISC-V的書籍《RISC-V體系結(jié)構(gòu)編程與實(shí)踐》,這是一本非常有價(jià)值的書籍,它介紹RISC-V體系結(jié)構(gòu)的各個(gè)方面,
    發(fā)表于 03-28 11:41

    RISC-V 發(fā)展

    通用寄存器,每個(gè)通用寄存器都有各自的用途。例如x2是作為sp棧指針、a0-a1用來保存函數(shù)參數(shù)或返回值。x0寄存器被硬編碼為了0,就是個(gè)0值寄存器。ABI名稱相當(dāng)于這些通用
    發(fā)表于 04-14 10:18

    RISC-V gp全局指針寄存器說明

    ,RISC-V 32個(gè)寄存器之一,為了優(yōu)化±2KB內(nèi)全局變量的訪問。 gp寄存器在啟動代碼中加載為__global_pointer$的地址,并且之后不能被改變。 linker時(shí)使用__global_pointer
    發(fā)表于 09-11 16:57

    AArch64寄存器介紹

    作為 RISC 架構(gòu),AArch64 提供了大量的通用寄存器。除通用寄存器之外,本節(jié)還會介紹特殊寄存器、系統(tǒng)控制
    的頭像 發(fā)表于 08-24 09:57 ?5670次閱讀

    RISC-V MCU gp全局指針說明

    gp ,g lobal pointer,全局指針寄存器,RISC-V 32個(gè)寄存器之一,為了優(yōu)化±2KB內(nèi)全局變量的訪問。
    的頭像 發(fā)表于 02-15 11:55 ?1493次閱讀

    用于RISC-V處理的三重模塊化冗余ALU和寄存器文件的設(shè)計(jì)示

    用于RISC-V處理的三重模塊化冗余ALU和寄存器文件的設(shè)計(jì)示例 演講ppt分享
    發(fā)表于 07-17 16:34 ?2次下載

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

    RISC-V特權(quán)架構(gòu) ARM有7種工作模式,而RISC-V也有不同的模式,這些模式在RISC-V中也被稱為特權(quán)架構(gòu)。 RISC-V總共有四種模式,分別是U、S、H和M模式: U模式被編
    的頭像 發(fā)表于 10-08 14:48 ?1204次閱讀
    <b class='flag-5'>RISC-V</b>特權(quán)架構(gòu)和通用<b class='flag-5'>寄存器</b>

    RISC-V CSR寄存器介紹

    RISC-V CSR寄存器 CSR是控制狀態(tài)寄存器,RISC-V中CSR寄存器,需要使用csrr、csrw、csrrw等特定指令進(jìn)行訪問。
    的頭像 發(fā)表于 10-08 14:53 ?4478次閱讀
    <b class='flag-5'>RISC-V</b> CSR<b class='flag-5'>寄存器</b><b class='flag-5'>介紹</b>