From: lkcl Date: Sun, 3 Jan 2021 15:26:49 +0000 (+0000) Subject: (no commit message) X-Git-Tag: convert-csv-opcode-to-binary~628 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4786df3ba3f28d8d589c38c4c19cf587e48e11e0;p=libreriscv.git --- diff --git a/openpower/sv/propagation.mdwn b/openpower/sv/propagation.mdwn index 54fda3010..5e89dc89f 100644 --- a/openpower/sv/propagation.mdwn +++ b/openpower/sv/propagation.mdwn @@ -85,7 +85,9 @@ More than one bit is permitted to be set in the mask: swiz1 is applied to the fi # 2D/3D Matrix Remap -*Based on the old version [[simple_v_extension/remap]], the Shape CSRs remain the same as does the algorithm that performs the remapping*. Remap allows up to four Vectors (`fma`) to be algorithmically arbitrarily remapped via 1D, 2D or 3D reshaping. +*Based on the old version [[simple_v_extension/remap]], the Shape CSRs remain the same as does the algorithm that performs the remapping*. + +Remap allows up to four Vectors (all four arguments of `fma` for example) to be algorithmically arbitrarily remapped via 1D, 2D or 3D reshaping. Vectors may be remapped such that Matrix multiply of any arbitrary size is performed in one Vectorised `fma` instruction as long as the total number of elements is less than 64 (maximum for VL). @@ -107,3 +109,9 @@ Again it is the 24 bit `RM` that is interpreted differently: The shape indices 0-3 are numbered 0-3 whilst the masks are bitmasks that indicate src or dest to which the associated shape (0-3) is to be applied. A zero mask indicates that the Shape is not to be applied. Note that whilst the masks are unary encoded the Shape indices sh0-3 are not: this must be taken into consideration when ORing occurs. +The mask is encoded as follows: + +* bit 0 indicates that dest is swizzled +* bit 1 indicates that src1 is swizzled +* bit 2 indicates that src2 is swizzled +* bit 3 indicates that src3 is swizzled