Skip to content

Implement of "Smrnmi extension" #2079

Open
@wusong-ai

Description

@wusong-ai

If only the "Smrnmi extension" is implemented, is it necessary to follow the implementation scheme described in "The RISC-V Instruction Set Manual: Volume II Privileged Architecture 3.1.6.2. Double Trap Control in mstatus Register" (i.e., updating mn* CSRs and using the RNMI handler to handle exceptions) when the processor is in M mode and mnstatus.NMIE = 1?

Image

When implementing as upon, in the scenario where the processor is in M mode with mnstatus.NMIE = 0 and an exception occurs, the descriptions in Volume II's "3.1.6.2 Double Trap Control in mstatus Register" and "8.5. RNMI Operation" appear to conflict. For microarchitecture implementation, should this case be handled by halting the hart or by updating CSRs and processing the exception via the RNMI handler?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions