Microprocesseur Sauter � la navigation Sauter � la recherche Un microprocesseur est un processeur dont tous les composants ont �t� suffisamment miniaturis�s pour �tre regroup�s dans un unique boitier. Fonctionnellement, le processeur est la partie d�un ordinateur qui ex�cute les instructions et traite les donn�es des programmes. Un Intel 4004 dans son bo�tier � 16 broches, premier microprocesseur commercialis�1. Architecture de l'Intel 4004. L'int�rieur d'un Intel 80486DX2. Sommaire 1 2 3 4
Description Histoire Familles Rapidit� d'ex�cution des instructions 4.1 Fr�quence de fonctionnement 4.2 Overclocking 4.3 Optimisation du chemin d'ex�cution 5 Structure et fonctionnement 5.1 Structure d'un microprocesseur 5.2 Fonctionnement 6 Fabrication 7 Probl�me d'�chauffement 8 Prospective et innovation 9 Notes et r�f�rences 9.1 Notes 9.2 R�f�rences 10 Voir aussi 10.1 Articles connexes 10.2 Bibliographie 10.3 Liens externes Description Jusqu�au d�but des ann�es 1970, les diff�rents composants �lectroniques formant un processeur ne pouvaient pas tenir sur un seul circuit int�gr�, ce qui n�cessitait d'interconnecter de nombreux composants dont plusieurs circuits int�gr�s. En 1971, la soci�t� am�ricaine Intel r�ussit, pour la premi�re fois, � placer tous les composants qui constituent un processeur sur un seul circuit int�gr� donnant ainsi naissance au microprocesseur2. Cette miniaturisation a permis : d'augmenter les vitessesa de fonctionnement des processeurs, gr�ce � la r�duction des distances entre les composants ; de r�duire les co�ts, gr�ce au remplacement de plusieurs circuits par un seul ; d'augmenter la fiabilit� : en supprimant les connexions entre les composants du processeur, on supprime l'un des principaux vecteurs de panne ; de cr�er des ordinateurs bien plus petits : les micro-ordinateurs ; de r�duire la consommation �nerg�tiqueb. Les principales caract�ristiques d'un microprocesseur sont : Le jeu d'instructions qu�il peut ex�cuter. Voici quelques exemples d�instructions que peut ex�cuter un microprocesseur : additionner deux nombres, comparer deux nombres pour d�terminer s�ils sont �gaux, comparer deux nombres pour
d�terminer lequel est le plus grand, multiplier deux nombres... Un processeur peut ex�cuter plusieurs dizaines, voire centaines ou milliers, d�instructions diff�rentes. La complexit� de son architecture. Cette complexit� se mesure par le nombre de transistors contenus dans le microprocesseur. Plus le microprocesseur contient de transistors, plus il pourra effectuer des op�rations complexes, et/ou traiter des nombres de grande taille. Le nombre de bits que le processeur peut traiter ensemble. Les premiers microprocesseurs ne pouvaient traiter plus de 4 bits d'un coup. Ils devaient donc ex�cuter plusieurs instructions pour additionner des nombres de 32 ou 64 bits. Les microprocesseurs actuels (en 2007) peuvent traiter des nombres sur 64 bits. Le nombre de bits des bus, de la m�moire et du processeur est en rapport direct avec la capacit� � traiter de grands nombres rapidement, ou des nombres d'une grande pr�cision (nombres de d�cimales significatives). La vitesse de l�horloge. Le r�le de l�horloge est de cadencer le rythme du travail du microprocesseur. Plus la vitesse de l�horloge augmente, plus le microprocesseur effectue d'instructions en une seconde. Tout ceci est th�orique, dans la pratique, selon l'architecture du processeur, le nombre de cycles d'horloge pour r�aliser une op�ration �l�mentaire peut varier d'un cycle � plusieurs dizaines par unit� d'ex�cution (typiquement une sur un processeur classique). Par exemple, un processeur A cadenc� � 400 MHz peut ex�cuter certaines instructions plus rapidement qu'un autre B cadenc� � 1 GHz, tout d�pend de leurs architectures respectives. La combinaison des caract�ristiques pr�c�dentes d�termine la puissance du microprocesseur qui s�exprime en � millions d'instructions par seconde � (MIPS). Dans les ann�es 1970, les microprocesseurs effectuaient moins d�un million d�instructions par seconde, mais en 2007, les processeurs pouvaient effectuer plus de 10 milliards d�instructions par seconde. Histoire Article connexe : Historique des produits des constructeurs de microprocesseurs. Illustration de la loi de Moore, une observation de l��volution du nombre de transistors d'un microprocesseur, de 1971 � 20113. En 1969, le microprocesseur a �t� invent� par un ing�nieur et un physicien d'Intel : Marcian Hoff (surnomm� Ted Hoff)4,5 et Federico Faggin, qui venait de le rejoindre, fort des recherches men�es en Italie. Federico Faggin, ing�nieur italien est en 1968 chez Fairchild-SGS � Agrate Brianza6, puis � Palo Alto avec Thomas Klein6, le concepteur du premier circuit int�gr� commercial � grilles autoalign�es, le Fairchild 3708, puis chef de projet de la Technologie Silicon Gate (TSG), la premi�re m�thode pratique pour la fabrication des circuits int�gr�s MOS (semi-conducteur � oxyde de m�tal) avec grilles auto-align�s, qui a remplac� la grille d'aluminium traditionnel d'un transistor MOS par une grille en silicium, pour int�grer deux fois plus de transistors dans la m�me surface. Federico Faggin est embauch� par Intel en avril 19706, pour �tre le chef de projet, le cr�ateur de la m�thodologie de conception et le concepteur principal, en seulement quelques mois, avec Marcian Hoff, des quatre puces de l'Intel 4004, qui servit initialement � fabriquer des contr�leurs graphiques en mode texte puis devint un processeur d'usage g�n�ral, avec une licence achet�e au japonais Busicom6. Marcian Hoff a formul� l'architecture du microprocesseur (une architecture de bloc et un jeu d'instructions). Le premier microprocesseur commercialis�, le 15 novembre 1971, est l'Intel 4004 4 bits, suivi par l'Intel 8008 � 8 bits et qui servit initialement � fabriquer des contr�leurs graphiques en mode texte. Jug� trop lent par le client qui en avait demand� la conception, il devint un processeur d'usage g�n�ral.
Ces processeurs sont les pr�curseurs des Intel 8080, Zilog Z80, et de la future famille des Intel x867. Federico Faggin est l'auteur d'une m�thodologie de conception nouvelle pour la puce et la logique, fond�e pour la premi�re fois sur la technologie silicon gate d�velopp� par lui en 1968 chez Fairchild. Il a aussi dirig� la conception du premier microprocesseur jusqu'� son introduction sur le march� en 19718. Presqu'� la m�me �poque une autre soci�t� am�ricaine, Motorola, effectue des travaux et innovations similaires sous la direction de Chuck Peddle9, venu de General Electric, o� il avait con�u une caisse enregistreuse �lectronique, mais qui d�cide en 1970 d'abandonner son activit� informatique. Il participe au d�veloppement du microprocesseur Motorola 6800,� 8 bits, vendu alors 300 US$, et qui va servir aux ordinateurs d'usage professionnel Goupil 1 et 2 de la soci�t� SMT. Dans les ann�es 1970, apparaissent les concepts de datagramme et d'informatique distribu�e, avec Arpanet, le r�seau Cyclades et la Distributed System Architecture, devenue en 1978 le mod�le � OSI-DSA �. Le microprocesseur est tr�s vite accueilli comme la pierre angulaire de cette informatique distribu�e, car il permet de d�centraliser le calcul, avec des machines moins co�teuses et moins encombrantes face au monopole IBM, produites en plus grande s�rie. En 1990, Gilbert Hyatt revendique la paternit� du microprocesseur en se basant sur un brevet qu�il avait d�pos� en 197010. La reconnaissance de l�ant�riorit� du brevet de Hyatt aurait permis � ce dernier de r�clamer des redevances sur tous les microprocesseurs fabriqu�s de par le monde. Cependant, le brevet de Hyatt a �t� invalid� en 1995 par l�office am�ricain des brevets, sur la base du fait que le microprocesseur d�crit dans la demande de brevet n'avait pas �t� r�alis�, et n'aurait d'ailleurs pas pu l'�tre avec la technologie disponible au moment du d�p�t du brevet11. Le tableau suivant d�crit les principales caract�ristiques des microprocesseurs fabriqu�s par Intel, et montre leur �volution en termes de nombre de transistors, en miniaturisation des circuits, et en augmentation de puissance. Il faut garder � l'esprit que si ce tableau d�crit l'�volution des produits d'Intel, l'�volution des produits des concurrents a suivi avec plus ou moins d'avance ou de retard la m�me marche. Un programme informatique est, par essence, un flux d'instructions ex�cut�es par un processeur. Chaque instruction n�cessite un � plusieurs cycles d'horloge, l'instruction est ex�cut�e en autant d'�tapes que de cycles n�cessaires. Les microprocesseurs s�quentiels ex�cutent l'instruction suivante lorsqu'ils ont termin� l'instruction en cours. Dans le cas du parall�lisme d'instructions, le microprocesseur pourra traiter plusieurs instructions dans le m�me cycle d'horloge, � condition que ces instructions diff�rentes ne mobilisent pas simultan�ment une unique ressource interne. Autrement dit, le processeur ex�cute des instructions qui se suivent, et ne sont pas d�pendantes l'une de l'autre, � diff�rents stades d'ach�vement. Cette file d'ex�cution � venir s'appelle un pipeline. Ce m�canisme a �t� impl�ment� la premi�re fois dans les ann�es 1960 par IBM. Les processeurs plus �volu�s ex�cutent en m�me temps autant d'instructions qu'ils ont de pipelines, ce � la condition que toutes les instructions � ex�cuter parall�lement ne soient pas interd�pendantes, c'est-�-dire que le r�sultat de l'ex�cution de chacune d'entre elles ne modifie pas les conditions d'ex�cution de l'une des autres. Les processeurs de ce type sont appel�s processeurs superscalaires. Le premier ordinateur � �tre �quip� de ce type de processeur �tait le Seymour Cray CDC 6600 en 1965. Le Pentium est le premier des processeurs superscalaires pour compatible PC. Les concepteurs de processeurs ne cherchent pas simplement � ex�cuter plusieurs
instructions ind�pendantes en m�me temps, ils cherchent � optimiser le temps d'ex�cution de l'ensemble des instructions. Par exemple le processeur peut trier les instructions de mani�re que tous ses pipelines contiennent des instructions ind�pendantes. Ce m�canisme s'appelle l'ex�cution out-of-order. Ce type de processeur s'est impos� pour les machines grand public des ann�es 1980 et aux ann�es 199012. L'exemple canonique de ce type de pipeline est celui d'un processeur RISC, en cinq �tapes. Le Intel Pentium 4 dispose de 35 �tages de pipeline13. Un compilateur optimis� pour ce genre de processeur fournira un code qui sera ex�cut� plus rapidement. Pour �viter une perte de temps li�e � l'attente de nouvelles instructions, et surtout au d�lai de rechargement du contexte entre chaque changement de threads, les fondeursc ont ajout� � leurs processeurs des proc�d�s d'optimisation pour que les threads puissent partager les pipelines, les caches et les registres. Ces proc�d�s, regroup�s sous l'appellation Simultaneous Multi Threading, ont �t� mis au point dans les ann�es 1950. Par contre, pour obtenir une augmentation des performances, les compilateurs doivent prendre en compte ces proc�d�s, il faut donc re-compiler les programmes pour ces types de processeurs. Intel a commenc� � produire, d�but des ann�es 2000, des processeurs impl�mentant la technologie SMT � deux voies. Ces processeurs, les Pentium 4, peuvent ex�cuter simultan�ment deux threads qui se partagent les m�mes pipelines, caches et registres. Intel a appel� cette technologie SMT � deux voies : l�Hyperthreading. Le Super-threading est, quant � lui, une technologie SMT dans laquelle plusieurs threads partagent aussi les m�mes ressources, mais ces threads ne s'ex�cutent que l'un apr�s l'autre et non simultan�ment14. Depuis longtemps d�j�, existait l'id�e de faire cohabiter plusieurs processeurs au sein d'un m�me composant, par exemple les System on Chip. Cela consistait, par exemple, � ajouter au processeur, un coprocesseur arithm�tique, un DSP, voire un cache m�moire, �ventuellement m�me l'int�gralit� des composants que l'on trouve sur une carte m�re. Des processeurs utilisant deux ou quatre c�urs sont donc apparus, comme le POWER4 d'IBM sorti en 2001. Ils disposent des technologies cit�es pr�alablement. Les ordinateurs qui disposent de ce type de processeurs co�tent moins cher que l'achat d'un nombre �quivalent de processeurs, cependant, les performances ne sont pas directement comparables, cela d�pend du probl�me trait�. Des API sp�cialis�es ont �t� d�velopp�es afin de tirer parti au mieux de ces technologies, comme le Threading Building Blocks d'Intel. Date Nom Nombre de transistors Finesse de gravure (nm) Fr�quence de l'horloge Largeur des donn�es MIPS 1971 Intel 4004 2 300 10 000 740 kHz 4 bits/4 bits bus 0,06 1974 Intel 8080 6 000 6 000 2 MHz 8 bits/8 bits bus 0,64 1979 Intel 8088 29 000 3 000 5 MHz 16 bits/8 bits bus 0,33 1982 Intel 80286 134 000 1 500 6 � 16 MHz (20 MHz chez AMD) 16 bits/16 bits bus 1 1985 Intel 80386 275 000 1 500 16 � 40 MHz 32 bits/32 bits bus 5 1989 Intel 80486 1 200 000 (800nm) 1 000 � 800 16 � 100 MHz 32 bits/32 bits bus 20 1993 Pentium (Intel P5) 3 100 000 800 � 250 60 � 233 MHz 32 bits/64 bits bus 100 1997 Pentium II 7 500 000 350 � 250 233 � 450 MHz 32 bits/64 bits bus 300 1999 Pentium III 9 500 000 250 � 130 450 � 1 400 MHz 32 bits/64 bits bus 510 2000 Pentium 4 42 000 000 180 � 65 1,3 � 3,8 GHz 32 bits/64 bits bus 1 700 2004 Pentium 4 D (Prescott) 125 000 000 90 � 65 2.66 � 3,6 GHz 32
bits/64 bits bus 9 000 2006 Core 2 Duo (Conroe) 291 000 000 65 2,4 GHz (E6600) 64 bits/64 bits bus 22 000 2007 Core 2 Quad (Kentsfield) 2*291 000 000 65 3 GHz (Q6850) 64 bits/64 bits bus 2*22 000 (?) 2008 Core 2 Duo (Wolfdale) 410 000 000 45 3,33 GHz (E8600) 64 bits/64 bits bus ~24 200 2008 Core 2 Quad (Yorkfield) 2*410 000 000 45 3,2 GHz (QX9770) 64 bits/64 bits bus ~2*24 200 2008 Intel Core i7 (Bloomfield) 731 000 000 45 3,33 GHz (Core i7 975X) 64 bits/64 bits bus ? 2009 Intel Core i5/i7 (Lynnfield) 774 000 000 45 3,06 GHz (I7 880) 64 bits/64 bits bus 76 383 2010 Intel Core i7 (Gulftown) 1 170 000 000 32 3,47 GHz (Core i7 990X) 64 bits/64 bits bus 147 600 2011 Intel Core i3/i5/i7 (Sandy Bridge) 1 160 000 000 32 3,5 GHz (Core i7 2700K) 64 bits/64 bits bus 2011 Intel Core i7/Xeon (Sandy Bridge-E) 2 270 000 000 32 3,5 GHz (Core i7 3970X) 64 bits/64 bits bus 1 ou 2 2012 Intel Core i3/i5/i7 (Ivy Bridge) 1 400 000 000 22 3,5 GHz (Core i7 3770K) 64 bits/64 bits bus 2013 Intel Core i3/i5/i7 (Haswell) 1 400 000 000 22 3,8 GHz (Core i7 4770K) 64 bits/64 bits bus 2014 Intel Core i3/i5/i7 (Broadwell) 1 400 000 000 14 3,8 GHz (Core i7 5775R) 64 bits/64 bits bus 2015 Intel Core i3/i5/i7 (Skylake) 1 750 000 000 14 4 GHz (Core i7 6700K) 64 bits/64 bits bus 2016 Intel Core i3/i5/i7 (Kabylake) ? 14 4.2 GHz (Core i7 7700K) 64 bits/64 bits bus 2017 Intel Core i3/i5/i7 (Coffe Lake) ? 14 3.7 GHz ~ 4.7 GHz (Core i7 8700K) 64 bits/64 bits bus 2018 Intel Core i3/i5/i7 (?) ? 14 64 bits/64 bits bus 2018 Intel Core i3/i5/i7/i9 (Ice Lake) ? 10 2019 Intel Core i3/i5/i7/i9 (Tigerlake) ? 10 Date : l�ann�e de commercialisation du microprocesseur. Nom : le nom du microprocesseur. Nombre de transistors : le nombre de transistors contenus dans le microprocesseur. Finesse de gravure (nm) : la largeur minimale possible (en nanom�tres) du canal des transistors, elle sert indirectement d'unit� de base (lambda) dans le dimensionnement des autres structure du circuit. En comparaison, l'�paisseur d'un cheveu humain est de 100 microns = 100 000 nm. Le diam�tre d�un atome de silicium est de l�ordre de 100 pm=0,1 nm. En 2014, � des finesses de gravure de l�ordre de 10 nm (pour la m�moire), on se retrouve avec certaine structure (comme la couche d'isolation de la grille des transistors) ayant une �paisseur de moins de 4 nm, ce qui fait quelque dizaines d'atomes de silicium. En augmentant la finesse de gravure, on se rapproche des limites en de�� desquelles le comportement �lectrique des mat�riaux rel�ve de moins en moins de la physique classique, mais de plus en plus de la m�canique quantique (les �lectrons traversant la grille des transistors par effet tunnel). Fr�quence de l�horloge : la fr�quence du signal d'horloge interne qui cadence le microprocesseur. MHz = million(s) de cycles par seconde. GHz = milliard(s) de cycles par seconde. Largeur des donn�es : le premier nombre indique le nombre de bits sur lequel une op�ration est faite. Le second nombre indique le nombre de bits transf�r�s � la fois entre la m�moire et le microprocesseur. MIPS : le nombre de millions d�instructions, sur des entiers, effectu�es par le microprocesseur en une seconde.
Familles Microprocesseur PowerPC 4755. Microprocesseur ARM60. Microprocesseur Intel Core 2 Duo. Les microprocesseurs sont habituellement regroup�s en familles, en fonction du jeu d'instructions qu'ils ex�cutent. Si ce jeu d'instructions comprend souvent une base commune � toute la famille, les microprocesseurs les plus r�cents d'une famille peuvent pr�senter de nouvelles instructions. La r�trocompatibilit� au sein d'une famille n'est donc pas toujours assur�e. Par exemple un programme dit compatible x86 �crit pour un processeur Intel 8038615, qui permet la protection m�moire, pourrait ne pas fonctionner sur des processeurs ant�rieurs, mais fonctionne sur tous les processeurs plus r�cents (par exemple un Core Duo d'Intel ou un Athlon d'AMD). Il existe des dizaines de familles de microprocesseurs. Parmi celles qui ont �t� les plus utilis�es, on peut citer : La famille la plus connue par le grand public est la famille x86, apparue � la fin des ann�es 1970, d�velopp�e principalement par les entreprises Intel (fabricant du Pentium), AMD (fabricant de l'Athlon), VIA et Transmeta. Les deux premi�res entreprises dominent le march� en fabriquant la majorit� des microprocesseurs pour micro-ordinateurs compatibles PC et Macintosh depuis 2006. Le MOS Technology 650216 qui a servi � fabriquer les Apple II, Commodore PET, et dont les descendants ont servi au Commodore 64 et aux consoles Atari 2600. Le MOS Technology 6502 a �t� con�u par d'anciens ing�nieurs de Motorola et �tait tr�s inspir� du Motorola 6800. Le microprocesseur Zilog Z80 a �t� largement utilis� dans les ann�es 1980 dans la conception des premiers micro-ordinateurs personnels 8 bits comme le TRS-80, les Sinclair ZX80, ZX81, ZX Spectrum, le standard MSX, les Amstrad CPC et plus tard dans les syst�mes embarqu�s. La famille Motorola 68000 (aussi appel�e m68k) de Motorola animait les premiers Macintosh, les Mega Drive, les Atari ST et les Commodore Amiga. Leurs d�riv�s (Dragonball, ColdFire) sont toujours utilis�s dans des syst�mes embarqu�s. Les microprocesseurs PowerPC d'IBM et de Motorola �quipaient jusqu'en 2006 les micro-ordinateurs Macintosh (fabriqu�s par Apple). Ces microprocesseurs sont aussi utilis�s dans les serveurs de la s�rie P d'IBM et dans divers syst�mes embarqu�s. Dans le domaine des consoles de jeu, des microprocesseurs d�riv�s du PowerPC �quipent la Wii (Broadway), la GameCube (Gekko), Xbox 360 (d�riv� � trois c�urs nomm� Xenon). La PlayStation 3 est �quip�e du microprocesseur Cell, d�riv� du POWER4, une architecture proche de PowerPC. Les processeurs d'architecture MIPS animaient les stations de travail de Silicon Graphics, des consoles de jeux comme la PSone, la Nintendo 64 et des syst�mes embarqu�s, ainsi que des routeurs Cisco. C'est la premi�re famille � proposer une architecture 64 bits avec le MIPS R4000 en 1991. Les processeurs du fondeur chinois Loongson, sont une nouvelle g�n�ration bas�es sur les technologies du MIPS, utilis�s dans des supercalculateurs et des ordinateurs faible consommation. La famille ARM est de nos jours utilis�e uniquement dans les syst�mes embarqu�s, dont de nombreux PDA et smartphones. Elle a pr�c�demment �t� utilis�e par Acorn pour ses Archimedes et RiscPC. Rapidit� d'ex�cution des instructions Fr�quence de fonctionnement
Les microprocesseurs sont cadenc�s par un signal d'horloge (signal oscillant r�gulier imposant un rythme au transfert entre circuit). Au milieu des ann�es 1980, ce signal avait une fr�quence de 4 � 8 MHz. Dans les ann�es 2000, cette fr�quence atteint 3 GHz. Plus cette fr�quence est �lev�e, plus le microprocesseur peut ex�cuter � un rythme �lev� les instructions de base des programmes mais plus la qualit� des bus doit �tre soign�e et leur longueur adapt�e � la fr�quence. L'augmentation de la fr�quence pr�sente des inconv�nients : la dissipation thermique17 d'un circuit donn� est proportionnelle � sa fr�quence de fonctionnement et au carr� de sa tension d'alimentation18 : cela implique d'avoir une solution de refroidissement du processeur adapt�e ; la fr�quence est notamment limit�e par les temps de commutation des portes logiques : il est n�cessaire qu'entre deux � coups d'horloge �, les signaux num�riques aient eu le temps de parcourir tout le trajet n�cessaire � l'ex�cution de l'instruction attendue ; pour acc�l�rer le traitement, il faut agir sur de nombreux param�tres (taille d'un transistor, interactions �lectromagn�tiques entre les circuits, etc.) qu'il devient de plus en plus difficile d'am�liorer (tout en s'assurant de la fiabilit� des op�rations). Overclocking L'overclocking consiste � appliquer au microprocesseur une fr�quence du signal d'horloge sup�rieure aux recommandations du fabricant ce qui permet d'ex�cuter plus d'instructions � chaque seconde. Cela n�cessite souvent plus de puissance d'alimentation au risque de dysfonctionnements voire de destruction en cas de surchauffe. Optimisation du chemin d'ex�cution Les microprocesseurs actuels sont optimis�s pour ex�cuter plus d'une instruction par cycle d'horloge, ce sont des microprocesseurs avec des unit�s d'ex�cution parall�lis�es. De plus ils sont dot�s de proc�dures qui � anticipent � les instructions suivantes avec l'aide de la statistique. Dans la course � la puissance des microprocesseurs, deux m�thodes d'optimisation sont en concurrence : la technologie RISC (Reduced Instruction Set Computer, jeu d'instructions simple), rapide avec des instructions simples de taille standardis�e, facile � fabriquer et dont on peut monter la fr�quence de l'horloge sans trop de difficult�s techniques ; la technologie CISC (Complex Instruction Set Computer), dont chaque instruction complexe n�cessite plus de cycles d'horloge, mais qui a en son c�ur beaucoup d'instructions pr�c�bl�es. N�anmoins, avec la diminution de la taille des puces �lectroniques et l'acc�l�ration des fr�quences d'horloge, la distinction entre RISC et CISC a quasiment compl�tement disparu. L� o� des familles tranch�es existaient, on observe aujourd'hui des microprocesseurs o� une structure interne RISC apporte de la puissance tout en restant compatible avec une utilisation de type CISC (la famille Intel x86 a ainsi subi une transition entre une organisation initialement tr�s typique d'une structure CISC. Actuellement elle utilise un c�ur RISC tr�s rapide, s'appuyant sur un syst�me de r�arrangement du code � la vol�e) mis en �uvre, en partie, gr�ce � des m�moires caches de plus en plus grandes, comportant jusqu'� trois niveaux. Structure et fonctionnement Articles d�taill�s : Architecture des processeurs et micro-architecture. Structure d'un microprocesseur
L'unit� centrale d'un microprocesseur comprend essentiellement : une unit� arithm�tique et logique (UAL) qui effectue les op�rations ; des registres qui permettent au microprocesseur de stocker temporairement des donn�es ; une unit� de contr�le qui commande l'ensemble du microprocesseur en fonction des instructions du programme. Certains registres ont un r�le tr�s particulier : le registre indicateur d'�tat (flags), ce registre donne l'�tat du microprocesseur � tout moment, il peut seulement �tre lu ; le compteur de programme (PC, Program Counter), il contient l'adresse de la prochaine instruction � ex�cuter ; le pointeur de pile (SP, Stack Pointer), c'est le pointeur d'une zone sp�ciale de la m�moire appel�e pile o� sont rang�s les arguments des sous-programmes et les adresses de retour. Seul le Program Counter est indispensable, il existe de (rares) processeurs ne comportant pas de registre d'�tat ou pas de pointeur de pile (par exemple le NS320xx (en)). L'unit� de contr�le peut aussi se d�composer : le registre d'instruction, m�morise le code de l'instruction � ex�cuter ; le d�codeur d�code cette instruction ; le s�quenceur ex�cute l'instruction, c'est lui qui commande l'ensemble des organes du microprocesseur. Fonctionnement Pour commencer, le microprocesseur va charger une instruction contenue en m�moire gr�ce au compteur de programme. Ce dernier est au passage incr�ment�, afin que le processeur traite l'instruction suivante au prochain cycle. L'instruction est alors d�cod�e et si n�cessaire le microprocesseur va chercher en m�moire les donn�es suppl�mentaires. Dans certains cas, des instructions servent uniquement � charger une donn�e dans un registre pr�cis ou � �crire une donn�e d'un registre en m�moire. Dans ce cas, le processeur charge ou �crit la donn�e puis passe � l'instruction suivante. Dans le cas o� le processeur doit effectuer une op�ration de calcul, le processeur fait alors appel � l'ALU. Dans beaucoup d'architectures, celle-ci fonctionne avec un registre accumulateur. Celui-ci enregistre le r�sultat de l'op�ration pr�c�dente, qui peut ensuite �tre r�utilis�. Dans le cas d'un saut (goto, jump), c'est le compteur de programme qui est directement modifi�. Dans le cas d'un saut conditionnel (if), le processeur v�rifie avant le saut qu'une condition bool�enne est valide (true). Dans certains sauts (jump), le processeur ajoute une valeur � l'accumulateur. Cela permet au programme d'�tre ex�cut� � n'importe quel endroit dans la m�moire. Les instructions se divisent donc en plusieurs cat�gories : Les instructions de chargement (load) : mettent l'accumulateur � une certaine valeur ; Les instructions de rangement (store) : permettent d'�crire la valeur de l'accumulateur dans un registre ou un emplacement de m�moire pr�cis ; Les instructions de saut (if, jump) : permettent de d�placer choisir la prochaine instruction � ex�cuter ; Les instructions de calcul (add, mul, div, etc.) : permettent par exemple d'ajouter le contenu du registre X � l'accumulateur, de multiplier l'accumulateur par le registre Y, etc.
� la fin du cycle, le processeur finit de ranger ses donn�es en m�moire ou dans les registres sp�cifiques. En cas de retenue, un registre sp�cial re�oit la valeur de la retenue, ce qui permet de le combiner � nouveau pour fonctionner avec plus de bits que ce que permet l'architecture. En cas d'erreur, comme une division par z�ro, le processeur modifie un registre d'�tat et peut d�clencher une interruption. Toutes ces �tapes peuvent s�effectuer en plusieurs cycles d'horloge. Une optimisation consiste � les ex�cuter � la cha�ne (principe du pipeline) ou en parall�le (architecture superscalaire). Actuellement, face � la difficult� li�e � la mont�e en fr�quence des microprocesseurs, les fabricants tentent d'augmenter le nombre d'Instructions Par Cycle (IPC) afin d'augmenter la vitesse de leurs processeurs. Cela a conduit � l'apparition de processeurs multi-c�urs, compos�s de plusieurs unit�s, ou c�ur, capables d'ex�cuter une instruction ind�pendamment de l'autre (contrairement � une architecture superscalaire, qui conserve des registres en commun). On parle alors de calcul en parall�le. N�anmoins, cela n�cessite des programmes adapt�s et les performances de ces processeurs d�pendent donc de plus en plus de la qualit� de programmation des programmes qu'ils ex�cutent. Fabrication Article d�taill� : Fabrication des dispositifs � semi-conducteurs. La fabrication d'un microprocesseur est essentiellement identique � celle de n'importe quel circuit int�gr�. Elle suit donc un proc�d� complexe. Mais l'�norme taille et complexit� de la plupart des microprocesseurs a tendance � augmenter encore le co�t de l'op�ration. La loi de Moore, qui indique que le nombre de transistors des microprocesseurs sur les puces de silicium double tous les deux ans, indique �galement que les co�ts de production doublent en m�me temps que le degr� d'int�gration. La fabrication des microprocesseurs est aujourd'hui consid�r�e comme l'un des deux facteurs d'augmentation de la capacit� des unit�s de fabrication (avec les contraintes li�es � la fabrication des m�moires � grande capacit�). La finesse de la gravure industrielle a atteint 45 nm en 200619. En diminuant encore la finesse de gravure, les fondeurs se heurtent aux r�gles de la m�canique quantique. Probl�me d'�chauffement Malgr� l'usage de techniques de gravures de plus en plus fines, l'�chauffement des microprocesseurs reste approximativement proportionnel au carr� de leur tension � architecture donn�e. Avec V {\displaystyle V} V la tension, f {\displaystyle f} f la fr�quence, et k {\displaystyle k} k un coefficient d'ajustement, on peut calculer la puissance dissip�e P {\displaystyle P} P : P = k � V 2 � f {\displaystyle P=k\times V^{2}\times f} P=k\times V^{2}\times f Ce probl�me est li� � un autre, celui de la dissipation thermique et donc souvent des ventilateurs, sources de nuisances sonores. Le refroidissement liquide peut �tre utilis�. L'utilisation d'une p�te thermique assure une meilleure conduction de la chaleur du processeur vers le radiateur. Si l'�chauffement ne pose pas de probl�me majeur pour des applications type ordinateur de bureau, il en pose pour toutes les applications portables. Il est techniquement facile d'alimenter et de refroidir un ordinateur fixe. Pour les applications portables, ce sont deux probl�mes d�licats. Le t�l�phone portable, l'ordinateur portable, l'appareil photo num�rique, le PDA, le baladeur MP3 ont une batterie qu'il s'agit de m�nager pour que l'appareil portable ait une meilleure autonomie. Prospective et innovation Mat�riaux bidimensionnels : L'�lectronique bidimensionnelle20 est une piste d'innovation envisag�e d�s 201021. Elle s'appuie sur des microprocesseurs de taille nanom�trique22, imprim� en seulement deux dimensions, � partir de semi-conducteur 2D d'un ou seulement quelques atomes d'�paisseur, afin d'encore miniaturiser
l'�lectronique sous les limites permises par le silicium23. Dans les ann�es 2010, des prototypes comprenant quelques transistors ont �t� test�s avec succ�s. Des mat�riaux organiques24, des nanotubes de carbone25 ou le disulfure de molybd�ne sont des mat�riaux qui semblent prometteurs26,27,28,29, notamment pour produire des compos�s souples30, pouvant par exemple �tre int�gr�s dans des feuilles de plastique, des v�tements ou des � robots mous �. Le disulfure de molybd�ne a �t� utilis� en 2017 pour fabriquer un semi-conducteur permettant de produire un microprocesseur en quasi 2D, comprenant 115 transistors. Ce dernier a efficacement ex�cut� des programmes stock�s dans une m�moire externe (pour un bit de donn�es mais les auteurs disent que la conception peut �tre mise � l'�chelle pour en g�rer plus). � cette �chelle les microprocesseurs sont invisibles et pourraient par exemple �tre int�gr�s dans le verre de lunettes, de pare-brise ou de vitres ou dans une lentille oculaire. Notes et r�f�rences Notes ? Cette vitesse est exprim� sous forme d'une fr�quence exprim�e en hertz (Hz), qui comptabilise le nombre de cycles qu'effectue l'horloge de synchronisation du processeur en une seconde. ? Ce n'est pas la seule raison, mais, plus un transistor est petit, moins il a besoin d'�nergie pour commuter correctement. ? Soci�t� fabricant des puces �lectroniques. R�f�rences ? (en)[PDF]4004 - 4 bits microprocessor [archive], sur intel.com, consult� le 6 mai 2017 ? Alain Binet, Le Second XXe si�cle (1939-2000), Paris, Ellipses, 2003, p.208 ? Nanoinformatique - Inventer l'ordinateur du XXI�me Si�cle J.B. Waldner, Hermes Science, London, 2007, (adaptation et actualisation fig2.13, p.58) ? (en)The man who invented the microprocessor [archive], sur bbc.com ? (en)"Ted" Hoff's first microprocessor [archive], sur silicon-valley-story.de, consult� le 25 d�cembre 2016 ? a b c et d "Computers Pioneer" par J.A.N Lee [1] [archive] ? (en) The Intel 4004 Microprocessor and the Silicon Gate Technology [archive], sur le site intel4004.com, consult� le 7 d�cembre 2015 ? (en)F. Faggin et M. E. Hoff: Standard Parts and Custom Design Merge in a Four-chip Processor Kit. Electronics, 24 avril 1972 ? (en) Nebojsa Matic , "PIC microcontrollers, for beginners" [archive], sur mit.edu ? (en)Gilbert Hyatt Files the First General Patent on the Microprocessor, Later Invalidated [archive], sur historyofinformation.com de d�cembre 1970, consult� le 25 d�cembre 2016 ? (en)The Intel 4004 Microprocessor and the Silicon Gate Technology [archive], sur intel4004.com, consult� le 25 d�cembre 2016 ? (Culler et al, p. 15) ? (en) Patt, Yale (avril 2004). "The Microprocessor Ten Years From Now: What Are The Challenges, How Do We Meet Them? [archive] � Copie archiv�e � (version du 8 novembre 2018 sur l'Internet Archive) Mod�le:Wmv], sur utexas.edu, consult� le 7 novembre 2007. ? Superthreading with a multithreaded processor [archive], sur arstechnica.com ? � Intel arr�te la production de ses anciens processeurs � [archive], sur reghardware.co.uk. ? Le jeu d'instructions du 6502/6510 [archive] � sur free.fr ? Dissipation thermique dans les syst�mes �lectroniques [archive], sur techniques-ingenieur.fr ? [PDF]dissipation thermique dans les composants [archive], sur nae.fr
? (en) Intel First to Demonstrate Working 45nm Chips [archive], sur intel.com ? Fiori, G. et al. Electronics based on two-dimensional materials. Nat. Nanotechnol. 9, 768�779 (2014). ? Mak, K. F., Lee, C., Hone, J., Shan, J. & Heinz, T. F. Atomically thin MoS2: a new direct-gap semiconductor. Phys. Rev. Lett. 105, 136805 (2010). ? Li, L. et al. Black phosphorus field-effect transistors. Nat. Nanotechnol. 9, 372�377 (2014). ? Stefan Wachter, Dmitry K. Polyushkin, Ole Bethge & Thomas Mueller (2017), A microprocessor based on a two-dimensional semiconductor ; Nature Communications 8, Article n�14948 mis en ligne le 11 Avril 2017 ; Doi:10.1038/ncomms14948 (r�sum� [archive]) ? Myny, K. et al. An 8-bit, 40-instructions-per-second organic microprocessor on plastic foil. IEEE J. Solid-State Circuits 47, 284�291 (2012). ? Shulaker, M. M. et al. Carbon nanotube computer. Nature 501, 526�530 (2013). ? adisavljevic, B., Radenovic, A., Brivio, J., Giacometti, V. & Kis, A. Singlelayer MoS2 transistors. Nat. Nanotechnol. 6, 147�150 (2011). ? Roy, T. et al. (2015) Dual-gated MoS2/WSe2 van der Waals tunnel diodes and transistors. ACS Nano 9, 2071�2079 ? Pu, J. et al. (2012) Highly flexible MoS2 thin-film transistors with ion gel dielectrics. Nano Lett. 12, 4013�4017 ? Wang, H. et al. (2012) Integrated circuits based on bilayer MoS2 transistors. Nano Lett. 12, 4674�4680 ? Cheng, R. et al. (2014) Few-layer molybdenum disulfide transistors and circuits for high-speed flexible electronics. Nat. Commun. 5, 5143 Voir aussi Articles connexes Processeur Liste de microprocesseurs Chronologie des microprocesseurs Loi de Moore Traitement num�rique (microprocesseur) Microcontr�leur �mulateur in-circuit Overclocking Bibliographie (en) Jon Stokes, An Illustrated Introduction to Microprocessors and Computer Architecture par Jon Stokes, No Starch Press, 2006, (ISBN 978-1-59327-104-6) (en) Grant McFarland, "Microprocessor Design", McGraw-Hill Professional, 2006, (ISBN 978-0-07-145951-8) Jean-Baptiste Waldner, Nano-informatique et intelligence quantique - Inventer l'ordinateur du XXIe si�cle, Hermes Science, Londres, 2006, (ISBN 2-7462-1516-0) (en) David E. Culler ; Jaswinder Pal Singh and Anoop Gupta (1999)., Parallel Computer Architecture - A Hardware/Software Approach, Morgan Kaufmann Publishers (ISBN 1558603433). (en)Federico Faggin, et al.: The MCS-4 An LSI Microcomputer System. IEEE 1972 Region Six Conference (en)Yale Patt, Sanjay J. Patel, Introduction to Computing Systems: From Bits and Gates to C and Beyond, Mc Graw Hill (en)Wade Warner, Great moments in microprocessor history [archive], 2004, IBM