On Saturday 12 February 2005 17:10, Timothy Miller wrote: > I know some analysis has been done regarding the nonlinearity of the > reciprocal. There are going to be parts of the spectrum where lower > bits make a big difference, and there'll be parts where many inputs > map to the same output.
Well, the derivative varies between -2.0 and -0.5. So in the beginning, an input change of 1 will give an output change of 2 (making an extra bit not that useful), and at the end of the range, an input change of 1 wil give an output change of 0.5 (making an extra bit nice). Of course, in the first part, the results are large, and in the second part they are smaller. We could try and shift the value by one halfway through. In other words, we'd have a 19-bit value in the table, and store the topmost 18 bits for the top half, and the bottom 18 bits for the lower half of the table. Actually, the MSB is zero anyway for the bottom half of the table. Total cost one extra MUX, or am I missing something? On the other hand, if the input value is 16 bit, then we only need 17 bits output to get this gain, and we can probably do that with 18 bit table values anyway. > I'm wondering if we can't do some math on > some of the upper bits... or use a priority encoder to determine the > highest or lowest 1-bit of the mantissa. We can find some way to > reverse the nonlinearity and distribute values in the table more to > our advantage. Well, if we use 1/x as the key instead of x, then the table will be linear ;-). Lourens _______________________________________________ Open-graphics mailing list [email protected] http://lists.duskglow.com/mailman/listinfo/open-graphics List service provided by Duskglow Consulting, LLC (www.duskglow.com)
