From: Luke Kenneth Casson Leighton Date: Wed, 17 Oct 2018 00:48:52 +0000 (+0100) Subject: move CSR pseudocode section X-Git-Tag: convert-csv-opcode-to-binary~4916 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=63a05c57b4b10afc367404dde26d44a239a64d21;p=libreriscv.git move CSR pseudocode section --- diff --git a/simple_v_extension/specification.mdwn b/simple_v_extension/specification.mdwn index 85a951203..0fafb1c0f 100644 --- a/simple_v_extension/specification.mdwn +++ b/simple_v_extension/specification.mdwn @@ -234,9 +234,11 @@ Setting destoffs and srcoffs is realistically intended for saving state so that exceptions (page faults in particular) may be serviced and the hardware-loop that was being executed at the time of the trap, from user-mode (or Supervisor-mode), may be returned to and continued from -where it left off. +where it left off. The reason why this works is because setting +User-Mode STATE will not change (not be used) in M-Mode or S-Mode +(and is entirely why M-Mode and S-Mode have their own STATE CSRs). -The format of the SVSTATE CSR is as follows: +The format of the STATE CSR is as follows: | (28..26) | (25..24) | (23..18) | (17..12) | (11..6) | (5...0) | | -------- | -------- | -------- | -------- | ------- | ------- |