Intel 8086 - le processeur qui a ouvert l'ère

L'histoire de la légende


Aujourd'hui, en 2018, nous célébrons le quarantième anniversaire de peut-être le processeur clé de l'histoire des ordinateurs personnels, à savoir Intel 8086.
image

C'est avec lui que l'ère de l'architecture x86 a commencé, qui a jeté les bases du développement des processeurs pour de nombreuses années et décennies à venir, et c'est à lui que nous devons la montée en flèche de la popularité de l'ordinateur en tant qu'unité individuelle disponible pour chaque utilisateur. En l'honneur du 40e anniversaire du processeur, qui a commencé la transformation d'Intel en une société de plusieurs milliards de dollars, la société a présenté un petit cadeau symbolique à ses fans - c'était l'anniversaire i7-8086K, le premier processeur de l'histoire d'Intel, capable de fonctionner à 5 GHz dès la sortie de l'emballage.

image

Mais aujourd'hui, nous ne ferons pas l'éloge des ingénieurs des leaders des processeurs modernes, mais nous retournerons dans un passé lointain, en 1976, où l'histoire d'Intel 8086 a commencé. Et elle a commencé avec un processeur complètement différent.

En 1976, Intel a fixé une tâche sérieuse à ses ingénieurs: créer le premier microprocesseur au monde qui prend en charge le multitâche et dispose également d'un contrôleur de mémoire intégré à la puce. Maintenant, ces fonctionnalités technologiques peuvent être facilement trouvées même dans les processeurs les plus abordables du marché, mais il y a 42 ans, de telles innovations technologiques promettaient de dépasser une ère entière - Intel prévoyait de passer à l'informatique 32 bits à une époque où les systèmes 8 bits dominaient, et même 16 -les bits étaient très loin. Malheureusement ou heureusement, les ambitions des dirigeants d'Intel ont été confrontées à la dure réalité de plusieurs délais, à des défis technologiques et à la prise de conscience que la technologie de 1976 n'était pas encore allée jusqu'à réaliser des idées aussi audacieuses. Et surtout, Intel tenait tellement à créer, comme on dirait à l'ouest, une architecture surdimensionnée qu'il a négligé l'aspect pratique d'un point de vue logiciel. C'est l'impraticabilité et la complexité délibérée du système qui ont été critiquées lors d'une des réunions par un expert invité nommé Stephen Morse, alors ingénieur en microélectronique de 36 ans spécialisé dans les logiciels. Néanmoins, Intel n'était pas pressé de prendre en compte les commentaires critiques, alors les notes de Morse sont entrées dans une longue boîte.

Mais comme il s'est avéré plus tard, ils ont été extrêmement utiles - déjà en juillet 1976, la petite entreprise Zilog, fondée par l'inventeur d'Intel 4004 et Intel 8008 Federico Fajin, ainsi que le directeur d'Intel Ralph Ungermann et un autre développeur 4004, le japonais Masatoshi Shima, ont présenté leur processeur sur le marché Z-80, qui est devenu le véritable travail sur les bugs basés sur Intel 8080.

image

Améliorant l'architecture du processeur Intel d'origine, l'équipe Zilog a proposé un processeur peu coûteux et puissant, immédiatement apprécié par de nombreux fabricants d'équipements et plates-formes de pointe de l'époque. C'est le Z-80 qui a formé la base du légendaire ZX Spectrum, et a également été installé dans le Commodore 128 tout aussi célèbre en tant que coprocesseur. Le Z-80 a connu un succès incroyable dans de nombreuses régions du monde, et ce succès ne pouvait pas passer inaperçu - Intel a décidé de toute urgence que le Z-80 avait besoin d'un concurrent digne.

C'est ici que les dirigeants de l'entreprise se sont souvenus des commentaires de Stephen Morse et lui ont suggéré de diriger la création d'un tout nouveau processeur, conçu pour concurrencer le nouveau produit de Zilog. Intel n'a pas vu de raison particulière de définir le cadre de ce projet - alors il a semblé à tout le monde que le nouveau processeur serait une réponse rapide au Z-80 et serait oublié au cours des prochaines années, alors Morse a reçu le feu vert pour toutes les expériences. C'était l'idée obsessionnelle que le processeur devrait être construit autour de l'efficacité du travail avec les logiciels, comme il s'est avéré plus tard, est devenu la clé du développement de toute l'industrie.

En mai 1976, Steve Morse a commencé à travailler sur l'architecture du nouveau processeur. En substance, la tâche assignée à Morse était simple. Si la nouvelle puce 16 bits devrait donner une augmentation significative de la vitesse par rapport au 8080th 8 bits, elle devrait différer dans un certain nombre de paramètres. Mais Intel voulait que les consommateurs y accèdent à nouveau. Comme un des moyens d'y parvenir, la possibilité de transférer à un niveau supérieur un système conçu pour un processeur moins puissant a été envisagée, lors du remplacement par un nouveau, il fonctionnera. Pour cela, idéalement, le nouveau processeur doit être compatible avec tout programme écrit pour le 8080.

