Issuu on Google+

Chapitre 2 :

Les mémoires I. Définition et organisation de la mémoire I.1. Présentation de la mémoire La mémoire est un composant permettant de stocker, de conserver et de restituer les informations. • La mémoire centrale est organisée en cellules. • Chaque cellule correspond à un mot mémoire identifié par un numéro unique appelé adresse et possède un contenu pouvant être une instruction ou une donnée. • Un mot mémoire est composé de points mémoire, chaque point correspond à 1 bit.

Mots mémoire Adresse 0 = 000 1 = 001 2 = 010 3 = 011 4 = 100 5 = 101 6 = 110 7 = 111

Figure 1 : Organisation de la mémoire Remarque : • Une adresse sur n bits (bus d’adresse formé de n fils) peut sélectionner au maximum 2n cases mémoires. • Pour un bloc de données de 2n mots mémoire, le premier mot se situe à l’adresse 0 et le dernier mot se situe à l’adresse 2n-1. • Le nombre de fils dans le bus de données définit la largeur d’un mot mémoire.

I.2. Fonctionnement général d’une mémoire Adresses (n bits) R/W

Mémoire

Données m bits

CS

Figure 2 : Schéma fonctionnel de la mémoire 1 - Choisir l'adresse en mémoire qui donne l'accès à un emplacement mémoire pour une opération de lecture ou d'écriture

Chapitre 2 : Les mémoires

1


2 - Choisir une opération de lecture ou d'écriture ( R / W ) 3 – Sélectionner le boîtier mémoire (Chip Select) ( CS ) 4 - Valider ou invalider la mémoire Le signal de sélection du boîtier ( CS ) valide les fonctions d'écriture et de lecture. Le boîtier est bloqué pour CS = 1. Lorsque CS = 0, une fonction d'écriture correspond à R / W = 0 et une fonction de lecture à R / W = 1.

I.3. Organisation interne de la mémoire La mémoire peut être vue comme organisée en grille : - Chaque ligne correspond à un mot mémoire ayant une adresse. Une adresse (sur k bits) entrée au décodeur permet d’activer une ligne parmi les 2k lignes. - A chaque intersection (ligne, colonne) on trouve un mécanisme permettant de sauvegarder 1 bit mémoire qui est basé soit sur une bascule (pour les SRAM) soit sur l’association d’un condensateur à un transistor (pour les DRAM). Soit le schéma simplifié suivant d’une mémoire statique 4 X 4 bits (4 mots à 4 bits) où chaque point mémoire est formé d’une bascule D. La mémoire comprend 4 broches d’entrées de données (E0, E1, E2 et E3) et 4 broches de sortie (S0, S1, S2, S3) pour la lecture des données. E0

E1

D

Q

D

CK

D

E2

Q

D

CK

Q

D

CK

E3

Q

D

CK

Q

D

CK

Q

CK

Q

D

CK

Q

CK

A0 A1

Décodeur d'adresses

D

Q

D

CK

D

Q

D

CK

Q

D

CK

Q

D

CK

Q

D

CK

Q

CK

Q

D

CK

Q

CK

CS R/W

S0

S1

S2

S3

Figure 2: Organisation interne d'une mémoire de 4 mots de 4 bits

Chapitre 2 : Les mémoires

2


Le dispositif formé par l’association des entrées CS (Chip Select) actif au niveau bas et R / W ,tels que illustrés, permet d’illustrer le fonctionnement des opérations de lecture des données et de d’écriture en mémoire qui ne peuvent jamais s’effectuer simultanément.

II. Caractéristiques d’une mémoire • La capacité : taille de la mémoire, est le nombre total de bits contenu dans la mémoire. Elle est généralement exprimée en bits ou en nombre de mots mémoire.

Les unités de capacité : Le bit (pas de notation) L’octet = 8 bits = 1 byte. (noté 1 o) Le Kilo-octet = 1024 o (noté 1 Ko) Le Méga-octet = (1024)2 o (noté 1 Mo) Le Giga-octet = (1024)3 o (noté 1 Go) Le Téra-octet = (1024)4 o (noté 1 To)

1 Péta-octet = (1024)5 o (noté 1 Po) 1 exa-octet = (1024)6 o (noté 1 Eo) 1 zetta-octet = (1024)7 o (noté 1 Zo) 1 yotta-octet = (1024)8 o (noté 1 Yo)

