Nanotechnologie des microprocesseurs

Les puces qui dirigent nos ordinateurs, approche et explication du fonctionnement de la nouvelle génération de processeurs qui équipement nos ordinateurs
Advertisement

Bref historique

Le 4004 d’Intel le premier microprocesseur* commercialisé en 1971, était composé de 2300 transistors sa puissance d'exécution était de 90 000 opérations par seconde pour une fréquence d’horloge de 740 KHz.

* Le microprocesseur : CPU (Central Processing Unit) est cadencé au rythme d'une horloge interne, elle s’exprime en Hertz, un processeur à 200 MHz produit 200 000 000 impulsions par seconde, chacune correspondante, en gros, à une instruction ou une donnée. En 1965, laloi de G.E. Moore prédisait que les performances et le nombre de transistors intégrés doubleraient tous les 12 mois.

l'évolution en quelques dates

1974 le 8008 est composé de 6 000 transistors, gravés en 6000 nm et sa fréquence est de 2 Mhz. 1997 le Pentium 2 en utilise 7 500 000 à 350 nm et tourne à 450 Mhz.

2010 le Core i7, monte à 1 170 000 000 en 32 nm pour une fréquence de 3,47 Ghz.

Un micromètre (μm) équivaut à un millionième de mètre.

Un nanomètre (nm) représente un milliardième de mètre.

Depuis janvier 2012 l’ AMD FX 8150-WOX est le plus rapide avec 3.6 GHz (mais pour combien de temps?) :

Le seul processeur grand public à 8 coeurs gravé à 0,032 μm sa fréquence en mode "Turbo" est de 4,2 Ghz. Après l’aluminium, le cuivre et le silicium, le graphène (cristal de carbone constituant le graphite) devient la vedette pour fabriquer des transistors, la mobilité des atomes étant jusqu’à 500 plus élevée que ceux du silicium, il permet en outre de concevoir des transistors de 10 nm, 100 à 1 000 fois plus rapides.

Plus petits = plus proches = plus nombreux = moins gourmands en énergie.

Analogies entre l’homme et l’ordinateur

Les fonctions du corps humain sont coordonnées par le cerveau via le système nerveux central, celles de l’ordinateur le sont par le CPU via les câblages internes et externes.

En gros ; le cerveau est constitué de 100 milliards de neurones, le microprocesseur est lui composé plusieurs millions de transistors (évolution).

Relevons néanmoins quelques différences importantes :

- Les neurones communiquent, par les synapses, en utilisant des impulsions électriques et messages chimiques complexes.

- Les transistors, qui sont des relais, interagissent par la notation binaire grâce à des "1" et des "0", le courant passe ou ne passe pas, l’information est OUI ou NON.

- La mémoire fait partie intégrante du cerveau pour l’ordinateur la RAM (mémoire volatile) est stockée sur les barrettes de la carte-mère, la mémoire de masse (permanente) est enregistrée sur un disque (HD ou SSD).

- Les "périphériques" de l’homme, qui réagissent avec l’extérieur, sont : la vue, l’ouïe, le toucher, la parole), pour le PC il y a le clavier, l’écran, les connexions (réseaux), le scanner, l’imprimante, etc.

Bref rappel de quelques notions mathématiques

En plus du binaire, qui codifie les informations et instructions en "octets"*, des groupes de 8 bits (chaque bit représentant un "1" ou un "0") le CPU utilise la codification hexadécimale (pour simplifier l’écriture des instructions) et le code ASCII pour représenter les caractères simples comme les lettres de l’alphabet, par exemple.

* Un octet représente une lettre, un signe, un "mot", un pixel, etc.

Les couleurs affichées par l’écran sont définies par un code :

4 bits = 16 , 8 bits = 256, 16 bits = 65536, 24 bits = 16 777 216 couleurs …

Equivalence notation décimale, hexadécimale et binaire : v oir illustration

Capacités de stockage des support de mémoire (Clef USB, disques, CDR, etc) :

Il s’agit là du nombre de "mots" informatiques (au sens le plus large), que le support peut enregistrer.

Le Ko = 1024 octets

Le Mo = 10 485 576 octets

Le Go = 1 073 741 824 octets (standard actuel)

Le To = 1 099 511 627 776 octets

http://www.cours-informatique-gratuit.fr/facile/windows/4.capacites-les-octets

En programmation tout, ou presque, repose sur des opérations proches du raisonnement humain

Rappelons que le transistor ne comprend que deux mots ; "1" ou "0", OUI ou NON, dès lors on va lui parler selon des opérateurs logiques comme : la réunion, l’intersection l’ inversion.

Exemple pour la réunion :

c

On utilise également des opération moins habituelles à l’esprit humain comme le OU exclusif, et les propositions équivalentes mais inversées figurées par :

- Demain, je resterai chez moi s’il pleut OU si je suis malade.

- Demain, je sortirai de chez moi s’il ne pleut pas ET si je vais bien.

En combinant ces opérations dans un circuit "logique" constitué de ces "x" millions de transistors on peut donner au CPU toutes les instructions qui lui seront nécessaires pour effectuer les opérations, des plus simples au plus complexes, que l’on va lui demander après lui avoir fourni les données à traiter.

Fonctionnement du transistor (voir dernière illustration et lien) :

http://membres.multimania.fr/francois_RAOULT/HTML/Transistors.htm

L’architecture interne et le cheminement des opérations dans les entrailles du microprocesseur

Pour faire bref, et rester simple, abordons dans les grandes lignes comment le CPU va interpréter et exécuter les instructions que nous allons lui donner.

Le CPU comprenant plusieurs unités de calcul les instructions sont acheminées dans des "pipelines" qui sont l’équivalent à des chaînes de montage courantes dans l’industrie automobile, par exemple.

Le principe consiste à effectuer plusieurs petites opérations les unes à la suite des autres, plutôt que de faire une grosse opération qui mobilisera pour un temps une partie des ressources de calcul du CPU.

Une opération ne peut être commencée tant que la précédente, dont le résultat lui est nécessaire, ne sera pas terminée, de ce fait on réduit le temps passé à chaque étape et on augmente le nombre d’opérations terminées en un temps donné.

Chaque unité de traitement est spécialisée pour une opération précise, il existe un pipeline avant les unités de traitement, pour les alimenter, et un pipeline final qui collectera les résultats de chaque spécialisée.

Une unité qui traite un opération plus complexe sera éventuellement arrêtée pendant un temps afin libérer des ressources de calcul pour les attribuer à une unité qui traite une opération dont le résultat est attendu par celle qui suit.

Un peu comme dans une grande surface le rayon boucherie a momentanément moins de clients que le rayon fromages, les "serveurs" du rayon en "sous activité " vont aller renforcer celui qui est débordé.

La seule différence étant que dans le CPU l’ordre de passage dans un pipeline sert aussi pour passer dans le final, qui collecte les résultats finaux.

La "logique" informatique ne l’est pas toujours.

Cette courte et rapide visite dans les entrailles de la bête vous montre, tout à la fois, la complexité et la simplicité de la gestion et de l’ exécution des instructions dans les processeurs de nos chers ordinateurs.

Pour en savoir plus et références :

www.commentcamarche.net

http://www.aidewindows.net/octet.php

ftp://ftp-developpez.com/viennet/polyarch.pdf

http://www.commentcamarche.net/contents/pc/processeur.php3

http://cairn.enssat.fr/enseignements/Archi/JSimRisc/Tutorial.html

http://www.liafa.jussieu.fr/~carton/Enseignement/Architecture/Cours/Architectures/risc.html

Advertisement
1