Vous êtes sur la page 1sur 8

LES MÉMOIRES

I. GÉNÉRALITÉS ET DÉFINITIONS
Une mémoire est un dispositif capable d’enregistrer, de conserver, et de
restituer les informations dans un ordinateur. Sa technologie peut être à semi-
conducteur, magnétique ou optique.

Les éléments de la mémoire de l’ordinateur se répartissent sur plusieurs


niveaux.

1. Hiérarchie des mémoires

La coordination des éléments de la mémoire est fonction des critères


comme : le temps d’accès, la capacité, le coût par bit. Plus on s’éloigne du CPU,
plus les deux premiers critères augmentent, et le coût diminue.

- Les registres situés dans l’UCT sont à accès rapide. Ils servent au
stockage des opérandes et des résultats intermédiaires.
- L’antémémoire (ou mémoire cache), rapide et de faible capacité, est une
mémoire tampon entre l’UCT et la MC
- La mémoire centrale (MC) est l’organe principal de stockage des
informations utilisées par le CPU. Elle est à semi-conducteurs.
- La mémoire d’appui sert d’intermédiaire à la MC et à la mémoire auxiliaire
(de masse). Elle augmente la vitesse d’échange des informations entre les
deux niveaux. (La mémoire d’appui n’existe que dans les super-
ordinateurs, pas dans les PC)

- Les mémoires auxiliaires (ou de masse) sont les mémoires d’archivage de


manière permanente. Ce sont des mémoires périphériques. Elles sont à
grande capacité et de faible coût. Elles utilisent le support magnétique
(disques et bandes), le support optique (DVD, CD) et sont aussi à semi-
conducteurs (clés USB)

Cette hiérarchie est donnée par le schéma suivant :

Hiérarchie mémoire

La hiérarchie mémoire fonctionne grâce au principe de localité 

- Localité temporelle : plus un mot mémoire a été accédé récemment, plus il est
probable qu'il soit ré-accédé à nouveau,
- Localité spatiale : plus un mot mémoire est proche du dernier mot mémoire
accédé, plus il est probable qu'il soit accédé.

Les mémoires caches tirent parti de ce principe pour sauvegarder les


informations les plus récemment accédées, en cas de ré-accès.
2. Caractéristiques des mémoires

Les deux caractéristiques principales d’un mémoire sont la vitesse à laquelle elle
traite les informations, et sa capacité à les stocker. On a entre autres :

- Adresse : valeur numérique désignant un élément physique de mémoire.


- Le format des données : c’est le nombre de bits que l’on peut mémoriser
par case mémoire. On dit aussi largeur du mot mémorisable (mémoire
32/64bits) : Il est une caractéristique importante de l’architecture d’un
ordinateur et reflète la structure des différents composants
fonctionnels (μp, os).
- Capacité : nombre d’informations en bits qu’une mémoire peut contenir.
- Temps d’accès : temps entre le lancement d’une opération en mémoire et
son accomplissement.
- Cycle mémoire : temps minimum entre deux accès mémoire successifs.
- Débit : nombre maximum d’informations lues ou écrites par seconde.
- Volatilité : caractérisée par la permanence des informations dans une
mémoire. L’information stockée est volatile si elle est altérée par un
défaut d’alimentation.

Remarque : Dans un registre à n positions et pour une base b, on ne peut représenter que
les entiers naturels N tels que : 0 ≤ N ≤ bn - 1 ; on parle alors d’un registre de largeur n et
ln c
de capacité c = bn – 1. Lorsque n est grand, on a c ≈ bn et n = logb c = . C’est le nombre
ln b
d’entiers représentables dans le registre.
Exemple :
1. Dans un registre de largeur 64 bits, combien d’entiers naturels peut-on représenter,
et quelle est le plus grand de ces nombres ?
Réponse : 264 entiers et le plus grand 264 – 1 ≈ 264

2. Quel est le plus grand entier naturel représentable sur 4 positions en hexadécimal
avec 4 digits ? Donnez sa représentation, et celle de l’entier qui le précède ?
Réponse : 164 – 1 = (65535)10 de représentation FFFF ; prédécesseur : FFFE

3. Quelle est la largeur en bits d’un registre dans lequel on peut représenter l’ensemble
des 1, 844674407 x 1019 premiers entiers naturels ?
Réponse : C = 2n ⟹ n = log2 C  d’où n = 64.

