Introduction
Dans les années 1970, l'arithmétique en virgule flottante était un véritable casse-tête. Chaque fabricant d'ordinateurs avait ses propres standards, souvent incompatibles. Intel a changé la donne avec l'introduction du coprocesseur 8087 en 1980, rendant les opérations en virgule flottante jusqu'à 100 fois plus rapides sur les PC IBM. Le 8087 est rapidement devenu le standard, utilisé par la plupart des ordinateurs aujourd'hui.
Le Microcode du 8087
Le 8087 implémente ses instructions via un microcode complexe. Parmi ces instructions, FSCALE se distingue par sa capacité à élever rapidement un nombre à une puissance de deux. En théorie simple, FSCALE s'avère en réalité complexe, utilisant plus de 140 micro-instructions et trois niveaux d'appels de sous-routines pour gérer de nombreux cas particuliers.
Fonctionnement de FSCALE
FSCALE utilise le « Datapath » du 8087, un circuit divisé en un chemin de données 16 bits pour l'exposant et 64 bits pour le significand. Le convertisseur d'exposant et le décalageur sont essentiels dans ce processus, permettant des conversions et des ajustements rapides des valeurs.
Analyse du Microcode
En ouvrant un 8087, on découvre un ROM de microcode au centre, avec 1648 micro-instructions. Le moteur de microcode, à gauche, gère les sauts et appels de sous-routines. Le FSCALE, loin d'être trivial, montre la complexité et la sophistication du 8087.
L'Impact du 8087 sur l'Industrie
L'Intel 8087 a permis de démocratiser l'utilisation des calculs en virgule flottante dans divers domaines, des tableurs aux logiciels de CAO. Aujourd'hui, son héritage perdure dans les processeurs modernes qui continuent de s'inspirer de sa structure microcodée pour optimiser les performances.
Conclusion
La compréhension du microcode du 8087 et de l'instruction FSCALE révèle l'ingéniosité derrière les premières innovations dans le calcul informatique. Cette exploration est cruciale pour saisir comment le matériel et le logiciel s'harmonisent pour offrir des performances accrues.
Discutons de ton projet en 15 minutes.