A little bit of clarification based on bug #701 c#13
authorAndrey Miroshnikov <andrey@technepisteme.xyz>
Mon, 6 Nov 2023 23:38:04 +0000 (23:38 +0000)
committerAndrey Miroshnikov <andrey@technepisteme.xyz>
Mon, 6 Nov 2023 23:38:04 +0000 (23:38 +0000)
openpower/sv/cookbook/remap_matrix.mdwn

index 46610a7eb0fe53475933ae5db70b43f1e7b88551..806c0e8957d41c85a7e3f521bdd728dd61d5ffd6 100644 (file)
@@ -11,8 +11,6 @@ Links
 * REMAP python function based on yield (shows how indices are generated):
 [[sv/remapyield.py]]
 
-TODO: Include screenshots
-
 One of the most powerful and versatile modes of the REMAP engine (a part of
 the SVP64 feature set) is the ability to perform matrix
 multiplication with all elements within a scalar register file.
@@ -222,8 +220,14 @@ be possible.
 ### SVSHAPE Remapping SPRs
 
 * See [[sv/remap]] for the full break down of SPRs `SVSHAPE0-3`.
+* Pseudo-code for the
+[svshape instruction](https://git.libre-soc.org/?p=openpower-isa.git;a=blob;f=openpower/isa/simplev.mdwn;h=33a02e#l120)
+
+Matrix Multiply utilises SVSHAPE0-2 SPRs.
+
+(NOTE: This section is duplicated from the remap spec, and thus will be re-worked.)
 
-For Matrix Multiply, SHAPE0 SPR is used:
+SVSHAPE0 SPR:
 
 |0:5   |6:11  | 12:17   | 18:20   | 21:23   |24:27 |28:29  |30:31|
 |----- |----- | ------- | ------- | ------  |------|------ |---- |
@@ -275,7 +279,7 @@ or swap x and y loops).
 
 (*NOTE:* This is done automatically by the Matrix-Multiply REMAP mode, `SVRM=0`.)
 
-Limitations of Matrix REMAP are currently:
+### Limitations of Matrix REMAP
 
 - Vector Length (VL) limited to 127, and up to 127 Multiply-Add Accumulates
 (MAC), or other operations may be performed in total.