(code d`operation : op-code).

publicité
L'unité de contrôle
Traitement des instructions d'un programme :
• Sélection
• Interprétation
• Exécution
Modules travaillant à des vitesses différentes
(CPU, unités E/S, UAL, mémoire …)
besoin de synchronisation (Horloge !!!)
Différents éléments : • Registre d'instruction
copie de l'instruction courante Eléments
passifs
• Compteur Programme : PC
adresse de l'instruction suivante à exécuter
• Décodeur de fonction (interprétation)
Eléments
• Horloge (synchronisation)
actifs
• Constructeur de commandes
(opérations élémentaires)
Année préparatoire Licence Informatique (ULB/UMH) Charleroi. Fonctionnement des ordinateurs. Chapitre 6
D. Bertrand 1
Le registre d'instruction
L'instruction est représentée en binaire (Von Neuman)
• Partie Fonctionnelle (Code d'Opération : Op-code)
Code binaire pour une classe de jeu d'instructions du processeur
Complete Instruction Set Computer : CISC;
(Ordinateur à jeu complet d'instructions)
Reduced Instruction Set Computer : RISC
(Ordinateur à jeu réduit d'instructions)
Exemple (MC68020 processeur CISC : Op-code de 4 bits) :
Instruction
Mnémonique Code
Addition
ADD
11012
ET logique
AND
11002
Test d'un bit
BTST
01102
Comparaison
CMP
10112
Des sous classes sont définies par des bits de modification
Exemple : type d'arithmétique (entière ou réelle)
type d'adressage (direct, indirect, implicite, …)
Année préparatoire Licence Informatique (ULB/UMH) Charleroi. Fonctionnement des ordinateurs. Chapitre 6
D. Bertrand 2
Le registre d'instruction
Op-code Opérande 1 Opérande 2
Résultat inst. suivante
n bits
• Partie adresse
o Opérandes de l'instruction
: [R]  [O2] op [O1]
o Adresse instruction suivante : [PC]  N.I.
o Certaines adresses peuvent être absentes :
Adresse instruction suivante en l'absence de rupture de séquence
(ex.: instruction arithmétique ou logique)
Adresse résultat ≡ adresse d'un des opérandes : [R]  [R] op [O1]
o Processeur CISC : longueur d'instruction variable
o Processeur RISC : longueur d'instruction constante
(32 bits pour le Pentium et le PowerPC)
Année préparatoire Licence Informatique (ULB/UMH) Charleroi. Fonctionnement des ordinateurs. Chapitre 6
D. Bertrand 3
Le Compteur de Programme (PC)
Registre renfermant l'adresse de l'instruction suivante
à exécuter.
Pour la plupart des processeurs actuels : longueur de 32 bits
(espace adressable de 4 Toctets)
Deux possibilités :
• Incrémentation de l'ancienne adresse de la longueur de l'instruction
en cours (mise à jour implicite)
• Transfert de l'adresse stockée dans la position dédicacée de
l'instruction (mise à jour directe)
Remarques :
• Lors d'une instruction de branchement conditionnel le PC doit être
mis à jour en fonction du résultat de l'opération (après exécution)
• Pour démarrer une tâche, l'adresse de sa première instruction doit
être chargée dans le PC
Année préparatoire Licence Informatique (ULB/UMH) Charleroi. Fonctionnement des ordinateurs. Chapitre 6
D. Bertrand 4
Le décodeur de fonction
Circuit combinatoire (aiguillage généralisé) :
• sélection d'une instruction en fonction de son code
• détermination de l'adresse de l'instruction suivante à exécuter
Exemple (pour un code d'instruction à 4 bits)
Code d'instruction
ADD : Code 11012
décodeur de fonction
15
0
Instruction sélectionnée
NB : Sélection réalisée sur le jeu d'instructions du processeur
plus compliqué pour un processeur CISC
Année préparatoire Licence Informatique (ULB/UMH) Charleroi. Fonctionnement des ordinateurs. Chapitre 6
D. Bertrand 5
La base de temps et le séquenceur
Oscillateur basé sur un cristal (SiO2) : effet piézoélectrique
Vcc
I
t0
compteur t1
t2
0
5V
Multiples de la fréquence de base obtenus au départ d'un compteur :
t2 t1 t0
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
t0
t1
t2
Année préparatoire Licence Informatique (ULB/UMH) Charleroi. Fonctionnement des ordinateurs. Chapitre 6
D. Bertrand 6
La construction de commandes
• Fractionnement d'une instruction en commandes élémentaires
• Les commandes élémentaires déclenchent les opérations élémentaires
Décodeur de fonction
base de temps
(synchronisation)
Constructeur
de commandes
NB. La même opération élémentaire peut apparaître plusieurs fois
La durée de chaque opération élémentaire peut varier
Année préparatoire Licence Informatique (ULB/UMH) Charleroi. Fonctionnement des ordinateurs. Chapitre 6
D. Bertrand 7
Exemple : L'addition
adresse
t0
Mémoire
t1
Unité de contrôle
t3
Accumulateur
Registre
d'instruction
Additionneur
t2
t7
Micro programmation :
Constructeur de
commandes
Opérations
élémentaires
t5
t10
t3
t9
UAL
Compteur
programme
Décodeur de fonction
t6 t4
données
t8
• Code d'assemblage de bas niveau
• Emulation des instructions du
processeur ne figurant pas dans
le jeu d'instructions (RISC !)
Année préparatoire Licence Informatique (ULB/UMH) Charleroi. Fonctionnement des ordinateurs. Chapitre 6
D. Bertrand 8
Téléchargement