Abstract
This paper provides a detailed study on the algorithms used by an ALU to perform multiplication and division for large numbers, and recommends one algorithm that will give best performance for division and multiplication. The multiplication algorithms that are analyzed are Pen and Paper algorithm, Booth’s algorithm, and Divide and Conquer algorithm. The division algorithms that are analyzed are Radix 2 restoring algorithm, Radix 2 non-restoring algorithm, and Radix 4 restoring algorithm. The algorithms are implemented using Verilog and the timing and area reports generated after synthesis is used to compare the algorithms. This paper concludes that out of the examined algorithms divide and conquer algorithm gives the best performance for multiplication, while Radix 4 restoring algorithm gives the best performance for division.