Morse a dû s'appuyer sur le projet 8080, selon lequel le processeur a attribué une «adresse» à chaque endroit où les numéros étaient stockés, comme des étiquettes de classificateur. Les adresses étaient des nombres binaires de 16 bits, ce qui permettait de désigner 65536 adresses différentes. Ce plafond était acceptable lorsque les développeurs devaient utiliser la mémoire avec parcimonie. Cependant, maintenant que les consommateurs avaient besoin d'une plus grande quantité, ils ont insisté pour briser la barrière de 64 Ko.

En juillet 1978, un nouveau processeur, baptisé Intel 8086, a fait son apparition sur le marché.

image

Sa sortie n'est pas devenue une sensation ni un succès incroyable. Pour la première fois, le processeur a frappé les étagères dans le cadre de plusieurs ordinateurs bon marché qui n'étaient pas populaires, et a également été utilisé dans divers terminaux. Un peu plus tard, il a constitué la base du microcontrôleur de la NASA, où il a été utilisé pour contrôler les systèmes de diagnostic de lancement de missiles jusqu'au début des années 2000.

Morse a quitté Intel en 1979, juste avant que la société n'introduise l'Intel 8088, un microprocesseur 8086 presque identique qui assurait la compatibilité avec les systèmes 8 bits en divisant le bus 16 bits en deux cycles. Morse lui-même a appelé ce processeur une version "castrée" du 8086.

Le statut légendaire de 8088 a été reçu plus tard, lorsqu'en 1980, IBM a pensé à conquérir le marché des ordinateurs personnels et à créer un ordinateur à un prix raisonnable et comprenant des composants de classe moyenne. C'est l'IBM 5150, mieux connu sous le nom de marque IBM PC, qui a obtenu le processeur 8088 (essentiellement le même 8086), ce qui a fait la renommée d'Intel, même parmi les utilisateurs ordinaires. Mais le Motorola 68000 (la base du premier Apple Macintosh) revendique également la place du 8088, mais la direction d'IBM donne la préférence à Intel.

image

L'IBM PC est rapidement devenu la principale force sur le marché des systèmes informatiques, et Intel, suivant la logique du "mieux, mieux", a continué à produire des processeurs - 80186, 80286, 80386, 80486, Pentium et ainsi de suite - sur la base de la même fondation de Stephen Morse, établie ils étaient de retour en 8086. C'est grâce aux deux derniers chiffres que l'architecture est devenue connue sous le nom de «x86», et l'incroyable popularité des ordinateurs IBM a procuré à Intel d'énormes profits et la reconnaissance de la marque.

Caractéristiques architecturales 8086


En termes de caractéristiques architecturales, l'Intel 8086 s'est fortement appuyé sur l'expérience du développement du processeur 8080 et de son homologue amélioré 8085, qui est entré sur le marché à l'été 1976. Malgré certains parallèles, le 8086 est devenu le premier processeur 16 bits de l'entreprise avec 16 canaux de données et 20 canaux d'adresse capables de traiter jusqu'à 1 Mo de données, et possédait également un large éventail d'instructions qui permettaient, entre autres, d'effectuer des opérations de division / multiplication. Une caractéristique de 8086 était la présence de deux modes - Minimum et Maximum, dont le dernier impliquait l'utilisation d'un processeur dans un système à plusieurs processeurs, et le premier - dans les systèmes classiques à un processeur.

Pour la première fois, une file d'attente d'instructions est apparue dans Intel 8086, ce qui permet de stocker jusqu'à six octets d'instructions directement à partir de la mémoire, ce qui réduit considérablement le temps nécessaire pour les traiter. La nature 16 bits du processeur n'était pas basée uniquement sur quelques composants, car le 8086 comprenait une ALU 16 bits, des registres 16 bits, ainsi qu'un bus de données interne et externe qui traitait les données selon des instructions 16 bits, de sorte que le système fonctionnait beaucoup plus rapidement que avec les processeurs Intel antérieurs.

Bien sûr, en raison d'un ensemble d'innovations à si grande échelle, le 8086 était beaucoup plus cher que son prédécesseur, mais le consommateur avait également le choix - Intel a proposé d'acheter un nouveau produit en plusieurs versions, selon les fréquences du processeur - elles variaient de 5 à 10 MHz.

D'un point de vue architectural, le microprocesseur Intel 8086 se composait de deux modules matériels - un module d'exécution et un module d'interface de bus. Le module d'exécution a indiqué au module d'interface de bus d'où recevoir les données d'instruction, puis a procédé à leur préparation et à leur exécution. Son essence a été réduite à la gestion des données à l'aide du décodeur d'instructions et de l'ALU, tandis que le module lui-même n'avait pas de connexion directe aux bus de données et fonctionnait exclusivement via le module d'interface de bus.

