Computer Arithmetic, IEEE Symposium on (2005)
Cape Cod, Massachusetts, USA
June 27, 2005 to June 29, 2005
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/ARITH.2005.31
Arch D. Robison , Intel Corporation
Integer division on modern processors is expensive compared to multiplication. Previous algorithms for performing unsigned division by an invariant divisor, via reciprocal approximation, suffer in the worst case from a common requirement for n + 1 bit multiplication, which typically must be synthesized from n-bit multiplication and extra arithmetic operations. This paper presents, and proves, a hybrid of previous algorithms that replaces n + 1 bit multiplication with a single fused multiply-add operation on n-bit operands, thus reducing any n-bit unsigned division to the upper n bits of a multiply-add, followed by a single right shift. An additional benefit is that the prerequisite calculations are simple and fast. On the Itanium® 2 processor, the technique is advantageous for as few as two quotients that share a common run-time divisor.
A. D. Robison, "N-Bit Unsigned Division via N-Bit Multiply-Add," Computer Arithmetic, IEEE Symposium on(ARITH), Cape Cod, Massachusetts, USA, 2005, pp. 131-139.