I'm not so good at this, but it would be good for us to incorporate some rigor into our work.
Yesterday, I made an erroneous statement about the multiplier. Since, except in denormalized case (where it doesn't matter), every operand is going to have a 1 bit on the left, which means the product doesn't have to be dynamically shifted. Two 24-bit number, with a 1 on the left will always beget a 48-bit number on the left, and we can throw away the lower bits to get another 24-bit number that is already normalized. So what I would like is an analysis of the rounding requirements. Not practical ones but theoretical, on accordance with IEEE's 3 bits of extra precision involved in rounding. (This is actually trivial to implement in hardware, regardless of how we want to minimize the hardware.) But given 1.X * 1.X, what are the POSSIBLE combinations of bits in the guard bits, and how do those affect our rounding results when we squeeze the number back into a float32? (There are better docs, but I found this quickly: http://www.cs.nmsu.edu/~pfeiffer/classes/473/notes/fp-extras.html) -- Timothy Normand Miller http://www.cse.ohio-state.edu/~millerti Open Graphics Project _______________________________________________ Open-graphics mailing list [email protected] http://lists.duskglow.com/mailman/listinfo/open-graphics List service provided by Duskglow Consulting, LLC (www.duskglow.com)
