From: lkcl Date: Wed, 20 Apr 2022 16:11:26 +0000 (+0100) Subject: (no commit message) X-Git-Tag: opf_rfc_ls005_v1~2677 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d49a8cbae8b13ecf7f94c7569015ce1914e24fcf;p=libreriscv.git --- diff --git a/openpower/sv/biginteger.mdwn b/openpower/sv/biginteger.mdwn index 1a26cfafb..fd26967ea 100644 --- a/openpower/sv/biginteger.mdwn +++ b/openpower/sv/biginteger.mdwn @@ -147,7 +147,7 @@ vector. Overall it is extremely powerful. The simplest implementation of big-int divide is the standard schoolbook "Long Division", set with RADIX 64 instead of Base 10. Donald Knuth's Algorithm D performs estimates which, if wrong, are compensated for -afterwards. Essentiallythere are three phases: +afterwards. Essentially there are three phases: * Calculation of the quotient estimate. This is Scalar division and can be ignored for the scope of this analysis @@ -156,7 +156,11 @@ afterwards. Essentiallythere are three phases: phase 1 was wrong by one digit. In essence then the primary focus of Vectorised Big-Int divide is in -fact big-integer multiply (or, mul-and-subtract). +fact big-integer multiply (more specifically, mul-and-subtract). + + product = RC - (RA) * (RB) + RT = lowerhalf(product) + RS = upperhalf(product) # Appendix