0% ont trouvé ce document utile (0 vote)
95 vues45 pages

Types et fonctionnement de la mémoire

Transféré par

Mouad Taifour
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
95 vues45 pages

Types et fonctionnement de la mémoire

Transféré par

Mouad Taifour
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Architecture des ordinateurs

Chapitre 2

La mémoire

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 42


La mémoire
Généralités
 Au moment du démarrage de l’ordinateur, un programme préenregistré dans
une mémoire spécialisée (La mémoire ROM) s’exécute. Il charge dans La
mémoire centrale le noyau du système d’exploitation à partir du disque
magnétique.
 Le programme et les données sont enregistrés dans La mémoire centrale (La
mémoire RAM) pour être exécutés par le processeur.
 Lors de l’exécution d’une instruction, le processeur utilise des registres, qui
sont également des zones de stockage de l’information.
 Lors de l’exécution d’une instruction par le processeur, il peut passer des
cycles d’horloge sans avoir d’activité : il attend la réponse de La mémoire à
une demande de lecture.
Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 43
La mémoire
Définition et terminologie
 Dispositif pour stocker et restituer une information sous forme binaire

 Capacité : nombre d’octets ou de mots ou de bits (registres)


 Bit, Octet (8 bits), KO (1024 = 210 octets), MO (210 KO= 220 octets),
GO (210 MO= 230 octets), To (210 GO= 240 octets)

 Temps d’accès (temps de latence) : lecture ou écriture


 Instant où les données sont disponibles - instant où l’adresse est fournie

 Temps de cycle : temps d’accès + temps nécessaire avant un 2eme accès

 Volatilité : conservation ou non des données en cas de coupure


d’alimentation
Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 44
La mémoire
Types de mémoires
 Selon la possibilité de lecture/écriture
 Mémoires vives : RAM à lecture/écriture, Volatiles
• SRAM (+rapide) et DRAM (-coûteuse)
 Mémoires mortes : ROM à lecture seule, non volatiles
• ROM, PROM à fusibles, EPROM, EEPROM, Flash
 Selon la technologie utilisée
 Mémoire à semi-conducteur (RAM, ROM, PROM…)
 Mémoires magnétiques (disque dur, disquettes…)
 Mémoires optiques (CD, DVD…)
 Selon l’emplacement
 Mémoires intégrées au processeur (Registres)
 Mémoires internes (Mémoire principale)
 Mémoires externes (Mémoire secondaire ).

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 45


La mémoire
Mémoires de travail
Les mémoires vives

RAM (Random Access Memory) :

 Le temps d’accès est indépendant de la place de


l’information,
 Volatiles : risque de perte d’informations,

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 46


La mémoire
Mémoires de travail
Les mémoires vives
Liaison processeur – mémoire

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 47


La mémoire
Mémoires de travail
ROM : Permet un stockage permanent
Read Only Memory. L’information stockée dans ces mémoires l’est de manière définitive.
Prix de revient élevé, réservé aux grandes séries.

PROM: Permet une écriture unique mais faite par l’utilisateur.


Programmable ROM. Ces mémoires comprennent un ensemble de fusibles qui sont détruits
lors de la programmation de La mémoire.
Mémoires
mortes EPROM: Elles peuvent être effacées une fois écrites au moyen d’un faisceau
PROM effaçable. ultraviolet qui force tous les bits à une même valeur.

EEPROM:
Electrically EPROM. Elles sont effaçables électriquement.

C’est une mémoire de type EEPROM qui se reprogramme


Flash: électriquement par bloc de 64 Ko de manière assez rapide (Flash).
Son cycle de vie est limité (100 000 écriture).

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 48


La mémoire
Mémoires de Stockage
Disque magnétique :
Organisation générale

Densité d’enregistrement (Bits/cm)


Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 49
La mémoire
Mémoires de Stockage
Disque magnétique :
Adresse d’une donnée

 L’adresse d’une information est un triplet :


• N de cylindre,
• N de bras,
• N de secteur.
C’est le système d’exploitation au travers du système de
gestion des fichiers (SGF) qui gèrent les adresses physiques
des informations stockées.

Temps d’accès à une information


 Positionner le bon bras sur le bon cylindre : temps de déplacement du bras (tb)
 Trouver le bon secteur : temps de positionnement de la tête (tt)
 Lire/écrire le contenu du secteur : temps de lecture/écriture (débit) (td)
Temps d’accès à une information : tb + tt + td  10ms
Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 50
La mémoire
La mémoire

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 51


