II L'évolution du processeur

Abdelwahab Razi

 

                  Jusqu'à 1970, les composants d'un processeur ne pouvait pas être contenus dans un seul circuit intégré, Plusieurs circuits intégrés étaient donc nécessaires.

En 1971, Marcian Hoff, ingénieur chez Intel, trouva le moyen de placer tous les éléments formant un processeur sur un seul circuit intégré. Il s'agit de la principale progression menant le processeur à son successeur, le microprocesseur.

       

Cette évolution apporte plusieurs améliorations aux processeurs :

                   l'augmentation de la vitesse d'exécution,

                   l'augmentation de sa fiabilité,

                   la réduction de la consommation,

                   la réduction de la taille,

                   et enfin la baisse des prix,

 

 

         1/ Une progression importante : le microprocesseur

 

Dans la droite ligne du processeur, le microprocesseur a le même rôle que son prédécesseur. Cependant, sa rapidité, sa fiabilité et son utilité, entre autres, se sont grandement renforcés.

 

 

                              a)Une progression matérielle

 

Un microprocesseur est constitué de plusieurs unités, dans lesquelles se situent des sous-unités, qui comprennent à leur tour des sous-unités... Mais les seuls éléments qui ne comprennent pas de sous-unités constituent l'élément principal du microprocesseur, le transistor,

 

  -Le transistor

 

                Concrètement, un transistor est un interrupteur capable de relier ou de séparer deux fils. Comme tout interrupteur, il peut être dans deux états :

                   passant. Dans ce cas, les deux fils sont reliés et obligatoirement dans le même état ;

                   non-passant. Les deux fils sont alors séparés, on dit qu'ils sont indépendants, et ils peuvent être dans un état différent.

L'état du transistor est déterminé par un troisième fil, qui s'adapte aux deux types de processeurs existants : les processeurs de type P et les processeurs de type N.

Le premier est également nommé processeur « passant par défaut ». Lorsque son troisième fil est en état 0, le transistor est passant.

Le second type est appelé « non-passant par défaut », Lorsque le troisième fil est en état 0, le transistor est non-passant.

 

Remarque : Un fil est un élément qui relie les transistors et transmet les informations, sous forme de «bit», Cette abréviation de « binary digit » est l'unité fondamentale d'information, Il vaut soit 0, soit 1.

                                                                                                                   

 

 

                                Un transistor est donc un

                                 interrupteur à trois bornes

 

 

 

 

- Les portes logiques

                

              Une porte logique est un circuit possédant une ou plusieurs entrées, et une ou plusieurs sorties ; et où l'état d'une sortie dépend uniquement de celui des entrées.

Les portes logiques simples sont au nombre de six, cependant dans ce TPE, nous en détailleront seulement cinq, cellesuinous serviront pour la suite, de la plus simple à la plus compliquée.

 

La porte « OUI » contient une entrée «a» et une sortie «s». L'état de l'entrée est tout le temps identique à celui de la sortie.


 

 

On peut donc établir une formule, dite booléenne : S = E

 

 

 

 

 

La porte « NON » a également une entrée «a» et une sortie «s». Plus simplement, l'état de la sortie s est tout le temps opposé à celui de l'entrée a.

En voici le schéma universel.

 


La formule booléenne est donc ici S = Ē

 

 

La porte « ET » possède, comme son nom l'indique, deux entrées (a et b), ainsi qu'une sortie s.

L'état de la sortie est 1 seulement si l'état des deux entrées est également de 1, sinon l'état de la sortie sera de 0.

 

 

La formule booléenne est ici S = A.B

 

                        

La porte « OU » donne également sa signification grâce à son nom. En effet, comme la porte ET, elle possède deux entrées a et b et une sortie s . Cette dernière est en état 1 seulement si la porte a ou la porte b est en état 1.

 

 

                                       _            _                                  

On peut donc poser S = (A.B) + (A.B)

 

 

 

 

 

Enfin, la porte “DIFF” a une sortie s en état 1 seulement si l'état des deux entrées a et b sont différents

 

 

Entrées     Sortie  s

 

 

                 b) Une progression au niveau du fonctionnement

 

 

Quel que soit le type de microprocesseur, ce dernier a deux principales fonctions :

                   Enregistrer des données

                   Transmettre des informations

Pour cela, il va utiliser plusieurs modes de fonctionnement, dont le calcul binaire et les circuits arithmétiques.

 

                   Le calcul binaire (ou calcul en base 2 )

 

Commençons par étudier l'addition en base 2. Cette opération a le même fonctionnement qu'une addition en base 10, mais avec seulement deux chiffres possibles : 0 et 1.

Il n'y a donc que trois opérations possibles : 1+1, 1+0 et 0+0.

Les deux dernières opérations donnent le même résultat qu'en base 10, mais 1+1 donne      2 en base 10, ce qui est impossible en base 2. En calcul binaire, lorsque l'on a 1+1, on pose 0 et on retient 1.

