add example remap table for 2D
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Mon, 15 Oct 2018 19:56:09 +0000 (20:56 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Mon, 15 Oct 2018 19:56:09 +0000 (20:56 +0100)
simple_v_extension/specification.mdwn

index 068e33c4319cd72090800f79511a4c1d5dd02ab3..fef048cd2365883fd230100b6d81735f7d7ba56d 100644 (file)
@@ -886,4 +886,11 @@ for element-grouping, if there is unused space within a register
 idea: have an additional set of register CSRs that indicate that, instead of
 a straight 1D linear relationship, the element index is put through
 a (reasonably simple) 2D processing algorithm.  in this way, 4x3 blocks
-of registers can have the ordering changed to 3x4 for example.
+of registers can have the ordering changed to 3x4 for example:
+
+    xdim = CSRtb[reg].x_sz
+    ydim = CSRtb[reg].y_sz
+
+    for idx in range(VL):
+        new_idx = (idx % xdim) * ydim + (idx / xdim)
+