La mémoire
Mémoire principale (MP)
 Contient les informations utilisées par le processeur lors de l’exécution

 Sa capacité et son temps d’accès ont un impact sur la performance de la


machine

 Est une mémoire à semi-conducteurs pour un accès rapide

 Communique au moyen des bus d’adresses et de données

 Constituée de mots possédant chacun une adresse unique


 Taille des adresses dépend de la capacité de La mémoire

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 52


La mémoire
Structure physique d’une MP
 RAM : Registre d’Adresse Mémoire
 CS : boîtier sélectionné si 0
 R/W : Commande de lecture/écriture
 Décodeur : sélectionne un mot

 Capacité = 2k Mots = 2k * n Bits

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 53


La mémoire
Conception des MP
 Pb : Comment réaliser une mémoire à partir de boîtiers de petite taille?
 Mémoire M de capacité C et de m mots de n bits
 Boîtier M’ de capacité C’ et de m’ mots de n’ bits
 C > C’ ( m >= m’ , n >=n’)

 Nombre de boîtiers nécessaires : P.Q


 P =m/m’ (facteur d’extension lignes)
 Q=n/n’ (facteur d’extension colonnes)

 K bits de poids forts d’adresses pour sélectionner Q boîtiers (2k=P), le reste


pour sélectionner un mot
Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 54
La mémoire
Conception des MP
 Exemple 1:

 Réaliser une mémoire de 1Ko (un mot est de 8 bits) en utilisant des
boîtiers de taille 256 mots de 8 bits
 Solution :
• m=1024  bus d’adresses de 10 bits ( )
• n=8  bus de données de 8 bits ( )
• m’=256  bus d’adresses de 8 bits ( )
• n’=8  bus de données de 8 bits ( )
• P= m/m’ =1024/256=4
• Q= n/n’ =8/8=1
• Nombre total de boîtiers : P.Q=4

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 55


La mémoire
Conception des MP
 Solution 1:

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 56


La mémoire
Conception des MP
 Exemple 2:

 Réaliser une mémoire de 1KO ( et de mots de 8 bits) en utilisant des


boîtiers de taille 256 mots de 4 bits
 Solution :
• m=1024  bus d’adresses de 10 bits ( )
• n=8  bus de données de 8 bits ( )
• m’=256  bus d’adresses de 8 bits ( )
• n’=4  bus de données de 4 bits ( )
• P= m/m’ =1024/256=4
• Q= n/n’ =8/4=2
• Nombre total de boîtiers : P.Q=8

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 57


La mémoire
Conception des MP
 Solution 2:

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 58


La mémoire
Mémoire multi-modules

 Pb : mémoire accessible par 1 seul processeur à la fois

 Solution : découper La mémoire en plusieurs modules

 Possibilité d’accès simultané aux différents modules par plusieurs bus

 Modules comprenant des mots d’adresses séquentielles

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 59


La mémoire
Adressage d’une mémoire modulaire
 Adresse divisée en 2 parties :
 K Bits de poids forts pour sélectionner un module tel que :
2k >= nombre de modules
 Bits de poids faibles pour sélectionner un mot dans un module

 Exemple : mémoire de 4 Ko et 4 modules et des boîtiers de 1 Ko


 Capacité = 4 Ko = 4* 210 = 212 o  bus d’adresses de 12bits
 2 bits du poids forts pour la sélection des modules ( )
 ( ) pour la sélection d’un mot

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 60


La mémoire
Conception des MP
 Exemple de mémoire à 4 modules:

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 61


La mémoire
Mémoire entrelacée
 Module mémoire accessible par 1 seul processeur à la fois (ex : accès à la
fois aux données consécutives):
 Solution :
 Diviser La mémoire en plusieurs blocs dotés de leurs propres registres d’adresses 
plusieurs accès simultané à La mémoire
 Placer les données consécutives dans des blocs différents
 Le nombre de blocs représente le degré d’entrelacement

 Adresse divisée en deux parties :


 K bits de poids faibles pour sélectionner le bloc (2k>=nombre de blocs)
 Bits de poids forts pour sélectionner le mot dans le bloc

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 62


La mémoire
Mémoire entrelacée
 Exemple 1:

 Mémoire entrelacée avec un degré d’entrelacement égale à 4, un


bloc est de taille de 4 mots de 4 bits
 Solution :
