Les performances des microprocesseurs sont liées aux possibilités offertes par la technologie, en terme de capacité (nombre de portes logiques intégrées) et de vitesse, et au choix d'architectures adaptées (ou imposées pour cause de compatibilité ascendante); à l'heure actuelle, on trouve sur le marché des microprocesseurs intégrant des millions de transistors, fonctionnant à plus de 300 MHz et disposés dans des boîtiers de plusieurs centaines de broches, ils sont issus de différentes approches architecturales : CISC, RISC, DSP et VLIW.
L'objectif de ce cours est de retracer l'évolution des microprocesseurs, en liaison avec celle de la technologie, pour expliquer les choix architecturaux des microprocesseurs de dernière génération .
Ce cours (J. Weiss) porte sur les microprocesseurs à architecture CISC, il est complété par le cours de Pierre Leray qui aborde les architectures RISC et DSP.
Aperçu des points abordés (cours J. Weiss)
Ce document rappelle les principes de base des systèmes programmés et décrit les mécanismes qui ont introduit les microprocesseurs, à savoir l'apparition du premier composant, la compatibilité ascendante au sein d'une même famille et l'adaptation aux exigences des utilisateurs vis à vis des contraintes technologiques ; la connaissance de ces mécanismes joue un rôle important pour la compréhension des structures adoptées par les fabricants de microprocesseurs. L'étude démarre sur les microprocesseurs 8 bits, car ils sont relativement homogènes et simples à comprendre, puis sont décrites les spécificités des microprocesseurs 16 et 32 bits.
Les microprocesseurs décrits dans ce document sont d'architecture CISC (Complex Instruction Set Computer), philosophie en concurrence avec l'approche RISC (Reduced Instruction Set Computer) ; il faut noter que la différence entre ces 2 approches devient de plus en plus faible, ce qui se traduit par des architectures et des performances de plus en plus semblables.
L'évolution des microprocesseurs décrite dans ce document ne met pas en évidence les mécanismes économiques qui ont motivé l'essor de ces circuits. Au début des années 70, la fonction demandée à un microprocesseur se limitait à la calculatrice de bureau, au début des années 80, on l'utilisait dans des ordinateurs personnels et maintenant on l'emploie dans des stations de travail. De nos jours, on trouve sur le marché des microprocesseurs allant de 4 à 32 bits, chaque type exploite un créneau bien particulier suivant les critères de sélection :
puissance de calcul,
nombre de composants du système,
prix du microprocesseur,
coût du système de développement,
consommation,
....
La notion de "famille" joue un rôle très important dans le succès d'un composant car la compatibilité permet d'utiliser des programmes développés sur une version antérieure et car l'investissement dans le système de développement est généralement moindre (mise à jour). Le succès des microprocesseurs d'Intel et de Motorola est lié à leur utilisation dans des ordinateurs d'IBM (PC) et d'Apple qui leur a assuré une large diffusion, et donc une compétitivité supérieure à leurs concurrents. Les composants de seconde source ont, en général, contribué au succès de la version originale tout en permettant une chute de prix des composants rendant les microprocesseurs de plus en plus attractifs.
Du fait des innovations architecturales des microprocesseurs 32 bits, il devient très difficile de comparer les performances des microprocesseurs ; l'unité MIPS (Million Instructions Per Second) ne veut plus dire grand chose du fait des traitements pipeline et des longueurs variables des instructions ; on rencontre maintenant des unités comme SPECint et SPECfp pour, respectivement, le calcul entier et le calcul flottant qui semblent plus cohérents avec la réalité mais dont les résultats peuvent parfois prêter à caution ; Intel a défini, pour sa gamme de produits, un indice (iCOMP) qui établit une hiérarchie par rapport au 8086.
L'évolution des microprocesseurs rapides (32 bits ou plus) semble prévisible (loi de Moore) pour ce qui concerne le nombre de transistors intégrés ; Intel annonce, conjointement avec HP, l'architecture de son futur processeur : ce sera un processeur 64 bits ; son architecture devrait intégrer les tendances présentées dans ce document, on trouve ainsi une architecture super scalaire (> 4x) et une grosse mémoire cache (plus de 34 % de la surface de la puce Pentium) ; sera-t'il compatible x86 ?.