ARCHITECTURE DES ORDINATEURS
A.U. 2020-2021
(Support de cours)
1ère année
Réseaux Informatiques et Télécommunications
Pr. Moustapha Mohamed Saleck Saleck,moustapha@[Link]
CHAPITRE II
ARCHITECTURE ET FONCTIONNEMENT
D’UN MICROPROCESSEUR
2
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
2.1. Structure d’un ordinateur
2.1.1. Définitions
Un ordinateur est une machine de traitement de l’information.
Il est capable d’acquérir de l’information, de la stocker, de la
transformer en effectuant des traitements quelconques, puis de
la restituer sous une autre forme.
Il y a plusieurs types d'ordinateurs :
Ordinateur central
Ordinateur personnel (ou ordinateur de bureau)
Ordinateur portable
3
Ordinateur de poche (PDA)
iPhone, SmartPhone, … (?)
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Il faut distinguer :
Le matériel (hardware) qui désigne les composants électroniques
de l’ordinateur.
Les logiciels (software) que sont les applications et les systèmes
d’exploitation.
L'informatique est le domaine d'activité scientifique, technique et
industriel concernant le traitement automatique de
l'information par des machines telles que : calculateur,
système embarqué, ordinateur, console de jeux vidéo, robot,
automate, etc.
4
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Le mot informatique vient de la contraction des mots information
et automatique. On distingue généralement différents types
d’informations : textes, nombres, sons, images, etc., mais aussi les
instructions composant un programme.
Toute information est manipulée sous forme binaire (ou
numérique) par l’ordinateur.
5
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
2.1.2. Architecture matérielle de l’ordinateur
6
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Périphériques d’entrée
Clavier, souris
Sur les portables : pavé tactile (ou touchpad), bouton de
pointage (ou trackpoint),
Ecran tactile, tablette graphique
Scanner
Lecteur CD/DVD
Microphone
7
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Périphériques de sortie
Moniteur ou écran
écran à tube cathodique (obsolète)
écran plat (ACL : écran "à cristaux liquides" ou LCD "Liquid
Crystal Display")
Caractéristiques techniques des écrans
Taille : déterminée par la mesure de la diagonale de l'écran et
exprimée en pouces (un pouce équivaut à 2,54 cm).
Définition : le nombre de points (pixel) que l'écran peut afficher,
ce nombre est généralement compris entre 640x480 et 2048x1536.
Résolution : elle détermine le nombre de pixels par unité de 8
surface ("pixels par pouce linéaire", Dots Per Inch ou dpi).
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Imprimante
à jet d'encre : l'encre est projetée par un petit trou qui laisse
passer de l'encre à partir d'un réservoir. Cette technique est
performante et peu coûteuse, et permet facilement d'imprimer en
couleurs.
laser : un tambour photosensible qui, chargé électrostatiquement,
est capable d'attirer l'encre afin de former un motif qui sera
déposé sur la feuille de papier. Cette technique est plus rapide et
précise, mais plus chère.
9
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Graveur CD/DVD (interne ou externe)
Permet de graver des CD-R et CD-RW (Compact Disc, "R"
pour Recordable et "RW" pour ReWritable), des DVD±R et
DVD±RW (Digital Versatile Disc, de format "+" ou "-")
La vitesse de gravure est exprimée en X : 150 Ko/s pour les
CD-R, 1350 Ko/s pour les DVD±R (16X étant le maximum
pour les DVD).
10
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Unité centrale
L'unité centrale désigne le boîtier et les éléments qu'il contient
(les autres étant les périphériques). Elle comprend :
le bloc d'alimentation électrique
la carte mère qui supporte :
le processeur
la mémoire morte (ROM)
la mémoire vive (RAM)
les cartes d'extension
le(s) disque(s) dur(s)
11
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Carte mère
La carte mère est l'un des éléments essentiels d'un ordinateur.
Elle assure la connexion physique des différents composants
(processeur, mémoire, carte d'entrées/sorties, ...) par
l’intermédiaire de différents bus (adresses, données et
commande).
12
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Les bus
Un bus est un ensemble de fils qui assure la transmission du même
type d’information. On retrouve trois types de bus véhiculant des
informations en parallèle dans un système de traitement programmé
de l’information :
Un bus de données : bidirectionnel qui assure le transfert des
informations entre le microprocesseur et son environnement.
Un bus d'adresses : unidirectionnel qui permet la sélection des
informations à traiter dans un espace mémoire (ou espace
adressable) .
Un bus de commande : constitué par quelques conducteurs qui
13
assurent la synchronisation des flux d'informations sur les bus
des données et des adresses.
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Le processeur
Le processeur, (ou CPU, Central Processing Unit, “ Unité centrale de
traitement ” en français) est le composant essentiel d’un ordinateur qui
interprète les instructions et traite les données d’un programme.
Le processeur est un circuit électronique complexe (circuit intégré) qui
exécute chaque instruction très rapidement, en quelques cycles
d’horloges. Toute l’activité de l’ordinateur est cadencée par une horloge
unique, de façon à ce que tous les circuits électroniques travaillent tous
ensemble de façon synchronisée. La fréquence de cette horloge s’exprime
en MHz (millions de cyles par seconde) ou GHz (milliards de cycles par
secondes). Par exemple, un processeur “ Intel Core 2 Duo P840014 ”
possède une horloge cadencée à 2,26 GHz.
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
2.2. Organisation de la mémoire centrale
Un mémoire est un circuit à semi-conducteur permettant
d’enregistrer, de conserver et de restituer des informations
(instructions et variables).
La capacité peut s’exprimer en :
• Bit : un bit est l’élément de base pour la représentation de l’information.
• Octet : 1 Octet = 8 bits
• kilo-octet (KO ) : 1 kilo-octet (KO )= 1024 octets = 210 octets
• Méga-octet ( MO) : 1 Méga-octet ( MO)= 1024 KO = 220 octets
• Géga-octet ( GO) :Géga-octet ( GO)=1024 MO = 230 octets
15
• Téra-octet (To) : 1 téra-octet (To)= 1024 Go = 240 octets
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Une mémoire peut être représentée comme une armoire de
rangement constituée de différents tiroirs. Chaque tiroir
représente alors une case mémoire qui peut contenir un seul
élément : des données.
Le nombre de cases mémoires pouvant être très élevé, il est alors
nécessaire de pouvoir les identifier par un numéro. Ce numéro
est appelé adresse. Chaque donnée devient alors accessible
grâce à son adresse
16
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Avec une adresse de n bits il est possible de référencer au plus 𝟐𝒏
cases mémoire. Chaque case est remplie par un mot de données
17
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
2.2.1. C’est quoi une mémoire centrale ?
La mémoire centrale (MC) représente l’espace de travail de
l’ordinateur (calculateur ).
C’est l’organe principal de rangement des informations utilisées par
le processeur.
Dans une machine (ordinateur / calculateur) pour exécuter un
programme il faut le charger ( copier ) dans la mémoire centrale.
Le temps d’accès à la mémoire centrale et sa capacité sont deux
éléments qui influent sur le temps d’exécution d’un programme (
performance d’une machine ).
18
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
2.2.2. Caractéristiques de la mémoire centrale
La mémoire centrale est réalisé a base de semi-conducteurs.
La mémoire centrale est une mémoire vive : accès en lecture et
écriture.
La mémoire centrale est dite à accès aléatoire (RAM : Random Acces
Memory) c'est-à-dire que le temps d'accès à l'information est
indépendant de sa place en mémoire.
La mémoire centrale est volatile : la conservation de son contenu
nécessite la permanence de son alimentation électrique.
19
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Un temps d’accès à une mémoire centrale est moyen mais plus
rapide que les mémoires magnétiques .
La capacité d’une mémoire centrale est limitée mais il y a toujours
une possibilité d’une extension.
Pour la communication avec les autres organes de l’ordinateur, la
mémoire centrale utilise les bus ( bus d’adresses et bus de
données)
20
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
2.3. Modèle de Von Neumann
Pour traiter une information, un microprocesseur seul ne suffit pas,
il faut l’insérer au sein d’un système minimum de traitement
programmé de l’information. John Von Neumann est à l'origine d'un
modèle de machine universelle de traitement programmé de
l’information (1946).
L’architecture de von Neumann décompose l’ordinateur en
quatre parties distinctes :
• Unité centrale de traitement (processeur)
• La mémoire principale
• Les interfaces d’entrées/sorties 21
• Le bus
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
L’unité centrale : Elle est composée par le microprocesseur qui est
chargé d’interpréter et d’exécuter les instructions d’un programme, de
lire ou de sauvegarder les résultats dans la mémoire et de
communiquer avec les unités d’échange.
22
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
La mémoire principale : Elle contient les instructions du ou des
programmes en cours d’exécution et le données associées à ce
programme.
Les dispositifs d’entrée-sortie, qui permettent de communiquer
avec le monde extérieur.
Les bus : les différents composants sont reliés par des bus.
23
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
2.4. Description matérielle d’un microprocesseur
Un microprocesseur est construit autour de deux éléments
principaux :
Une unité de commande
Une unité de traitement
associés à des registres chargées de stocker les différentes
informations à traiter. Ces trois éléments sont reliés entre eux
par des bus interne permettant les échanges d’informations.
24
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
25
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
26
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
2.5. Fonctionnement d’un microprocesseur
Le processeur est constitué d'un ensemble d'unités fonctionnelles
reliées entre elles.
L'architecture d'un microprocesseur est très variable d'une
architecture à une autre, cependant les principaux éléments
d'un microprocesseur sont les suivants :
Une unité de commande, en anglais control unit qui lit les
données arrivant, les décode puis les envoie à l'unité
d'exécution ;
27
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
L’unité de commande est notamment constituée des éléments
suivants :
Séquenceur (ou bloc logique de commande) chargé de synchroniser
l'exécution des instructions au rythme d'une horloge.
Compteur ordinal contenant l'adresse de l'instruction en cours.
Le registre d'instruction et le décodeur d'instruction :
chacune des instructions à exécuter est rangée dans le registre
instruction puis est décodée par le décodeur d’instruction.
28
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Une unité de traitement (unité d'exécution ), qui accomplit les
tâches que lui a données l'unité d'instruction.
L'unité d'exécution est notamment composée des éléments suivants :
L'unité arithmétique et logique (notée UAL ou en anglais
ALU pour Arithmetical and Logical Unit). L'UAL assure les
fonctions basiques de calcul arithmétique et les opérations
logiques (ET, OU, Ou exclusif, etc.).
Les accumulateurs sont des registres de travail qui servent à
stocker un opérande au début d'une opération arithmétique et le
résultat à la fin de l'opération.
29
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Le registre d'état est généralement composé de 8 bits à
considérer individuellement. Chacun de ces bits est un indicateur
dont l'état dépend du résultat de la dernière opération effectuée
par l’UAL. On les appelle indicateur d’état ou flag ou drapeaux.
30
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
2.6. Le traitement des instructions
Le microprocesseur ne comprend qu’un certain nombre
d’instructions qui sont codées en binaire. Une instruction est
composée de deux éléments :
• Le code opération : C’est un code binaire qui correspond à l’action à
effectuer par le processeur.
• Le champ opérande : Donnée ou bien adresse de la donnée.
La taille d'une instruction peut varier, elle est généralement de
quelques octets (1 à 8), elle dépend également de l'architecture du
processeur.
31
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Le traitement d’une instruction peut être décomposé en trois phases :
Phase 1 : Recherche de l’instruction en mémoire
La valeur du PC est placée sur le bus d'adresse par l'unité de
commande qui émet un ordre de lecture.
Après le temps d'accès à la mémoire, le contenu de la case mémoire
sélectionnée est disponible sur le bus des données.
L'instruction est stockée dans le registre d’instruction du
processeur.
32
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Phase 2 : Décodage et recherche de l’opérande
L'unité de commande transforme l'instruction en une suite de
commandes élémentaires nécessaires au traitement de
l'instruction.
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.
L’opérande est stocké dans un registre.
33
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Phase 3 : Exécution de l'instruction
Le micro-programme réalisant l'instruction est exécuté.
Les drapeaux sont positionnés (registre d'état).
L'unité de commande positionne le PC pour l'instruction
suivante.
34
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
2.7. Architecture pipeline
2.7.1. Principe
L’exécution d’une instruction est décomposée en une succession
d’étapes et chaque étape correspond à l’utilisation d’une des
fonctions du microprocesseur.
Lorsqu’une instruction se trouve dans l’une des étapes, les
composants associés aux autres étapes ne sont pas utilisés.
Le fonctionnement d’un microprocesseur simple n’est donc pas
efficace.
35
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Exemple de l’exécution en 4 phases d’une instruction :
Modèle classique :
36
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
L’architecture pipeline permet d’améliorer l’efficacité du
microprocesseur. En effet, lorsque la première étape de l’exécution
d’une instruction est achevée, l’instruction entre dans la seconde
étape de son exécution et la première phase de l’exécution de
l’instruction suivante débute.
Il peut donc y avoir une instruction en cours d’exécution dans
chacune des étapes et chacun des composants du microprocesseur
peut être utilisé à chaque cycle d’horloge (L’efficacité est
maximale ).
Le temps d’exécution d’une instruction n’est pas réduit mais le débit
37
d’exécution des instructions est considérablement augmenté.
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
Modèle pipeline :
38
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
L’architecture pipeline permet d’améliorer l’efficacité du
microprocesseur. En effet, lorsque la première étape de l’exécution
d’une instruction est achevée, l’instruction entre dans la seconde
étape de son exécution et la première phase de l’exécution de
l’instruction suivante débute.
Il peut donc y avoir une instruction en cours d’exécution dans
chacune des étapes et chacun des composants du microprocesseur
peut être utilisé à chaque cycle d’horloge (L’efficacité est
maximale ).
Le temps d’exécution d’une instruction n’est pas réduit mais le débit
39
d’exécution des instructions est considérablement augmenté.
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
2.7.2. Problèmes
Il existe 3 principaux cas où la performance d’un processeur pipeline
peut être dégradé ; ces cas de dégradations de performances sont
appelés des aléas :
aléa structurel qui correspond au cas où deux instructions ont
besoin d’utiliser la même ressource du processeur (conflit de
dépendance),
aléa de données qui intervient lorsqu’une instruction produit un
résultat et que l’instruction suivante utilise ce résultat avant qu’il
n’ait pu être écrit dans un registre,
40
2. ARCHITECTURE ET FONCTIONNEMENT D’UN
MICROPROCESSEUR
aléa de contrôle qui se produit chaque fois qu’une instruction de
branchement est exécutée. Lorsqu’une instruction de branchement
est chargée, il fau normalement attendre de connaître l’adresse de
destination du branchement pour pouvoir charger l’instruction
suivante. Les instructions qui suivent le saut et qui sont en train
d’être traitées dans les étages inférieurs le sont en général pour
rien, il faudra alors vider le pipeline. Pour atténuer l’effet des
branchements, on peut spécifier après le branchement des
instructions qui seront toujours exécutées.
41