• 4 blocs et taille d’un bloc égale à 4 mots de 4 bits  taille de La mémoire =
16 mots de 4 bits
• 4 blocs  2 bits de poids faibles pour la sélection
• Les bits de poids forts ( ) pour sélectionner un mot dans un bloc

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 63


La mémoire
Mémoire modulaire entrelacée

 MP divisée en plusieurs modules


 Chaque module est divisé en n blocs
 Sélection de mots
 Bits de poids forts pour sélectionner le module
 Bits de poids faibles pour sélectionner le bloc dans le module
 Bits restants pour sélectionner le mot dans le bloc

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 64


La mémoire
Mémoire modulaire entrelacée
 Exemple :
 Mémoire de 64 mots de 8 bits organisée en 2 modules entrelacés (degré
d’entrelacement D=2). On utilise des boîtiers de 16 mots de 8 bits
• Taille du bus d’adresses k= 6 ( 64=26)  𝐴
• Nombre de modules m=2 , Taille d’un module=32 mots
• Nombre de bits pour sélectionner un module = 1 (A5)
• Nombre de blocs dans un module D=2
 Nombre de bits nécessaire pour sélectionner un bloc = 1 (A0)
• Taille d’un bloc = 16 mots  un boîtier suffit pour réaliser un bloc
• Nombre de bits nécessaire pour sélectionner un mot dans le bloc = 4 (𝐴 )

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 65


La mémoire
Mémoire modulaire entrelacée
 Solution :

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 66


La mémoire
Mémoire associative
 Mémoire adressable par le contenu pour une recherche plus
rapide
 Mémoire à accès aléatoire : information à partir d’une adresse

 Mémoire associative : fournir un descripteur (clé) et obtenir


l’information associée s’il existe

 Divisée en 2 parties M1 et M2
 M1 : mots comparés en parallèle au descripteur
 M2 : fournit l’information associée dans un registre A

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 67


La mémoire
Mémoire associative

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 68


La mémoire
Mémoire cache
 Le temps de transfert par le bus est un facteur de ralentissement.

 Plusieurs solutions peuvent être envisagées pour améliorer la vitesse d'accès :

 Augmenter la fréquence des mémoires, ce qui améliorerait la bande passante


(Limites technologiques);
 Augmenter la largeur du bus, (limité pas l’encombrement);
 Réduire les besoins en bande passante pour le processeur. C’est ce qui est fait avec
l’utilisation des mémoires cache (antémémoire).

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 69


La mémoire
Mémoire cache
Principe de fonctionnement
Les mots de mémoire centrale les plus fréquemment utilisés sont placés dans le cache.

Teff = h  Tc + (1 – h)  Tm
Teff : le temps effectif pour accéder à une information,
Si Tm/Tc = 10, une variation de 1% de h H : la probabilité de présence de l’information dans le cache,
entraîne une variation de 10 % de Teff. Tc : le temps d’accès au cache,
Tm : le temps d’accès à La mémoire centrale.

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 70


La mémoire
Mémoire cache
Principe de fonctionnement

Exemple:

 Lors d’une opération de lecture, c (contenu


de 022),
 Le processeur doit vérifier si «c» est dans le
cache:
• le comparateur vérifie si 020 est dans
le répertoire.
 Si c’est le cas la donnée est présente dans le cache.
 Sinon, le cache est chargé avec la ligne 020 et le répertoire est mis à jour.

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 71


La mémoire
Mémoire cache à correspondance directe
 Chaque ligne du cache est constituée de :
 Etiquette : N° de page et du bloc copié dans le cache
 Données : données des blocs copiés

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 72


La mémoire
Mémoire cache à correspondance directe
 Exemple

Supposons que le processeur exécute le


programme suivant :

1. Load D, R, 0215 ; à partir de Mémoire Cache MC


2. Load D, R, 0212 ;MC
3. Load D, R, 0114 ;MP et le bloc sera chargé à Index 1
4. Load D, R, 0225 ;MC
5. Load D, R, 0116 ;MC

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 73


La mémoire
Mémoire cache associative
 Mémoire (SRAM) découpée en blocs de même taille que celle des blocs de la
MP
 Constituée de :
 Mémoire d’étiquettes : N° de page et de blocs copiés dans le cache et leurs adresses
dans la MC
 Mémoire de données : données des blocs copiés
 Tout bloc de la MP est mappé indifféremment dans l’un des blocs de la MC
 N° de bloc comparé à tous les N° de blocs en MC
 Cache efficace mais complexe et volumineux

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 74


