From 5558949812067f524efb32c2d9f720ddf7e12f5e Mon Sep 17 00:00:00 2001 From: Bicheng Yang Date: Fri, 6 Oct 2023 22:11:02 +0800 Subject: [PATCH 1/2] add subsection of indirect CSR access --- rv-spmp-spec.pdf | Bin 1293903 -> 1384321 bytes spmp_spec.adoc | 38 +++++++++++++++++++++++++++++++++++++- 2 files changed, 37 insertions(+), 1 deletion(-) diff --git a/rv-spmp-spec.pdf b/rv-spmp-spec.pdf index c6d137a2e9ec0606db2d612c2155fa2baa446994..2b5ca24da0fce4540023fa2909dc0994163023b0 100644 GIT binary patch delta 67317 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

;@-NV_8BH+ zrL^B#58mK!wzhC470S0;C8sKi>8vf%>abY?X31S@iKh4&>)awn4l9;r zUI?}Qw5QV@aml#Q7}@!@%WanEYsN8TiFg@%oiiIOHhC7YI^Ewdg+4Een0#V zI{mcns?U3zlfIodVy8{!KXOiZur+#0wCog|M~c4_eIK3{EjOc2va_Q3Jd+-E)WCa8b9haFD`pA;rU%f}??ko@ud*3N5i-E&Kx z{L!Iq{DNHub`!kIy|ayH?SxNRCQq&BAN>dQ=vLRh;t8w!ZBZ{EzTs{S^^RB(f{pH z1pk`xA0Y`~YUG6$b8sB`6!df$qgM1417@He`JMr@P%`~D1LjaGuH*A)5_cJ}h>qi1 z1}vdA{A~j^0sJEaHnXz~Z@?Cm=8u0Guod9?S{qjQ-!))6>J`3bz)oZrer~`nWEHUi zx1fM%(_vuFDkcn=2iTwun^8rIAT7F@DZR3CD6;wgj z&~@}Ux`8&(MRW;mAq91Vn7hy+fKI^3I<$-My#+Ye&{b5UeFDD|Mpx;IF?18!OE7i= zZ9+dyciMuTHxc;{)rzq92F19E&Z7dXx`wX6=y4dm3Uk-c6701ObL+4}@xXbRH=Vx# z{WVy76LvWc@I`0Z z5;|`eD8ED=w+zi+qmokK`zpo10W=Uwb!rugwMoyp33K{s>rLx7C>2|VMG{IMgYP_i z9tUhPb`id>!rFB-dLNtBT{uQ@eW{_$3yo%SC^e?K+G+YFLnBaCyV9u5~J#%_i;?$^*gG>Ah@7^Cs2LI*jM; zBg@NFN_7d=d03}eOFFIVHT0+fBpju2Xt1Qythe zq*N#db+_nVmmB?yR2Djx&g-UO6OYiD`u+-)`vt@P$*69bn}*$8e3Lc`Z;EiY=x+gV zFH?)WWW>3*i?=8B$%fRI461HXS*?Yl-U}(Mw^iKl4f1fq`W59#s{&DKr#A{E(cs&!o9sIl@ovUwwF+n30vB3Gp-Verp zJ2?Au-h=Vp9tTU*`!-M+#x4W?gE4pW`$cDhCVlUUatM*aUYVE3bF z_`d&&Jxi-cCvu|%N}?2`-Yl4Mo~Gy?)Q3u_AJXt4NY~>)*d!DL({R)*ngbyp0TWpS zqdX4mp9JGSjh4|_^bq!4%ydm;T=rU6)%V6e^cO;1gN` zIX08g9uv2Kd=xeX2st+(Fd%PYYPWso6p8~1cyeWC3NRosIXIVT{}fTT$Nv;P5108K U6(tTaGB`OnHZTe$B}Gq03JwkOO8@`> diff --git a/spmp_spec.adoc b/spmp_spec.adoc index 83b516b..7c43f75 100644 --- a/spmp_spec.adoc +++ b/spmp_spec.adoc @@ -202,4 +202,40 @@ Each bit of this register holds the on/off status of the corresponding SPMP entr During the context switch, the OS can store and restore spmpswitch as part of the context. An SPMP entry is activated only when both corresponding bits in spmpswitch and A field of spmpicfg are set. (i.e., spmpswitch[i] & spmp[i]cfg.A!=0) -image::SPMP_domain_switch_register_format.png[title="SPMP domain switch register format (RV64)"] +image::SPMP_domain_switch_register_format.svg[title="SPMP domain switch register format (RV64)"] + + + + +=== Access Methods of SPMP CSRs +*Indirect CSR access*: The SPMP support indirect CSR access if the `Sscsrind` extension is implemented. +The `Sscsrind` defines 1 select CSR (`siselect`) and 6 alias CSRs (`sireg[i]`). +The each combination of `siselect` and `sireg[i]` standards for an access of corresponding SPMP CSR. + +[cols="^1,^2",stripes=even, options="header"] +|=== +|siselect number|indirect CSR access of sireg[i] +|0x1a0|sireg[1-6] -> spmpcfg[0-5] +|0x1a1|sireg[1-6] -> spmpcfg[6-11] +|0x1a2|sireg[1-4] -> spmpcfg[12-15] +|0x1a3|sireg[1-6] -> spmpaddr[0-5] +|0x1a4|sireg[1-6] -> spmpaddr[6-11] +|0x1a5|sireg[1-6] -> spmpaddr[12-17] +|0x1a6|sireg[1-6] -> spmpaddr[18-23] +|0x1a7|sireg[1-6] -> spmpaddr[24-29] +|0x1a8|sireg[1-6] -> spmpaddr[30-35] +|0x1a9|sireg[1-6] -> spmpaddr[36-41] +|0x1aa|sireg[1-6] -> spmpaddr[42-47] +|0x1ab|sireg[1-6] -> spmpaddr[48-53] +|0x1ac|sireg[1-6] -> spmpaddr[54-59] +|0x1ad|sireg[1-4] -> spmpaddr[60-63] +|0x1ae|sireg[1-2] -> spmpswitch[0-1] +|=== + +*Direct CSR access*: SPMP CSRs can be accessed directly with corresponding CSR numbers if the `Sscsrind` extension is not implemented. + +[NOTE] +==== +Please refers to the specification of the `Sscsrind` extension for details of indirect CSR access. +https://github.com/riscv/riscv-indirect-csr-access +==== From a585efc62731641f1bf466f4e082ab3ba8bc14a2 Mon Sep 17 00:00:00 2001 From: Bicheng Yang Date: Sun, 8 Oct 2023 20:44:41 +0800 Subject: [PATCH 2/2] refine description of siselect --- rv-spmp-spec.pdf | Bin 1384321 -> 1387840 bytes spmp_spec.adoc | 38 +++++++++++++++++++++----------------- 2 files changed, 21 insertions(+), 17 deletions(-) diff --git a/rv-spmp-spec.pdf b/rv-spmp-spec.pdf index 2b5ca24da0fce4540023fa2909dc0994163023b0..b9d4a878f57ce9aa349abf09a575b9cd2072436a 100644 GIT binary patch delta 32198 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%0AubJwM#C?~7%dLJRF6UKB!~j} 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 E0Wv(2cK`qY diff --git a/spmp_spec.adoc b/spmp_spec.adoc index 7c43f75..fc20145 100644 --- a/spmp_spec.adoc +++ b/spmp_spec.adoc @@ -208,34 +208,38 @@ image::SPMP_domain_switch_register_format.svg[title="SPMP domain switch register === Access Methods of SPMP CSRs -*Indirect CSR access*: The SPMP support indirect CSR access if the `Sscsrind` extension is implemented. +How SPMP CSRs are accessed depends on whether the the `Sscsrind` extension is implemented or not. + +*Indirect CSR access*: The SPMP supports indirect CSR access if the `Sscsrind` extension is implemented. The `Sscsrind` defines 1 select CSR (`siselect`) and 6 alias CSRs (`sireg[i]`). -The each combination of `siselect` and `sireg[i]` standards for an access of corresponding SPMP CSR. +Each combination of `siselect` and `sireg[i]` represents an access to the corresponding SPMP CSR. [cols="^1,^2",stripes=even, options="header"] |=== |siselect number|indirect CSR access of sireg[i] -|0x1a0|sireg[1-6] -> spmpcfg[0-5] -|0x1a1|sireg[1-6] -> spmpcfg[6-11] -|0x1a2|sireg[1-4] -> spmpcfg[12-15] -|0x1a3|sireg[1-6] -> spmpaddr[0-5] -|0x1a4|sireg[1-6] -> spmpaddr[6-11] -|0x1a5|sireg[1-6] -> spmpaddr[12-17] -|0x1a6|sireg[1-6] -> spmpaddr[18-23] -|0x1a7|sireg[1-6] -> spmpaddr[24-29] -|0x1a8|sireg[1-6] -> spmpaddr[30-35] -|0x1a9|sireg[1-6] -> spmpaddr[36-41] -|0x1aa|sireg[1-6] -> spmpaddr[42-47] -|0x1ab|sireg[1-6] -> spmpaddr[48-53] -|0x1ac|sireg[1-6] -> spmpaddr[54-59] -|0x1ad|sireg[1-4] -> spmpaddr[60-63] -|0x1ae|sireg[1-2] -> spmpswitch[0-1] +|siselect#1|sireg[1-6] -> spmpcfg[0-5] +|siselect#2|sireg[1-6] -> spmpcfg[6-11] +|siselect#3|sireg[1-4] -> spmpcfg[12-15] +|siselect#4|sireg[1-6] -> spmpaddr[0-5] +|siselect#5|sireg[1-6] -> spmpaddr[6-11] +|siselect#6|sireg[1-6] -> spmpaddr[12-17] +|siselect#7|sireg[1-6] -> spmpaddr[18-23] +|siselect#8|sireg[1-6] -> spmpaddr[24-29] +|siselect#9|sireg[1-6] -> spmpaddr[30-35] +|siselect#10|sireg[1-6] -> spmpaddr[36-41] +|siselect#11|sireg[1-6] -> spmpaddr[42-47] +|siselect#12|sireg[1-6] -> spmpaddr[48-53] +|siselect#13|sireg[1-6] -> spmpaddr[54-59] +|siselect#14|sireg[1-4] -> spmpaddr[60-63] +|siselect#15|sireg[1-2] -> spmpswitch[0-1] |=== *Direct CSR access*: SPMP CSRs can be accessed directly with corresponding CSR numbers if the `Sscsrind` extension is not implemented. [NOTE] ==== +The specific value of `siselect#1-15` will be allocated after review by the Arch Review Committee. + Please refers to the specification of the `Sscsrind` extension for details of indirect CSR access. https://github.com/riscv/riscv-indirect-csr-access ====