美文网首页
RISC-V PMP功能的整理

RISC-V PMP功能的整理

作者: jin陵城外 | 来源:发表于2024-09-02 09:30 被阅读0次

RISC-V的PMP功能主要是用来限制某快区域内存的读、写、执行权限,相关策略如下:

1. 只有在M模式下才能进行PMP读、写、执行权限的设置,U和S模式下不行;

2. 在未设置锁定位的情况下,PMP读、写、执行权限的设置只在U和S模式下生效,M模式下不受影响;

3. 在设置锁定位的情况下,PMP读、写、执行权限的设置在M模式也生效;

4. 在M模式下,可以通过设置mstatus.mprv和mstatus.mpp域从而让CPU当作U和S模式处理,故此时PMP读、写、执行权限也会生效;

5. 在M模式下,未设置PMP表项的内存区域默认可读可写可执行,在U和S模式下,未设置PMP表项的内存区域默认不可访问(通过mstatus.mprv和mstatus.mpp域设置的当作U和S模式处理);

6. 锁定位设置之后,不能再修改,除非复位;

7. NAPOT模式地址匹配的内存大小需要是2的幂次方,同时最小值为8字节;

8. NA4模式地址匹配的内存大小固定为4字节,属于NAPOT的子集;

9. TOR模式需要使用2组PMP entry才能设置一块内存区域的PMP权限;

10. 内存地址需要右移2位再设置到PMP addr寄存器中;

11. 一个PMP cfg寄存器(占32/64位)中存在多组PMP的cfg设置,每组占8位;

相关文章

网友评论

      本文标题:RISC-V PMP功能的整理

      本文链接:https://www.haomeiwen.com/subject/wfvcljtx.html