riscv / riscv-fast-interrupt

Proposal for a RISC-V Core-Local Interrupt Controller (CLIC)
https://jira.riscv.org/browse/RVG-63
Creative Commons Attribution 4.0 International
245 stars 49 forks source link

Interrupt level behavior for NMIs #309

Closed Silabs-ArjanB closed 1 year ago

Silabs-ArjanB commented 1 year ago

What is the intended impact of (non-recoverable) NMIs on the interrupt level?

For Synchronous Exception Handling the following is stated:

Horizontal synchronous exception traps, which stay within a privilege mode, are serviced with the same interrupt level as the instruction that raised the exception.

Vertical synchronous exception traps, which are serviced at a higher privilege mode, are taken at interrupt level 0 in the higher privilege mode.

Would a similar behavior be the desired for NMIs? (Of course an NMI is not a synchronous exception, but it would be nice if a similar section to section 4.9.4 Synchronous Exception Handling can be handled for (unrecoverable) NMIs)