Skip to content

Commit

Permalink
Merge pull request riscv#214 from ved-rivos/mnstatus_pic
Browse files Browse the repository at this point in the history
add register layout for mnstatus
  • Loading branch information
ved-rivos authored Mar 18, 2024
2 parents 6110bdc + ef4c14c commit 171a94c
Showing 1 changed file with 27 additions and 0 deletions.
27 changes: 27 additions & 0 deletions src/cfi_forward.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -457,6 +457,33 @@ holds the previous `ELP`, and is updated as specified in <<FORWARD_TRAPS>>. The
* 0 - `NO_LP_EXPECTED` - no landing pad instruction expected.
* 1 - `LP_EXPECTED` - a landing pad instruction is expected.

==== Resumable NMI Status Register (`mnstatus`)

.Resumable NMI Status (`mnstatus`) when `MXLEN=64`
[wavedrom, ,svg]
....
{reg: [
{bits: 3, name: 'WPRI'},
{bits: 1, name: 'NMIE'},
{bits: 3, name: 'WPRI'},
{bits: 1, name: 'MNPV'},
{bits: 1, name: 'WPRI'},
{bits: 1, name: 'MNPELP'},
{bits: 1, name: 'WPRI'},
{bits: 2, name: 'MNPP'},
{bits: 51, name: 'WPRI'},
], config:{lanes: 4, hspace:1024}}
....

The Zicfilp extension introduces the `MNPELP` (bit 9) in `mnstatus`. The
`MNPELP` field holds the previous `ELP`, and is updated as specified in
<<FORWARD_TRAPS>>. The `MNPELP` field is encoded as follows:

* 0 - `NO_LP_EXPECTED` - no landing pad instruction expected.
* 1 - `LP_EXPECTED` - a landing pad instruction is expected.

<<<

[[FCIFIACT]]
=== Landing-Pad-Enabled (LPE) State

Expand Down

0 comments on commit 171a94c

Please sign in to comment.