Voici un exemple d'addition en base 2 :

                                     

                                           1 1 0 0 1 0 1

 

                                       +     1 1 1 0 0 1

                                      ____________  

                                        1 0 0 1 1 1 1 0

                                       

 

                   Les circuits arithmétiques

 

                              

                                  1) Les circuits additionneurs

 

Le circuit additionneur le plus simple est celui qui additionne deux bits et qui produit le bit de somme et le bit de retenue. C'est donc un circuit à deux entrées a et b et deux sorties s et r (somme et retenue).

La somme de deux bits donne obligatoiremnt soit 0, soit 1.

Elle est de 0 pour les opérations 0+0 et 1+1. Cependant, pour cette dernière, il y a une retenue. Le bit de retenue est donc égal à 1. Ici, les états de a et b sont identiques, on peut donc calculer r avec une porte ET.

Elle est de 1 pour l'opération 1+0, Le bit de somme est donc égal à un quand a et b sont différents, donc on peut calculer s avec une porte DIFF

 

Comme pour un calcul en base 10, après cette opération, il faut calculer les deux chiffres suivants, plus une retenue, ce qui nous amène au vrai circuit additionneur, avec 3 entrées, a, bet c ( la retenue) et deux sorties s et r.

Pour réaliser ce calcul, le plus simple est de séparer cette opération en deux copies : une une copie pour additionner a et b, et l'autre pour additionner c au bit de somme fourni par la première copie. La retenue totale est égale à 1 si l'une des copies fournit une retenue égale à 1.

 

 

                                  2) Les circuits soustracteurs

 

Le circuit soustracteur le plus simple est un circuit à deux entrées a et b et deux sorties d et r, qui calcule a - b et produit en sortie le bit de différence d et le bit de retenue r. Comme on peut le constater en examinant les 4 cas possibles (0 - 0 = 0, 1 - 0 = 1, 1 - 1 = 0, 0 - 1 = 1 avec une retenue), le bit de différence est égal à 1 quand a et b sont différents. On peut donc calculer d avec une porte DIFF . De même, on constate que r est égal à 1 quand b et l'inverse de a sont égaux à 1. On peut donc calculer r avec une porte ET une porte NON .

 

 

2/ L'évolution du processeur entraîne celle de l'ordinateur

 

 

           Le microprocesseur étant le composant principal de l'ordinateur, ses multiples transformations accélèrent inévitablement l'évolution de l'ordinateur, qui deviendra un micro-ordinateur, qui correspond à l'ordinateur de bureau d'aujourd'hui.

 

 

                     a) Les transformations depuis 1971

 

 

De 1971 à 2010, de nombreux microprocesseurs sont sortis.

A chaque nouvelle sortie, il y a une nouvelle évolution, et on constate une énorme avancée entre ces deeux dates.

La taille s'est réduite, mais la capacité du microprocesseur a fortement augmenté.

 

Le tableau ci-dessous est révélateur de cette progression :

 

Date

Nombre de transistors

   Finesse de gravure ( en µm)

  Largeur de données

1971

           2300

                      6

             4 bits

2009

     774 000 000

                   0,045

             64 bits

 

( La finesse de gravure est la longueur du plus petit fil reliant deux composants)

  

 

Voici le tableau complet des microprocesseurs de 1971 à nos jours.

(MIPS : millions d'instructions effectuées par le processeur par seconde ).

 

Date Nom Nombre de
transistors
Finesse de
gravure (µm)
Fréquence
de l'horloge
Largeur
des données
MIPS
1971 4004 2 300 108 kHz 4 bits/4 bits bus
1974 8080 6 000 6 2 MHz 8 bits/8 bits bus 0,64
1979 8088 29 000 3 5 MHz 16 bits/8 bits bus 0,33
1982 80286 134 000 1,5 6 à 16 MHz (20 MHz chez AMD) 16 bits/16 bits bus 1
1985 80386 275 000 1,5 16 à 40 MHz 32 bits/32 bits bus 5
1989 80486 1 200 000 1 16 à 100 MHz 32 bits/32 bits bus 20
1993 Pentium 3 100 000 0,8 à 0,28 60 à 233 MHz 32 bits/64 bits bus 100
1997 Pentium II 7 500 000 0,35 à 0,25 233 à 450 MHz 32 bits/64 bits bus 300
1999 Pentium III 9 500 000 0,25 à 0,13 450 à 1 400 MHz 32 bits/64 bits bus 510
2000 Pentium 4 42 000 000 0,18 à 0,065 1,3 à 3,8 GHz 32 bits/64 bits bus 1 700
2004 Pentium 4D « Prescott » 125 000 000 0,09 à 0,065 2.66 à 3,6 GHz 32 bits/64 bits bus 9 000
2006 Core 2™ Duo 291 000 000 0,065 2,4 GHz (E6600) 64 bits/64 bits bus 22 000
2007 Core 2™ Quad 2*291 000 000 0,065 3 GHz (Q6850) 64 bits/64 bits bus 2*22 000 (?)
2008 Core 2™ Duo (Penryn) 410 000 000 0,045 3,33 GHz (E8600) 64 bits/64 bits bus ~24 200
2008 Core 2™ Quad (Penryn) 2*410 000 000 0,045 3,2 GHz (QX9770) 64 bits/64 bits bus ~2*24 200
2008 Intel Core i7 (Nehalem) 731 000 000 0,045 (2008)
0,032 (2009)
2,66 GHz (Core i7 920)
3,33 GHz (Core i7 Ext. Ed. 975)
64 bits/64 bits bus ?
2009 Intel Core i5/i7 (Lynnfield) 774 000 000 0,045 (2009)
2,66 GHz (Core i5 750)
2,93 GHz (Core i7 870)
64 bits/64 bits bus ?

-La taille

 

Grâce à un simple calcul, on peut se rendre compte que si le microprocesseur de 2009 avait la même largeur de données que celui de 1971 ( soit 64 / 8 = 4), il aurait une finesse de gravure de 0,045 / 8, soit environ 0,006 µm, il serait donc 1000 fois plus petit qu'en 1971, avec le même nombre de données. 

 

   -La vitesse d'exécution            

 

En 1974, le microprocesseur 8080 exécutait 640 000 instructions par seconde alors qu'en 2008, Core 2 Duo en effectue 24 200 000 000, soit environ 38000 fois plus.                         

 

      b) La loi de Moore

 

              Les lois de Moore sont des énoncés ayant trait à l'évolution des processeurs et des ordinateurs au cours des années,

