Structure générale de la machine physique

publicité
Structure générale de la machine physique
• Les principaux composants de la machine physique
• Le langage de la machine physique
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
1
Structure générale de la machine physique
ª Les principaux composants de la machine physique
• Le langage de la machine physique
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
2
Structure générale de la machine physique
Horloge
Processeur
Central
Mémoire
Cache
Mémoire
Centrale
Architecture des machines et systèmes Informatiques A0, 2001/2002
Bus
Réseau
d' échange
Unité d’échange
Joëlle Delacroix
3
Structure générale de la machine physique
• Le processeur est chargé d'exécuter les instructions
des programmes placés en mémoire centrale. Le
processeur est cadencé par une horloge.
• La mémoire centrale contient les instructions et données des
programmes à exécuter. Avec le disque, la mémoire cache, elle
constitue un système de hiérarchie de mémoire qui permet de
rapprocher la vitesse de la mémoire centrale de celle du processeur.
• Les unités d'échanges (UE)
périphériques et le processeur.
• Tous les composants
l'intermédiaire du bus.
de
Architecture des machines et systèmes Informatiques A0, 2001/2002
la
réalisent
machine
Joëlle Delacroix
l'interface
entre
les
communiquent
par
4
Processeur (Unité Centrale)
Y1
Z
PSW
Unité Arithmétique
et Logique
Opération
Y2
Bus Interne
Données
Registres
Commandes
horloge
Unité de Commande
Séquenceur
Décodeur
RI
CO
RAD
RDO
Bus Processeur /Mémoire
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
Commandes Lecture/Ecriture
Adresses
Données
5
Processeur (Unité Centrale)
horloge
Unité de Commande
Séquenceur
Décodeur
RI
CO
RAD
RDO
Commandes Lecture/Ecriture
Adresses
Données
Bus Processeur /Mémoire
L'unité de commande est chargée de la reconnaissance des instructions et de
leur exécution par le processeur au rythme de l'horloge
Les registres :
- RI (registre instruction) : contient l'instruction en cours d'exécution
- CO (compteur ordinal ) : contient l'adresse en MC de la prochaine instruction
- RAD (registre adresse) et RDO (registre de données) : registres d'interfaçage
avec la mémoire centrale
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
6
Processeur (Unité Centrale)
R11
R0
RSP
RB
RIX
Registres :
- les registres généraux R0 à R11
- le registre de pile RSP
- les registres d'adressage : RB (regsitre de base) et RIX (registre d'index)
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
7
Processeur (Unité Centrale)
Y1
Z
PSW
Unité Arithmétique
et Logique
Opération
Y2
L'unité Arithmétique et Logique (UAL) constitue l'unité d'exécution du processeur.
Elle est composée :
- de l'ensemble des circuits permettant de réaliser les opérations arithmétiques
(addition, multiplication, division,…) et les opérations logiques (complément à 2, inverse,
OU, ET, …) sur les opérandes Y1 et Y2
- d'un registre d'état PSW qui contient des indicateurs positionnés par le résultat Z
des opérations effectuées :
S
O C
Z
Architecture des machines et systèmes Informatiques A0, 2001/2002
- O : positionné à 1 si Overflow, 0 sinon
- Z : positionné à 1 si résultat opération nul, 0 sinon
- C : positionné à 1 si carry, 0 sinon
- S : positionné à 0 si résultat opération positif, 1 sinon
Joëlle Delacroix
8
La mémoire centrale
•
•
•
•
•
Architecture des machines et systèmes Informatiques A0, 2001/2002
La mémoire centrale est
constituée par un ensemble de
mots mémoire.
Un mot est constitué par un
ensemble d'octets.
Chaque mot est repéré de
manière unique par une
adresse.
Elle s'interface avec le cpu via
les registres RAD et RDO
Une zone particulière de la
mémoire est gérée comme une
structure de pile repérée par le
registre Rsp
Joëlle Delacroix
9
La mémoire centrale
Bus
d'adresses
Fonctions :
m Bits
programme et données
Adresse
Lecture
Ecriture
Bus
de commandes
Bus de
Données
Mémoire
Unités de stockage :
Bit, Octet, Mot.
Mots
m
2 Mots de p bits
Adressage :
Mot ou octet
Temps d’accès.
Technologies.
Données
Coûts.
p Bits
Architecture des machines et systèmes Informatiques A0, 2001/2002
stockage
Joëlle Delacroix
10
La mémoire centrale
0
1
2
3
mot1
mot2
mot3
mot4
mot5
4
•
Adressage par mot
• seuls les mots sont adressables et
donc répérés par une adresse
Mot de 4 octets
•
0
4
8
12
0
1
2
16
3
mot1
mot2
mot3
mot4
mot5
Mot de 4 octets
Architecture des machines et systèmes Informatiques A0, 2001/2002
Adressage par octets
• chacun des octets composant un
un mot est adressable et est donc
repéré par une adresse
• l'adresse d'un mot est alors celle
de son premier octet.
Joëlle Delacroix
11
Hiérarchie Mémoire
vitesse
6-35 ns
70 - 120 ns
10000000-20000000 ns
cout Le plus élevé
Le moins élevé
capacité La plus petite
La plus grande
Processeur
Registres
Mémoire
Cache
Mémoire
centrale
Mémoire
d'appui
Disque
Magnétique
Bus
Local
DRAM
SRAM
Bus
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
12
Le bus processeur / mémoire
Il existe aussi au sein du processeur
un bus dit bu interne qui relie les
différents composants du processeur
Proceseur
Bus Interne
RAD
RDO
Commandes Lecture/Ecriture
Adresses
Données
Bus Processeur /Mémoire
Le bus processeur/mémoire permet la comunication entre le processeur et la mémoire centrale.
Au niveau du processeur cet interfaçage est mis en œuvre via les registre RAD et RDO.
Le bus est composé :
- de lignes d'adresses qui transportent l'adresse à laquelle le processeur s'intéresse
- de lignes de données qui transportent les mots mémoires
- de lignes de commandes qui spécifient le type d'opérations en cours sur le bus
On appelle largeur du bus le nombre de bits que le bus peut transporter en parallèle.
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
13
Architecture générale
Mots : 32 bits
Mémoire
capacité
1 Gmots de 32 bits
230 mots de 32 bits
232 octets
Processeur
Registres
32 bits
Registres
Adresse RAD : 32 bits
Mot RDO :
12 registres généraux :
2 registres spécialisés :
1 registre pointeur de pile :
1 registre instruction :
1 compteur ordinal :
1 registre d’état :
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
32 bits
R0-R11
RB, RIX
Rsp
RI
CO
PSW
14
Boitier (Carte mère)
Mémoire RAM
Processeur
Unités d'échanges
Bus
Périphériques
Entrées
Sorties
Entrées et Sorties
Matériels
Ordinateur
Logiciels
Ordinateur :
Exploitation (Système)
Utilitaires
Ensemble de composants matériels (hardware)
permettant l’exécution de logiciels (software).
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
15
Structure générale de la machine physique
• Les principaux composants de la machine physique
ª Le langage de la machine physique
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
16
Le codage d'un problème ...
Programme en langage de haut niveau
instructions de haut niveau
fonction perimetre (a, b : in integer) return
integer is
begin
perimetre := (2 * a) + (2 * b);
end;
Compilateur
Niveau utilisateur
Système d'exploitation
Gérer et partager le matériel
processeur
01101110111110011
01111010001011100
10111101110111111
00111011110111011
00111111000111101
Bus
Mémoire centrale
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
Machine physique "matérielle"
Programme à
exécuter : instructions machine
et valeurs en binaire
traduction
17
La représentation des instructions
sur la machine physique
32 bits
Code opération
Désignation des opérandes
85 bits : 28 instructions différentes
00000000 : chargement de registre
00000101 : addition, etc...
Ier opérande 2ème opérande
Registre
Le mode d'adressage et le champ X
permettent de code le type du deuxième
opérande
Architecture des machines et systèmes Informatiques A0, 2001/2002
registre
valeur immédiate
opérande en mémoire
Mode d'adressage registre X
Joëlle Delacroix
18
Les modes d'adressages
Immédiat
Direct
Indirect
le deuxième opérande est la valeur X
le deuxième opérande est un opérande
mémoire. X est une adresse
Basé
Indexé
Relatif
le deuxième opérande est un opérande
mémoire. X est un déplacement à ajouter à la valeur
contenue dans un registre du processeur (RB ou RIX ou CO)
Registre/Registre
Le deuxième opérande est un registre banalisé du processeur
Registre
Il n'y a pas de deuxième opérande
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
19
La représentation des instructions
sur la machine physique
32 bits
adresse
Code opération
8 bits
Mode d'adressage
4 bits
registre
4 bits
X
16 bits
• Une instruction machine est une chaine binaire repérée par une adresse.
Pour faciliter la manipulation du langage machine par l'humain, on substitue à la
chaine binaire une représentation "alphanumérique" équivalente pour chaque
instruction : c'est le langage d'assemblage qui remplace les chaines binaires par des
mnémoniques équivalents
00001000 00000101 0000 0001 00000000000000000000
addition : ADD
Im R1 0
etiquette : codeop mode adressage registre X
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
20
Les modes d'adressages : mnémoniques dans le langage d'assemblage
le deuxième opérande est la valeur X
Immédiat Im
le deuxième opérande est un opérande
mémoire. X est une adresse
Direct D
Indirect I
Basé
B
Indexé Ix
Relatif Rel
le deuxième opérande est un opérande
mémoire. X est un déplacement à ajouter à la valeur
contenue dans un registre du processeur (RB ou RIX ou CO)
Le deuxième opérande est un registre
banalisé du processeur
Registre/Registre Rg2
Registre Rg1
Il n'y a pas de deuxième opérande
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
21
Instructions : adressage Immédiat
Load Im R5 2
Représente une Valeur
c'est l'opérande
(R5) = 2
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
22
Instructions : adressage Direct
32 bit
Load D R3 X
Représente une Adresse
c'est l'adresse de l'opérande
Adresse Instructions/données
Load
I, R7,
X X
Load
D R3
X
5
C
(R3) = (X)
(R3) = 5
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
23
Instructions : adressage Indirect
Load I R7 X
Représente l’adresse d’un mot
dont le contenu est
l’adresse de l’opérande
Adresse
X
Y
Y
C3
(R7) = ((X))
Architecture des machines et systèmes Informatiques A0, 2001/2002
Instructions/données
Load
I, R7,
XX
Load
I R7
3
Registre R7
Joëlle Delacroix
24
Instructions : adressage Basé
Load B R3 X
Load B R3 X
Registre de Base
Rb
Représente un déplacement
Y
par rapport au registre
de base Rb
4
Registre R3
X
Z
(R3) = ((Rb) + X)
Architecture des machines et systèmes Informatiques A0, 2001/2002
Y
Joëlle Delacroix
4
25
Adressage: Résumé
Code Opération Mode Registre ChampOpérande
Load D R1 X
Adressage
Valeur de l ’opérande
• Immédiat
Champ opérande
• Direct
( Champ opérande )
• Indirect
( ( Champ opérande ) )
• Basé
(( Base) + Champ opérande)
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
26
Les différents types d'instructions
Chargement / Stockage de registre
LOAD Im R1 5 ; STORE D R2 25
Opérations arithmétiques et logiques mettant en jeu l'UAL
: ADD, MUL, OR, XOR, AND, ...
Les opérations de sauts :
JMP et JMPO, JMPS, JMPZ, ….
A
: DC 2
LOAD D R1 A
LOAD Im R2 -1
moinsun : ADD rg2 R1 R2
JMPZ fin
JMP moinsun
fin
: STOP
Architecture des machines et systèmes Informatiques A0, 2001/2002
Programme qui à chaque pas décrémente R1 de 1 unité
et s'arrête dès que R1 = 0
Joëlle Delacroix
27
Instructions : manipulation de la pile
Push Registre
Push Opérande
Pop Registre
Pop Opérande
Rsp
Pile
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
28
Instructions : manipulation de la pile
Rsp
40
10
2
Push R0
R0
123
Rsp
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
123
40
10
2
29
Instructions : manipulation de la pile
Rsp
123
40
10
2
Pop R1
R1
123
Rsp
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
40
10
2
30
Résumé
•
Les principaux éléments de la machine physique sont :
• le processeur composé de l'unité de commande, de registres et de l'Unité
Arithmétique et Logique
• la mémoire centrale composée de mots repérés par une adresse unique
• le bus externe qui assure la communication entre le processeur et la
mémoire centrale
• les unités d'échanges qui interfacent le processeur avec les périphériques
•
Le langage de la machine est composé d'instructions en binaire.
• Une instruction est composée d'un champ code opération, et de champs
permettant de désigner les opérandes. Le mode d'adressage permet de
spécifier un type d'opérandes donné si plusieurs sont possibles.
• Le Langage d'assemblage est un langage composées d'instructions
équivalentes aux instructions machine pour lequel les chaînes binaires sont
remplacées par des mnémoniques.
Architecture des machines et systèmes Informatiques A0, 2001/2002
Joëlle Delacroix
31
Téléchargement