• Le format des données : c’est la largeur (nombre de bits) d’un mot mémoire. • Le mode d’accès : mémoires à accès direct/aléatoire (mémoire centrale), séquentiel (bandes magnétiques) semi-séquentiel (disque dur) et par contenu/associatif (mémoire cache). • Temps d’accès : temps qui s’écoule entre le lancement d’une opération d’accès (lecture ou écriture) et son accomplissement. • Cycle mémoire : temps minimal s’écoulant entre deux accès successifs à la • mémoire (supérieur au temps d’accès à cause des opérations de synchronisation, de rafraîchissement, etc.) Exemple : Chronogramme d’un cycle de lecture

Figure 3: Chronogramme d'un cycle de lecture • Le débit : C’est le nombre d’informations (exprimé en bits) lues ou écrites par seconde. Il est exprimé en fonction du cycle mémoire (CM) et de la taille du mot mémoire (TMM) TMM comme suit : D = CM • La volatilité : elle caractérise la permanence des informations (perte ou non du contenu).

Chapitre 2 : Les mémoires

3


III. Classification des mémoires Mémoires à semi-conducteurs Mémoires vives Statiques (SRAM)

Dynamiques (DRAM)

Mémoires mortes ROM PROM EPROM EEPROM Flash EPROM

III.1. Les mémoires vives (RAM : Random Access Memory) La mémoire vive sert au stockage temporaire des données. Il est possible de lire et d’écrire dans la mémoire vive. Généralement, la mémoire est volatile dans le sens que les informations sont perdues lors de l’extinction de l’alimentation électrique. On distingue généralement 2 grandes familles de mémoire : les RAM statiques et dynamiques. • SRAM (Mémoire vive statique) : Mémoire très rapide mais coûteuse dont le point mémoire est constitué d’un circuit bistable à transistors. (Utilisation : registres, mémoire cache) • DRAM (Mémoire vive dynamique) : plus lente et moins coûteuse que la SRAM. Le point mémoire est constitué d’un condensateur et d’un transistor. (Utilisation : mémoire centrale)

III.2. Les mémoires mortes (ROM : Read Only Memory) La mémoire morte sert au stockage permanent des informations même en cas de rupture d’alimentation électrique ; elles sont non volatiles. La mémoire morte ne peut être que lue, néanmoins, il est possible pour certaines ROM d’écrire en mémoire : on parle de programmation. •

ROM (Read Only Memory) : mémoire à lecture seule programmée par le fabricant.

• PROM (Programmable ROM) : elle est programmée par l’utilisateur une seule fois par destruction de fusibles ou de jonctions. • EPROM (Erasable Programmable ROM) ou UV-EPROM : ROM programmables et effaçables par exposition aux rayons ultra-violets • EEPROM (Electrically Erasable Programmable ROM): Ce sont des mémoires programmables et effaçables électriquement •

FLASH EPROM ROM programmable et effaçable comme pour les EEPROM.

IV. Hiérarchie des mémoires Plus une mémoire est rapide d’accès, plus elle est petite. En effet, le coût et l’encombrement des mémoires sont proportionnels à leur rapidité ce qui impose de faire un bon compromis rapidité/ capacité.

Chapitre 2 : Les mémoires

4


Registre Mémoire cache niveau 1

Vitesse

Mémoire cache niveau 2 Mémoire cache niveau 3

Capacité

Mémoire centrale Figure 4: Hiérarchie des mémoires • Registres : Mémoires très rapides situées au niveau du processeur. Les registres sont utilisés pour assurer le stockage temporaire d’informations nécessaires à l’exécution de l’instruction en cours de traitement. • Mémoire cache : (ou antémémoire) mémoire rapide de faible capacité servant de tampon entre l’UCT et la MC. Son but est d’éviter de rechercher en MC des données déjà recherchées précédemment en les conservant du processeur. Il existe 3 niveaux de mémoire cache :

- Mémoire cache de niveau 1 : elle est directement intégrée au processeur et se subdivise en deux parties (cache de données et cache d’instructions). Elles sont très rapides avec des temps d’accès proches de celui des registres. - Mémoire cache de niveau 2 : est située au niveau du boîtier contenant le processeur (dans la puce). Il sert d'intermédiaire entre la mémoire cache de niveau 1 et la mémoire RAM. Elle ne différencie pas données et programmes. - Mémoire cache de niveau 3 : autrefois située au niveau de la carte mère (utilisation de la mémoire centrale), elle est aujourd'hui intégré directement dans le CPU. Elle s’interpose entre la mémoire cache de niveau 2 et la RAM. • Mémoire principale (MC) : elle est utilisée pour le rangement des informations. Elle contient le programme à utiliser.

Chapitre 2 : Les mémoires

5


hhhhhhhhh