From 3c5943d67bc2c9f3ed1f85d730964e9845e942b5 Mon Sep 17 00:00:00 2001 From: Bill Traynor Date: Tue, 31 Oct 2023 10:01:33 -0400 Subject: Fixing CSR Listing table 3 wrapping. Fixed row wrapping so table matches original LaTeX table formatting. --- src/priv-csrs.adoc | 240 ++++++++++------------------------------------------- 1 file changed, 44 insertions(+), 196 deletions(-) diff --git a/src/priv-csrs.adoc b/src/priv-csrs.adoc index 7a0773b..4894e3f 100644 --- a/src/priv-csrs.adoc +++ b/src/priv-csrs.adoc @@ -80,204 +80,52 @@ Note that not all registers are required on all implementations. [[csrrwpriv]] .Allocation of RISC-V CSR address ranges. -[%autowidth,float="center",align="center",cols="^,^,^,^,<"] +[%autowidth,float="center",align="center",cols="^,^,^,^,<,<,<,<"] |=== -3+|CSR Address .2+|Hex .2+|Use and Accessibility +3+^|CSR Address 2.2+|Hex 3.2+|Use and Accessibility |[11:10] |[9:8] |[7:4] -5+|Unprivileged and User-Level CSRs -|`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` + -`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` + -`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` + -`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 +8+|Unprivileged and User-Level CSRs +|`00` |`00` |`XXXX` 2+| `0x000-0x0FF` 3+|Standard read/write +|`01` |`00` |`XXXX` 2+| `0x400-0x4FF` 3+|Standard read/write +|`10` |`00` |`XXXX` 2+| `0x800-0x8FF` 3+|Custom read/write +|`11` |`00` |`0XXX` 2+| `0xC00-0xC7F` 3+|Standard read-only +|`11` |`00` |`10XX` 2+| `0xC80-0xCBF` 3+|Standard read-only +|`11` |`00` |`11XX` 2+| `0xCC0-0xCFF` 3+|Custom read-only +8+|Supervisor-Level CSRs +|`00` |`01` |`XXXX` 2+| `0x100-0x1FF` 3+|Standard read/write +|`01` |`01` |`0XXX` 2+| `0x500-0x57F` 3+|Standard read/write +|`01` |`01` |`10XX` 2+| `0x580-0x5BF` 3+|Standard read/write +|`01` |`01` |`11XX` 2+| `0x5C0-0x5FF` 3+|Custom read/write +|`10` |`01` |`0XXX` 2+| `0x900-0x97F` 3+|Standard read/write +|`10` |`01` |`10XX` 2+| `0x980-0x9BF` 3+|Standard read/write +|`10` |`01` |`11XX` 2+| `0x9C0-0x9FF` 3+|Custom read/write +|`11` |`01` |`0XXX` 2+| `0xD00-0xD7F` 3+|Standard read-only +|`11` |`01` |`10XX` 2+| `0xD80-0xDBF` 3+|Standard read-only +|`11` |`01` |`11XX` 2+| `0xDC0-0xDFF` 3+|Custom read-only +8+|Hypervisor and VS CSRs +|`00` |`10` |`XXXX` 2+| `0x200-0x2FF` 3+|Standard read/write +|`01` |`10` |`0XXX` 2+| `0x600-0x67F` 3+|Standard read/write +|`01` |`10` |`10XX` 2+| `0x680-0x6BF` 3+|Standard read/write +|`01` |`10` |`11XX` 2+| `0x6C0-0x6FF` 3+|Custom read/write +|`10` |`10` |`0XXX` 2+| `0xA00-0xA7F` 3+|Standard read/write +|`10` |`10` |`10XX` 2+| `0xA80-0xABF` 3+|Standard read/write +|`10` |`10` |`11XX` 2+| `0xAC0-0xAFF` 3+|Custom read/write +|`11` |`10` |`0XXX` 2+| `0xE00-0xE7F` 3+|Standard read/write +|`11` |`10` |`10XX` 2+| `0xE80-0xEBF` 3+|Standard read/write +|`11` |`10` |`11XX` 2+| `0xEC0-0xEFF` 3+|Custom read/write +8+|Machine-Level CSRs +|`00` |`11` |`XXXX` 2+|`0x300-0x3FF` 3+|Standard read/write +|`01` |`11` |`0XXX` 2+|`0x700-0x77F` 3+|Standard read/write +|`01` |`11` |`100X` 2+|`0x780-0x79F` 3+|Standard read/write +|`01` |`11` |`1010` 2+|`0x7A0-0x7AF` 3+|Standard read/write debug CSRs +|`01` |`11` |`1011` 2+|`0x7B0-0x7BF` 3+|Debug-mode-only CSRs +|`01` |`11` |`11XX` 2+|`0x7C0-0x7FF` 3+|Custom read/write +|`10` |`11` |`0XXX` 2+|`0xB00-0xB7F` 3+|Standard read/write +|`10` |`11` |`10XX` 2+|`0xB80-0xBBF` 3+|Standard read/write +|`10` |`11` |`11XX` 2+|`0xBC0-0xBFF` 3+|Custom read/write +|`11` |`11` |`0XXX` 2+|`0xF00-0xF7F` 3+|Standard read/write +|`11` |`11` |`10XX` 2+|`0xF80-0xFBF` 3+|Standard read/write +|`11` |`11` |`11XX` 2+|`0xFC0-0xFFF` 3+|Custom read/write |=== <<< -- cgit v1.1