-
Notifications
You must be signed in to change notification settings - Fork 77
Description
Currently, UDB omits all Reserved/WPRI fields in CSRs as we suppose they are all reserved for the future. However, they have semantic behaviour and more than that, they have differences in semantic behaviour between some.
Let me explain:
WPRI - Software should ignore the values read from these fields, and should preserve the values held in these fields when writing values to other fields
RESERVED - software should write zeros and hardware implementations should return zeros
Therefore, if we plan to continue ommiting WPRI fields, we need to at least explicitly state the Reserved fields that are non-WPRI to avoid downstream tools that rely on this information to mistakenly intake this information as being the same behaviour.
For now, I have only caught reserved in MNSTATUS.
Reference ISA Manual clarification - riscv/riscv-isa-manual#2318