AARRCCHHIITTEE CCTTUURREE DDEESS OORRDDIINNAATTEEUURRSS
CCOORRRREECCTTIIOONN TTDD NN°°44
Organisation de la mémoire centrale
Niveau : 1ère année BC 1,2,3,4 Année universitaire : 2019/2020
Exercice 1 :
Déterminer les noms des acronymes suivants :
Espace d’Adressage Direct
Nombre de cases mémoires CA
Taille Mémoire Centrale
Taille d’adresse mémoire
Adresse basse mémoire
Nombre de blocs
Nombre de cases blocs
Taille d’adresse Bloc
Adresse basse du Bloc
EAD
NCM
TMC
T@M
@bM
NB
NCB
T@B
@bB
Tbus@ Taille bus d’adresse
Décodeur d’adresse
Dec@
TCM
Taille Case Mémoire
Capacité d’adressage
Adresse haute mémoire
Taille Bloc
Nb@M Nombre de bits d’adresse mémoire
NL@M Nombre de Ligne d’adresse mémoire
@hM
TB
Nb@B Nombre de bits d’adresse Bloc
NL@B Nombre de Lignes d’adresse Bloc
@hB
Adresse haute du Bloc
TbusD Taille bus de données
DecB
Décodeur de Blocs
Exercice 2 :
TCM = 16b = 2 = 24b
EAD = 128M = 27 220 23 = 230 b
1 = 23 ; 1K = 210 ; 1M =220 ; 1G = 230
1. a- Nombre de bits d’@ = 30b
b- Nombre de bits de données = 16b
2. Capacité de la mémoire centrale TMC = EAD . TCM
a. TMC en bits : 230 . 24 = 234 b
b. TMC en : 234 b = 231 . 23 = 231
c. TMC en K : 234 b = 221 . 210 . 23 = 221 K
d. TMC en M : 234 b = 211 . 220 . 23 = 211 K
e. TMC en G : 234 b = 21 . 230 . 23 = 2G
3. l’adresse basse et l’adresse haute comporte 30b
a- @basse = ( 00 0000 0000 0000 0000 0000 0000 0000 )2
= ( 0)16
b- @haute = ( 11 1111 1111 1111 1111 1111 1111 1111 )2
= ( 3 F F F F F F F )16
4. TB = Taille du bloc = 1G = 230b
Nombre de Blocs = NB = TMC / TB = 234 / 230 = 24
Nombre de cases blocs = NCB = TB / TCB = 230 / 24 = 226
NL@M = 30
NbDB = 4
NL@B : 26
Les @basses et les @hautes des 16 blocs en Binaire
Bli
A29
A28
A27
A26
A25
…………… .
A0
Bl0
Bl1
Bl2
Bl3
Bl4
Bl5
Bl6
Bl7
Bl8
Bl9
Bl10
Bl11
Bl12
Bl13
Bl14
Bl15
0
0
0
0
@b
@h
0
0
0
0
@b 0 0 0 1
@h
1
0
0
0
@b
@h
0
0
0
@b
1
@h
1
0
1
@b
0
@h
0
1
1
@b
1
@h
1
1
@b
1
0
@h
0
1
1
1
@b
@h
1
1
0
0
@b
@h
0
0
0
@b
Publicité
1
@h
1
0
0
@b
0
@h
0
0
0
@b
1
@h
1
0
@b
1
0
@h
0
1
@b
1
1
@h
1
1
1
@b
0
@h
0
1
1
@b
1
1
1
@h
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
Publicité
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
……………… .
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
Les @basses et les @hautes des 16 blocs en hexadécimal
Bli
A7
A6
A5
A4
A3
A2
A1
A0
Bl0
Bl1
Bl2
Bl3
Bl4
Bl5
Bl6
Bl7
Bl8
Bl9
Bl10
Bl11
Bl12
Bl13
Bl14
Bl15
0
0
0
F
0
3
@b
@h
0
F
0
F
0
F
0
F
0
F
@b 0 4 0 0 0 0 0 0
F
@h
0
@b
F
@h
0
@b
F
@h
0
@b
F
@h
0
@b
F
@h
0
@b
F
@h
0
@b
F
@h
@b
0
F
@h
0
@b
F
@h
0
@b
F
@h
0
@b
F
@h
0
@b
F
@h
@b
0
F
@h
0
@b
F
@h
0
@b
F
@h
F
Publicité
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
7
8
B
C
F
0
3
4
7
8
B
C
F
0
3
4
7
8
B
C
F
0
3
4
7
8
B
C
F
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
0
0
0
0
Publicité
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
0
F
Exercice 3 :
1. MM = 4 = 22 23 = 25 = 32 = 8.4 = 8d
MW = 128b = 27 = 24 23 = 16 = 32d
2. MW = 4 MM
3. 4 opérations de lectures
Exercice 4 :
1. Les différences qualitatives entre une mémoire centrale et une mémoire cache.
Mémoire Centrale : MC
Mémoire Cache : MCa
- Capacité de stockage supérieure
- Capacité de stockage inférieure
- Moins rapide
- Plus rapide
- Coût faible par unité de stockage
- Coût élevé par unité de stockage
- Construite par SRAM, DRAM…
- Construite par SRAM
2.
TMCache = NLcache . TLCache
NLcache=2048
TLcache = TBV + NbDB + TB
NbDB = ? TB= ?
TMC = 232 MM
EAD = 232
MM (mot mémoire) = TCM = 1 = 23 = 8b
TB= 32b = 4 mots mémoire = 22 . 23 = 25
TMC = EAD . TCM = 232 . 23 = 235
NB = TMC / TB = 235 / 25 = 230
NB=2NbDB=230 -
NbDB=30
Donc TLcache = 1 + 30 + 32 = 63
TMCache = 2048 . 63 = 129024 = 16128
3. Récupération du contenu des cases en utilisant la cache :
Avant tout, les étudiants doivent diviser la cache en trois colonnes en se basant sur les
calculs dé jà fais dans la partie précédente :
BV
Bits qui Désignent un Bloc
Contenu du Bloc
1
0
1
000000000000000000000000010100
000000000000000000001000000000
01010101010101011000100101010111
11110101010101010000100101011111
000000000000000000000000011111
11110101010101010000100101011111
En plus, il faut déterminer NCB = TB/TCB = 32/8 = 25 / 23 = 22 = 4
1cas- Récupération du contenu de la 49
ème
Etape 1 : Déterminer l’indice du bloc contenant la C48 :
Indice du boc = indice case demandée / NCB (Nombre de cases blocs)
Indice du boc = 48/4 = 12 ; Reste = 0
Etape 2 : Chercher le Bloc B12 dans les lignes valides de la cache (BV = 1)
Il ya deux lignes valides : L0 et L2
-
- L’adresse du bloc associé à L0 = (000000000000000000000000010100)2 = 1x2
= (20)10
- L’adresse du bloc associé à L2 = (000000000000000000000000011111)2 = 1x2
3
+ 1x2
4
1x2
= 1 + 2 + 4 + 8 + 16 = (31)10
2
0
+ 1x2
+ 1x2
4
1
= 4 + 16
+ 1x2
2
+
Alors le Bloc B12 n’existe pas dans la cache.
Etape 3 : Dans ce cas, il faut récupérer B12 de la mémoire centrale et l’enregistrer dans la cache.
Malgré que dans cet exercice le contenu de tout le bloc existe et il n’est pas divisé en
cases, vous demandez aux étudiants de détermine r la case du début du B12.
Indice de la case du début d’un bloc = indice du bloc x NCB
Indice de la case du début du B12 = 12 x 4 = 48
-
- Enregistrer B12 dans la cache (vous laisser les étudiants choisir s’il ajoute une autre ligne ou
écraser le contenu de la deuxième ligne sachant que je préfère qu’ils ajoutent une ligne pour
qu’ils puissent voir le cas d’un bloc existant dans la cache mais puisqu’il est dans une ligne
non valide comme dans le case de case 4100)
- La ligne ajoutée est la suivante :
1
000000000000000000000000001100
11111111110001110111101101011111
Etape 4 : récupérer le contenu de la C48 en utilisant le reste de la division de l’étape1.
- Dans tout les cas : le contenu d’une case est à récupérer après Reste x TCB (dans cet exercice =
8b) bits.
- Alors dans le cas de C48 : on commence à récupérer le contenu de C48 (8b = TCB) après 0 x 8 bits
(0bits) Alors le contenu de C48 = (11111111)2
En fait : B12 comporte C48, C49, C50 et C51.