Académique Documents
Professionnel Documents
Culture Documents
Introduction
I. Description du processeur
Un processeur est circuit électronique à très haute densité d’intégration (ULSI : Ultra
Large Scale Integration) qui peut compter quelques dizaines
de millions de transistors.
Le CPU se compose de deux unités fonctionnelles : l’unité de commande et l’unité de calcul.
1
BAMBARA/DIALLO Fouziatou
Cours d’architecture des ordinateurs
- ACC : Accumulateur ;
- RI : Registre Instruction;
Toutes ces unités fonctionnent au même rythme, à une cadence imposé par une
horloge généralement externe au CPU.
A chaque cycle d’horloge, chaque unité va ouvrir ou fermer certaines portes pour déplacer,
lire , écrire, comparer, additionner des bits .Ceci se fait en fonction d’ordres donnés par
l’unité de contrôle .Ces ordres dépendent de l’instruction à exécuter.
RAPPELS
Les informations traitées par un microprocesseur sont de différents types (nombres,
instructions, images, vidéo, etc…) mais elles sont toujours représentées sous un format
binaire. Seul le codage changera suivant les différents types de données à traiter. Elles sont
représentées physiquement par 2 niveaux de tensions différents.
En binaire, une information élémentaire est appelé bit et ne peut prendre que deux valeurs
différentes : 0 ou 1.
Une information plus complexe sera codée sur plusieurs bits. On appelle cet ensemble un
mot. Un mot de 8 bits est appelé un octet.
Une horloge est un système logique , piloté par un oscillateur qui émet
périodiquement une série d’impulsions .Ces signaux périodiques constituent le cycle de base.
Toute l’activité de l’ordinateur est cadencée par une horloge unique, de façon à ce que tous les
circuits électroniques travaillent ensembles.
2
BAMBARA/DIALLO Fouziatou
Cours d’architecture des ordinateurs
La fréquence est le nombre de fois qu’un signal se reproduit par rapport à lui-même
en une seconde ; unité Hertz(Hz)
La fréquence d’horloge de l’ordinateur s'exprime en MHz (millions de
battements par seconde). Par exemple, un ordinateur \PC Pentium 133" possède
un processeur de type Pentium et une horloge à 133 MHz(c'est-à-dire 133 millions
d’impulsions par seconde).
Le cycle CPU est le temps d’exécution de l’instruction la plus courte.
I.2.Les registres
Le nombre et le type des registres implantés dans une unité centrale de traitement ont
une influence sur la programmation et les performances de la machine.
Les registres fondamentaux, que l’on retrouve sur toutes les machines ou presque sont :
c. L’accumulateur (ACC)
Ils permettent de limiter les accès à la mémoire, ce qui accélère l’exécution d’un
programme. Ils peuvent conserver les informations utilisées fréquemment, des résultats
intermédiaires, …etc.
3
BAMBARA/DIALLO Fouziatou
Cours d’architecture des ordinateurs
Ils peuvent être utilisés comme des registres généraux mais ils ont une fonction
spéciale utilisée pour l’adressage indexée (que nous verrons lors de l’étude du
microprocesseur 68000).
A l’intérieur d’un programme on ne fait référence qu’à des adresses relatives. Par
contre, l’unité centrale a besoin de connaître les adresses physiques où se situent réellement
instructions et données.
Le rôle des registres de base est de permettre le calcul des adresses effectives. Un registre de
base contient une adresse de référence. L’adresse physique est obtenue en additionnant au
champ adresse de l’instruction, le contenu du registre de base.
Le registre de base est encore utilisé quand le nombre de bits du champ adresse ne permet pas
d’accéder à toute la mémoire (sur la figure 10 il y a e RTA Registre Tampon d'Adresse,
utilisé pour accéder à une donnée en mémoire.
et le registre d’adresse).
Une partie des bits de ce registre, aussi appelé registre condition, constitue des
drapeaux (flags) qui indiquent certains états particuliers (Négatif, Zéro, Positif ,Carry,
Overflow) .
Ces bits indicateurs, peuvent être testés pour déterminé la suite du déroulement du
programme : branchement conditionnels.
Une pile est une zone mémoire dans laquelle les informations sont rangées de façon
contiguë. Le pointeur de pile (StackPointer : SP) indique le sommet de la pile : position de la
dernière information enregistrée.
Dans certaines machines, le pointeur de pile indique la position où sera mémorisée la
prochaine donnée.
Lorsqu’une donnée est enregistrée dans la pile elle est placée à l’adresse qui suit celle du
dernier mot stocké. Après l’opération le pointeur de pile est incrémenté.
Lorsqu’une donnée est retirée de la pile il correspond à la dernière information qui y a été
entrée. Après l’opération le pointeur de pile est décrémenté. Une pile est réservée à l’usage de
l’unité centrale, en particulier pour sauvegarder les registres et l’adresse de retour en cas
d’interruption ou lors de l’appel d’une procédure.
II . Fonctionnement du processeur
Les opérations de la CPU sont déterminées par les instructions qu'elle exécute. L'ensemble
des instructions qu'une CPU particulière peut exécuter est appelé jeu d'instruction de la CPU.
Chaque type de machine possède donc un jeu d'instructions et une CPU spécifique.
4
BAMBARA/DIALLO Fouziatou
Cours d’architecture des ordinateurs
Le cycle de l’instruction d’un processeur est de la façon dont celui-ci exécute une
instruction selon l’algorithme suivant :
Début
CO 0
Tant que alimenté Faire
RI instruction d’adresse CO (fetch) : l'instruction est lue
depuis la mémoire
Décoder le contenu de RI (decode) : l'instruction est décodée
pour déterminer à quelle action elle correspond.
Exécuter l’instruction (execute) :
• recherche des données (fetch data) : l'exécution de
l'instruction peut demander la lecture de données dans la mémoire
ou depuis un module d'E/S
• traitement des données (process data) : l'exécution de
l'instruction peut demander des opérations arithmétiques ou
logiques sur les données
• écriture des données (write data) : l'exécution de l'instruction
peut demander l'écriture du résultat dans la mémoire ou depuis un
module d'E/S
Chaque ordinateur permet un mécanisme selon lequel un module (E/S, mémoire) peut
interrompre le déroulement normal de ce cycle. Si une interruption survient, l'état courant
(principalement le compteur ordinal) est sauvegardé et l'interruption est traitée (i.e.,
l'exécution est détournée sur une suite d'instructions traitant l'interruption, appelée routine
d'interruption).
Le nouveau cycle commence par le fetch de la première instruction de la routine
d'interruption.
Une instruction au niveau machine fournit à l’unité centrale de traitement toutes les
informations nécessaires pour déclencher une opération élémentaire : type d’action, où
trouver le ou les opérandes, où ranger le résultat….etc.
Ainsi une instruction doit contenir des informations requises par la CPU pour son
exécution :
5
BAMBARA/DIALLO Fouziatou
Cours d’architecture des ordinateurs
Sur certaines machines, les instructions sont toutes de même longueur , sur d’autres cette
longueur peut varier avec le code opération ou le mode d’adressage.
Durant l'exécution d'une instruction, celle-ci est chargée dans le registre d'instruction (RI) de
la CPU, qui doit en extraire les différents champs.
Cette séquence de bit admet une représentation symbolique, où l'opcode est représenté par
une abbréviation appelée mnémonique. Chaque opcode admet une représentation binaire fixe.
Quelques exemples de mnémonique : Move ; Load ; Store ;Add ; Mul ; Div ; Sub ; Push ;
Pop ;…..
Chaque instruction est représentée par une séquence de bits, découpée en champs. Il y a
différents formats d'instruction selon le nombre de parties réservées aux opérandes. Une
instruction comporte plusieurs champs. On emploie souvent l’expression machine à n
(n=0,…,4) adresses pour indiquer le format de l’instruction utilisé par la machine.
a. Machine à 4 adresses
b. Machine à 3 adresses
Dans cette instruction, le champ de l’instruction suivante a été supprimé, car c’est le
compteur ordinal qui est chargé de calculer cette adresse.
c. Machine à 2 adresses
Le champ adresse du résultat a été supprimé , l’adresse du résultat sera rangée à la place
de celle du deuxième opérande. L’instruction ne contient que deux adresses.
6
BAMBARA/DIALLO Fouziatou
Cours d’architecture des ordinateurs
d. Machine à 1 adresse
Dans ce cas le format de l’instruction ne contient qu’une seule adresse, c’est l’adresse du
premier opérande. Le deuxième opérande se trouve dans l’accumulateur, donc pas besoin de
son adresse.
Le résultat est placé à son tour dans l’accumulateur.
Exemple :
7
BAMBARA/DIALLO Fouziatou
Cours d’architecture des ordinateurs
8
BAMBARA/DIALLO Fouziatou
Cours d’architecture des ordinateurs
Les instructions qu’on retrouve dans toute machine peuvent être classées comme suit :
- Les instructions de transferts de données : entre la mémoire et les registres (load,
store), entre registre et registres (move) ;
- Les instructions de traitement de données : les opérations logiques (And, Or, Not,
Xor), et opérations arithmétique (Add, sub,mul,div) ;
- Les instructions de contrôle : branchements conditionnels ou non, appel de
procédure ;
- Les instructions d’entrées sorties.
Dans ce type d’architecture, les instructions lisent leurs opérandes dans des registres et y
écrivent leurs résultats.
Cet ensemble de registres est appelé fichier de registres généraux.
Les instructions doivent spécifier les registres qui contiennent leurs opérandes d’entrées et
celui dans lequel leur résultat doit être écrit.
9
BAMBARA/DIALLO Fouziatou
Cours d’architecture des ordinateurs
Exemple :
- ADD R1 , R2 , R 3 : instruction d’addition à 3 opérandes (R1 destination ; R2 1er
ème
opérande, R3 2 opérande ) .
b. L’architecture à pile
Dans ce type d’architecture, les instructions lisent leurs opérandes et écrivent leurs résultats
dans la pile (LIFO : Last In First Out). Comme on l’a déjà vu au niveau de l’instruction à
zéro adresse, une pile est une structure de données qui obéit au principe « le dernier qui entre
est le premier qui sort ».
La pile utilise deux instructions de base : PUSH et POP :
- L’opération PUSH permet de placer une donnée au sommet de la pile en poussant les
données précédentes d’un cran vers le bas.
- L’opération POP retire la valeur du haut de la pile pour être utilisé comme entrée
d’une instruction.
Exemple :
On considère le jeu d’opérations suivant :
PUSH # 5
PUSH # 2
POP
PUSH # 6
Etats de la pile :
Le mode d’adressage nous renseigne sur la manière dont l’instruction adresse ses opérandes.
Un champ d’adresse d’une instruction peut référence un mot mémoire ou un registre.
On présentera ici quelques modes d’adressage et on expliquera la manière dont ils opèrent.
10
BAMBARA/DIALLO Fouziatou
Cours d’architecture des ordinateurs
Le mode d’adressage peut être partie intégrante du champ adresse ou défini par le code
opération lorsque celui impose un type déterminé.
a. L’adressage immédiat
Exemple :
MOV R2, # 5 : après exécution le contenu de R2 est 100.
b. L’adressage direct
Exemple :
MOV R1, 100 : cette instruction met dans le registre R1, l’opérande qui se situe à l’adresse
100 en mémoire.
c. L’adressage indirect
Si l’on suppose que R1 contient la valeur 100, alors après l’instruction MOV R3 , (R1)
R3 contiendra la valeur 120.
11
BAMBARA/DIALLO Fouziatou
Cours d’architecture des ordinateurs
d. L’adressage relatif
Exemple :
BR 50
e. L’adressage indexé
Exemple :
f. L’adressage basé
12
BAMBARA/DIALLO Fouziatou
Cours d’architecture des ordinateurs
REMARQUE :
- Les trois derniers modes d’adressage (relatif, indexée, basée) travaillent sur le principe
suivant : l’adresse effective est calculée sur la base du champ d’adresse de
l’instruction qu’on additionne à un déplacement
Adresse effective = base + déplacement
- On peut toujours combiner les modes d’adressage pour en obtenir d’autres. Par
exemple adressage indirect indexée.
III. 1. Le fabriquant
La longueur des instructions par rapport à celle du mot mémoire influence le temps de
traitement : il faut tenir compte du temps de transfert des mots qui constituent l’instruction.
1Mo, 4Go, 64 Go, 64To….
13
BAMBARA/DIALLO Fouziatou
Cours d’architecture des ordinateurs
14
BAMBARA/DIALLO Fouziatou
Cours d’architecture des ordinateurs
REMARQUES :
- Le bit : c’est la plus pettite quantité d’information en informatique, c’est l’unit é de
l’information
- L’octet : c’est un ensemble de 8bits
- La fréquence : c’est le nombre de fois qu’un signal se reproduit par rapport à lui-
même en une seconde.
- La puissance : La puissance d’un processeur se quantifie par rapport aux nombres
d’instructions ou opérations élémentaires que celui-ci peut exécuter en une seconde ,
l’unité est le MIPS(Millions Instructions Per Second) ; P= fréquence / nombre de
période pour exécuter une instruction
- La capacité représente le nombre total de bits d’une mémoire
- Le format correspond à la longueur des mots ; 1ko = 1024 octets ;1Mo = 1024Ko.
15
BAMBARA/DIALLO Fouziatou
Cours d’architecture des ordinateurs
II.11. Le support
On distingue deux grands types de supports : les sockets et les slots. Les sockets sont des
supports ZIF ou LIF.
16
BAMBARA/DIALLO Fouziatou