La mémoire
Mémoire cache associative
 Plus complexe et cher à construire.
 L’adresse est interprétée comme une
étiquette et un offset.
 Le contrôleur de cache vérifie en une
seule opération (c’est pourquoi il y a
autant de comparateurs que de lignes)

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 75


La mémoire
Mémoire cache associative par ensemble
 Approche hybride (mixte)

 Mémoire d’étiquettes contient le N° du bloc, le N° de page, l’emplacement


en MC et le déplacement

 MP et MC découpées en pages pas forcément de même taille

 Un bloc de la MP est mappé indifféremment dans l’un des blocs d’un


ensemble donné de la MC

 Réduire les comparaisons (comparer à un ensemble de N° de blocs)

 Peu efficace en cas d’accès à des blocs concurrents


Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 76
La mémoire
Mémoire cache associative par ensemble

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 77


La mémoire
Algorithmes de remplacement
 Aléatoire : le bloc le plus sollicité
 Très rapide, peu efficace

 FIFO : le plus ancien (la ligne remplacée est la ligne la plus anciennement chargée)
 Rapide, assez réaliste

 LRU (Least Recently Used) : La ligne remplacée est la ligne la moins récemment accédée
 Moins rapide, Performant (éviter de futurs défauts de cache), Gestion complexe

 NMRU (Not MostRecently Used) : la ligne remplacée n’est pas la plus


récemment utilisée (compteur)
 Problème : bloc moins utilisé = bloc prochainement demandé

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 78


La mémoire
Performances des caches
 Stratégie d’écriture
 Ecriture simultanée (Write Through), Pb : traffic mémoire important

 Ecriture différée ou réécriture (Write Back)


• Modifier uniquement le cache ; Positionner un bit d’état de modification
• En cas de remplacement, écrire dans MP si bit modifié=1
• Problème : modules d’E/S ou multiprocesseurs accédant à la MP invalide
 Solution : circuits complexes.

 Taille des blocs

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 79


La mémoire
Performances des caches
 Nature et niveaux de caches
 Caches multiniveaux : cache interne de niveau 1 et caches externes de
niveaux 2 et 3
• Cache interne (même puce que le processeur) : réduit le temps
d’exécution et améliore les performances du système

 Caches unifiés ou séparés : 1 cache interne unique ou 2 caches de données et


instructions
• Ex : caches séparés des processeurs superscalaires (Pentium ou PowerPC
favorisant l’exécution parallèle et le préchargement des instructions).
• Cache séparé : élimine les conflits entre l’unité de lecture/décodage
d’instructions et l’unité de traitement (ou d’exécution).

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 80


La mémoire
Mémoire virtuelle
 Pb : MP ne peut héberger plusieurs processus à la fois
 Idée : Utiliser le disque pour stockage partiel de page
Principe
 Une adresse virtuelle est le couple (numéro de
page, déplacement dans la page).
 Formée de zones de même taille (pages).
 Un mécanisme de traduction (MMU : Memory
Management Unit) assure la conversion :
@virtuelles  @physiques, (table des pages).
 L'adresse physique :
numéro de cadre, déplacement.
 les pages qui ne sont pas en mémoire sont stockées
sur un autre support (disque).

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 81


La mémoire
Mémoire virtuelle
Exemple:
existe en MP

Pages
@Physique

Fonctionnement de la MMU

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 82


La mémoire
Mémoire virtuelle
 Fonctionnement
 Double adressage : virtuel + réel

 Transformation d’adresses par la MMU (Memory Management Unit)


 MMU implanté actuellement dans la CPU  rapidité

 Si page en MP, MMU traduit l’adresse virtuelle en réelle (50 ns)

 Si défaut de page, le Système d’Exploitation recherche la page sur le


disque et la copie en MP (10 ms)

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 83


La mémoire
Mémoire virtuelle
 Traitement de défaut
 Suspendre l’exécution du processus en cours

 Générer une interruption de défaut de page


 Rapatrier la page demandée
 S’il faut remplacer une page, elle sera copiée sur le disque en cas de
modification

 Exécuter un autre processus pendant la lecture

 Générer une interruption de fin de lecture


 Mettre à jour la table et débloquer le processus initial
Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 84
La mémoire
Segmentation
 Découper un processus en segments

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 85


La mémoire
Segmentation et pagination
 Découper un processus en segments

Prof : A. El Magri AIAC - GI - Architecture des ordinateurs 86

Vous aimerez peut-être aussi