Elles au nombre de trois, même si seulement deux d'entres elles ont été prononcées pas Gordon Moore, un ingénieur de chez “ Fairchild Semiconductor”, un des trois fondateurs d'Intel.

Ces lois sont plus exactement des conjectures, car à l'époque, ces énoncés n'ont pas été vérifiées.

Dans le cadre de ce TPE , nous n'étudieront en détail que les deux premières lois, car la troisième n'est pas très précise, elle n'a d'ailleurs pas d'énoncé exact.

 

La première loi de Moore a l'énoncé suivant : la complexité des semi-conducteurs proposée en entrée de gamme doublera tous les ans. Elle a été prononcée en 1965, soit 6 ans avant la découverte des microprocesseurs. Cette “loi” était déja mise en oeuvre depuis 1959, Moore émettait simplement l'hypothèse que cette évolution allait continuer.

 

Dix ans plus tard, Moore réévalua cet énoncé, en précisant que le nombre de transistors par circuit de même taille allait doubler, à prix constants, tous les dix-huit mois . Cet énoncé, qui n'était qu'une conjecture à l'époque, acquiert son nom de “loi” car il a été étonnement vérifié de 1971 (invention du microprocesseur) à nos jours.

 

Nous allons essayer de vérifier mathématiquement si la loi de Moore est toujours applicable, grâce au tableau des microprocesseurs (voir plus haut).

 

 


Selon Gordon Moore, le nombre de transistors devait suivre la droite en pointillés verts. La réalité veut pourtant que les processeurs Intel ( en rouge ), aient moins de transistors que le voudrait la loi de Moore.

Cette loi n'est évidemment pas un loi physique, car elle n'est pas fondée sur des réalités informatiques, mais dès sa parution, elle est apparue comme un défi pour les constructeurs, relevé dans les premières années, mais qui s'est heurté aux effets quantiques et aux désintégrations alpha.

Elle s'est également heurtée à la réalité économique. En effet, la loi du marché oblige les constructeurs à ralentir la progression pour assurer les ventes aux classes moyennes.      

 

 

                        c) Nouvelles technologies

 

Grâce à toutes ces évolutions, on a pu assister à la naissance de “micro-ordinateurs”, les ordinateurs de bureaux dont la première machine a été vendue en 1972. Aujourd'hui, la quasi-totalité de la population a accès à un ordinateur.

L'évolution informatique a également entraîné l'invention d'ordinateurs portables en 1981.

 

L'évolution a également permis l'invention de microprocesseurs multicoeurs en 2005.

Il s'agit d'un microprocesseur composé de deux unités de calcul. Cette découverte est due à la demande de plus en plus importante de capacités de calcul.

Touts les autres progressions comme les fichiers 3D ou multimédia, l'augmentation du volume des bases de données commencent à dépasser les capacités d'un microprocesseur à un seul cœur.

Cependant, pour que les microprocesseurs multicoeurs puissent pleinement exprimer leur potentiel, il faut que les programmes soient adaptés à ce type de processeurs, donc refaits. En effet, actuellement, très peu de logiciels peuvent le gérer.

 

Plusieurs autres projets ont été tentés, comme l'Hyperthreading, qui consiste à placer deux sous processus sous un processeur, qui peut les gérer simultanément.

Grâce à l'Hyperthreading, le microprocesseur est plus rapide dans ses actions et ses réactions. Cependant, il a révélé certains défauts, il permet d'accéder à des informations d'autres thread, donc d'autres ordinateurs.