diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/machine.tex | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/machine.tex b/src/machine.tex index 8ec2e61..9d29642 100644 --- a/src/machine.tex +++ b/src/machine.tex @@ -2897,12 +2897,13 @@ PMP entry 0's A field is set to TOR, zero is used for the lower bound, and so it matches any address $y < {\tt pmpaddr}_0$. Although the PMP mechanism supports regions as small as four bytes, platforms -may specify coarser PMP regions. In general, the PMP grain is -$2^{G+2}$ bytes and must be the same across all PMP regions. When $G>0$, the -NA4 mode may not be selected. Furthermore, bits ${\tt pmpaddr}_i$[G-1:0] all -read as equal to ${\tt pmpcfg}_i$.A[1], i.e., all ones when the mode is NAPOT, -or all zeros when the mode is TOR or OFF. Bits ${\tt pmpaddr}_i$[G-1:0] do -not affect the address-matching logic. +may specify coarser PMP regions. In general, the PMP grain is $2^{G+2}$ bytes +and must be the same across all PMP regions. When $G>0$, the NA4 mode may not +be selected, and bit ${\tt pmpaddr}_i$[G-1] is hardwired to 0. Furthermore, +if $G \geq 2$, then bits ${\tt pmpaddr}_i$[G-2:0] all read as equal to ${\tt +pmpcfg}_i$.A[1]---i.e., all ones when the mode is NAPOT, or all zeros when the +mode is TOR or OFF. When $G>0$, bits ${\tt pmpaddr}_i$[G-1:0] do not affect +the address-matching logic. \begin{commentary} Software may determine the PMP granularity by writing zero to {\tt pmp0cfg}, |