【发布时间】:2023-04-09 22:08:01
【问题描述】:
我正在尝试为我的 RV32I 内核实现一个简单的中断控制器。我相信我了解在 RISC-V 中应该如何处理中断,以及 CSR 寄存器在该过程中的作用。
RISC-V 定义了三种中断源:外部、软件和定时器。我了解计时器和外部中断是如何产生的。但是,我不明白如何或什么会产生软件中断。指令?一系列指令?也许实现定义的标志?我不知道。
谁能给出一个软件中断的例子和解释,如果相关的话最好用相关的汇编代码?
提前致谢!
【问题讨论】:
标签: interrupt riscv irq softirq