Académique Documents
Professionnel Documents
Culture Documents
LES MEMOIRES
Introduction
Le but de ce chapitre est de :
présenter les mémoires à semi-conducteur, en particulier les mémoires mortes, de façon à
comprendre leur fonctionnement et à les utiliser pour la réalisation de fonctions logiques.
constituer des blocs mémoires à partir des blocs mémoires élémentaires,
traiter le problème de décodage d’adresse dans les systèmes à microprocesseurs.
Architecture et Microprocesseur 1
Organisation de la mémoire
2. Bus d’adresse
Une mémoire contient plusieurs cases. Pour identifier chaque case, on lui attribue un numéro
appelé adresse. Cette adresse s’obtient par la combinaison binaire d’un ensemble de fils appelé
bus d’adresse.
Architecture et Microprocesseur 2
Lorsque l’on a une mémoire de n bits d’adresse :
n
sa capacité est C=2 cases
n
ses cases sont numérotées de 0 à 2 -1
son bus d’adresse est noté An-1…….A0
10
Lorsque C vaut 1024 cases soit 2 cases une mémoire de 1 kilo cases notée 1Kcases.
20
Lorsque C vaut 1024 Kilo cases 1024*1024 cases soit 2 cases une mémoire de 1 Méga cases
notée 1Mcases.
3. Bus de donnée
Pour mettre le contenu d’une case mémoire en relation avec l’extérieur, la mémoire dispose d’un
ensemble de fils appelé bus de donnée.
Architecture et Microprocesseur 3
Fonctionnement d’une mémoire
Architecture et Microprocesseur 4
2. Notion de lecture d’une mémoire
Lire une mémoire consiste à transférer sur son bus de donnée externe le contenu d’une case
mémoire dont le numéro est placé sur le bus d’adresse.
La mémoire dispose d’une entrée notée OE : Output Enable (autorisation de sortie des données).
Cette entrée permet de donner l’ordre de lecture.
Architecture et Microprocesseur 5
3. Notion d’écriture mémoire
Ecrire dans une mémoire, on dit aussi programmer une mémoire, consiste à transférer la donnée
présente sur le bus de données dans le contenu de la case mémoire dont le numéro est présenté sur
le bus d’adresse.
La mémoire dispose d’une entrée notée WR par laquelle on donne l’ordre d’écriture.
Si WR=0 alors l’écriture est possible si bien sur la mémoire est sélectionnée (CS=0).
Si WR=1 alors il n’y a pas d’écriture.
Architecture et Microprocesseur 6
Architecture et Microprocesseur 7
Architecture et Microprocesseur 8
Architecture et Microprocesseur 9
Types de mémoire à semi-conducteur
Architecture et Microprocesseur 10
Programmer une mémoire morte consiste à modifier son contenu (c’est une opération d’écriture).
Lorsqu’une mémoire n’est pas programmée, on dit qu’elle est vierge.
ROM (Read Only Memory) : elles sont programmables à la fabrication par le constructeur.
PROM (Programmable ROM) : elles sont programmables une seule fois par l’utilisateur.
EPROM (Erasable PROM) : elles sont programmables plusieurs fois et effaçables par
exposition aux ultraviolets à travers une fenêtre réservée à cet effet. L’effacement est global; il
consiste à remettre tous les bits de la mémoire dans leur état de virginité. La programmation
nécessite une tension élevée (~12,5V) par rapport à la tension d’alimentation.
Architecture et Microprocesseur 11
Flash EPROM (EPROM rapide en programmation) : elles sont programmables plusieurs fois et
effaçables électriquement. La différence avec les EPROM réside dans la séquence de
programmation et le mode d’effacement.
pour les EEPROM : leurs dénominations sont presque identiques à celle des EPROM, il suffit
de remplacer 27 par 28.
Architecture et Microprocesseur 12
Constitution de blocs mémoire :
Décodage d’adresse
Exemple : connexion de trois boitiers mémoire d’une capacité de 8 Ko chacun (13 lignes
d’adresses) sur un bus d’adresse de 16 bits.
Architecture et Microprocesseur 13
Dans un même boîtier, une case mémoire est désignée par les bits d’adresses A0 à A12 :
Pour atteindre la mémoire N°1 A13=1 et A14=A15 =0 la plage d’adresses occupée par cette
mémoire est donc :
Pour la mémoire N°2 A13= 0, A14= 1 et A15= 0 la plage d’adresses occupée cette mémoire :
Pour la mémoire N°3 A13= 0, A14= 0 et A15= 1 la plage d’adresses occupée cette mémoire :
Architecture et Microprocesseur 14
Les trois bits A13, A14 et A15 fournissent en fait 8 combinaisons, d’où la possibilité de connecter
jusqu’à 8 boîtiers mémoire de 8 Ko sur le bus. La mémoire totale implantée devient donc de 8 × 8 =
64 Ko : valeur maximale possible avec 16 bits d’adresses.
Pour cela, il faut utiliser un circuit de décodage d’adresses : un décodeur 3 vers 8.
Architecture et Microprocesseur 15
Table de vérité du décodeur d’adresses :
Le mapping de la mémoire :
Architecture et Microprocesseur 16
Hiérarchie mémoire
L’ordinateur contient différents niveaux de mémoire, organisés selon une hiérarchie mémoire.
Mémoires de stockage :
Mémoires internes : mémoires volatiles mémoires permanentes
Architecture et Microprocesseur 17
Mémoire morte non
contient les informations volatile (lecture): contient
les plus récemment accédées par l’amorce (boot) de
le processeur l’ordinateur
Architecture et Microprocesseur 18
La mémoire cache est une mémoire intermédiaire placée entre le processeur et la mémoire centrale
dont le temps d'accès est de 4 à 20 fois inférieur à celui de la mémoire centrale. Elle comporte un
nombre fini d’entrées.
Architecture et Microprocesseur 19
1. Principe de localité
Architecture et Microprocesseur 20
2. Le cache en lecture
Architecture et Microprocesseur 24
Si (A) présente Alors Modifier (A) dans le cache
Modifier (A) en mémoire principale
Sinon Modifier (A) en mémoire principale
FinSi
Architecture et Microprocesseur 25
Si (A) présente Alors Modifier (A) dans le cache
Modifier (A) en mémoire principale
Sinon Modifier (A) en mémoire principale
FinSi
Architecture et Microprocesseur 26