Architecture des ordinateurs
Licence Informatique - Universit´
e de Provence
Jean-Marc Talbot
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 257 / 313
Processeur : description - fonctionnement -
microprogrammation
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 258 / 313
Processeur : description
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 259 / 313
Au coeur du processeur
On trouve au sein d’un processeur :
des ´
el´
ements de m´
emorisation : (banc de) registres - cache
des ´
el´
ements de calcul : unit´
e arithm ´
etique et logique (UAL-ALU) -
unit´
es de calcul flottant (FPU - Floating Point Unit)
des ´
el´
ements de commandes : unit´
e de contrˆ
ole/commande
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 260 / 313
Unit´
e de calcul
Unit´
e arithm ´
etique et logique : ALU
calculs sur les entiers - op´
erations bool´
eennes
Unit´
e de calcul flottant : (FPU - Floating Point Unit)
calculs sur les flottants : sqrt, sin, ...
unit´
e multim´
edia :
calcul vectoriel (m ˆ
eme instruction sur plusieurs donn ´
ee en
parall`
ele)
Intel MMX et SSE, AMD 3DNow !
Plusieurs unit´
es au sein d’un processeur :
3 ALU au sein du Pentium
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 261 / 313
Unit´
e de contrˆ
ole/commande (I)
unit´
e qui coordonne le fonctionnement des autres ´
el´
ements pour
ex´
ecuter la s´
equence d’instructions constituant le programme.
pour ex´
ecuter une instruction, deux cycles se succ `
edent
Irecherche de l’instruction `
a ex´
ecuter
Iex´
ecution de l’instruction
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 262 / 313
Unit´
e de contrˆ
ole/commande (II)
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 263 / 313
Unit´
e de contrˆ
ole/commande (III)
Constitu´
e :
d’un ensemble de registres
Iregistre d’instruction RI : permet de stocker l’instruction qui doit ˆ
etre
ex´
ecut´
ee
Icompteur programme PC : stocke l’adresse de la prochaine
instruction `
a ex´
ecuter.
Iregistre d’´
etats (flag register) : permet de stocker des indicateurs
sur l’´
etat du syst`
eme apr`
es l’ex´
ecution d’une instruction. par
exemple,
FC (pour carry) : vaudra 1 si une retenue est pr´
esente.
FZ (pour Zero) : vaudra 1 si le r´
esultat de la derni `
ere op´
eration r´
ealis´
ee
est nul.
FV (pour oVerflow) : vaudra 1 en cas de d´
epassement de capacit´
e
FN (pour Negative) : vaudra 1 si le r´
esultat est n´
egatif.
Mis `
a jour par l’UAL
FT (Trap flag) : mis `
a 1 le processeur fonctionne en mode pas `
a pas
FIE (Interrupt Enable) : mis `
a 1 les interruptions sont prise en compte
F....
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 264 / 313
Unit´
e de contrˆ
ole/commande (IV)
Constitu´
e :
d’un ensemble de registres
Iregistre d’adresse : contient l’adresse de la donn´
ee `
a lire ou `
a
´
ecrire en m ´
emoire.
Iregistres de donn´
ees : contient temporairement la donn´
ee lue ou `
a
´
ecrire en m ´
emoire.
Iregistre d’index XR (utilis´
e dans le mode d’adressage index´
e) :
l’adresse est obtenue en ajoutant son contenu `
a l’adresse contenue
dans l’instruction ; peut ˆ
etre incr´
ementer/d´
ecr´
ementer
automatiquement apr`
es son utilisation
parcours efficace de tableaux
Iregistre de base : contient l’adresse (le num´
ero de segment) `
a
ajouter aux adresses (relatives) contenues dans les instructions.
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 265 / 313
Unit´
e de contrˆ
ole/commande (V)
Constitu´
e :
un horloge qui permet la synchronisation des ´
el´
ements et des
´
ev`
enements
un d´
ecodeur qui d´
etermine les op´
erations `
a ex´
ecuter en fonction
du code de l’instruction.
un s´
equenceur qui d´
eclenche et coordonne les diff´
erentes
op´
erations pour r´
ealiser l’instruction
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 266 / 313
Cycle d’ex´
ecution d’une instruction
Cycle de recherche :
IOn r´
ecup`
ere dans RI l’instruction `
a ex´
ecuter (celle `
a l’adresse
contenue dans PC)
IOn incr´
emente de compteur ordinal PC
Plus finement, utilisation des registres d’adresses et de donn´
ees
Cycle d’ex´
ecution :
IOn d´
ecode l’instruction
ILire les adresses et les registres n´
ecessaires `
a l’instruction
ID´
eterminer que faire pour cette instruction
ILe faire (ou le faire faire) (utilisation d’une unit´
e de calcul)
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 267 / 313
Cycle d’ex´
ecution d’une instruction : exemple
Cycle de recherche
PC 80000 80000 add $1, $2, $3
80004 ....
1On r´
ecup`
ere l’instruction `
a ex´
ecuter
IOn met PC dans RA (le registre d’adresse)
IOn envoie un ordre de lecture `
a la m´
emoire
IOn place le contenue de RD (le registre de donn´
ee) dans RI
RI add $1, $2, $3
2On incr´
emente le compteur ordinal PC
ISoit PC est muni d’un dispositif d’incr´
ementation
ISoit on utilise l’ALU
PC 80004
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 268 / 313
Cycle d’ex´
ecution d’une instruction : exemple (II)
Cycle de recherche
3D´
ecodage de l’instruction (D´
ecodeur)
Iidentification d’une addition entre deux registres avec placement du
r´
esultat dans un registre
4Pr´
eparation des donn´
ees (S´
equenceur)
IOn place les contenus des registres $2 et $3 dans les deux
registres d’entr´
ee de l’ALU
5D´
eterminer ce qu’il faut faire (S´
equenceur)
IEnvoi du signal de l’op´
eration d’addition `
a l’ALU
6Le faire (S´
equenceur)
IL’ALU ajoute les deux op´
erandes et place le r´
esultat dans son
registre de sortie
Ile contenu du registre de sortie de l’ALU est transf´
er´
e dans le
registre $1
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 269 / 313
Horloge
d´
efinit le cycle de base : cycle machine
utilis´
ee pour synchroniser chaque ´
etape des cycles de recherche
et d’ex´
ecution
L’ex ´
ecution du cycle de recherche ou d’ex´
ecution prend un certain
nombre de cycle de base (d´
ependant de l’instruction)
Cycle CPU = temps d’ex´
ecution minimal d’une instruction (recherche +
ex´
ecution)
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 270 / 313
S´
equenceur (I)
S´
equenceur = machine de Mealy
recevant des informations du d´
ecodeur et des signaux d’´
etats
(entr´
ees)
produisant des signaux de commandes contrˆ
olant les diff´
erentes
unit´
es
R´
ealisation :
s´
equenceur cˆ
abl´
e
s´
equenceur micro-programm´
e
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 271 / 313
S´
equenceur (II)
S´
equenceur cˆ
abl´
e :
Icircuit s´
equentiel (synchrone) r´
ealis´
e avec des portes logiques
IUn sous-circuit pour chaque instruction, sous-circuit activ ´
e selon le
code envoy´
e par le d´
ecodeur.
S´
equenceur micro-programm´
e :
IUne ROM contient des micro-programmes compos´
es de
micro-instructions
ILe s´
equenceur sait ex´
ecuter les s´
equences de micro-instructions
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 272 / 313
Chemin de donn´
ees (I)
Un chemin de donn´
ees est d´
efini par
l’ensemble des composants requis pour l’ex ´
ecution d’une
instruction : PC, UAL, banc de registres, m´
emoire, ...
Liens entre ces composants : flux de donn´
ees, signaux de
lecture/´
ecriture, multiplexage des unit´
es partag ´
ees, ....
Selon les instructions, les composants requis et les liens existants
entre eux varient
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 273 / 313
Chemin de donn´
ees (II)
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 274 / 313
Processeur : fonctionnement - microprogrammation
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 275 / 313
Une architecture d’un processeur MIPS
L3 Informatique - Universit´
e de Provence () Architecture des ordinateurs 276 / 313
1 / 15 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !