Principe de fonctionnement du microprocesseur
Principe de fonctionnement du microprocesseur
-
Objectif
- Connaitre les principes de fonctionnement d’un microprocesseur
-
Les principes
- Pour réaliser ces traitements, les microprocesseurs utilisent de ‘petits interrupteurs’ utilisant l’effet transistor.
- Cette effet fut découvert en 1947 par John Barden et Walter Brittan.
- Il existe plusieurs millions de ces transistors sur un seul microprocesseur.
- Le microprocesseur est un circuit électronique cadencé par une horloge interne (en fait un cristal de quartz). Quand cette horloge interne est soumise à un courant électrique, elle envoie des impulsions.
- C’est ce nombre d’impulsions par seconde qui détermine la fréquence d’horloge du microprocesseur. Cette fréquence est exprimée en hertz. Ainsi, un microprocesseur cadencé à 500 MHz envoie donc 500 millions d’impulsions/seconde.
- A chaque impulsion, le microprocesseur exécute donc une instruction (ou une partie d’une instruction).
- On utilise un indicateur dénommé CPI (soit Cycles Par Instruction) pour déterminer le nombre de cycles d’horloge nécessaires à l’exécution d’une instruction.
- C’est donc par le nombre d’instructions par seconde qu’est capable d’effectuer un microprocesseur que l’on détermine sa puissance.
- C’est ici que rentre en jeu une autre unité appelé MIPS (soit Millions d’Instructions Par Seconde). On la détermine tout simplement en divisant la fréquence du microprocesseur par le CPI
-
Structure interne d’un microprocesseur
-
L’unité de contrôle (en anglais : Control Unit – CU)
- Est la partie la plus complexe du processeur.
- Elle se décompose en plusieurs parties dont elle doit assurer la coordination :
- Registre d’instruction : Le processeur exécute une à une les instructions stockées dans la mémoire centrale.Pour cela, les instructions doivent être chargées dans le processeur. Elles le sont dans le registre d’instruction. Ce dernier contient donc l’instruction courante à exécuter.
- Le décodeur l’instruction à exécuter, chargée dans le registre d’instruction, est interprétée par le
décodeur. - Le séquenceur est alors capable d’ordonnancer les diverses opérations élémentaires du processeur, nécessaires pour exécuter l’instruction, grâce à un microprogramme.
- Le compteur ordinal est un registre particulier qui contient à tout instant, l’adresse de l’instruction suivante à exécuter.
- L’horloge est un dispositif qui détermine le rythme dans lequel sont exécutées les instructions. Elle fournit un signal régulier au processeur.
- Le registre d’état est, comme le compteur ordinal, un registre particulier. Il représente à tout moment l’état du processeur. En effet, divers événements peuvent créer des situations « exceptionnelles ». Par exemple, l’addition de deux valeurs peut dépasser les capacités de représentation du processeur. Dans ce cas, un bit du registre d’état signale que le processeur est dans l’état « overflow ».
-
L’unité de calcul
- Comme son nom l’indique, effectue tous les calculs au sein du processeur. À côté des opérations arithmétiques, elle peut aussi procéder à des opérations logiques. C’est grâce à cette fonctionnalité que l’ordinateur est capable d’exécuter des structures de contrôle contenant des conditions.
- L’accumulateur est le registre de calcul par excellence. C’est par lui en effet que transitent toutes les données devant faire l’objet d’une opération ainsi que tous les résultats produits par calcul arithmétique.
- Comme ces opérations mettent généralement en jeu plusieurs termes et/ou états intermédiaires, l’accumulateur est secondé par un nombre variable de registres généraux destinés à la réalisation matérielle des calculs.
- Comme son nom l’indique, l’unité arithmétique et logique (en anglais : Arithmetic and Logic Unit – ALU) se charge de réaliser les opérations arithmétiques et logiques.
-
Les bus de communication
- Pour communiquer avec son environnement, le processeur dispose d’un ensemble de « bus » :
- Le bus d’adresses permet au processeur de désigner l’adresse d’un octet en mémoire. Selon le cas, il peut s’agir de l’adresse d’un ou de plusieurs octets à charger dans le processeur ou à stocker en mémoire.
- Le bus de données permet de désigner la valeur à charger dans le processeur ou à stocker en mémoire.
- Le bus de commande permet au processeur de désigner l’opération à effectuer, chargement dans le processeur ou stockage en mémoire.