RISC-V架构——中断委托和中断注入

1、中断委托

1.1、中断委托的作用

(1)默认情况下,所有的陷入(中断和异常)都是在M模式下处理,然后再返回到发生陷入前的模式;

(2)所有陷入都在M模式处理会涉及到模式切换,而模式切换是比较消耗性能和时间的。比如:在S模式下发生外部中断,需要切换到M模式处理中断,然后再返回到S模式;

(3)中断委托:就是把本来需要在M模式处理的中断和异常委托给S模式处理,当被委托的中断发生时,直接跳转到S模式的异常处理函数,不用再切换到M模式处理;

1.2、中断委托相关寄存器

1.2.1、中断委托寄存器mideleg

1.2.2、异常委托寄存器medeleg

1.3、中断委托注意事项

(1)当处理器支持S模式时,必须实现mideleg和medeled寄存器,如果不支持S模式就不要实现;

(2)中断委托不能把M模式产生的中断委托给S模式。举例:把非法指令异常委托给S模式处理,S模式和M模式下发生的非法指令由S模式处理,而不再用M模式处理;但是M模式发生的非法指令异常,还是需要由M模式处理,不会交由S模式处理。

(3)中断委托寄存器mideleg和medeleg,只能在M模式下访问和修改;

2、中断注入

2.1、中断注入的作用

(1)中断注入,顾名思义就是在M模式下手动向S模式去产生一个中断。比如:向mip寄存器的bit5写1,S模式就会产生一个时钟中断;

(2)中断注入类似于软件中断,由软件来产生,相对而言是硬件中断,硬件中断一般是靠GPIO引脚的高低电平来触发;

2.2、中断注入相关寄存器MIP

相关推荐
国科安芯3 小时前
星载通信载荷信号处理中抗辐射微控制器的选型与适应性分析
人工智能·嵌入式硬件·mcu·信号处理·risc-v·抗辐射·空间信息
RISCV_Explorer1 天前
RISC-V RVV向量编程模型机制解析——vsetvl配置、掩码与尾元素策略及长度无关编程
后端·risc-v
RISCV_Explorer1 天前
RISC-V电源管理与低功耗实战——WFI指令、电源域划分与唤醒路径设计
单片机·嵌入式硬件·risc-v
ChipCamp1 天前
Spike-pk在RISC-V RTL开发验证中的应用:黄金参考基准
risc-v·spike·difftest·co-simulation·spike-pk·riscv-pk
Hi202402172 天前
Vortex CUDA 生态适配:让 CUDA C、CUTLASS 与 Triton 在 RISC-V GPGPU 上运行
人工智能·risc-v·gpgpu
国科安芯2 天前
用 AS32X601 做一块关节电机驱动板:三相桥、电流采样、封波保护、FOC 代码一次讲透
risc-v·foc·bldc·关节电机·机器人关节·as32x601·三相逆变桥
硅基手札2 天前
【risc-v专栏 07】启动与 bare-metal 流程
risc-v
硅基手札3 天前
【risc-v专栏 08】扩展生态与 -march/-mabi 匹配
risc-v
硅基手札3 天前
【risc-v专栏 06b】内存架构深挖:PMA / ePMP / Cache / CMO / MMU 细节 / RVWMO 形式化
架构·risc-v
硅基手札3 天前
【risc-v专栏03】CSR 速查与特权架构 M/S/U
单片机·架构·risc-v