ARCHITECTURE DES ORDINATEURS
CHARGÉE DU COURS : MME BENOSMAN
CHAPITRE 2: PRINCIPAUX COMPOSANTS D’UN
ORDINATEUR
PLAN
Schéma global d’une architecture
Les bus
L’UAL
Les registres
La mémoire interne : mémoire RAM (SRAM et DRAM), ROM, temps d'accès,
latence,...
La mémoire cache : utilité et principe, algorithmes de gestion du cache (notions de
base)
Hiérarchie de mémoires
PLAN DU COURS
Les registres
La mémoire interne
Définition
Types de mémoire
Caractéristique d’une mémoire
Organisation d’une mémoire
Classification des mémoires
Types d’accès à la mémoire
Mémoire interne
3
Structure physique d’une mémoire centrale
LES REGISTRES
4
LES REGISTRES
Les registres sont des cellules mémoire interne au CPU.
Ils sont peu nombreux mais d'accès très rapide.
Ils servent à stocker des variables, les résultats intermédiaires d'opérations
arithmétiques ou logiques ou encore des informations de contrôle du
processeur.
Le registre est l’entité de base manipulée par le processeur.
5
Il existe 2 types de registres:
D’adresse (contient l’adresse d’un mot) RA
De données = registres « mot » (contiennent un mot mémoire) RM
6
LES REGISTRES
Chaque registre peut stocker une valeur entière distincte, bornée par la taille des registres (nombre de
bits)
deux registres pour la manipulation des instructions :
Le compteur ordinal
Le registre d'instruction
7
LES REGISTRES
Il y a aussi les registres de l'UAL ; qui sont accessibles au programmeur, contrairement aux
registres de l'UCC :
Ces des registres qui doivent contenir les données nécessaires aux opérations arithmétiques
et logiques ( + -, *, /, complément à1 ET OU …), à savoir : - les opérandes = valeurs sur
lesquelles s’effectuent les opérations - les résultats - les valeurs intermédiaires
Registres arithmétiques : destinés pour les opérations arithmétiques (+, -, *, /,
complément à1, ...) ou logiques (NOT,AND, OR, XOR)
Registres d’index : pour stocker l'index d'un tableau de données et ainsi calculer des
adresses dans ce tableau
Registre d'état (PSW, Processor Status Word) : permettant de stocker des indicateurs
sur l'état du système (retenue, dépassement, etc.) ;
8
Registre pointeur : indique la position du prochain emplacement disponible dans la pile
mémoire.
LES REGISTRES
Registres généraux : pour diverses opérations, ex., stocker des résultats
intermédiaires, Accumulateur
Registres spécialisés : ne peuvent contenir qu'un type bien précis de données.
comme les registres d’index, registres des opérations arithmétiques à virgule
flottante, CO, PSW…etc
9
L'ACCUMULATEUR (ACC)
Registre utilisé pour la manipulation des données
en général, stocke les résultats des opérations arithmétiques et logiques ;
10
LE COMPTEUR ORDINAL (« PROGRAM COUNTER » CO OU PC)
C’est un registre d’adresses.
Situé dans l’unité de contrôle
Contient l’adresse de la prochaine instruction à exécuter.
Incrémenté après l’exécution de chaque instruction.
Initialisé à zéro ou « reset » au début.
remarque: Les instructions de saut et d’appel au sous-programmes permettent
11
de modifier le contenu du CO pour le faire pointer à une adresse précise
LE REGISTRE D'INSTRUCTION (« INSTRUCTION REGISTER »
RI OU IR)
C’est un registre de données
Situé dans l’unité de contrôle
qui stocke l'instruction en cours d'exécution
12
LA MÉMOIRE
13
DÉFINITIONS
Un ordinateur a deux caractéristiques essentielles :
la vitesse à laquelle il peut traiter un grand nombre d’information et
la capacité de mémoriser ces informations.
On appelle « mémoire » tout dispositif capable de contenir (enregistrer), de
conserver(mémoriser) et de restituer(possibilité de la lire ou la récupérer par la
suite) sans les modifier de grandes quantités d’information (instructions et données).
On classe les mémoires selon :
Caractéristiques : capacité, débit ...
Type d'accès : séquentiel, direct ... 14
DÉFINITIONS
Organisation de l’information
Unité de base : bit
Le plus petit élément de stockage
Octet (ou byte ) : groupe de 8 bits
Le caractère (7, 8 ou 16 bits)
Codage selon un standard (ASCII, Unicode ...)
Mot : groupement d'octets (8, 16, 32, 64 ...)
Unité d'information adressable en mémoire
Enregistrement : bloc de donnée 15
Fichier : ensemble d'enregistrements
TYPES DE MÉMOIRE
Il existe deux types de mémoire dans un système informatique :
La mémoire interne (centrale ou principale) : qui est très rapide,
physiquement peu encombrante mais coûteuse, c’est la mémoire de
«travail» de l’ordinateur,
La mémoire de masse (secondaire ou mémoire auxiliaire) : qui est plus
lente, assez encombrante physiquement, mais meilleur marché, c’est la
mémoire de «sauvegarde» des informations. 16
CARACTÉRISTIQUES D’UNE MÉMOIRE
1. La capacité :
le nombre total de bits que contient la mémoire .
La capacité peut s’exprimer en:
Bit,Octet,Kilo-octet (Ko), Méga-octet (Mo),Giga-octet (Go),Téra-octet (To), Péta-
octet (Po), Exa-octet (Eo), Zetta-octet (Zo), 1 Yotta-octet (Yo)
17
20/10/2024 18
CARACTÉRISTIQUES D’UNE MÉMOIRE
2. Le format des données : le nombre de bits que l’on peut mémoriser par case
mémoire (largeur du mot mémorisable).
3. Voir Diapo 24
19
CARACTÉRISTIQUES D’UNE MÉMOIRE
3. Mode d’accès à l’information
Sur une mémoire on peut effectuer une opération de :
Lecture : récupérer / restituer une information à partir de la mémoire.
Écriture : enregistrer une nouvelle information ou modifier une information
déjà existante dans la mémoire.
Il existe des mémoires qui offrent les deux modes lecture/écriture, ces mémoires
s’appellent mémoires vives.
Il existe des mémoires qui offrent uniquement la possibilité de la lecture (ce n’est
pas possible de modifier le contenu). Ces mémoires s’appelles mémoires mortes. 20
CARACTÉRISTIQUES D’UNE MÉMOIRE
4. Le temps d’accès :
le temps qui s'écoule entre l'instant où a été lancée une opération de lecture ou d’écriture en
mémoire et l'instant où la première information est disponible sur le bus de données.
Par exemple pour l’opération de lecture, le temps d’accès est le temps qui sépare la demande
de la lecture de la disponibilité de l’information.
Le temps d’accès est un critère important pour déterminer les performances d’une mémoire
ainsi que les performances d’une machine.
5. Le temps de cycle : l'intervalle minimum qui doit séparer deux demandes successives de
lecture ou d'écriture.
Cycle > temps d'accès
Car besoin d'opérations supplémentaires entre 2 accès (stabilisation des signaux,
21
synchronisation ...)
CARACTÉRISTIQUES D’UNE MÉMOIRE
22
CARACTÉRISTIQUES D’UNE MÉMOIRE
6. Le débit : le nombre maximum d'information lues ou écrites par seconde.
7. Volatilité :Si une mémoire perd son contenu (les informations) lorsque la source
d’alimentation est coupée alors la mémoire est dite volatile.
Si une mémoire ne perd pas (conserve) son contenu lorsque la sources
d’alimentation est coupée alors la mémoire est dite non volatile (mémoire
permanente ou stable).
23
ORGANISATION D’UNE MÉMOIRE
Une mémoire peut être représentée comme une
armoire de rangement constituée de différents
tiroirs.
Chaque tiroir représente alors une case mémoire
qui peut contenir un seul élément : des données.
Le nombre de cases mémoires pouvant être très Mots
élevé, il est alors nécessaire de pouvoir les
identifier par un numéro. Ce numéro est appelé
adresse.
Chaque donnée devient alors accessible grâce à son
adresse 24
ORGANISATION D’UNE MÉMOIRE
Avec une adresse de n bits il est possible de référencer au plus 2n cases mémoire.
Chaque case est remplie par un mot de données (sa longueur m est toujours une
puissance de 2).
Le nombre de fils d’adresses d’un boîtier mémoire définit donc le nombre de cases
mémoire que comprend le boîtier.
Le nombre de fils de données définit la taille des données que l’on peut sauvegarder
dans chaque case mémoire.
25
ORGANISATION D’UNE MÉMOIRE
Capacité (en bits) = 2nombre de lignes d’adresses x nombre de lignes de données
Nombre de Mots = Capacité / taille du mot
Nombre de mots = 2nombre de lignes d’adresse
Et Taille du mot (en bits) = nombre lignes de données
26
ORGANISATION D’UNE MÉMOIRE
Une mémoire communique avec les autres composants de
l’ordinateur à travers :
Les entrées d’adresses
Les entrées de données
Les sorties de données
Les entrées de commandes : CS et R / W .
Une entrée de sélection de lecture ou d’écriture (R/W) 27
Une entrée de sélection du circuit (CS)
ORGANISATION D’UNE MÉMOIRE
La ligne CS valide ou non la mémoire. (CS pour Chip Select).
Si CS = 0 : la mémoire est validée et fonctionne correctement.
Si CS = 1: la mémoire est invalidée, elle ne répond pas aux adresses et aux
opérations de lecture et d’écriture.
La ligne R / W (R pour read et W pour write) précise quelle opération de
mémorisation à effectuer :
Si R / W = 1: c’est une opération de lecture.
Si R / W = 0: c’est une opération d’écriture. 28
ORGANISATION D’UNE MÉMOIRE
Une opération de lecture ou d’écriture de la mémoire suit toujours le même cycle :
1. Sélection de l’adresse
ഥ )
2. Choix de l’opération à effectuer (R/𝐖
3. Sélection de la mémoire (𝐂𝐒 = 0)
4. Lecture ou écriture de la donnée
29
CLASSIFICATION DES MÉMOIRES
Les mémoires peuvent être classées en trois catégories selon la technologie utilisée :
Mémoire à semi-conducteur (mémoire centrale (RAM), ROM, PROM,…..) : très
rapide mais de taille réduite.
Mémoire magnétique (disque dur, disquette,…) : moins rapide mais stocke un
volume d’informations très grand.
Mémoire optique (DVD, CDROM,..)
30
TYPES D’ACCÈS À LA MÉMOIRE
Le type d’accès est la façon dont on accède à une information :
Accès séquentiel : c’est l’accès le plus lent, car pour accéder à une information particulière, on est obligé de
parcourir toutes celles qui la précèdent (par exemple les bandes magnétiques).
Accès direct : les informations ont une adresse propre, ce qui permet d’y avoir accès directement (par
exemple la mémoire centrale, les registres).
Accès semi-séquentiel : c’est une combinaison des accès direct et séquentiel (par exemple pour les disques
magnétiques, l’accès au cylindre est direct et l’accès au secteur est séquentiel).
Accès par le contenu (mémoire associative) : les informations sont identifiées par une clé et la recherche
s’effectue sur cette clé de façon simultanée sur toutes les positions de la mémoire (par exemple
l’antémémoire ou mémoire cache). 20/10/2024 31
LA MÉMOIRE INTERNE
32
LA MÉMOIRE INTERNE (CENTRALE OU PRINCIPALE)
La mémoire centrale (MC) représente l’espace de travail de l’ordinateur .
C’est l’organe principal de rangement des informations utilisées par le processeur.
Dans une machine (ordinateur / calculateur) pour exécuter un programme, il faut le
charger (copier) dans la mémoire centrale.
Le temps d’accès à la mémoire centrale et sa capacité sont deux éléments qui
influent sur le temps d’exécution d’un programme (performance d’une machine).
33
LA MÉMOIRE INTERNE (CENTRALE OU PRINCIPALE)
Les mémoires composant la mémoire principale sont des mémoires à base de
semi-conducteurs,
Elles sont de deux types : volatiles ou non.
34
LA MÉMOIRE INTERNE
35
Différents types de mémoire à semi-conducteurs
LA MÉMOIRE INTERNE (RAM)
Les mémoire vives (RAM)
Une mémoire vive (interne) sert au stockage temporaire des données.
Elle doit avoir un temps de cycle très court pour ne pas ralentir le microprocesseur.
Les mémoires vives sont, en général, volatiles : elles perdent leurs informations en cas de coupure
d'alimentation.
Il existe deux grandes familles de mémoires RAM (Random Acces Memory = mémoire à accès
aléatoire) : Statiques et Dynamiques
36
LA MÉMOIRE INTERNE (RAM)- SRAM
Les RAM Statique (SRAM)
Dans la mémoire vive statique ou SRAM (Static Random Access Memory), bit
mémoire est constituée par une bascule de transistors. Chaque bascule contient entre
4 et 6 transistors.
Dans la mesure où ce rafraichissement a un coût en temps, cela explique pourquoi ce
type de mémoire est très rapide, entre 6 et 15 ns, mais assez chère.
On utilisera donc essentiellement pour des mémoires de faible capacité comme dans la
37
mémoire cache pour les microprocesseurs.
LA MÉMOIRE INTERNE (RAM)- SRAM
38
LA MÉMOIRE INTERNE (RAM)- DRAM
Les RAM dynamique (DRAM)
Dans la mémoire vive dynamique ou DRAM (Dynamic Random Access Memory) ;
la cellule de base est constituée par un condensateur et un transistor.
L’information est mémorisée sous la forme d'une charge électrique stockée dans
un condensateur
Avec les DRAM, les informations stockées sont rapidement perdues même
lorsque la tension de fonctionnement est maintenue, d’où le nom « dynamique ».
39
LA MÉMOIRE INTERNE (RAM)- DRAM
40
LA MÉMOIRE INTERNE (RAM)- SRAM
Il y a aussi:
SDRAM = (Synchrone DRAM ) est une mémoire dynamique DRAM qui fonctionne à la
vitesse du bus mémoire, elle est synchrone avec le processeur. Ne pas confondre SRAM et
SDRAM car une SRAM est une mémoire statique (SRAM = Statique RAM).
DDR SDRAM = C'est une SDRAM à double taux de transfert pour deux fois de
cycle d'horloge au lieu d'une seule fois. Le sigle DDR signifie Double Data Rate.
41
VRAM [Video RAM] : La RAM vidéo ou VRAM (Video Random Acces Memory). Elle
est généralement présente sur des cartes vidéo dédiées ou aussi appelé carte-graphiques.
LA MÉMOIRE INTERNE (RAM)- VRAM
42
LA MÉMOIRE INTERNE (RAM)
Modules mémoire DIMM (RAM) [Dual In-line Memory Module]:
groupe de puces RAM fonctionnant en 64 bits. utilisé sur les
ordinateurs depuis l’abandon progressif du format SIMM
Modules SIMM [Single In-line Memory Module] : idem à DIMM
mais en 32 bits.
Un module DIMM peut faire le travail de deux modules SIMM
Les performances des mémoires s'améliorent régulièrement, le
secteur d'activité est très innovant,
on retient que les mémoires les plus rapides sont les plus chères
et que pour les comparer en ce domaine, il faut utiliser un 43
indicateur qui se nomme le cycle mémoire.
LA MÉMOIRE INTERNE (ROM)
Les mémoire mortes (ROM)
Les mémoires mortes ou mémoires à lecture seule (ROM : Read Only Memory) sont non
volatiles.
Ces mémoires, contrairement aux RAM, ne peuvent être que lues.
Les mémoires mortes sont utilisées, pour stocker :
Les informations nécessaire au démarrage d’un ordinateur (BIOS, instructions de
démarrage, microcode)
des tables de constantes ou des tables de facteurs de conversion ;
des microprogrammes présents dans les ordinateurs et la plupart des appareils
44
électroniques (smartphone, baladeur et autres lecteurs de CD/DVD) mais aussi la
plupart des appareils programmables (TV, réveil, machine à laver, lave-vaisselle, etc.).
LA MÉMOIRE INTERNE (ROM)
Suivant le type de ROM, la méthode de programmation change. Il
existe donc plusieurs types de ROM :
ROM : Elle est programmée par le fabricant et son contenu ne peut
plus être ni modifié, ni effacé par l'utilisateur.
PROM : C’est une ROM qui peut être programmée une seule fois
par l'utilisateur (Programmable ROM). La programmation est réalisée
à l'aide d'un graveur spécifique. Une fois écrite, il est impossible d'en
45
modifier le contenu.
LA MÉMOIRE INTERNE (ROM)
EPROM: est effaçable. On efface ces mémoires en les laissant 10 à 20
minutes sous des rayons ultraviolets. Le composant possède une petite
fenêtre qui permet le passage des UV. Une fois effacée, l'EPROM peut
être reprogrammée.
EEPROM : pour (Electically EPROM) est une mémoire programmable
et effaçable électriquement. Elle répond ainsi à l’inconvénient principal
de l’EPROM et peut donc être effacée sans être retirée de son 46
support.
Mémoire Flash :
est un compromis entre les mémoires de type RAM et les
mémoires mortes.
En effet, la mémoire Flash possède la non-volatilité des mémoires
mortes tout en pouvant facilement être accessible en lecture ou en
écriture.
En contrepartie les temps d'accès des mémoires flash sont plus
47
importants que ceux de la mémoire vive
LA MÉMOIRE INTERNE (DIFFÉRENCE RAM-ROM)
Il existe une différence majeure entre ROM (Read-Only Memory) et RAM (Random-Access
Memory) :
La ROM peut contenir des données sans alimentation et la RAM ne le peut pas.
La ROM est essentiellement destinée au stockage permanent, tandis que la RAM est destinée au
stockage temporaire.
Le temps d’accès à la mémoire morte est de l’ordre de grandeur de 150 nanosecondes
comparativement à un temps d’accès d’environ 10 nanosecondes pour la mémoire vive.
Pour accélérer le traitement des informations, les données stockées dans la mémoire morte sont
généralement copiées dans une mémoire vive avant d’être traitées. 48
STRUCTURE PHYSIQUE D’UNE MÉMOIRE CENTRALE
49
STRUCTURE PHYSIQUE D’UNE MÉMOIRE CENTRALE
RAM (Registre d’Adresse Mémoire) : ce registre
stocke l’adresse du mot à lire ou à écrire.
RIM (Registre d’Information Mémoire) : stocke
l’information lu à partir de la mémoire ou l’information
à écrire dans la mémoire.
Décodeur : permet de sélectionner un mot mémoire.
R/W : commande de lecture/écriture, cette commande
permet de lire ou d’écrire dans la mémoire (si R/W=1
alors lecture sinon écriture)
Bus d’adresses de taille k bits Exemple de structure physique d’une mémoire 50
Bus de données de taille n bits
STRUCTURE PHYSIQUE D’UNE MÉMOIRE CENTRALE
1. Sélection un mot mémoire
Lorsqu’une adresse est chargée dans le
registre RAM, le décodeur va recevoir la
même information que celle du RAM.
A la sortie du décodeur nous allons avoir une
seule sortie qui est active Cette sortie va
nous permettre de sélectionner un seul mot
mémoire. Exemple de structure physique d’une mémoire 51
52
STRUCTURE PHYSIQUE D’UNE MÉMOIRE CENTRALE
2. Lecture et écriture de l’information
Comment lire une information ?
Charger dans le registre RAM l’adresse du mot à lire.
Lancer la commande de lecture (R/W=1)
L’information est disponible dans le registre RIM au bout d’un
certain temps (temps d’accès)
Comment écrire une information ?
Charger dans le RAM l’adresse du mot ou se fera l’écriture.
Placer dans le RIM l’information à écrire.
53
Lancer la commande d’écriture pour transférer le contenu du
RIM dans la mémoire.
EXERCICE
Dans une mémoire la taille du bus d’adresses K=14 et la taille du bus de données
n=4.
Calculer la capacité de cette mémoire ?
54