In an array multiplier or a Wallace tree implementation, a modified Booth's algorithm can be used to produce n/2 rows of m partial products in an initial step, where n is a number of bits of the multiplier operand and m is the number of bits of the multiplicand input to the multiplier.