完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
配置pmp,spmp模块的区域范围是4G,并且权限都是rwx,在机器模式下都是正常运行的,但切换到用户模式就会触发异常Instruction page fault,这个是什么原因呢?
void JumpUserMode(uint32_t func){ __RV_CSR_WRITE(CSR_MSCRATCH, sMachineModeStack + MACHINE_MODE_STACK_SIZE); __RV_CSR_CLEAR(CSR_MSTATUS, MSTATUS_MPP); __RV_CSR_WRITE(CSR_MEPC, func); __ASM volatile ( "mret ");}/** * @brief Main function */int main(void) { /* System Clocks Configuration */ PMP_Config(); JumpUserMode((uint32_t)Led); while (1) { LedBlink(LED2_PORT, LED2_PIN); delay_ms(1000); }} |
|
相关推荐
1个回答
|
|
|
在RISC-V架构中, 1. PMP(Physical Memory Protection)配置问题
2. MSTATUS寄存器配置
3. MEPC寄存器配置
4. 用户模式下的内存映射
5. 栈指针配置
6. 异常处理
7. 调试建议
8. 代码示例
总结
|
|
|
|
|
只有小组成员才能发言,加入小组>>
在软件SDK中选择不同的下载模式时,是哪个部件更改了QSPI0中寄存器的值?
696 浏览 2 评论
cmt_instret_ena的使能为什么要排除branch等指令造成流水线冲刷的情况?
842 浏览 1 评论
e203 rom启动仅仅是引导到itcm执行指令吗?flash启动就是加载指令到itcm中吗?
967 浏览 1 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-4 15:07 , Processed in 0.745869 second(s), Total 78, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
369
