Squaring circuit
Methods, apparatuses, and computer program products for squaring an operand include identifying a fixed-point value with a fixed word size and a substring size for substrings of the fixed-point value, wherein the fixed-point value comprises a binary bit string. A square of the fixed-point value can be determined using the fixed point value, the substring size, and least significant bits of the fixed-point value equal to the substring size.
1. An apparatus comprising:
a squaring circuit configured to:
identify a fixed-point value with a fixed word size and a substring size for substrings of the fixed-point value, wherein the fixed-point value comprises a string of digits and an initial operand;
for an initial iteration, determine a square of least significant digits of the initial operand;
for each subsequent iteration:
determine an operand for that iteration by decatenating least significant digits from an operand in a previous iteration, wherein a length of the least significant digits from the operand of the previous iteration is equal to the substring size; and
determine a square using the least significant digits of the operand for that iteration and the substring size; and
concatenate the squares from each iteration to estimate a square of the fixed-point value.
2. The apparatus of claim 1 , wherein each digit in the string of digits is in base 2.