Le module d'exécution contenait un bloc ALU conçu pour effectuer des opérations logiques et arithmétiques, telles que la multiplication, la division, l'addition, la soustraction ou les opérations de type OR, AND et NOT. Il y avait également un registre de drapeaux 16 bits qui stockait divers états de fonctionnement dans la batterie - il y en avait 9 au total, dont 6 étaient des drapeaux d'état et 3 étaient des drapeaux système reflétant l'état de l'appareil.

Le premier comprenait: drapeau de report, drapeau de parité, drapeau de report auxiliaire, drapeau zéro, drapeau de signe et drapeau de dépassement. Les indicateurs système comprenaient l'indicateur de trace, l'indicateur d'activation d'interruption et l'indicateur de direction.

En plus des drapeaux, le module d'exploitation contenait 8 registres à usage général, qui étaient utilisés pour transmettre des données via un bus 16 bits. Dans le même temps, la compatibilité a été maintenue avec la génération précédente de logiciels pour les systèmes 8 bits, car les registres à usage général (AX, BX, CX, DX) pouvaient fonctionner à la fois en mode bus 16 bits et en mode de lecture de données à partir des plus bas (AL, BL, CL, DL) et registres élevés (AH, BH, CH, DH) simultanément, offrant un fonctionnement à deux canaux au format d'un bus 8 bits. En raison de l'accent mis sur la compatibilité avec les plates-formes précédentes en termes de logiciels, l'architecture x86 est devenue la clé et a servi de base à la plupart des processeurs suivants.

Enfin, le dernier des registres du module était un registre de pointeur de 16 bits, qui enregistrait l'adresse du segment de données dans la mémoire tampon nécessaire pour terminer l'opération. Les autres éléments fonctionnels appartenaient au module d'interface de bus voisin.

Le module d'interface de bus contenait des composants beaucoup plus fonctionnels - il répondait au traitement de toutes les données et envoyait des instructions au module d'exécution, lisant les adresses de la mémoire de l'ordinateur et les informations de tous les ports d'entrée / sortie disponibles, ainsi que l'écriture de données dans la mémoire disponible et par le biais de ce qui précède ports. Du fait que le module d'exécution n'avait pas de connexion directe avec le module d'interface de bus, les blocs ont interagi via le bus de données interne.

Ce module contient l'une des principales caractéristiques architecturales du processeur 8086 - la file d'attente d'instructions. Le module d'interface de bus comprend une file d'attente d'instructions capable de stocker jusqu'à 6 octets d'instructions dans un tampon, envoyant de nouvelles instructions sur le pipeline après la réception de la demande correspondante du module d'exécution. Le terme pipelining est apparu précisément avec l'arrivée du processeur 8086 sur le marché, car il signifie préparer l'instruction suivante à un moment où la précédente est en cours d'exécution.

Il existe également 4 registres de segments qui sont chargés de mettre en mémoire tampon les adresses des instructions et des données associées dans la mémoire de l'ordinateur, et de fournir ainsi l'accès aux segments nécessaires au processeur central. Le registre contient également un pointeur de commande (IP) contenant l'adresse de la prochaine instruction pour le module d'exécution.

Enfin, le dernier des registres est un pointeur d'instruction de 16 bits contenant l'adresse de l'instruction suivante à exécuter.

Intel 8086 est devenu le premier processeur 16 bits de la société, disponible dans un boîtier DIP (DPI) à 40 broches, qui, avec de nombreuses autres fonctionnalités, est devenu l'une des normes en microélectronique des années suivantes.

Influence et héritage


Stephen Morse, créant le concept d'un petit processeur "fille" dans les murs d'Intel, n'aurait guère pu imaginer qu'il était sur le point de créer un microprocesseur historique. Intel 8086 était modeste et controversé, mais son frère cadet 8088 a acquis une renommée dans le cadre de l'IBM PC / XT, permettant à Intel de gagner en renommée et de faire d'énormes profits.

L'architecture x86 a constitué la base de tous les autres processeurs Intel, qui ont reconnu la commodité et la polyvalence du concept de Morse de "premier logiciel - puis de remplissage". Chaque processeur suivant a été construit sur la base du précédent, envahi par de nouvelles technologies, instructions et blocs, mais en substance, il était légèrement différent du 8086.

image

Et même aujourd'hui, en regardant le i7 8086K, vous devez comprendre que quelque part au fond de lui sont toujours les racines du processeur même qui a vu la lumière il y a 40 ans, qui a marqué l'ouverture de l'ère x86.

L'auteur du texte est Alexander Lis.

Notre vidéo basée sur cet article:

Source: https://habr.com/ru/post/fr417983/


All Articles