Architecture et programmation des ordinateurs :
5- Les Machines théoriques
A.U 2012/2013 Ramzi Mahmoudi 164
Architecture des ordinateurs :
Les machines théoriques – Introduction
Machine de Machine de
Une machine théorique est une machine fondamental pour la théorie de la calculabilité-décidabilitéet de la complexité.
Malgré sa simplicité extrême, elle est capable desimuler toute opération réalisable par n'importe quel processeur, aussi puissant soit-il. Elle résume de manière saisissante le concept d'ordinateuret constitue un support idéal pour raisonner autour de la notion d'algorithme.
A.U 2012/2013 Ramzi Mahmoudi 166
Inventé par Alan Turing (1936)
Machine de Turing:
oUne mémoire infinie sous la forme d'une bande divisée en cases.
Chaque case du ruban pouvant contenir un symbole de l'alphabet considéré. Ces cases sont en nombre fini, les autres étant initialisées à blanc. Le nombre de cases non vides pouvant évoluer au cours du temps.
oUne tête de lecture-écriture se déplaçant sur le ruban.
Architecture des ordinateurs :
Les machines théoriques – Turing (1)
Inventé par Alan Turing (1936)
Machine de Turing:
oUn ensemble fini d'états parmi lesquels on distingue un état initial et un ensemble d'états terminaux ou accepteurs.
oUne fonction de transition qui, pour chaque état de la machine et symbole se trouvant sous la tête de lecture-écriture, précise les points suivants :
-l'état suivant
-un symbole qui sera écrit sur le ruban en lieu et place de celui se trouvant sous la tête
-un sens de déplacement de la tête.
Architecture des ordinateurs :
Les machines théoriques – Turing (2)
Le mot d'entrée se trouve au début du ruban, la tête est placée sur le premier symbole, la machine est dans son état initial.
A chaque étape, la machine 1) lit le symbole sous la tête,
2) remplace ce symbole suivant sa fonction de transition, 3) déplace la tête suivant sa fonction de transition, 4) change d'état en rapport avec sa fonction de transition.
Un mot est accepté lorsque l'exécution atteint un état terminal.
Exécution
A.U 2012/2013 Ramzi Mahmoudi 168
Architecture des ordinateurs :
Les machines théoriques – Turing (3)
Une machine Mest dite universellesi elle est capable de simuler le comportement d'une autre machine de Turing M’ si on lui fournit d'une part le mot d'entrée de M’ et une spécification de M’ .
Machine universelle
Inventé par John Von Neumann (1946)
Machine de Von Neuman:
oune mémoire contenant programme (instructions) et données, oune unité arithmétique et logique (UAL ou ALU),
oune unité permettant l'échange d'information avec les périphériques : l'unité d'entrée /sortie, oune unité de commande (UC).
Fonctions
ole stockage de données, ole traitement des données, ole mouvement des données oet le contrôle
A.U 2012/2013 Ramzi Mahmoudi 170
Architecture des ordinateurs :
Les machines théoriques – Von Neumann (1)
Machine universelle
Elle contrôlée par un programme Non dédiée aux seules opération arithmétiques Instructions et données sous format binaire et stockée en mémoire (Instructions et données dans la même mémoire)
Architecture des ordinateurs :
Les machines théoriques – Von Neumann (2)
Structure générale
A.U 2012/2013 Ramzi Mahmoudi 172
Le processeur (CPU)
– Cadencé par une horloge unique – Divisé en:
oUnité de commande: lecture en mémoire et décodage des instructions oUnité de traitement (UAL): exécute les instructions qui manipulent les données
Architecture des ordinateurs :
Les machines théoriques – Von Neumann (3)
Central Processing Unit
Divisée en en emplacements de taille fixe (8 bits) repéré par une adresse Deux opérations possibles:
– Écriture – Lecture
L'UC inscrit l'adresse d'une cellule dans un registre d'adresse (RA) et demande une opération de lecture ou d'écriture
Les échanges se font par l'intermédiaire d'un registre de mot (RM).
Mémoire Principale (MP)
A.U 2012/2013 Ramzi Mahmoudi 174
Lecture en mémoire et décodage des instructions Divisé en deux registres:
–Compteur ordinal (PC/ CO) = registre contenant l'adresse mémoire de l'instruction à exécuter.
–Registre d'instruction (RI) mémorise l'instruction
Architecture des ordinateurs :
Les machines théoriques – Von Neumann (5)
Extrait une instruction de la mémoire, Analyse l'instruction (pour l’alu)
Recherche dans la mémoire les données concernées par l'instruction (les opérandes) Déclenche l'opération adéquate sur l'ALU ou l'E/S
Place le résultat dans la mémoire.
Unité de commande (UC)
Architecture des ordinateurs :
Les machines théoriques – Von Neumann (6)
UAL: Unité Arithmétique et Logique
– Effectue les opérations sur deux données: opérandes
– Une opérande dans l’accumulateur, l’autre en mémoire de donnée: résultat mis dans l’accumulateur
ACC: Accumulateur
– Registre qui contient une opérande et le résultat du calcul
E/S: Entrée / Sortie
– registre mémorisant l'adresse du périphérique (le registre de sélection du périphérique (RSP)) – un registre d'échange de données (RE).
Structure particulière
A.U 2012/2013 Ramzi Mahmoudi 176
Architecture des ordinateurs :
Les machines théoriques – Von Neumann (7-1)
Principe de l’architecture Von Neumann proposée en 1945
UAL
ACC CO RA
Mémoire Contrôle
H
RI
UAL
ACC CO RA
Mémoire Contrôle
H
RI
Chargement d’une instruction : CO -> RA
A.U 2012/2013 Ramzi Mahmoudi 178
Architecture des ordinateurs :
Les machines théoriques – Von Neumann (7-3)
UAL
ACC CO RA
Mémoire Contrôle
H
RI
Chargement d’une instruction : Mem -> RI
Architecture des ordinateurs :
Les machines théoriques – Von Neumann (7-4)
UAL
ACC CO RA
Mémoire Contrôle
H
RI
Exécution de l’instruction A + B : (lecture A) RI -> RA
A.U 2012/2013 Ramzi Mahmoudi 180
Architecture des ordinateurs :
Les machines théoriques – Von Neumann (7-5)
UAL
ACC CO RA
Mémoire Contrôle
H
RI
Exécution de l’instruction A + B : (lecture A) Mem -> ACC
UAL
ACC CO RA
Mémoire Contrôle
H
RI
Exécution de l’instruction A + B : (lecture B) RI -> RA
A.U 2012/2013 Ramzi Mahmoudi 182
Architecture des ordinateurs :
Les machines théoriques – Von Neumann (7-7)
UAL
ACC CO RA
Mémoire Contrôle
H
RI
Exécution de l’instruction A + B : ACC et Mem -> ALU
Architecture des ordinateurs :
Les machines théoriques – Von Neumann (7-8)
UAL
ACC CO RA
Mémoire Contrôle
H
RI
Mémorisation de A + B: ALU -> ACC
A.U 2012/2013 Ramzi Mahmoudi 184
Architecture des ordinateurs :
Les machines théoriques – Von Neumann (7-9)
UAL
ACC CO RA
Mémoire Contrôle
H
RI
lecture de l’adresse du résultat : RI -> RA
UAL
ACC CO RA
Mémoire Contrôle
H
RI
Copie du résultat : ACC -> Mémoire
A.U 2012/2013 Ramzi Mahmoudi 186
Architecture et programmation des ordinateurs :
~Les machines théoriques~
Travaux Dirigés
Architecture des ordinateurs :
Travaux dirigés
Exercice 1 : Complétez le schéma de la machine de von Neuman suivante
A.U 2012/2013 Ramzi Mahmoudi 188
Architecture des ordinateurs :
Travaux dirigés
Corrigé [Ex1] : Complétez le schéma de la machine de von Neuman suivant
Exercice 2 : Complétez le schéma du PC suivant
A.U 2012/2013 Ramzi Mahmoudi 190
Architecture des ordinateurs :
Travaux dirigés
Corrigé [Ex2] : Complétez le schéma du PC suivant