Chapitre 3 : Les mémoires 1. Généralité : 1.1 Définition : une mémoire est un organe capable de contenir, de conserver et de restituer sans les modifier de grandes quantités d information. 1.2. Les différents types de mémoires : 1. La mémoire vive RAM (Random Access Memory) - Mémoire dans laquelle on peut lire et écrire. - Mémoire volatile (perd son contenu dès la coupure du courant). 2. La mémoire morte ROM (Read Only Memory) - Mémoire dans laquelle on ne peut que lire. - Mémoire permanente (conserve indéfiniment son contenu). 3. Les PROM (Programable ROM) - Ce sont des mémoires vierges programmables une seule fois avec un outil spécialisé s appelant un programmateur de PROM. - Une fois programmées elles se comportent comme des ROM. 4. Les EPROM (Erasable PROM) - Ce sont des PROM effaçables (généralement sous rayonnement Ultra-Violet). - Elles sont reprogrammables avec un outil spécialisé. - Elles se comportent comme des ROM en utilisation courante. - Les EEPROM (Electrical EPROM) sont effaçables par signaux électriques. - Les FLASH EEPROM sont des EEPROM effaçables par bloc. 5. La Mémoire cache : la mémoire cache (également appelée antémémoire ou mémoire tampon) est une mémoire rapide permettant de réduire les délais d'attente des informations stockées en mémoire vive. Donc elle accélère le fonctionnement de l ordinateur (plus particulièrement du microprocesseur) en stockant les données les plus récemment utilisées. Il existe deux types de mémoire cache : mémoire cache interne et mémoire cache externe. 6. Les registres : Lorsque le processeur exécute des instructions, les données sont temporairement stockées dans de petites mémoires rapides appelées registres. 7. Les mémoires auxiliaires : - Ce sont des mémoires de grande capacité. - Elles permettent de stocker les informations d une façon permanente. - Elles ont un temps d'accès plus lent que la mémoire principale, mais leur coût de fabrication est bien plus bas. - Ce sont par exemple : les disques durs, les disquettes, les bandes magnétiques, les clés USB, les cartes mémoire, etc. 8. Mémoire virtuelle : un ordinateur possédant peu de mémoire centrale ou exécutant plusieurs programmes simultanément peut se servir d une partie du disque dur pour étendre sa mémoire de travail. Ce type de fonctionnement s appelle mémoire virtuelle et permet à l ordinateur de fonctionner même si le recours au disque dur ralentit considérablement ses taches. L opération de va et viens des données dans ce contexte s appelle le swaping. 1.3. Les unités de capacité des mémoires : Les unités de mesure de stockage de l information sont :
Le bit (pas de notation) L octet = 2 3 bits = 8 bits. (Noté 1 o) Le Kilo-octet = 2 10 octets =1024 o (noté 1 Ko) Le Méga-octet = 2 20 octets =(1024) 2 o (noté 1 Mo) Le Giga-octet = 2 30 octets =(1024) 3 o (noté 1 Go) Le Téra-octet = 2 40 octets =(1024) 4 o (noté 1 To) 1.4. Caractéristiques des mémoires : Les mémoires sont réalisées grâce à des technologies différentes. Elles possèdent toujours des caractéristiques générales qui permettent de comparer ces technologies. En voici quelques-unes: - La capacité : la capacité représente le nombre maximal de mots que la mémoire peut stocker simultanément. - Le temps d accès : est le temps qui s écoule entre le stockage de l adresse du mot à sélectionner et l obtention de la donnée. - Le temps de cycle ou cycle mémoire: Dans certains types de mémoires (les mémoires à semi-conducteurs) le temps de lecture est en général différent du temps d'écriture pour des raisons de nature électroniques. On utilise le plus long des deux pour définir le cycle mémoire. - Le débit d'une mémoire : le débit d une mémoire permet de mesurer le nombre de bits transférés par unité de temps (une seconde). Débit = langueur mot mémoire / longueur de cycle mémoire. - La volatilité, la permanence. 2. Mémoire centrale : 2.1. Définitions La mémoire centrale, appelé aussi mémoire vive ou RAM : Random Access Memory, est la mémoire de travail du CPU dans laquelle il cherche les instructions et les données utilisées dans l exécution et range le résultat de l exécution. Le contenu de cette mémoire s efface lorsque l ordinateur s éteint : elle est dite volatile. Le nombre de programmes que l ordinateur peut exécuter simultanément est directement proportionnel à la taille de la mémoire centrale qu il dispose. 2.2. Les éléments d information de la mémoire principale : - Le bit : Un bit est la plus petite unité d'information. Il ne peut prendre que deux états différents : 0 ou 1. - Un caractère : Un caractère est un regroupement de n bits de façon à créer des unités d'information qui puissent représenter un plus grand nombre d'états différents. L'octet permet, avec ses 256 possibilités, de représenter les lettres majuscules et minuscules, les chiffres et une série de caractères spéciaux : caractères de contrôle pour l'imprimante, pour le curseur, etc. - Mot-mémoire : Dans l objectif de minimiser le nombre d'accès à la mémoire principale lors de l exécution d une instruction, le mot-mémoire est utilisé pour contenir une opération, une instruction, c'est-à-dire un opérateur accompagné d'un ou plusieurs opérandes. Les mots-mémoire sont tous numérotés et constituent l'unité de base pour le transfert de ou vers la mémoire principale. - Bloc : les mots sont groupés en blocs afin de faciliter l'adressage et le transfert avec les périphériques qui sont relativement plus lents. - Adresse mémoire : une adresse mémoire est le numéro d un mot-mémoire (case mémoire) dans la mémoire centrale.
Mémoire de 96 bits organisé en 6 mots de 16 bits Les informations contenues dans la mémoire doivent être bien identifiées, de façon à pouvoir les retrouver au besoin. C est le rôle du bloc du contrôle de la mémoire. 2.3. Le bloc de contrôle de la mémoire principale Le bloc de contrôle de la mémoire permet la lecture et l écriture d une information à une adresse mémoire donnée. Pour effectuer une requête à la mémoire, au minimum quatre types d'information sont utilisés: 1- Il faut connaitre si la mémoire est disponible pour accepter une requête ; 2- Il faut connaitre le type de requête : lecture ou d'écriture ; 3- Il faut connaitre l'adresse mémoire où on veut accéder ; 4- Il faut la valeur à écrire ou à restituer de la mémoire. Pour gérer ces informations le bloc de contrôle de mémoire dispose 4 registres, à savoir : - Un registre de données (capacité: 1 mot mémoire) : Ce registre sert à recevoir le mot lu lors d'une lecture ou à garder le mot à écrire avant une écriture. - Un registre d'adresse (capacité: la largeur d'une adresse) : Ce registre reçoit l'adresse du mot auquel on veut accéder. - Un indicateur (mémoire libre/occupée) : indique si la mémoire est disponible ou non. - Un indicateur lecture/écriture : indique le type de requête. 2.4. Organisation de la mémoire centrale : La mémoire centrale est organisée en bits et en mots. Chaque mot mémoire est repéré bijectivement par son adresse en mémoire centrale. 2.5. Contenu de la mémoire centrale : La mémoire centrale contient en binaire, deux sortes d informations : - Des programmes : Un Programme est un ensemble d instructions préalablement codées (en binaire) et enregistrées dans la mémoire centrale sous la forme d une liste séquentielle d instructions. Cette liste représente une suite d actions élémentaires que l ordinateur doit accomplir sur des données, afin d atteindre le résultat recherché, - Des données : les données peuvent représenter, dans leur forme la plus simple, des chiffres et des caractères comme elles peuvent avoir une structure complexe pour représenter des images des fichiers, etc.
La mémoire centrale est composée de RAM, en particulier de RAM dynamiques nommées DRAM qui sont des mémoires construite avec un transistor et un condensateur. Depuis 2004 les micro-ordinateurs du commerce sont tous équipés de DRAM, le sigle employé sur les notices techniques est DDR qui est l'abréviation du sigle DDR SDRAM dont nous donnons l'explication : Ne pas confondre SRAM et SDRAM Une SRAM est une mémoire statique (SRAM = Statique RAM) construite avec des bascules, une SDRAM est une mémoire dynamique DRAM qui fonctionne à la vitesse du bus mémoire, elle est donc synchrone avec le fonctionnement du processeur le "S" indique la synchronicité (SDRAM = Synchrone DRAM). Une DDR SDRAM C'est une SDRAM à double taux de transfert pouvant expédier et recevoir des données deux fois par cycle d'horloge au lieu d'une seule fois. Le sigle DDR signifie Double Data Rate. 3. Disque dur 3.1. Définition : le disque dur est le périphérique de stockage sur lequel sont installés le système d exploitation et les différents logiciels d application, et sur lequelle l utilisateur stocke ses données de façon permanente. 3.2. Structure : Un disque dur est constitué de plusieurs disques rigides (en anglais hard disk signifie disque dur) en métal, en verre ou en céramique, empilés à une très faible distance les uns des autres et appelés plateaux. Sur chaque plateau est déposé des films magnétisables, sur une ou les deux faces. Ce film magnétique est composé de grains d'oxyde magnétisable et c'est le fait que certaines zones du film conservent ou non un champ magnétique, qui représente la présence d'un bit à 0 ou bien à 1. Chaque disque est divisé en pistes et les pistes en secteurs, les données sont stockées dans les secteurs. Chaque disque tourne sur un axe de rotation et un secteur donné peut être atteint par un dispositif mobile appelé tête de lectureécriture, soit en lecture (analyse des zones magnétiques du secteur) ou en écriture (modification du champ des zones magnétiques du secteur).
Fonctionnement : Les têtes de lecture/écriture sont capables de générer un champ magnétique. C'est notamment le cas lors de l'écriture : les têtes, en créant des champs positifs ou négatifs, viennent polariser la surface du disque en une très petite zone, ce qui se traduira lors du passage en lecture par des changements de polarité induisant un courant dans la tête de lecture, qui sera ensuite transformé par un convertisseur analogique numérique (CAN) en 0 et en 1 compréhensibles par l'ordinateur. Les têtes commencent à inscrire des données à la périphérie du disque (piste 0), puis avancent vers le centre. Les données sont organisées en cercles concentriques appelés «pistes». Les pistes sont divisées secteurs, contenant les données (au minimum 512 octets par secteur en général). L ensemble des données situées sur une même piste sur des plateaux différents forme un cylindre de données 4. La hiérarchie des mémoires Pour fonctionner un ordinateur accède à des programmes et des données conservés dans des emplacements bien définis (les Registre mémoires). Le processeur doit charger ces programmes et données dans la mémoire principale pour les utilisées. Il existe Mémoire cache une certaine hiérarchie des mémoires qui dépend essentiellement les trois critères suivants: Mémoire principale 1. Le temps d'accès. 2. La capacité de mémorisation. Mémoire secondaires 3. Le coût de l'information. On peut résumer cette hiérarchie à l'aide de la figure en face : 5. Utilisation des différents niveaux de mémoires : Si le processeur ne trouve pas une donnée dans ses mémoires cache, il cherche cette donnée dans la mémoire principale. De plus, s il ne la trouve pas dans la mémoire principale, il la cherche dans le disque dur. Les données lues depuis le disque dur sont copiées dans la mémoire principale, et un bloc de ces données sera recopiées dans les mémoires cache. Ce procédé met constamment à jour le contenu des caches avec les données qui ont été le plus récemment utilisées. Dans le cas contraire, c est-à-dire, si la mémoire principale ne parvient pas à contenir tous les processus en cours d exécution par le processeur, alors la mémoire de masse (le disque dur) sera utilisée comme une extension de la mémoire principale. Ce processus s appelle : le swapping.