diff options
author | Bill Traynor <wmat@riscv.org> | 2023-04-19 13:14:02 -0400 |
---|---|---|
committer | Bill Traynor <wmat@riscv.org> | 2023-04-19 13:14:02 -0400 |
commit | 4518280c01842e74aee4f4ba17a14cdb442ecb9a (patch) | |
tree | 573afdddfb33eea01b0a374b459d8f13f10efee7 /src/priv-csrs.adoc | |
parent | 6f3b030c208d435c91c19db50bcc1968893e1cab (diff) | |
download | riscv-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.adoc | 230 |
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"] |