Académique Documents
Professionnel Documents
Culture Documents
Chapitre ARCHITECTURE
Chapitre ARCHITECTURE
D’UN MICROPROCESSEUR
1 Cours Microprocesseurs
2.1 Introduction
On entend par un processeur, un dispositif capable
d'exécuter un certain nombre d'instructions une par une. Il
nous faut donc un endroit pour stocker les instructions.
- Il faut pouvoir comprendre et exécuter les instructions.
- Il faut pouvoir stocker des données dans un endroit.
Puisque nous ne travaillons qu'avec des circuits électroniques,
chaque instruction peut être codée en tension électrique.
Pour simplifier des choses, on prend uniquement deux
niveaux de tension. Ainsi chaque instruction est codée sur
une combinaison de ces deux niveaux de tension (bit).
2 Cours Microprocesseurs
2.1 Introduction
Par exemple l'opération mathématique d'addition peut être
codée sur "00100110 » .
Par convention, le niveau haut de tension se présente par un
"un" et le niveau bas par un "zéro". Alors, une succession
d'instructions n'est qu'une suite des données binaires sur n
bits. Ensuite, il faudrait décoder l'instruction courante et
l'exécuter, puis passer à l'instruction suivante. Nous allons
détailler chaque tâche en essayant d'inventer l'architecture
nécessaire pour l'accomplir.
3 Cours Microprocesseurs
2.2 Définition
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 au système
et assurer leur traitement. C’est le cerveau d’un ordinateur.
A l’heure actuelle, un microprocesseur regroupe sur
quelques millimètres carrés des fonctionnalités toujours plus
complexes. Leur puissance continue de s’accroître et leur
encombrement diminue régulièrement respectant toujours,
pour le moment, la fameuse loi de Moore.
4 Cours Microprocesseurs
2.3 Architecture de base d’un µp
Un microprocesseur est construit autour de deux éléments
principaux :
1- Une unité de commande : appelé aussi Unité de
commande et de contrôle (UCC)
5 Cours Microprocesseurs
2.3 Architecture de base d’un µp
7 Cours Microprocesseurs
2.3 Architecture de base d’un µp
Pour cela, elle est composée par :
- le compteur de programme : (en anglais Program
Counter PC) appelé aussi compteur ordinal (CO). Le CO est
constitué par un registre dont le contenu représente l’adresse
de la prochaine instruction à exécuter. Il est donc initialisé
avec l'adresse de la première instruction du programme. Puis
il sera incrémenté automatiquement pour pointer vers la
prochaine instruction à exécuter.
- Le registre d'instruction (RI) : Contient l’instruction
en cours de traitement.
- le décodeur d'instruction :
8 - Microprocesseurs
Cours
2.3 Architecture de base d’un µp
Le séquenceur : Il organise l'exécution des instructions au
rythme d’une horloge. Il élabore tous les signaux de
synchronisation internes ou externes (bus de commande) du
microprocesseur en fonction des divers signaux de
commande provenant du décodeur d’instruction ou du
registre d’état par exemple. Il s'agit d'un automate réalisé
soit de façon câblée (obsolète), soit de façon micro-
programmée, on parle alors de micro-microprocesseur.
9 Cours Microprocesseurs
2.3 Architecture de base d’un µp
L’unité de traitement
C’est le cœur du microprocesseur. Elle regroupe les circuits
qui assurent les traitements nécessaires à l'exécution des
instructions. L’unité de traitement est Composé de trois
principaux unités d’exécution, la première est l’unité
arithmétique et logique (UAL) puis deux autres ont été
ajoutés qui sont l’unité de calcul en virgule flottante et
l’unité multimédia pour des raisons d’optimisation des
performances des microprocesseurs.
10 Cours Microprocesseurs
2.3 Architecture de base d’un µp
Le schéma suivant montre l’UAL ainsi que ses entrées et ses
sorties.
12 Cours Microprocesseurs
2.3 Architecture de base d’un µp
- Unité de calcul en virgule flottante :
C’est une unité qui est capable de réaliser les opérations de
calcul pour les réels ainsi que les calculs mathématiques et
scientifiques complexes. A l’origine la tâche de cette unité
était réalisée par tout un processeur à part, en 1989 elle a été
intégré dans les microprocesseurs afin d’optimiser les calculs.
- Unité multimédia :
C’est une unité qui est chargée d’accélérer l’exécution des
programmes multimédia comportant des vidéos, du son,
graphisme en 3D etc.… Cette unité porte le nom de MMX
pour les premiers pentium (MutiMedia eXtensions)
intégrants des fonctions de gestion du mutimédia, de même
la technologie 3DNOW pour les AMD et SSE pour les
pentiumIII.
13 Cours Microprocesseurs
2.3 Architecture de base d’un µp
14 Cours Microprocesseurs
2.4 Organisation de la mémoire centrale
La mémoire peut être vue comme un ensemble
de cellules ou cases contenant chacune une
information ou une instruction ou une donnée.
15 Cours Microprocesseurs
2.5 Circulation de l’information dans un
calculateur
La réalisation matérielle des ordinateurs est généralement basée sur l’architecture de
Von Neumann :
17 Cours Microprocesseurs
2.6 Organisation matérielle d’un µp
Un microprocesseur se présente sous la forme d’un circuit intégré muni d’un nombre
généralement important de broches.
Exemples :
▪ Intel 8085, 8086, Zilog Z80 : 40 broches;
▪ Motorola 68000 : 64 broches;
▪ Intel 80386 : 196 broches.
On peut représenter un microprocesseur par son schéma fonctionnel :
18 Cours Microprocesseurs
Fonctionnement d’un microprocesseur
19 Cours Microprocesseurs
Fonctionnement d’un microprocesseur
Rangement en mémoire
Pour exécuter les instructions dans
l’ordre établi par le programme, le
microprocesseur doit savoir à
chaque instant l’adresse de la
prochaine instruction à exécuter.
Le microprocesseur utilise un registre contenant cette
information. Ce registre est appelé pointeur d’instruction
(IP : Instruction Pointer) ou compteur d’instructions ou
compteur ordinal.
20 Cours Microprocesseurs
Exemple
22 Cours Microprocesseurs
Les flags sont des drapeaux ou des indicateurs d'état (registre d'état). Ils
indiquent l'état d'une opération effectuée par l'unité arithmétique et logique.
Ce registre contient 5 bits S, Z, AC, P et CY.
- S: Sign-flag (Bit de signe). C'est le bit D7 du résultat de l'opération.
- Z: Zero-flag. Si le résultat de l'opération égale à 0 ce bit est mis à 1.
Autrement il est mis à 0.
- AC : Auxilliary Carry-flag. Dans une opération arithmétique, quand une
retenu est générée par le bit D3 à D4 le AC est mis à 1 sinon il est mis à 0. Il
est utilisé dans les codes BCD et il n'est pas utilisé par le programmeur.
- P : Parity-flag. Après une opération arithmétique ou logique, si le résultat
contient un nombre pair de 1, le drapeau P est affecté par 1. Si le résultat
contient un nombre impair de 1, le drapeau P est affecté par 0.
- CY : Carry-flag. Dans une opération arithmétique, quand une retenu lors
d'une addition ou un report lors d'une soustraction est générée par les huit
bits le CY est mis à 1 sinon il est mis à 0. Ce bit est accessible par le
programmeur.
Cours Microprocesseurs
23
Les indicateurs d’état sont activés lorsqu’une certaine
condition est remplie.
Exemple : le flag Z est mis à 1 lorsque la dernière
opération a donné un résultat nul, le flag C est mis à 1
lorsque le résultat d’une addition possède une retenue,
...
Les indicateurs d’état sont utilisés par les instructions de
saut conditionnels : en fonction de l’état d’un ou
plusieurs flags, le programme se poursuit de manière
différente.
Toutes ces étapes (lecture de l’instruction, décodage,
exécution) sont synchronisées par un séquenceur qui
assure le bon déroulement des opérations :
24 Cours Microprocesseurs
25 Cours Microprocesseurs
Pour exécuter le programme contenu dans la mémoire
centrale, le séquenceur du microprocesseur exécute lui-
même un programme appelé micro-code, contenu dans
une mémoire morte à l’intérieur du microprocesseur.
Le séquenceur est dirigé par une horloge qui délivre un
signal de fréquence donnée permettant d’enchainer les
différentes étapes de l’exécution d’une instruction :
26 Cours Microprocesseurs
Chaque instruction est caractérisée par le nombre de périodes
d’horloge qu’elle utilise .
27 Cours Microprocesseurs