El reconocido historiador y experto en ingeniería inversa Ken Shirriff ha logrado identificar los transistores específicos que causaron el infame "bug FDIV" del procesador Intel Pentium, un error que llevó a la primera retirada masiva de productos de Intel en 1994 con un costo de $475 millones.
Mediante un minucioso análisis microscópico del chip original, Shirriff localizó el defecto en la matriz de lógica programable (PLA) que contenía una tabla de división defectuosa. El chip Pentium, fabricado con tecnología de 800nm, contaba con 3.1 millones de transistores visibles bajo el microscopio.
El error matemático se originó en el algoritmo SRT de la unidad de punto flotante, que permitía calcular divisiones a dos bits por ciclo de reloj, el doble de velocidad que su predecesor. Este sistema requería una tabla de 2,048 celdas organizadas en 112 filas con valores entre -2 y 2.
La investigación reveló que cinco entradas cruciales en la tabla carecían de los transistores necesarios, quedando configuradas por defecto en 0 en lugar del valor correcto "2". Sorprendentemente, Shirriff descubrió 11 puntos adicionales ausentes que, por fortuna, no causaban errores en los cálculos.
Intel posteriormente solucionó el problema rellenando todas las entradas no utilizadas con el valor 2, una solución simple pero efectiva que se implementó en revisiones posteriores del Pentium.
Shirriff promete publicar próximamente un análisis más detallado de su investigación, incluyendo la posibilidad de reparar físicamente los Pentium afectados mediante la modificación directa de la PLA.