You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: src/cheri-pte-ext.adoc
+5-47
Original file line number
Diff line number
Diff line change
@@ -10,6 +10,8 @@ capabilities in memory at the page granularity. For this reason, the
10
10
{cheri_pte_ext_name} extension adds new bits to RISC-V's Page Table Entry (PTE)
11
11
format.
12
12
13
+
{cheri_pte_ext_name} requires at least one virtual memory translation scheme (_Sv39_, _Sv48_ or _Sv57_) to be implemented.
14
+
13
15
=== Limiting Capability Propagation
14
16
15
17
Page table enforcement can allow the operating system to limit the flow
@@ -155,55 +157,11 @@ bit value of the capability read. This will introduce additional traps during re
155
157
a hardware updating mechanism.
156
158
157
159
[#xstatus_pte]
158
-
=== Extending the Machine (mstatus), Supervisor (sstatus) and Virtual Supervisor (vsstatus) Status Registers
159
-
160
-
The <<mstatusreg_pte,mstatus>>, <<sstatusreg_pte,status>> and <<vsstatusreg_pte,vsstatus>> CSRs are extended to include the new Capability Read Generation (CRG) bit as shown.
160
+
=== Extending the Supervisor (sstatus) and Virtual Supervisor (vsstatus) Status Registers
161
161
162
-
mstatus.CRG is made visible in sstatus.CRG.
162
+
The <<sstatusreg_pte,sstatus>> and <<vsstatusreg_pte,vsstatus>> CSRs are extended to include the new Capability Read Generation (CRG) bit as shown.
163
163
164
-
When V=1 vsstatus.CRG is in effect.
165
-
166
-
[#mstatusreg_pte]
167
-
.Machine-mode status (*mstatus*) register when MXLEN=64
168
-
[wavedrom, ,svg]
169
-
....
170
-
{reg: [
171
-
{bits: 1, name: 'WPRI'},
172
-
{bits: 1, name: 'SIE'},
173
-
{bits: 1, name: 'WPRI'},
174
-
{bits: 1, name: 'MIE'},
175
-
{bits: 1, name: 'WPRI'},
176
-
{bits: 1, name: 'SPIE'},
177
-
{bits: 1, name: 'UBE'},
178
-
{bits: 1, name: 'MPIE'},
179
-
{bits: 1, name: 'SPP'},
180
-
{bits: 2, name: 'VS[1:0]'},
181
-
{bits: 2, name: 'MPP[1:0]'},
182
-
{bits: 2, name: 'FS[1:0]'},
183
-
{bits: 2, name: 'XS[1:0]'},
184
-
{bits: 1, name: 'MPRV'},
185
-
{bits: 1, name: 'SUM'},
186
-
{bits: 1, name: 'MXR'},
187
-
{bits: 1, name: 'TVM'},
188
-
{bits: 1, name: 'TW'},
189
-
{bits: 1, name: 'TSR'},
190
-
{bits: 1, name: 'SPELP'},
191
-
{bits: 1, name: 'SDT'},
192
-
{bits: 7, name: 'WPRI'},
193
-
{bits: 2, name: 'UXL[1:0]'},
194
-
{bits: 2, name: 'SXL[1:0]'},
195
-
{bits: 1, name: 'SBE'},
196
-
{bits: 1, name: 'MBE'},
197
-
{bits: 1, name: 'GVA'},
198
-
{bits: 1, name: 'MPV'},
199
-
{bits: 1, name: 'WPRI'},
200
-
{bits: 1, name: 'MPELP'},
201
-
{bits: 1, name: 'MDT'},
202
-
{bits: 19, name: 'WPRI'},
203
-
{bits: 1, name: 'CRG'},
204
-
{bits: 1, name: 'SD'},
205
-
], config:{lanes: 4, hspace:1024}}
206
-
....
164
+
When V=1 <<vsstatusreg_pte,vsstatus>>.CRG is in effect.
207
165
208
166
[#sstatusreg_pte]
209
167
.Supervisor-mode status (*sstatus*) register when SXLEN=64
0 commit comments