Professional Documents
Culture Documents
Chapitre
3
LE MICROPROCESSEUR
Introduction
Un microprocesseur est un circuit intégré complexe caractérisé par une très grande intégration
et doté des facultés d'interprétation et d'exécution des instructions d'un programme. Il est
chargé d’organiser les tâches précisées par le programme et d’assurer leur exécution. Il doit
aussi prendre en compte les informations extérieures et assurer leur traitement.
Le nombre d’instructions qu’il est capable de traiter par seconde. Pour cela, on
définit:
FH
MIPS
CPI
Pour augmenter les performances d’un microprocesseur, on peut donc soit augmenter la
fréquence d'horloge (limitation matérielle), soit diminuer le CPI (choix d'un jeu d'instruction
adapté).
2011/2012 1
A.GUEDDANA, M.K.AZIZI , F.THELJANI, A.BOUBAKRI & H.WARTENI
Le microprocesseur
- L’unité de commande.
- L’unité de traitement.
- Les bus.
Ces éléments sont associés à des registres chargés de stocker les différentes informations
lors du traitement (opérandes, résultat de traitement, …).
2011/2012 2
A.GUEDDANA, M.K.AZIZI , F.THELJANI, A.BOUBAKRI & H.WARTENI
Le microprocesseur
Les informations circulent à l’intérieur du microprocesseur sur deux bus internes, l’un pour
les données et l’autre pour les adresses. On distingue les registres suivants :
- ACC : Accumulateur
- RW : Registre de Travail (W) ou encore Registre Tampon de l’UAL, il stocke
temporairement l’un des deux opérandes d’une instruction arithmétique.
- RE : Registre d’Etat, il stocke les indicateurs d’état appelé drapeaux ou flag (voir
détailles en chapitre 4).
- RI : Registre d’Instruction, il contient le code de l’instruction en cours d’exécution (lu
en mémoire via le bus de données).
- CO : Compteur Ordinal, il contient l’adresse de l’emplacement mémoire où se situe la
prochaine instruction à exécuter.
- RA : Registre d’Adresse, il contient l’adresse en MC de l’instruction (ou de l’opérande).
- RM : Registre Mot : il contient l’instruction (ou l’opérande).
2011/2012 3
A.GUEDDANA, M.K.AZIZI , F.THELJANI, A.BOUBAKRI & H.WARTENI
Le microprocesseur
Le cycle d’exécution d’une instruction, illustré en détailles dans la figure 2 et sous une
version simplifiée dans la figure 3, est décrit par les 11-étapes suivantes :
2011/2012 4
A.GUEDDANA, M.K.AZIZI , F.THELJANI, A.BOUBAKRI & H.WARTENI
Le microprocesseur
Code opération
Instruction à zéro adresse
Les adresses spécifiées par les opérandes informent le processeur sur les emplacements des
données. Il existe plusieurs modes d’adressage qui spécifient la manière dont chaque
instruction détermine l’emplacement des valeurs des opérandes.
Pour retrouver l’adresse effective, où le mot à accéder est stocké, le processeur doit
transformer l’opérande selon le mode d’adressage associé à l’instruction en cours.
2011/2012 5
A.GUEDDANA, M.K.AZIZI , F.THELJANI, A.BOUBAKRI & H.WARTENI
Le microprocesseur
Adressage implicite
Le mode d'adressage implicite correspond à une instruction contenant uniquement le
code opérande. Il porte sur des registres particuliers (adressage registre).
(Exemple : incrémentation de l’accumulateur).
Adressage immédiat
L’instruction supporte la donnée à utiliser. La donnée est représentée en hexadécimal
(Exemple : MOV AX, 20).
Adressage direct
L’instruction contient l’adresse d’un emplacement mémoire stockant la donnée.
L’adresse de l’emplacement est représentée en hexadécimal et placée entre crochets. Ce
mode d'adressage permet d'indiquer n'importe quel endroit dans la mémoire, le prix à
payer étant que l'on doit spécifier l'adresse concernée dans son intégralité.
(Exemple : MOV AX, 20).
Adressage registre
Le champ adresse contient l’adresse du registre contenant l’opérande.
Code instruction
Code opération Adresse du registre Registre
Opérande
Adressage indirect
Le champ adresse contient l’adresse d’un pointeur sur la donnée (l’adresse de l’adresse
peut être contenue dans un registre ou dans une case mémoire)
Code instruction
Registre Mémoire
Code opération Adresse du registre
Adresse de
l’opérande Opérande
2011/2012 6
A.GUEDDANA, M.K.AZIZI , F.THELJANI, A.BOUBAKRI & H.WARTENI
Le microprocesseur
Opérande
Adresse de
l’opérande
Adressage relatif
Dans le mode d’adressage relative (relative addressing), le spécificateur d’opérande
comprend l’adresse d’un registre ainsi que la valeur de déplacement.
Code instruction
Code opération Valeur de déplacement
Mémoire
+ Opérande
Registre de base
Figure 7 : Adressage relatif.
Adressage indexé
Ce mode d’adressage est très bien utile lorsqu’on travaille, par exemple, sur des
tableaux. Considérons un bloc de n mots consécutifs débutant à l’adresse A, le jième mot
se trouve à l’adresse A+ (j-1). Pour référencer ce mot, il est possible d’utiliser un
registre d’index. L’adresse effective est calculée en additionnant le contenu de ce
registre d’index à l’adresse qui se trouve dans le champ adresse de l’instruction. Sur
certaines machines, tous les registres généraux peuvent être utilisés comme registres
d’index. La présence d’un registre d’index s’accompagne généralement de la possibilité
d’incrémentation et décrémentation automatiques.
2011/2012 7
A.GUEDDANA, M.K.AZIZI , F.THELJANI, A.BOUBAKRI & H.WARTENI
Le microprocesseur
Code instruction
Code opération Valeur de déplacement
Mémoire
+ Opérande
K
Registre d’index
Adressage combiné
Dans le cas d’adressage combiné, l’indirection et l’indexation peuvent se combiner.
Exemple1 : adressage Indexé/Indirect
AE = (D+ (RI))
Exemple2 : Adressage (basé) Relatif/Indexé/Indirect
AE = (D+RB+ (RI))
Un cycle normal d’exécution d’une instruction est composé des étapes suivantes :
Recherche Obtenir l’instruction de la zone mémoire dans laquelle le programme est stocké
instruction
2011/2012 8
A.GUEDDANA, M.K.AZIZI , F.THELJANI, A.BOUBAKRI & H.WARTENI
Le microprocesseur
Le registre d'instruction contient maintenant le premier mot de l'instruction qui peut être
codée sur plusieurs mots. Ce premier mot contient le code opératoire qui définit la nature de
l'opération à effectuer (addition, soustraction,...) et le nombre de mots de l'instruction.
1. Le décodeur d’instruction sous contrôle de l'unité de commande transforme
l'instruction en une suite de commandes élémentaires nécessaires au traitement de
l'instruction.
2. Si l'instruction nécessite une donnée en provenance de la mémoire, l'unité de
commande récupère sa valeur sur le bus de données.
3. L’opérande est stocké dans un registre.
2011/2012 9
A.GUEDDANA, M.K.AZIZI , F.THELJANI, A.BOUBAKRI & H.WARTENI
Le microprocesseur