HeadlinesBriefing favicon HeadlinesBriefing.com

Reverse-engineering de l'algorithme de tangente Intel 8087

Hacker News •
×

En 1980, Intel a introduit le 8087, un processeur à virgule flottante qui a accéléré considérablement les calculs trigonométriques dans des systèmes comme l'IBM PC. Cet article explore l'algorithme derrière son instruction de tangente, FPT AN, qui combine habilement CORDIC avec approximation polynomiale pour obtenir à la fois vitesse et précision. Le 8087 a calculé une tangente en 90 microsecondes, une amélioration massive par rapport aux 13 000 microsecondes requises par le microprocesseur 8086.

En examinant la ROM de microcode et le datapath du chip-révélé par imagerie microscopique-l'auteur détaille comment l'héritage du bombardier B-58 Hustler a influencé le design. L'ingénieur Jack Volder a développé à l'origine le CORDIC en 1956 pour le Convair B-58A Hustler, en utilisant des opérations de déplacement et d'addition pour calculer des fonctions trigonométriques sans multiplication. L'algorithme décompose un angle en rotations précalculées, en convergences rapides à chaque itération.

Les blocs du datapath du 8087 incluent le ROM de constantes, le décaleur et l'additionneur, tous optimisés pour un calcul transcendantiel efficace.