aboutsummaryrefslogtreecommitdiff
path: root/src/priv-csrs.adoc
diff options
context:
space:
mode:
authorBill Traynor <wmat@riscv.org>2023-04-19 13:14:02 -0400
committerBill Traynor <wmat@riscv.org>2023-04-19 13:14:02 -0400
commit4518280c01842e74aee4f4ba17a14cdb442ecb9a (patch)
tree573afdddfb33eea01b0a374b459d8f13f10efee7 /src/priv-csrs.adoc
parent6f3b030c208d435c91c19db50bcc1968893e1cab (diff)
downloadriscv-isa-manual-4518280c01842e74aee4f4ba17a14cdb442ecb9a.zip
riscv-isa-manual-4518280c01842e74aee4f4ba17a14cdb442ecb9a.tar.gz
riscv-isa-manual-4518280c01842e74aee4f4ba17a14cdb442ecb9a.tar.bz2
Table formatting
Formatted table to match LaTeX version.
Diffstat (limited to 'src/priv-csrs.adoc')
-rw-r--r--src/priv-csrs.adoc230
1 files changed, 192 insertions, 38 deletions
diff --git a/src/priv-csrs.adoc b/src/priv-csrs.adoc
index cbf988b..7b3404e 100644
--- a/src/priv-csrs.adoc
+++ b/src/priv-csrs.adoc
@@ -85,49 +85,203 @@ Note that not all registers are required on all implementations.
3+|CSR Address .2+|Hex .2+|Use and Accessibility
|[11:10] |[9:8] |[7:4]
5+|Unprivileged and User-Level CSRs
-|`00` |`00` |`XXXX` |`0x000-0x0FF` |Standard read/write
-|`01` |`00` |`XXXX` |`0x400-0x4FF` |Standard read/write
-|`10` |`00` |`XXXX` |`0x800-0x8FF` |Custom read/write
-|`11` |`00` |`0XXX` |`0xC00-0xC7F` |Standard read-only
-|`11` |`00` |`10XX` |`0xC80-0xCBF` |Standard read-only
-|`11` |`00` |`11XX` |`0xCC0-0xCFF` |Custom read-only
+|`00` +
+`01` +
+`10` +
+`11` +
+`11` +
+`11`
+|`00` +
+`00` +
+`00` +
+`00` +
+`00` +
+`00`
+|`XXXX` +
+`XXXX` +
+`XXXX` +
+`0XXX` +
+`10XX` +
+`11XX`
+|`0x000-0x0FF` +
+`0x400-0x4FF` +
+`0x800-0x8FF` +
+`0xC00-0xC7F` +
+`0xC80-0xCBF` +
+`0xCC0-0xCFF`
+|Standard read/write +
+Standard read/write +
+Custom read/write +
+Standard read-only +
+Standard read-only +
+Custom read-only
5+|Supervisor-Level CSRs
-|`00` |`01` |`XXXX` |`0x100-0x1FF` |Standard read/write
-|`01` |`01` |`0XXX` |`0x500-0x57F` |Standard read/write
-|`01` |`01` |`10XX` |`0x580-0x5BF` |Standard read/write
-|`01` |`01` |`11XX` |`0x5C0-0x5FF` |Custom read/write
-|`10` |`01` |`0XXX` |`0x900-0x97F` |Standard read/write
-|`10` |`01` |`10XX` |`0x980-0x9BF` |Standard read/write
-|`10` |`01` |`11XX` |`0x9C0-0x9FF` |Custom read/write
-|`11` |`01` |`0XXX` |`0xD00-0xD7F` |Standard read-only
-|`11` |`01` |`10XX` |`0xD80-0xDBF` |Standard read-only
-|`11` |`01` |`11XX` |`0xDC0-0xDFF` |Custom read-only
+|`00` +
+`01` +
+`01` +
+`01` +
+`10` +
+`10` +
+`10` +
+`11` +
+`11` +
+`11`
+|`01` +
+`01` +
+`01` +
+`01` +
+`01` +
+`01` +
+`01` +
+`01` +
+`01` +
+`01`
+|`XXXX` +
+`0XXX` +
+`10XX` +
+`11XX` +
+`0XXX` +
+`10XX` +
+`11XX` +
+`0XXX` +
+`10XX` +
+`11XX`
+|`0x100-0x1FF` +
+`0x500-0x57F` +
+`0x580-0x5BF` +
+`0x5C0-0x5FF` +
+`0x900-0x97F` +
+`0x980-0x9BF` +
+`0x9C0-0x9FF` +
+`0xD00-0xD7F` +
+`0xD80-0xDBF` +
+`0xDC0-0xDFF`
+|Standard read/write +
+Standard read/write +
+Standard read/write +
+Custom read/write +
+Standard read/write +
+Standard read/write +
+Custom read/write +
+Standard read-only +
+Standard read-only +
+Custom read-only
5+|Hypervisor and VS CSRs
-|`00` |`10` |`XXXX` |`0x200-0x2FF` |Standard read/write
-|`01` |`10` |`0XXX` |`0x600-0x67F` |Standard read/write
-|`01` |`10` |`10XX` |`0x680-0x6BF` |Standard read/write
-|`01` |`10` |`11XX` |`0x6C0-0x6FF` |Custom read/write
-|`10` |`10` |`0XXX` |`0xA00-0xA7F` |Standard read/write
-|`10` |`10` |`10XX` |`0xA80-0xABF` |Standard read/write
-|`10` |`10` |`11XX` |`0xAC0-0xAFF` |Custom read/write
-|`11` |`10` |`0XXX` |`0xE00-0xE7F` |Standard read-only
-|`11` |`10` |`10XX` |`0xE80-0xEBF` |Standard read-only
-|`11` |`10` |`11XX` |`0xEC0-0xEFF` |Custom read-only
+|`00` +
+`01` +
+`01` +
+`01` +
+`10` +
+`10` +
+`10` +
+`11` +
+`11` +
+`11`
+|`10` +
+`10` +
+`10` +
+`10` +
+`10` +
+`10` +
+`10` +
+`10` +
+`10` +
+`10`
+|`XXXX` +
+`0XXX` +
+`10XX` +
+`11XX` +
+`0XXX` +
+`10XX` +
+`11XX` +
+`0XXX` +
+`10XX` +
+`11XX`
+|`0x200-0x2FF` +
+`0x600-0x67F` +
+`0x680-0x6BF` +
+`0x6C0-0x6FF` +
+`0xA00-0xA7F` +
+`0xA80-0xABF` +
+`0xAC0-0xAFF` +
+`0xE00-0xE7F` +
+`0xE80-0xEBF` +
+`0xEC0-0xEFF`
+|Standard read/write +
+Standard read/write +
+Standard read/write +
+Custom read/write +
+Standard read/write +
+Standard read/write +
+Custom read/write +
+Standard read-only +
+Standard read-only +
+Custom read-only
5+|Machine-Level CSRs
-|`00` |`11` |`XXXX` |`0x300-0x3FF` |Standard read/write
-|`01` |`11` |`0XXX` |`0x700-0x77F` |Standard read/write
-|`01` |`11` |`100X` |`0x780-0x79F` |Standard read/write
-|`01` |`11` |`1010` |`0x7A0-0x7AF` |Standard read/write debug CSRs
-|`01` |`11` |`1011` |`0x7B0-0x7BF` |Debug-mode-only CSRs
-|`01` |`11` |`11XX` |`0x7C0-0x7FF` |Custom read/write
-|`10` |`11` |`0XXX` |`0xB00-0xB7F` |Standard read/write
-|`10` |`11` |`10XX` |`0xB80-0xBBF` |Standard read/write
-|`10` |`11` |`11XX` |`0xBC0-0xBFF` |Custom read/write
-|`11` |`11` |`0XXX` |`0xF00-0xF7F` |Standard read-only
-|`11` |`11` |`10XX` |`0xF80-0xFBF` |Standard read-only
-|`11` |`11` |`11XX` |`0xFC0-0xFFF` |Custom read-only
+|`00` +
+`01` +
+`01` +
+`01` +
+`01` +
+`01` +
+`10` +
+`10` +
+`10` +
+`11` +
+`11` +
+`11`
+|`11` +
+`11` +
+`11` +
+`11` +
+`11` +
+`11` +
+`11` +
+`11` +
+`11` +
+`11` +
+`11` +
+`11`
+|`XXXX` +
+`0XXX` +
+`100X` +
+`1010` +
+`1011` +
+`11XX` +
+`0XXX` +
+`10XX` +
+`11XX` +
+`0XXX` +
+`10XX` +
+`11XX`
+|`0x300-0x3FF` +
+`0x700-0x77F` +
+`0x780-0x79F` +
+`0x7A0-0x7AF` +
+`0x7B0-0x7BF` +
+`0x7C0-0x7FF` +
+`0xB00-0xB7F` +
+`0xB80-0xBBF` +
+`0xBC0-0xBFF` +
+`0xF00-0xF7F` +
+`0xF80-0xFBF` +
+`0xFC0-0xFFF`
+|Standard read/write +
+Standard read/write +
+Standard read/write +
+Standard read/write debug CSRs +
+Debug-mode-only CSRs +
+Custom read/write +
+Standard read/write +
+Standard read/write +
+Custom read/write +
+Standard read-only +
+Standard read-only +
+Custom read-only
|===
+<<<
+
[[ucsrnames]]
.Currently allocated RISC-V unprivileged CSR addresses.
[float="center",align="center",cols="<10%,<10%,<20%,<60%",options="header"]