mémoire
(latin memoria)
Dispositif capable d'enregistrer, de conserver et de restituer des données.
INFORMATIQUE ET ÉLECTRONIQUE
Introduction
Une mémoire électronique est un composant qui permet de conserver une information binaire pour un usage ultérieur. Par extension, on appelle aussi mémoire un ensemble de composants qui sont regroupés sur une carte ou un module pour augmenter la capacité de mémorisation. Les mémoires électroniques sont à la base de l'essor des ordinateurs. Initialement réalisées avec des technologies mécaniques (propagation d'une onde acoustique dans un solide), magnétiques (état magnétique d'un tore) ou électriques (câblage de fils, de fiches ou de diodes), elles sont maintenant essentiellement réalisées à partir de semi-conducteurs ou de pistes magnétiques.
L'évolution de la capacité d'intégration depuis les années 1970 a dépassé toutes les prévisions les plus optimistes. À titre d'exemple, le nombre d'informations binaires que l'on peut mettre dans un seul boîtier a progressé dans un rapport de 1 à 4 000 entre 1971 et 1990. Le nombre de boîtiers, et donc de points de soudure, nécessaires pour réaliser une capacité de mémoire donnée a diminué dans le même rapport, ce qui entraîne une amélioration extraordinaire de la fiabilité. Dans le même temps, la consommation électrique a diminué, quant à elle, d'environ soixante fois.
En fonction de la technologie employée et du mode de fonctionnement des composants, on distingue les mémoires à semi-conducteurs, vives ou mortes, et les mémoires de masse (disque dur, disquette, bande magnétique, à bulles, disque optique).
Mots clés
Accès
Procédure caractérisant la manière de lire ou d'écrire une information dans une mémoire. Dans l'accès séquentiel, la mémoire peut être représentée comme un ruban ou un rouleau sur lequel sont inscrites les informations : l'accès à une information n'est possible qu'après avoir fait défiler toutes celles qui précèdent. Dans l'accès aléatoire, la mémoire peut être représentée comme un répertoire dont les pages sont numérotées : l'accès à une information s'effectue en donnant le numéro de la page (adresse).
Adresse
Ensemble de bits qui sert à sélectionner une donnée dans une mémoire.
Bit
Élément d'information binaire qui vaut 0 ou 1.
Bus
Ensemble de fils qui transportent électriquement une information.
Capacité
Nombre maximal de bits mémorisés. Elle s'exprime généralement en Koctets, où K = 1 024. Par exemple, 8 Koctets = 64 Kbits = (64 × 1 024) bits = 65 536 bits.
Mémoire morte
Mémoire qui ne peut être que lue (terme générique désignant les mémoires ROM, PROM, EPROM et EEPROM).
Mémoire vive
Mémoire qui peut être écrite ou lue (désignée souvent sous le sigle anglais RAM).
Mot
Ensemble de bits (1, 4, 8 ou 16 généralement) qui sont traités simultanément.
Octet
Ensemble de 8 bits. (Le stockage d'un caractère occupe un octet.)
Temps d'accès
Durée maximale nécessaire, dans le cas le plus défavorable, pour lire ou écrire une donnée dans une mémoire.
Différents types de mémoires à semi-conducteurs
Dans un ordinateur, la liaison entre l'unité centrale et la mémoire se fait par trois canaux : les fils de liaison d'adresse, qui permettent de sélectionner un mot particulier dans la mémoire ; les fils de liaison de données, qui permettent les échanges d'informations ; et les fils de contrôle, qui permettent de gérer le fonctionnement du composant (écriture, lecture, validation, sélection). À l'intérieur du boîtier, l'information d'adresse est décodée et, selon le fonctionnement désiré, les données sont lues, écrites ou encore ignorées.
On distingue deux types de mémoires à semi-conducteurs : les mémoires vives et les mémoires mortes. La plus simple des mémoires mortes est la mémoire ROM (sigle de l'anglais Read Only Memory), qui ne peut être que lue par l'utilisateur. Son contenu est déterminé à la fabrication du composant et ne peut plus être modifié ultérieurement. Le programme d'initialisation d'un ordinateur est enregistré sur ce type de mémoire. Certaines mémoires mortes offrent une plus grande souplesse d'emploi : les PROM (Programmable Read Only Memory), les EPROM (Electrically Programmable Read Only Memory) et les EEPROM (Electrically Erasable Programmable Read Only Memory).
Une mémoire PROM est identique à une ROM pour son fonctionnement. Cependant, son contenu est inscrit par l'utilisateur grâce à un équipement spécial avant sa mise en œuvre. Cette opération ne peut se faire qu'une seule fois car elle détruit l'enregistrement par fusion des microfusibles ou par claquage des jonctions de diode. Une mémoire EPROM est identique à une PROM pour son fonctionnement et sa programmation. Cependant, il est possible de l'effacer et de la reprogrammer un certain nombre de fois dans le but de modifier un programme périmé. L'effacement complet se fait en exposant la puce de la mémoire à une source de rayonnement ultraviolet (longueur d'onde 253,7 nanomètres) pendant une vingtaine de minutes. Pour cette opération, le boîtier possède une fenêtre en quartz qui laisse la puce visible. Il faut noter l'apparition récente de mémoires EPROM sans fenêtre et donc programmables une seule fois. L'intérêt de ces composants réside dans la possibilité pour l'utilisateur de réaliser directement des ROM à faible coût. Les mémoires PROM et EPROM sont employées dans les programmes spécifiques à une application. Une mémoire EEPROM est identique à une EPROM pour son fonctionnement. Par contre, il est possible de l'effacer partiellement et de la reprogrammer électriquement. Mais le temps d'écriture est assez long (de l'ordre de la milliseconde) et le nombre de cycles de réécriture est limité (de l'ordre de 10 000 fois ou plus). Ce type de mémoire est utilisé pour la mémorisation de valeurs modifiables en fonctionnement.
À la différence des mémoires mortes, une mémoire vive, ou RAM (Random Access Memory), peut être lue ou écrite à tout moment par l'utilisateur. Mais son contenu est perdu en cas de coupure de la tension d'alimentation. Dans certaines applications où cette défaillance est inacceptable, il est possible d'utiliser des composants à faible consommation (technologie CMOS) dont l'alimentation est sauvegardée par une pile.
Constitution d'un point mémoire
Un boîtier mémoire se compose essentiellement d'un circuit d'adressage et d'une zone de stockage de l'information, qui occupe la plus grande partie de la surface de la puce.
Il existe deux structures principales pour réaliser un élément mémoire capable de stocker une information binaire (bit). La première est la cellule bascule. Elle est constituée de transistors bipolaires ou à effet de champ (MOS). Deux inverseurs logiques rétrocouplés fonctionnent en bistable. À la mise sous tension, le contenu de la cellule est aléatoirement un état « 1 » ou « 0 ». La cellule doit être adressée (sélectionnée) et un état « 1 » ou « 0 » connu sera mémorisé par une séquence d'écriture. La deuxième structure possible est la cellule capacitive. Elle comporte un condensateur et un transistor à effet de champ (MOS). L'information est stockée sous forme d'une charge électrique aux bornes du condensateur, lors de la phase d'écriture. L'intérêt de cette structure réside dans le petit nombre de composants utilisés. Par contre, en fonction des défauts d'isolement du condensateur, l'information se détruit dans le temps. Pour les mémoires EPROM et EEPROM, l'isolement est très bon et la durée de vie de l'information est de l'ordre de la dizaine d'années. Mais, pour les mémoires RAM, le circuit d'écriture perturbe l'isolement de la cellule et il faut régénérer (rafraîchir) l'information toutes les 4 millisecondes, grâce à des circuits de contrôle spécialisés. La cellule capacitive utilise environ quatre fois moins de composants que la cellule bascule ; aussi, pour un niveau d'intégration donné, le nombre de points mémoires est plus élevé dans le premier cas.
Les mémoires de masse
Les mémoires de masse sont des mémoires de grande capacité qui utilisent le magnétisme comme élément de stockage ou la technologie des disques à lecture laser (CD-ROM). Elles sont utilisées conjointement aux mémoires vives pour stocker des informations dont l'utilisation est moins fréquente. Pour y avoir accès, il faut transférer une partie du contenu de la mémoire de masse dans une mémoire vive. Ces mémoires ont un mode de fonctionnement séquentiel. Le temps d'accès à une information est donc un peu long, mais, une fois la première information atteinte, le débit est très rapide (plusieurs centaines de kilo-octets [Koctets] par seconde). Le fonctionnement de ces mémoires est analogue à celui du microsillon (pour les disques et disquettes) ou de la cassette (pour les bandes). Pour écouter un passage musical, il faut soit placer le bras sur la piste correspondante, soit faire défiler la bande jusqu'au point recherché. Dans le cas le plus défavorable, il faut traverser pratiquement toute la largeur du disque ou faire défiler quasiment toute la bande.
Les temps d'accès et les capacités des mémoires de masse diffèrent de plusieurs ordres de grandeur par rapport aux valeurs des mémoires vives : millisecondes et millions d'octets pour les mémoires de masse contre nanosecondes et Koctets pour les mémoires vives. Pour faciliter la recherche d'une information dans une mémoire de masse, il faut organiser le support d'une manière cohérente et le doter d'une « table des matières » ou répertoire, qui tient à jour le nom et la place occupée par chaque paquet d'informations contenues dans un fichier. Cette opération consiste à formater le support lors de sa première utilisation si cela n'a pas déjà été fait à la fabrication. Durant celle-ci, une partie de la capacité de mémorisation du support est réservée à la « table des matières » et il y a donc une perte de capacité, qui peut être de l'ordre de quelques pour-cent. Lors d'une demande d'accès à un fichier, le système vient lire la table, qui est généralement située sur la piste n° 0, et détermine sur quelle(s) piste(s) et quel(s) secteur(s) se trouvent les informations correspondant au fichier demandé.