Téléchargez comme PPT, PDF, TXT ou lisez en ligne sur Scribd
Télécharger au format ppt, pdf ou txt
Vous êtes sur la page 1sur 52
1
Chapitre 7 : Les mmoires
Introduction Dfinition , Caractristiques des mmoires Classification des mmoires La mmoire centrale Caractristiques dune mmoire centrale Structure dune mmoire centrale Conception dune mmoire centrale Architecture dune Mmoire centrale ( architecture modulaire et architecture entrelace ). 2 Objectifs
Comprendre cest quoi une mmoire
Comprendre le rle et la structure dune mmoire centrale.
Apprendre concevoir une mmoire centrale ( modulaire et entrelace ). 3 1. Introduction Avec une bascule cest possible de mmoriser une information sur 1 seul bit.
Avec un registre cest possible de mmoriser une information sur n bits.
Si on veut mmoriser une information de taille important il faut utiliser une mmoire . 4 Architecture matrielle dune machine ( architecture de Von Neumann ) Larchitecture de Von Neumann est compose :
Dune mmoire centrale, Dune unit centrale (UC ) ou CPU (Central Processing Unit), processeur. Cette architecture est la base des architectures des ordinateurs. Mmoire Centrale UC Processeur 5 LUnit Centrale ( UC) Lunit centrale (appele aussi processeur) pour rle dexcuter les programmes. LUC est compose dune unit arithmtique et logique (UAL) et dune unit de contrle. - Lunit arithmtique et logique ralise une opration lmentaire (addition, soustraction, multiplication, . . .) du processeur chaque top dhorloge. - Lunit de commande contrle les oprations sur la mmoire (lecture/criture) et les oprations raliser par lUAL selon linstruction en cours dexcution.
Pour pouvoir effectuer les oprations sur des donnes et excuter des programmes lUC doit disposer dun espace de travail . Cette espace de travail sappel la mmoire centrale. 6 2. Cest quoi une mmoire ? Une mmoire est un dispositif capable : D'enregistrer une information, De la conserver ( mmoriser ) et de la restituer ( possible de la lire ou la rcuprer par la suite).
Exemple de mmoire : La mmoire centrale Un disque dure Une disquette Un flash disque .. La mmoire peut tre dans le processeur ( des registres) , interne (Mmoire centrale ou principale) ou externe (Mmoire secondaire ). 7 3. Caractristiques des mmoires 1. La capacit dune mmoire La capacit ( taille ) dune mmoire est le nombre (quantit) dinformations quon peut enregistrer ( mmoriser ) dans cette mmoire.
La capacit peut sexprimer en :
Bit : un bit est llment de base pour la reprsentation de linformation . Octet : 1 Octet = 8 bits kilo-octet (KO ) : 1 kilo-octet (KO )= 1024 octets = 2 10 octets Mga-octet ( MO) : 1 Mga-octet ( MO)= 1024 KO = 2 20 octets Gga-octet ( GO) :Gga-octet ( GO)=1024 MO = 2 30 octets Tra-octet (To) : 1 tra-octet (To)= 1024 Go =2 40 octets 8 3. Caractristiques des mmoires 2.Volatilit
Si une mmoires perd sont contenu ( les informations ) lorsque la sources dalimentation est coupe alors la mmoire est dite volatile.
Si une mmoire ne perd pas ( conserve ) sont contenu lorsque la sources dalimentation est coupe alors la mmoire est dite non volatile ( mmoire permanente ou stable).
lecture : rcuprer / restituer une information partir de la mmoire. criture : enregistrer une nouvelle information ou modifier une information dj existante dans la mmoire .
Il existe des mmoires qui offrent les deux modes lecteur/criture , ces mmoire sappelles mmoires vives.
Il existent des mmoires qui offrent uniquement la possibilit de la lecture ( cest pas possible de modifier le contenu ). Ces mmoires sappelles mmoires mortes.
10 3. Caractristiques des mmoires 4. Temps daccs Cest le temps ncessaire pour effectuer une opration de lecture ou dcriture. Par exemple pour lopration de lecture , le temps daccs est le temps qui spare la demande de la lecture de la disponibilit de linformation. Temps daccs Demande de la lecture Disponibilit de linformation Le temps daccs est un critre important pour dterminer les performances dune mmoire ainsi que les performances dune machine. 11 4. Classification des mmoires
Les mmoires peuvent tres classe en trois catgories selon la technologie utilise :
Mmoire semi-conducteur ( mmoire centrale, ROM, PROM,..) : trs rapide mais de taille rduit. Mmoire magntique ( disque dur, disquette,) : moins rapide mais stock un volume dinformations trs grand. Mmoire optique ( DVD, CDROM,..) 12 5. Mmoire semi-conducteur
Mmoire semi-condeucteurs vives Mortes Statiques Dynamiques Associatives ROM PROM EPROM 13 La mmoire centrale RAM : Random Acces memory Mmoire accs alatoire 14 1. Cest quoi une mmoire centrale ?
La mmoire centrale (MC) reprsente lespace de travail de lordinateur ( calculateur ).
Cest lorgane principal de rangement des informations utilises par le processeur.
Dans une machine (ordinateur / calculateur) pour excuter un programme il faut le charger ( copier ) dans la mmoire centrale .
Le temps daccs la mmoire centrale et sa capacit sont deux lments qui influent sur le temps dexcution dun programme ( performance dune machine ).
15 2. Caractristiques de la mmoire centrale La mmoire centrale est ralis a base de semi-conducteurs. La mmoire centrale est une mmoire vive : accs en lecture et criture. La mmoire centrale est dite accs alatoire (RAM : Random Acces Memory) c'est--dire que le temps d'accs l'information est indpendant de sa place en mmoire. La mmoire centrale est volatile : la conservation de son contenu ncessite la permanence de son alimentation lectrique. Un temps daccs une mmoire centrale est moyen mais plus rapide que les mmoires magntiques . La capacit dune mmoire centrale est limite mais il y a toujours une possibilit dune extension. Pour la communication avec les autres organes de lordinateur, la mmoire centrale utilise les bus ( bus dadresses et bus de donnes)
16 3. Types des mmoires centrales
Il existent deux grandes familles des mmoires centrales : les mmoires statiques (SRAM) et les mmoires dynamiques (DRAM). Les mmoires statiques sont base de bascules de type D , elles possdent un faible taux dintgration mais un temps daccs rapide ( Utilisation pour les mmoires cache ). Les mmoires dynamiques base de condensateurs , ces mmoires possdent un trs grand taux dintgration, elle sont plus simples que les mmoires statiques mais avec un temps daccs plus long .
17 4.Vue logique de la mmoire centrale 0001100 0011100 0111100 0001100 0001100 0000 0001 0002 . . .. FFFF Une adresse Contenu dune case (un mot)mmoire La mmoire centrale peut tre vu comme un large vecteur ( tableau ) de mots ou octets. Un mot mmoire stocke une information sur n bits. un mot mmoire contient plusieurs cellules mmoire. Une cellule mmoire stock 1 seul bit . Chaque mot possde sa propre adresse. Une adresse est un numro unique qui permet daccder un mot mmoire. Les adresses sont squentielles ( conscutives ) La taille de ladresse ( le nombre de bits ) dpend de la capacit de la mmoire.
18 5. Structure physique dune mmoire centrale RAM (Registre dadresse Mmoire ) : ce registre stock ladresse du mot lire ou a crire . RIM ( Registre dinformation mmoire ) : stock linformation lu partir de la mmoire ou linformation crire dans la mmoire. Dcodeur : permet de slectionner un mot mmoire. R/W : commande de lecture/criture , cette commande permet de lire ou dcrire dans la mmoire ( si R/W=1 alors lecture sinon criture ) Bus dadresses de taille k bits Bus de donnes de taille n bits
Structure interne RIM R A M Bus dadresse Bus de donnes D E C O D E U R E W R/ 19 5.1. Comment slectionner un mot mmoire ? Un mot mmoire Une cellule mmoire K bits K bits n bits Lorsque une adresse est charge dans le registre RAM , le dcodeur va recevoir la mme information que celle du RAM. A la sortie du dcodeur nous allons avoir une seule sortie qui est active Cette sortie va nous permettre de slectionner un seule mot mmoire. 20 5.2 Comment calculer la capacit dune MC ? Soit k la taille du bus dadresses ( taille du registre RAM) Soit n la taille du bus de donnes ( taille du registre RIM ou la taille dun mot mmoire ) On peut exprimer la capacit de la mmoire centrale soit en nombre de mots mmoire ou en bits ( octets, kilo-octets,.) La capacit = 2 k Mots mmoire La capacit = 2 k * n Bits Exemple : Dans une mmoire la taille du bus dadresses K=14 et la taille du bus de donnes n=4. Calculer la capacit de cette mmoire ?
C=2 14 = 16384 Mots de 4 bits C= 2 14 * 4 = 65536 Bits = 8192 Octets = 8 Ko
21 5.3 Comment lire une information ? Pour lire une information en mmoire centrale il faut effectuer les oprations suivantes: Charger dans le registre RAM ladresse du mot lire. Lancer la commande de lecture ( R/W=1) Linformation est disponible dans le registre RIM au bout dun certain temps ( temps daccs) 22 5.4 Comment crire une information ? Pour crire une information en MC il faut effectuer les oprations suivantes: Charger dans le RAM ladresse du mot ou se fera lcriture. Placer dans le RIM linformation crire. Lancer la commande dcriture pour transfrer le contenu du RIM dans la mmoire .
23 6. Conception des MC 24 Problme ? On veut raliser une mmoire de capacit C , mais nous disposons uniquement de botiers ( des circuits ) de taille infrieur ? Botier Capacit C n m n n m ? Mmoire Capacit C 25 Structure dun botier Un Botier RIM R A M D E C O D E U R E R/W CS CS (Chip Select ) : cest une commande en logique ngative qui permet de slectionner ( activer ) un botier . CS=0 le botier est slectionn CS=1 le botier nest pas slectionn Un botier possde la mme structure quune mmoire ( RAM,RIM,.) en plus de la commande CS. 26 Solution Soit M une mmoire de capacit C , tel que m est le nombre de mot et n la taille dun mot. Soit M un botier de capacit C , tel que m le nombre de mot et n la taille dun mot. On suppose que C > C ( m >= m , n >=n) Quel est le nombre de botiers M ncessaire pour raliser la mmoire M ? Pour connatre le nombre de botiers ncessaire , il faut calculer les deux facteurs suivants : P =m/m Q=n/n 27 Solution (suite ) P : permet de dterminer de nombre de botiers M ncessaire pour obtenir le nombre de mots de la mmoire M ( extension lignes ).
Q : permet de dterminer le nombre de botier M ncessaire pour obtenir la taille de mot de la mmoire M ( extension mots ou extension colonnes).
P.Q donne le nombre totale de botiers ncessaire pour raliser la mmoire M.
Pour slectionner les botiers on utilise les bits de poids forts dadresses. Si P est le facteur dextension lignes alors on prend k bits tel que P=2 k. Les autres bits dadresses restants sont utiliss pour slectionner un mot dans un botier. 28 Exemple 1 Raliser une mmoire de 1Ko ( la taille dun mot est de 8 bits) en utilisant des botiers de taille 256 mots de 8 bits ?
Solution : (m,n)=(1024,8) taille du bus dadresses est de 10 bits A 9 0 (A9A0), taille du bus de donnes est de 8 bits D 7 0 (D7.D0) (m,n)=(256,8) taille du bus dadresses est de 8 bits (A7A0), taille du bus de donnes est de 8 bits (D7.D0) Calculer les deux facteurs dextension lignes et colonnes : P= m/m =1024/256=4 ( extension lignes ) Q= n/n =8/8=1 (extension colonnes)
Le nombre totale de botiers P.Q=4 29 CS CS A 9 8 CS CS A 7 0 D 7 0 D 7 0 D 7 0 D 7 0 R/W 8 bits D 7 0 8 bits 30 Exemple 2 On veut raliser une mmoire de 1Ko ( la taille dun mot est de 16 bits) en utilisant des botiers de taille 1Ko mots de 4 bits ) ?
Solution : (m,n)=(1024,16) taille du bus dadresses est de 10 bits (A9A0), taille de bus de donnes est du 16 bits (D15.D0) (m,n)=(1024,4) taille du bus dadresses est de 10 bits (A9A0), taille de bus de donnes est du 4 bits (D3.D0)
Le nombre totale de botiers P.Q=4 31 A 9 0 D 15 0 CS D 15 12 R/W 10 bits CS D 11 8 CS D 7 4 CS D 3 0 16 bits 32 Exemple 3 On veut raliser une mmoire de 1KO ( la taille dun mot est de 8 bits) en utilisant des botiers de taille 256 mots de 4 bits ) ?
Solution : (m,n)=(1024,8) taille du bus dadresses est de 10 bits (A9A0), taille du bus de donnes est de 8 bits (D7.D0) (m,n)=(256,4) taille du bus dadresses est de 8 bits (A7A0), taille du bus de donnes est de 4 bits (D3.D0)
33 CS CS CS CS A 9 8 CS CS CS CS A 7 0 D 7 4 D 3 0 D 7 0 D 3 0 D 3 0 D 3 0 D 7 4 D 7 4 D 7 4 R/W 8 bits 8 bits 34 Exercice
Raliser une mmoire de 8K X12 ( la taille dun mot est de 12 bits) en utilisant des botiers de taille 2048 mots de 4 bits ) ? 35 7. Architectures des mmoires centrales 36 Dans une architecture un seul processeur : le processeur lexclusivit daccder la mmoire. Le rendement de lUC nest conditionne que par le temps daccs la MC. Demande de la lecture Disponibilit de linformation UC inactive Mmoire Centrale Processeur 37 Si le calculateur possde plusieurs processeurs qui fonctionnent en parallle ( en mme temps ), cest possible que deux processeurs ou plus demandent daccder la mmoire la mme instant. Si la mmoire est structure en un seul bloc alors un processeur peut monopoliser la MC. Mme si le temps daccs est trs petit, des processeurs vont tre pnaliss donc la structure de la MC est aussi importante. P1 P2 P3 P4 MC 38 7.1 Mmoire modulaire P1 M4 M3 M2 M1 P2 P3 P4 MC La solution est de dcouper la mmoire en plusieurs modules. Plusieurs bus permettent daccder simultanment (en mme temps) la MC. Possible davoir autant daccs que de modules. On ne peut pas accder simultanment un module. Remarques : Les adresses lintrieur dun module sont squentiels ( successives ) Cest possible quun module soit raliser avec des botiers de taille infrieur ( il faut calculer les facteur dextension lignes et colonnes ) 39 Comment slectionner un mot dans une architecture modulaire ? Ladresse est divise en deux parties : Les bits de poids forts pour slectionner un module. Si le nombre de module est gale n , alors il faut prendre k bits tel que 2 k >= n Les bits de poids faibles pour slectionner un mot dans un module. N module adresse mot 40 Exemple Soit une mmoire de taille de 4 Ko. Cette mmoire est dcoupe en 4 modules. Donner le schma de cette mmoire en utilisant des botiers de 1 Ko?
Solution :
Capacit = 4 Ko = 4* 2 10 = 2 12 la taille du bus dadresses est de 12 bits ( A 11 0 ). 4 modules 2 bits du poids forts pour la slection des modules ( A 11 10 ) Les autres bits pour la slection dun mot dans un module ( A 9 0 ) 41 CS CS A 11 10 CS CS A 9 0 D 7 0 D 7 0 D 7 0 D 7 0 R/W 10 bits D 7 0 Module 0 Module 1 Module 2 Module 3 8 bits 42 Exercice 1 : Soit une mmoire de taille de 4 Ko. Cette mmoire est dcoupe en 4 modules. Donner le schma de cette mmoire en utilisant des botiers de 512 mots de 8 bits? Exercice2 : Soit une mmoire de taille de 4 Ko. Cette mmoire est dcoupe en 4 modules. Donner le schma de cette mmoire en utilisant des botiers de 512 mots de 4 bits?
43 7.2 Mmoire entrelace Avec une MC modulaire , cest possible quun processeur monopolise un module ( par exemple il accde a des adresse conscutive ), Pour viter ce problme : Un module est divis en plusieurs Blocs . les adresses conscutive sont plac dans des bloc diffrents . Le nombre de blocs reprsente le degr dentrelacement. 44 Slectionner un mot dans une MC entrelace Ladresse est divise en deux parties : Les bits de poids faibles pour slectionner le bloc. Si on dispose de n bloc , il faut prendre k bits tel que 2 k >=n. Les bits de poids forts pour slectionner le mot dans le bloc . Adresse du mot N bloc 45 Exemple 1 : une mmoire entrelace avec un degr dentrelacement gale 4 , un bloc est de taille de 4 mots Bloc 0 4 blocs et la taille dun bloc est gale 4 mots de 4 bits taille de la mmoire est gale 16 mots de 4 bits. Il existe 4 blocs 2 bits de poids faibles pour la slection A 1 0 Les bits de poids forts ( A 3 2 ) pour slectionner un mot dans un bloc.
Ladresse 0000 bloc 0 ( bits poids faible 00) Ladresse 0001 bloc 1 ( bits poids faible 01) Ladresse 0010 Bloc 2 Ladresse 0011 Bloc 3 Ladresse 0100 Bloc 0 .. .. 0000 0100 1000 1100 Bloc 1 0001 0101 1001 1101 Bloc 2 0010 0110 1010 1110 Bloc 3 0011 0111 1011 1111 46 Exemple 2 Raliser une mmoire de capacit 512 mots de 8 bits avec des botiers de 128 mots de 8 bits avec un degr entrelacement de 4. Capacit 512 =2 9 ( taille de bus dadresses =9 ) Taille dun mot =8 taille du bus de donnes =8 4 blocs taille dun bloc = 512/4 =128 Taille dun botier = 128 *8 un botier par bloc est suffisant 2 bits de poids faibles pour la slection dun bloc A 1 0 Les bits de poids fort ( A 8 2 ) pour slectionner un mot dans un bloc. 47 CS CS A 1 0 CS CS A 8 2 D 7 0 D 7 0 D 7 0 D 7 0 R/W 7 bits D 7 0 Bloc 0 Bloc 1 Bloc 2 Bloc 3 8 bits 48 Exercices Exercice 1 : Raliser une mmoire de capacit 512 mot de 8 bits avec des botiers de 64 mots de 8 bits avec un degr entrelacement de 4. Exercice 1 : Raliser une mmoire de capacit 512 mot de 8 bits avec des botiers de 64 mots de 4 bits avec un degr entrelacement de 4. 49 7.3 Les mmoires modulaires entrelaces La MC est divise en plusieurs modules Chaque module est divis en n Blocs ( n le degr dentrelacement) Pour slectionner un mot : Il faut slectionner le module ( bits de poids forts ) Slectionner le bloc dans le module ( bits de poids faibles ) Slectionner le mot dans le bloc ( les bits restant ) N module adresse mot N Bloc 50 Exemple Raliser une mmoire de 64 mots de 8 bits organis en deux modules entrelac , lentrelacement se fait lintrieur ( D=2). En utilisant des circuits ( botiers ) de 16 mots de 8 bits.
La taille du bus dadresses k= 6 ( 64=2 6 ) A 5 0 Le nombre de module m=2 , la taille dun module est gale 32 mots. Le nombre de bits pour slectionner un module est gale 1 (A 5 ). Le nombre de blocs dans un module D=2 le nombre de bits ncessaire pour slectionner un bloc est gale 1 (A 0 ) la taille dun bloc est gale 16 mots un circuit suffit pour raliser un bloc Le nombre de bits ncessaire pour slectionner une mot dans le bloc est gale 4 (A 4 1 ) 51 CS CS A 5 CS CS A 4 1 D 7 0 D 7 0 D 7 0 D 7 0 4 bits D 7 0 A 0 Module 0 Bloc 0 Bloc 1 Bloc 0 Bloc 1 Module 1 M0 M1 B0 B1 8 bits 52
Exercice : Raliser une mmoire de 128 Ko ( taille dun mot est 8 bits ) organis en quatre modules entrelacs avec un degr dentrelacement D=4 ( lentrelacement se fait lintrieur des modules), en utilisant des circuits ( botiers ) de 4 Ko mots de 4 bits.