qu-est-ce-qu-un-processeur
Ordinateur

Qu’est-ce qu’un processeur et quel est son rôle ?

Aujourd’hui, nous allons nous intéresser à un peu de matériel. Notre ordinateur est constitué d’un grand nombre de composants électroniques qui, ensemble, sont capables de stocker et de traiter des données. Le processeur, CPU ou unité centrale de traitement, est son principal composant. Voyons ce qu’est un processeur, quels sont ses composants et comment il fonctionne en détail.

Qu’est-ce qu’un processeur ?

La première chose que nous devrons définir est ce qu’est un microprocesseur afin de connaître tout le reste. Le microprocesseur est le cerveau d’un ordinateur, il est constitué d’un circuit intégré encapsulé dans une puce de silicium composée de millions de transistors. Sa fonction est de traiter les données, de contrôler le fonctionnement de tous les appareils de l’ordinateur, du moins une grande partie d’entre eux, et surtout : il est chargé d’effectuer des opérations logiques et mathématiques.

Si l’on s’en rend compte, toutes les données qui circulent dans notre machine sont des impulsions électriques, composées de signaux de uns et de zéros appelés bits. Chacun de ces signaux est regroupé en un ensemble de bits qui constituent les instructions et les programmes. Le microprocesseur est chargé de donner un sens à tout cela en effectuant des opérations de base : ADD, SUBTRACT, AND, OR, MUL, DIV, OPPOSITE et INVERSE. Le rôle du microprocesseur est donc de :

  • Décode et exécute les instructions des programmes chargés dans la mémoire principale de l’ordinateur.
  • Il coordonne et contrôle tous les éléments qui composent l’ordinateur et les périphériques qui lui sont connectés, souris, clavier, imprimante, écran, etc.

Les processeurs sont généralement de forme carrée ou rectangulaire et sont placés sur un élément appelé socle fixé à la carte mère. Il est chargé de distribuer les données entre le processeur et le reste des éléments qui lui sont connectés.

Architecture d’un ordinateur

Dans les sections suivantes, nous allons examiner l’architecture d’un processeur.

Architecture Von Neumann

Depuis l’invention des microprocesseurs jusqu’à aujourd’hui, ils sont basés sur une architecture qui divise le processeur en plusieurs éléments que nous verrons plus tard. C’est ce qu’on appelle l’architecture de Von Neumann. C’est une architecture inventée en 1945 par le mathématicien Von Neumann qui décrit la conception d’un ordinateur numérique divisé en une série de parties ou d’éléments.

Les processeurs actuels sont encore largement basés sur cette architecture de base, même si, logiquement, un grand nombre de nouveaux éléments ont été introduits jusqu’à obtenir les éléments extrêmement complets dont nous disposons aujourd’hui. Possibilité de numéros multiples sur la même puce, éléments de mémoire à plusieurs niveaux, processeur graphique intégré, etc.

Parties internes d’un ordinateur

Les éléments de base d’un ordinateur selon cette architecture sont les suivants :

  • Mémoire : c’est l’élément où sont stockées les instructions que l’ordinateur exécute et les données sur lesquelles les instructions opèrent. Ces instructions sont appelées un programme.
  • Unité centrale de traitement ou CPU : c’est l’élément que nous avons déjà défini ci-dessus. Il est chargé de traiter les instructions qui proviennent de la mémoire.
  • Unité d’entrée et de sortie : elle permet de communiquer avec des éléments extérieurs.
  • Bus de données : il s’agit des pistes, chemins ou câbles qui relient physiquement les éléments précédents.

Éléments d’un microprocesseur

