9 3 Les mémoires Une mémoire est un circuit à semi-conducteur permettant d’enre

9 3 Les mémoires Une mémoire est un circuit à semi-conducteur permettant d’enregistrer, de conserver et de restituer des informations (instructions et variables). C’est cette capacité de mémorisation qui explique la polyvalence des systèmes numériques et leur adaptabilité à de nombreuses situations. Les informations peuvent être écrites ou lues. Il y a écriture lorsqu'on enregistre des informations en mémoire, lecture lorsqu'on récupère des informations précédemment enregistrées. 3.1 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 é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 Adresse Case mémoire 7 = 111 6 = 110 5 = 101 4 = 100 3 = 011 2 = 010 1 = 001 0 = 000 0001 1010 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. En plus du bus d’adresses et du bus de données, un boîtier mémoire comprend une entrée de commande qui permet de définir le type d’action que l’on effectue avec la mémoire (lecture/écriture) et une entrée de sélection qui permet de mettre les entrées/sorties du boîtier en haute impédance. On peut donc schématiser un circuit mémoire par la figure suivante où l’on peut distinguer :  les entrées d’adresses  les entrées de données  les sorties de données  les entrées de commandes : - une entrée de sélection de lecture ou d’écriture. ( R/W ) - une entrée de sélection du circuit. ( CS ) Chapitre 3 Adresses (n bits) Mémoire Données (m bits) R/W CS 10 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/W ) 3. sélection de la mémoire ( CS = 0 ) 4. lecture ou écriture la donnée Remarque : Les entrées et sorties de données sont très souvent regroupées sur des bornes bidirectionnelles. 3.2 Caractéristiques d’une mémoire ƒ La capacité : c’est le nombre total de bits que contient la mémoire. Elle s’exprime aussi souvent en octet. ƒ Le format des données : c’est le nombre de bits que l’on peut mémoriser par case mémoire. On dit aussi que c’est la largeur du mot mémorisable. ƒ Le temps d’accès : c’est le temps qui s'écoule entre l'instant où a été lancée une opération de lecture/écriture en mémoire et l'instant où la première information est disponible sur le bus de données. ƒ Le temps de cycle : il représente l'intervalle minimum qui doit séparer deux demandes successives de lecture ou d'écriture. ƒ Le débit : c’est le nombre maximum d'informations lues ou écrites par seconde. ƒ Volatilité : elle caractérise la permanence des informations dans la mémoire. L'information stockée est volatile si elle risque d'être altérée par un défaut d'alimentation électrique et non volatile dans le cas contraire. Exemple : Chronogramme d’un cycle de lecture Remarque : Les mémoires utilisées pour réaliser la mémoire principale d’un système à microprocesseur sont des mémoires à semi-conducteur. On a vu que dans ce type de mémoire, on accède directement à n'importe quelle information dont on connaît l'adresse et que le temps mis pour obtenir cette information ne dépend pas de l'adresse. On dira que l'accès à une telle mémoire est aléatoire ou direct. A l'inverse, pour accéder à une information sur bande magnétique, il faut dérouler la bande en repérant tous les enregistrements jusqu'à ce que l'on trouve celui que l'on désire. On dit alors que l'accès à l'information est séquentiel. Le temps d'accès est variable selon la position de l'information recherchée. L'accès peut encore être semi-séquentiel : combinaison des accès direct et séquentiel. Pour un disque magnétique par exemple l'accès à la piste est direct, puis l'accès au secteur est séquentiel. BUS @ BUS D Taccès R/W CS Tcycle Données accessibles @x Dx 11 3.3 Différents types de mémoire 3.3.1 Les mémoires vives (RAM) Une mémoire vive sert au stockage temporaire de 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. Certaines d'entre elles, ayant une faible consommation, peuvent être rendues non volatiles par l'adjonction d'une batterie. Il existe deux grandes familles de mémoires RAM (Random Acces Memory : mémoire à accès aléatoire) : ƒ Les RAM statiques ƒ Les RAM dynamiques 3.3.1.1 Les RAM statiques Le bit mémoire d'une RAM statique (SRAM) est composé d'une bascule. Chaque bascule contient entre 4 et 6 transistors. 3.3.1.2 Les RAM dynamiques Dans les RAM dynamiques (DRAM), l'information est mémorisée sous la forme d'une charge électrique stockée dans un condensateur (capacité grille substrat d'un transistor MOS). ƒ Avantages : Cette technique permet une plus grande densité d'intégration, car un point mémoire nécessite environ quatre fois moins de transistors que dans une mémoire statique. Sa consommation s’en retrouve donc aussi très réduite. ƒ Inconvénients : La présence de courants de fuite dans le condensateur contribue à sa décharge. Ainsi, l’information est perdue si on ne la régénère pas périodiquement (charge du condensateur). Les RAM dynamiques doivent donc être rafraîchies régulièrement pour entretenir la mémorisation : il s'agit de lire l'information et de la recharger. Ce rafraîchissement indispensable a plusieurs conséquences : - il complique la gestion des mémoires dynamiques car il faut tenir compte des actions de rafraîchissement qui sont prioritaires. - la durée de ces actions augmente le temps d'accès aux informations. @7 @6 @5 @4 @3 @2 @1 @0 D7 D6 D4 D3 D2 D1 D5 D0 @7 @6 @5 @4 @3 @2 @1 @0 D7 D6 D4 D3 D2 D1 D5 D0 12 D’autre part, la lecture de l’information est destructive. En effet, elle se fait par décharge de la capacité du point mémoire lorsque celle-ci est chargée. Donc toute lecture doit être suivie d’une réécriture. 3.3.1.3 Conclusions En général les mémoires dynamiques, qui offrent une plus grande densité d'information et un coût par bit plus faible, sont utilisées pour la mémoire centrale, alors que les mémoires statiques, plus rapides, sont utilisées lorsque le facteur vitesse est critique, notamment pour des mémoires de petite taille comme les caches et les registres. Remarques : Voici un historique de quelques DRAM qui ont ou sont utilisées dans les PC : • La DRAM FPM (Fast Page Mode, 1987) : Elle permet d'accéder plus rapidement à des données en introduisant la notion de page mémoire. (33 à 50 Mhz) • La DRAM EDO (Extended Data Out, 1995) : Les composants de cette mémoire permettent de conserver plus longtemps l'information, on peut donc ainsi espacer les cycles de rafraîchissement. Elle apporte aussi la possibilité d’anticiper sur le prochain cycle mémoire. (33 à 50 Mhz) • La DRAM BEDO (Bursted EDO) : On n'adresse plus chaque unité de mémoire individuellement lorsqu'il faut y lire ou y écrire des données. On se contente de transmettre l'adresse de départ du processus de lecture/écriture et la longueur du bloc de données ( Burst ). Ce procédé permet de gagner beaucoup de temps, notamment avec les grands paquets de données tels qu'on en manipule avec les applications modernes. (66 Mhz) • La Synchronous DRAM (SDRAM, 1997) : La mémoire SDRAM a pour particularité de se synchroniser sur une horloge. Les mémoires FPM, EDO étaient des mémoires asynchrones et elle induisaient des temps d'attentes lors de la synchronisation. Elle se compose en interne de deux bancs de mémoire et des données peuvent être lues alternativement sur l'un puis sur l'autre de ces bancs grâce à un procédé d'entrelacement spécial. Le protocole d'attente devient donc tout à fait inutile. Cela lui permet de supporter des fréquences plus élevées qu’avant (100 Mhz). • La DDR-I ou DDR-SDRAM (Double Data Rate Synchronous DRAM, 2000) : La DDR-SDRAM permet de recevoir ou d'envoyer des données lors du front montant et du front descendant de l’horloge. (133 à 200 MHz) 3.3.2 Les mémoires mortes (ROM) Pour certaines applications, il est nécessaire de pouvoir conserver des informations de façon permanente même lorsque l'alimentation électrique est interrompue. On utilise alors des mémoires mortes ou mémoires à lecture seule (ROM : Read Only Memory). Ces mémoires sont non volatiles. Ces mémoires, contrairement aux RAM, ne peuvent être que lue. L’inscription en mémoire des données restent possible mais est appelée programmation. Suivant le type de ROM, la méthode de programmation changera. Il existe donc plusieurs types de ROM : ƒ ROM ƒ PROM ƒ EPROM ƒ EEPROM ƒ FLASH uploads/Litterature/ notes-de-cours-memoires.pdf

  • 35
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager