On 2009-10-29, Timothy Normand Miller wrote:
> The same multipliers will be used for float, which means we need 24x24
> -> 48 (unsigned) at least.  That's still three.  But if we're going to
> use the multipliers for shifts, we need the full 32x32 multiplier.
> 
> That is unless you can come up with a clever way to do a right shift
> with a multiplier.  If we think of the multiplier as a ring (in this
> case, it doesn't qualify as a galois field), we may be able to find a
> multiplier for any multiplicand that will give us any 32-bit product
> we want.  The trouble is that what that multiplier needs to be could
> be so complicated to compute that it's not worth using the multiplier.
> 
> I did some tinkering with 16-bit numbers, and I can find no single
> multiplier that works with all multiplicands that will result in the
> correct value for shifting the multiplicand right by 4 bits.

Without reordering the bits, I'm pretty sure it can't be done.  Note
that for a fixed multiplier, bit number i of the multiplicand is
independent of all bits j > i of the other multiplier.

But if we reorder the bits, it's embarrassingly obvious:  Reverse the
bits of the base-argument and the result.  That should take 64 MUXes.
_______________________________________________
Open-graphics mailing list
[email protected]
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)

Reply via email to