Une fois que les principales parties d’un ordinateur ont été définies et que nous avons compris comment l’information y circule.

  • Unité de contrôle (UC) : c’est l’élément qui est responsable de l’émission des commandes via des signaux de contrôle, par exemple l’horloge. Il récupère les instructions de la mémoire principale et les transmet au décodeur d’instructions pour exécution. Pièces internes :
    • Horloge : génère une onde carrée pour synchroniser les opérations du processeur.
    • Compteur de programme : contient l’adresse mémoire de la prochaine instruction à exécuter.
    • Registre d’instructions : contient l’instruction en cours d’exécution.
    • Séquenceur : génère des commandes élémentaires pour le traitement des instructions.
    • Décodeur d’instructions (DI) : responsable de l’interprétation et de l’exécution des instructions entrantes, en extrayant le code d’exploitation de l’instruction.
  • Unité arithmétique et logique (ALU) : chargée d’effectuer des calculs arithmétiques (ADD, SUBTRACT, MULTIPLICATION, DIVISION) et des opérations logiques (AND, OR, …). Pièces internes.
    • Circuit opérationnel : contient les multiplexeurs et les circuits permettant d’effectuer les opérations.
    • Les registres d’entrée : ils stockent les données et les opérations avant d’entrer dans le circuit opérationnel.
    • Accumulateur : stocke les résultats des opérations effectuées.
    • Registre d’état (Flag) : enregistre certaines conditions qui doivent être prises en compte dans les opérations ultérieures.
  • Unité à virgule flottante (FPU) : cet élément ne faisait pas partie de la conception initiale de l’architecture, mais a été introduit ultérieurement lorsque les instructions et les calculs sont devenus plus complexes avec l’apparition des programmes représentés graphiquement. Cette unité est chargée d’effectuer des opérations à virgule flottante, c’est-à-dire des nombres réels.
  • Banque de registres et mémoire cache : les processeurs actuels disposent d’une mémoire volatile qui fait office de pont entre la RAM et le CPU. Elle est beaucoup plus rapide que la mémoire RAM et est chargée d’accélérer les accès du microprocesseur à la mémoire principale.
  • Front Side Bus (FSB) : également appelé bus de données, bus principal ou bus système. C’est le chemin ou le canal qui fait communiquer le microprocesseur avec la carte mère, plus précisément avec la puce appelée north bridge ou nothbridge. Il est chargé de contrôler le fonctionnement du bus principal du processeur, de la mémoire vive et des ports d’extension tels que PCI-Express. Les termes utilisés pour définir ce bus sont “Quick Path Interconnect” pour Intel et “Hypertransport” pour AMD.
  • Back Side BUS (BSB) : ce bus fait communiquer la mémoire cache de niveau 2 (L2) avec le processeur, tant qu’il n’est pas intégré au cœur du CPU lui-même. Aujourd’hui, tous les microprocesseurs ont une mémoire cache intégrée dans la puce elle-même, de sorte que ce bus fait également partie de la puce elle-même.

Microprocesseur à deux cœurs ou plus

Dans un processeur unique, non seulement ces éléments sont répartis à l’intérieur de celui-ci, mais ils sont désormais également répliqués. Nous aurons plusieurs cœurs de traitement ou, en d’autres termes, plusieurs microprocesseurs à l’intérieur de l’unité. Chacun d’entre eux aura sa propre mémoire cache L1 et L2, normalement le L3 est distribué entre eux, par paire ou en entier.

En plus de cela, nous aurons une ALU, une UC, une DI et une FPU pour chacun des cœurs, de sorte que la vitesse et la capacité de traitement sont multipliées en fonction du nombre de cœurs dont il dispose. De nouveaux éléments apparaissent également au sein des microprocesseurs :

  • Contrôleur de mémoire intégré (IMC) : Avec l’apparition de plusieurs cœurs, le processeur dispose d’un système qui lui permet d’accéder directement à la mémoire principale.
  • GPU intégré (iGP) : le GPU est responsable du traitement graphique. Il s’agit principalement d’opérations en virgule flottante avec des chaînes de bits à haute densité, de sorte que le traitement est beaucoup plus complexe que les données de programme normales. Pour cette raison, il existe des gammes de microprocesseurs qui mettent en œuvre une unité de traitement graphique dédiée à l’intérieur du microprocesseur.

Certains processeurs, tels que les processeurs AMD Ryzen, n’intègrent pas de carte graphique interne. Seulement leurs APUs

Comment fonctionne un microprocesseur

Un processeur fonctionne au moyen d’instructions, chacune de ces instructions étant un code binaire d’une certaine longueur que le CPU est capable de comprendre.

Un programme est donc un ensemble d’instructions et pour l’exécuter, il faut le faire de manière séquentielle, c’est-à-dire en exécutant une de ces instructions à chaque étape ou période de temps. L’exécution d’une instruction comporte plusieurs phases :

  • Recherche de l’instruction : on amène l’instruction de la mémoire au processeur.
  • Décodage de l’instruction : l’instruction est divisée en codes plus simples compréhensibles par le CPU.
  • Recherche d’opérande : l’instruction étant chargée dans le CPU, il est nécessaire de rechercher l’opérateur correspondant.
  • Exécution de l’instruction : l’opération logique ou arithmétique nécessaire est effectuée.
  • Stockage du résultat : le résultat est stocké dans la mémoire cache.

Chaque processeur fonctionne avec un certain ensemble d’instructions, qui ont évolué en même temps que les processeurs. Le nom x86 ou x386 fait référence à l’ensemble des instructions avec lesquelles un processeur fonctionne.

Traditionnellement, les processeurs 32 bits sont également appelés x86, car cette architecture fonctionne avec ce jeu d’instructions depuis le processeur Intel 80386, qui a été le premier à mettre en œuvre une architecture 32 bits.

Ce jeu d’instructions doit être mis à jour pour fonctionner plus efficacement et avec des programmes plus complexes. Parfois, nous voyons que dans les conditions requises pour qu’un programme fonctionne, il y a un ensemble d’acronymes tels que SSE, MMX, etc. Il s’agit de l’ensemble des instructions qu’un microprocesseur peut traiter. Ainsi, nous avons :

  • SSE (Streaming SIMD Extensions) : elles ont permis aux CPU de travailler avec des opérations à virgule flottante.
  • SSE2, SSE3, SSE4, SSE5, etc. : différentes mises à jour de ce jeu d’instructions.

Incompatibilité entre les processeurs

Nous nous souvenons tous de l’époque où un système d’exploitation Apple pouvait fonctionner sur un PC Windows ou Linux. Cela est dû au type d’instructions des différents processeurs. Apple utilisait des processeurs PowerPC, qui fonctionnaient avec des instructions différentes de celles d’Intel et d’AMD. Il existe donc plusieurs modèles d’instruction différents :

  • CISC (Complex Instruction Set Computer) : c’est celui utilisé par Intel et AMD, qui utilise un ensemble d’instructions peu nombreuses mais complexes. Ils sont plus gourmands en ressources, car il s’agit d’instructions plus complètes qui nécessitent plusieurs cycles d’horloge.
  • RISC (Reduced Instruction Set Computer) : utilisé par Apple, Motorola, IBM et PowerPC, ce sont des processeurs plus efficaces, car ils ont plus d’instructions, mais de moindre complexité.

Actuellement, les deux systèmes d’exploitation sont compatibles, car Intel et AMD mettent en œuvre une combinaison d’architectures dans leurs processeurs.

Processus d’exécution d’une instruction

  1. Le processeur est redémarré en recevant un signal RESET, préparant ainsi le système en recevant un signal d’horloge qui déterminera la vitesse du processus.
  2. Le registre CP (compteur de programme) est chargé avec l’adresse mémoire où le programme commence.
  3. L’unité de contrôle (CU) émet la commande pour aller chercher l’instruction que la RAM a stockée à l’adresse mémoire dans le CP.
  4. La RAM envoie alors les données et celles-ci sont placées sur le bus de données jusqu’à ce qu’elles soient stockées dans le RI (registre d’instructions).
  5. L’UC gère le processus et l’instruction est transmise au décodeur (D) pour trouver la signification de l’instruction. L’instruction passe ensuite par l’UC pour être exécutée.
  6. Une fois l’instruction et l’opération à effectuer connues, elles sont toutes deux chargées dans les registres d’entrée (REN) de l’ALU.
  7. L’ALU exécute l’opération et place le résultat sur le bus de données et le CP est ajouté 1 pour exécuter l’instruction suivante.

Comment savoir si un processeur est bon ?

Pour savoir si un microprocesseur est bon ou mauvais, nous devons examiner chacun de ses composants internes :

Largeur du bus

La largeur d’un bus détermine la taille des registres qui peuvent y circuler. Cette largeur doit coïncider avec la taille des registres du processeur. Ainsi, la largeur du bus représente le plus grand registre que le bus est capable de transporter en une seule opération.

Directement liée au bus, il y aura aussi la mémoire RAM, qui doit être capable de stocker chacun de ces registres avec la largeur qu’ils ont (c’est ce qu’on appelle la largeur de mot de la mémoire).

Ce dont nous disposons actuellement en termes de largeur de bus est de 32 bits ou 64 bits, c’est-à-dire que nous pouvons transporter, stocker et traiter des chaînes de 32 ou 64 bits simultanément. Avec 32 bits ayant chacun la possibilité d’être 0 ou 1, nous pourrons adresser une mémoire de 232 (4GB) et avec 64 bits 16 EB Exabytes. Cela ne signifie pas que nous disposons de 16 exaoctets de mémoire dans notre ordinateur, mais cela représente la capacité d’adresser et d’utiliser une certaine quantité de mémoire. D’où la fameuse limitation des systèmes 32 bits à n’adresser que 4 Go de mémoire.

En bref, plus la largeur du bus est grande, plus la capacité de travail est importante.

Mémoire cache

