From: lkcl Date: Fri, 29 Apr 2022 11:44:14 +0000 (+0100) Subject: (no commit message) X-Git-Tag: opf_rfc_ls005_v1~2545^2~1 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=60f1032fe907e0129cc510d43db334344785c26a;p=libreriscv.git --- diff --git a/openpower/sv/biginteger/analysis.mdwn b/openpower/sv/biginteger/analysis.mdwn index 3024a02e7..a19e6bdcc 100644 --- a/openpower/sv/biginteger/analysis.mdwn +++ b/openpower/sv/biginteger/analysis.mdwn @@ -492,6 +492,13 @@ allows the instruction to perform full parallel vector div/mod, or act in loop-back mode for big-int division by a scalar, or for a single scalar 128/64 div/mod. +Again, just as with `sv.madded` and `sv.adde`, adventurous implementors +may perform massively-wide DIV/MOD by transparently merging (fusing) +the Vector element operations together, only inputting a single RC and +outputting the last RC. Where efficient algorithms such as Goldschmidt +are deployed internally this could dramatically reduce the cycle completion +time for massive Vector DIV/MOD. + Just as with `divdeu` on which this instruction is based an overflow detection is required. When the divisor is too small compared to the dividend then the result may not fit into 64 bit. Knuth's