La largeur du registre est fixée à la construction de la machine, et lorsqu’un nombre


dépasse cette capacité, il y a dépassement de capacité ou débordement
(overflow) et un indicateur d’état (OF : Overfow flag) est mis à 1.
3. Organisation de la mémoire

Une mémoire peut être considérée comme une armoire de rangement à tiroirs
numérotés en binaire. Chaque tiroir représentant une case mémoire ne pouvant
contenir qu’une seule information. Chaque numéro est appelée adresse. Chaque
information stockée est donc accessible par son adresse. Une mémoire est donc
divisée physiquement en cellules et chaque cellule correspond à un mot-mémoire
dont la taille correspond au format des données de la mémoire.

Exemple : mémoire 16 bits de capacité 128 bits.

adresse case mémoire


111 = 7
110 = 6
101 = 5
100 = 4
011 = 3
010 = 2 0100 1101 1100 1111
001 = 1
000 = 0

Avec n bits on peut adresser ou référencer 2n cellules mémoire. La taille m


de chaque cellule est une puissance de 2.

La structure physique de la mémoire centrale


Dans la pratique, un élément de mémoire est une puce. Pour réaliser
une mémoire centrale, il faut un grand nombre de puces que l’on répartit sur
des circuits imprimés ce qui constitue des cartes dont l’ensemble forme la
mémoire centrale. Un mot-mémoire peut être composé de plusieurs manières,
qui sont :
- 1 bit/carte : le mot mémoire est composé par les bits ayant la même
adresse sur les cartes, l’adresse se compose du numéro de la puce et de
l’adresse à l’intérieur de cette puce.
- 1 bit/puce : le mot mémoire est composé par les bits ayant la même
adresse dans les différentes puces.
- Plusieurs bits/puce : un mot mémoire est composé par plusieurs bits
d’une même puce.

Note :
Ces différentes structures n’influent ni sur la capacité de la
mémoire, ni sur la longueur des adresses ; mais plutôt sur la répartition des
bits d’adresse, car ces bits servent à adresser les cartes, les puces, et les
bits à l’intérieur des puces.

Ces structures montrent que la MC a une capacité limitée, due à la longueur


des adresses.

4. Différents types d’accès mémoire

 Accès séquentiel :
Pour accéder à une information, on passe par les précédentes.
 Accès direct
Chaque information a une adresse propre, par laquelle on peut l’atteindre
(exemple : mémoire centrale)
 Accès semi-séquentiel

Combinaison direct-séquentiel (exemple : HDD, l’accès au cylindre est direct


et l’accès au secteur est séquentiel.)

 Accès par le contenu (mémoire associative)


L’information est identifiée par une clé, et la recherche est à base de celle-
ci, simultanément sur toutes les positions de la mémoire (exemple : mémoire
cache)

II. LES DIFFÉRENTS TYPES DE MÉMOIRES


(à semi-conducteurs)
Le principe de base de ces mémoires utilise des bistables comme point mémoire.

1. Les mémoires vives (RAM)

Une mémoire vive est une mémoire volatile servant au stockage temporaire
de données. L’adjonction d’une pile peut la rendre non volatile. Il existe des RAM
statiques(SRAM) et des RAM dynamiques. Elles utilisent la technologie des semi-
conducteurs.

Le bit mémoire d’une RAM statique (SRAM) est composé d’une bascule à 4 ou 6
transistors contre un transistor pour la DRAM. En effet la RAM dynamique
mémorise une information sous forme d’une charge électrique stockée dans un
condensateur, couplé au substrat d’un MOS. L’inconvénient de cette dernière est la
présence du courant de fuite dans le condensateur, qui contribue à sa décharge
progressive et à la perte de l’information si on ne la régénère pas périodiquement
(la charge) : C’est le rafraîchissement (à peu près 18,2 fois par seconde).

Les SRAM sont utilisées pour la mémoire cache et les registres, alors que les
DRAM sont utilisées pour la MC.

Remarques:
- Les RAM dynamiques synchrones sont des DRAM synchronisées à une
horloge, ce sont :
Les SDRAM (synchronous DRAM), les DDR-SDRAM (Double Data Rate Synchronous
DRAM) permettent le transfert des données lors du front montant et du front
descendant, les RAMBUS, les VCM-RAM (Virtual Channel Memory-RAM).
- Les RAM dynamiques asynchrones sont les FPM et les EDO.

