From: lkcl Date: Sat, 4 Jun 2022 15:15:17 +0000 (+0100) Subject: (no commit message) X-Git-Tag: opf_rfc_ls005_v1~1986 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a2e2d5d090d03d2e1cdbc8b9f995a54c32e1aecf;p=libreriscv.git --- diff --git a/openpower/sv/remap.mdwn b/openpower/sv/remap.mdwn index bf4ef79f9..ab17b3c91 100644 --- a/openpower/sv/remap.mdwn +++ b/openpower/sv/remap.mdwn @@ -198,20 +198,22 @@ pipeline overlaps. Out-of-order / Superscalar micro-architectures with register-renaming will have an easier time dealing with this than DSP-style SIMD micro-architectures. -## svstate instruction +## svshape instruction -Please note: this is **not** intended for production. It sets up -(overwrites) all required SVSHAPE SPRs and indicates that the -*next instruction* shall have those REMAP shapes applied to it, -assuming that instruction is of the form FRT,FRA,FRC,FRB. +`svshape` is a convenience instruction that reduces instruction +count for common usage patterns, particularly Matrix, DCT and FFT. It sets up +(overwrites) all required SVSHAPE SPRs and also modifies SVSTATE +including VL and MAXVL. Using `svshape` therefore does not also +require `setvl`. Form: SVM-Form SV "Matrix" Form (see [[isatables/fields.text]]) + svshape SVxd,SVyd,SVzd,SVRM,vf + | 0.5|6.10 |11.15 |16..20 | 21..25 | 25 | 26..30 |31| name | | -- | -- | --- | ----- | ------ | -- | ------ |--| -------- | |OPCD| SVxd | SVyd | SVzd | SVRM | vf | XO |/ | svstate | - Fields: * **SVxd** - SV REMAP "xdim"