On Fri, Jan 4, 2019 at 8:08 AM dwight via cctalk <cctalk@classiccmp.org> wrote:
> May ability to understand these papers is somewhat limited. If I > understand correctly the following. > Most divide routines that I've seen allow the remainder to be 1,0,-1 > relative to the normal remainder. The answer will converge as the error of > the remainder never leaves this range. > In the case of the pentium, the remainder is 2,1,0,-1,-2. This allows the > division to converge on the answer quicker. The error was that if the > remainder was right on one edge it would eventually fall of the edge and > not converge. From the paper, that would be the 5 1's in a row, of the > divisor. > My interpretation is that with the five table entries with the wrong values, it always converges, but for some input values it converges to the wrong answer. I could be wrong, though. In any case, I'm sure there were a lot of people at Intel that were unhappy that they couldn't patch this with a microcode fix or workaround. Although Intel relented and offered to replace ALL affected Pentiums, apparently a substantial number of the buggy ones were never sent in.