2. Les mémoires mortes (ROM)


Elles permettent de conserver des informations de façon permanente (même
en l’absence de l’alimentation). Contrairement aux RAM, elles sont uniquement lues,
les opérations d’écritures étant soit impossible, soit possible sous des
conditions particulières. Elles sont à base de différentes technologies :
magnétique(HDD) ; optique (CD, DVD), à semi-conducteurs (flash drive, SD).
Une mémoire ROM (Read Only Memory) est programmée par le fabricant ; en
technologie MOS (unipolaire) ou bipolaire. Elle est utilisée dans la conversion des
codes, le stockage de certains programmes système, le codage du clavier, la
microprogrammation.

Une mémoire PROM (Programmable Read-Only Memory) est une ROM


programmable une seule fois par l’utilisateur et de manière irréversible ; Elle est en
technologie MOS ou bipolaire. L’écriture s’y fait par stockage de charges ou par
claquage de jonctions.
Une EPROM (Erasable Programmable Read-Only Memory) encore appelée
REPROM (REProgrammable…) est une PROM effaçable plusieurs fois. L’effacement
se fait par exposition aux UV. Elle est utilisée lors de la mise au point de
programmes.
Une EEPROM (Electrically-Erasable Programmable Read-Only Memory) , ou
EAPROM (Eletrically Alterable ROM) ou encore EEROM (Electrically Erasable
ROM) suit le même principe que l’EPROM, reprogrammable par l’utilisateur,
l’effacement qui est mëme sélectif se fait électriquement ; c’est aussi le cas de la
Flash EPROM (Les clés USB et cartes mémoires par exemple).

Remarques :
On peut donc classer les mémoires suivant plusieurs critères : types d’accès ;
volatilité ; technologie.
L’adjonction d’une petite pile à une RAM rend cette dernière non volatile :
c’est le cas de la ROM BIOS  qui contient le programme d’amorce d’un système :
Le programme de chargement est contenu dans une mémoire flash et les
paramètres du système (type de disque, …) dans une NVRAM (Non Volatile RAM)
alimenté par une batterie au lithium (pile CMOS).

III. Problème dû la différence de vitesse entre le CPU et la MC.

Le cycle CPU étant normalement beaucoup plus court que le cycle mémoire, on
arrive à des problèmes d’attente du CPU sur la MC, ce qui diminue le rendement de
l’ordinateur. Les dispositifs permettent de pallier cette situation : La mémoire
cache et la mémoire entrelacée (memory interleaving), la mémoire synchrone :
 La mémoire entrelacée est un dispositif qui consiste à diviser la mémoire
centrale en blocs indépendants possédant chacun leurs propres registres
d’adresse et de mot. Ainsi le CPU peut lancer des opérations d’accès en
mémoire sans attendre la fin du cycle précédent à condition de le faire dans
un block différent. L’entrelacement consiste à placer des mots situés à des
adresses successives dans des blocs différents. On gagne ainsi du temps par
recouvrement des cycles mémoire.
 La mémoire synchrone permet également au CPU d’engager des accès
consécutifs même si l’accès précédent n’est pas achevé.
 La mémoire cache ou antémémoire, très rapide, située entre le processeur et
la mémoire centrale, contient les informations dont le processeur a besoin
régulièrement. Elle n’est pas accessible par adresse comme la MC, elle est
plutôt associative ; les informations y sont adressables par le contenu.
Chaque cellule d’une mémoire associative a deux champs correspondant à la
clé et à l’information qui lui est associée. Pour la cache la clé est l’adresse en
MC de l’instruction ou de la donnée et l’information associée est l’instruction
ou la donnée elle-même.
NB : La recherche par clé dans une mémoire associative n’est pas séquentielle,
mais elle se fait plutôt en parallèle sur toutes les cases de la mémoire : En un
accès on sait si l’information cherchée se trouve ou non dans la cache.
Exemple : adress information
e
Adresse 0011 1011 Information à cette adresse

0000 1010
0000 1001
Mémoire centrale

Clé Information associée


USA Dallas
Mémoire
Clé cacheInformation associée à la
Australia Sydney
clé Australia : Sydney
Cameroo Bandjoun
novembre n 2016
revisé en Nov 2020
UK Cardiff

Dpl Ing. David kamga

Vous aimerez peut-être aussi