Ces mémoires sont beaucoup plus petites que la RAM mais beaucoup plus rapides. Leur fonction est de stocker les instructions qui doivent être traitées ou les dernières traitées. Plus la mémoire cache est importante, plus la vitesse des transactions que le CPU peut prendre et laisser tomber est élevée.

Il faut savoir ici que tout ce qui arrive au processeur provient du disque dur, et on peut dire que celui-ci est terriblement plus lent que la RAM et même beaucoup plus lent que le cache. C’est pour cette raison que ces mémoires à semi-conducteurs ont été conçues, pour résoudre le gros goulot d’étranglement qu’est le disque dur.

La réponse est simple : parce qu’ils sont trop chers.

Vitesse du processeur interne

La vitesse d’Internet est presque toujours l’élément le plus frappant lorsqu’on examine un processeur. “Le processeur tourne à 3,2 GHz”, mais qu’est-ce que c’est ? La vitesse est la fréquence d’horloge à laquelle le microprocesseur fonctionne. Plus cette vitesse est élevée, plus le nombre d’opérations par unité de temps qu’il est capable d’effectuer est important. Cela se traduit par des performances plus élevées, d’où la raison d’être de la mémoire cache, qui permet d’accélérer l’acquisition des données par le processeur afin de toujours effectuer le maximum d’opérations par unité de temps.

Cette fréquence d’horloge est donnée par un signal carré périodique. Le temps maximum pour effectuer une opération est d’une période. La période est l’inverse de la fréquence.

Mais ce n’est pas qu’une question de vitesse. De nombreux composants influencent la vitesse d’un processeur. Si, par exemple, nous avons un processeur à 4 cœurs à 1,8 GHz et un autre à un seul cœur à 4,0 GHz, il est certain que le processeur à quatre cœurs est plus rapide.

Vitesse du bus

Tout comme la vitesse du processeur est importante, la vitesse du bus de données l’est aussi. La carte mère travaille toujours à une fréquence d’horloge beaucoup plus basse que le microprocesseur, c’est pourquoi nous aurons besoin d’un multiplicateur pour ajuster ces fréquences.

Si, par exemple, nous avons une carte mère avec une fréquence d’horloge de bus de 200 MHz, un multiplicateur de 10x permettra d’atteindre une fréquence de CPU de 2 GHz.

Microarchitecture

La microarchitecture d’un processeur détermine le nombre de transistors par unité de distance dans le processeur. Cette unité est actuellement mesurée en nm (nanomètres). Plus elle est petite, plus il est possible d’y insérer de transistors, et donc d’y loger des éléments et des circuits intégrés.

Cela a une influence directe sur la consommation d’énergie ; les dispositifs plus petits auront besoin de moins de flux d’électrons, donc moins d’énergie sera nécessaire pour réaliser les mêmes fonctions que dans une microarchitecture plus grande.

Refroidissement des composants

En raison de l’énorme vitesse de l’unité centrale, le flux de courant génère de la chaleur. Plus la fréquence et la tension sont élevées, plus la chaleur est générée, il est donc nécessaire de refroidir ce composant. Il existe plusieurs façons de procéder :

  • Refroidissement passif : au moyen de dissipateurs métalliques (cuivre ou aluminium) qui augmentent la surface en contact avec l’air grâce à des ailettes.
  • Refroidissement actif : en plus du dissipateur thermique, un ventilateur est également placé pour fournir un flux d’air forcé entre les ailettes de l’élément passif.
  • Refroidissement liquide : consiste en un circuit composé d’une pompe et d’un radiateur à ailettes. L’eau circule dans un bloc situé dans l’unité centrale, l’élément liquide recueille la chaleur générée et la transporte vers le radiateur, qui, par ventilation forcée, dissipe la chaleur et abaisse à nouveau la température du liquide.

Certains processeurs comprennent un dissipateur thermique. Ils ne sont généralement pas très importants… mais ils sont utiles pour faire fonctionner le PC et l’améliorer en même temps.

  • Refroidissement par caloducs : le système consiste en un circuit fermé de tubes en cuivre ou en aluminium remplis de fluide. Ce fluide recueille la chaleur de l’unité centrale et s’évapore jusqu’au sommet du système. À cet endroit, un dissipateur thermique à ailettes échange la chaleur du fluide de l’intérieur vers l’air extérieur, de sorte que le fluide se condense et redescend vers le bloc de l’unité centrale.

Ceci conclut notre article sur ce qu’est un processeur et comment il fonctionne en détail. Nous espérons que vous l’avez apprécié.

Laisser un commentaire