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).


9
3.Caractristiques des mmoires
3. Mode daccs linformation ( lecture /criture )

Sur une mmoire on peut effectuer lopration de :

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)

P=1024/1024=1 ( extension lignes )
Q=16/4=4 (extension colonnes)

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)

P=1024/256=4 ( extension lignes )
Q=8/4=2 (extension colonnes)

Le nombre totale de botiers P.Q=8

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.