HeadlinesBriefing favicon HeadlinesBriefing.com

Reverse-engineering do algoritmo de tangente do Intel 8087

Hacker News •
×

Em 1980, a Intel introduziu o 8087, um chip de ponto flutuante que acelerou dramaticamente os cálculos trigonométricos em sistemas como o IBM PC. Este artigo explora o algoritmo por trás de sua instrução de tangente, FPT AN, que combina habilmente CORDIC com aproximação polinomial para alcançar tanto velocidade quanto precisão. O 8087 calculou uma tangente em 90 microsegundos, uma melhoria massiva em relação aos 13.000 microsegundos exigidos pelo microprocessador 8086.

Ao examinar a ROM de microcode e o datapath do chip-revelada através de imagem microscópica-o autor detalha como o legado do bombardeiro B-58 Hustler influenciou o design. O engenheiro Jack Volder desenvolveu originalmente o CORDIC em 1956 para o Convair B-58A Hustler, usando operações de shift-and-add para calcular funções trigonométricas sem multiplicação. O algoritmo divide um ângulo em rotações precalculadas, convergindo rapidamente com cada iteração.

Os blocos do datapath do 8087 incluem o ROM de constantes, o shifter e o adder, todos otimizados para um cálculo transcendental eficiente.