Académique Documents
Professionnel Documents
Culture Documents
introduction :
Jusqu'à présent, nous avons traité la mémoire comme un tableau de mots
limité
en taille uniquement par le nombre de bits d'adresse. La vie est rarement
si facile...
Des problèmes du monde réel surviennent:
•Coût
•la vitesse
•Taille
•consommation d'énergie
•volatilité
•etc.
À quels autres problèmes pensez-vous qui influenceront la mémoire
conception?
• Composants de la mémoire:
• Cellules de mémoire RAM et matrices de cellules
• RAM statique - plus chère, mais moins complexe
• Décodeurs Tree et Matrix - nécessaires pour les puces RAM volumineuses
• RAM dynamique - moins chère, mais doit être «rafraîchie»
• Organisation de la puce
•Horaire
• ROM: mémoire en lecture seule
• Cartes mémoire
• Les tableaux de puces donnent plus d'adresses et / ou des mots plus larges
• Baies de puces 2-D et 3-D
• Modules de mémoire
• Les grands systèmes peuvent bénéficier du partitionnement de la mémoire
pour
• accès séparé par les composants du système
• accès rapide à plusieurs mots
Espace de rangement :
Lorsque les types de données dont la taille de mot est supérieure à la plus
petite
les unités adressables sont stockées en mémoire la question se pose,
«La partie la moins significative du mot stockée au
adresse la plus basse (petit endian, petit bout en premier) ou–
est la partie la plus significative du mot stocké au
adresse la plus basse (big Endian, big end en premier) »?
Cellules de mémoire :
Quelle que soit la technologie, toutes les cellules de mémoire RAM doivent
fournir
Ces quatre fonctions: Select, DataIn, DataOut et R / W.
Cette cellule RAM «statique» n'est pas réaliste en pratique, mais elle est
fonctionnellement correcte.
Nous discuterons de conceptions plus pratiques plus tard.
Rafraîchir le compteur :
• Chaque ligne doit être actualisée tous les R μs
• Il y a N lignes dans la DRAM donc chaque R / N μs dont nous avons besoin
pour rafraîchir l'un d'entre eux.
Machine d'état du contrôleur de mémoire :
Quelques définitions:
Localité temporelle: la propriété de la plupart des programmes qui si une
mémoire donnée
l'emplacement est référencé, il sera probablement à nouveau référencé,
«bientôt».
Localité spatiale: si un emplacement mémoire donné est référencé, ces
emplacements
près de lui numériquement sont susceptibles d'être référencés «bientôt».
Ensemble de travail: ensemble d'emplacements mémoire référencés sur une
période fixe de
heure, ou dans une fenêtre de temps.
Notez que les localités temporelles et spatiales fonctionnent toutes deux
pour garantir que le contenu
du jeu de travail ne change que lentement au cours du temps d'exécution.
Vitesse entre niveaux définis par la latence: temps d'accès au premier mot, et
bande passante, le nombre de mots par seconde transmis entre les niveaux.
• L'élément de commerce entre deux niveaux est le bloc.
• Les blocs peuvent différer / différeront en taille à différents
niveaux de la hiérarchie.
Exemple: taille du bloc de cache ~ 16-64 octets.
Taille du bloc de disque: ~ 1-4 Koctets.
• Au fur et à mesure que le jeu de travail change, les blocs sont
déplacés d'avant en arrière
hiérarchie pour satisfaire les demandes d'accès à la mémoire.
• Une complication: les adresses seront différentes selon le niveau.
Adresse primaire: l'adresse d'une valeur au niveau primaire.
Adresse secondaire: l'adresse d'une valeur au niveau secondaire
Mémoire virtuelle :
La mémoire virtuelle est une hiérarchie de mémoire, généralement
constituée de
moins de mémoire principale et de disque, dans lequel le processeur émet
tout
références de mémoire en tant qu'adresses effectives dans un espace
d'adressage plat.
Toutes les traductions vers les adresses principales et secondaires sont gérées
de manière transparente au processus faisant la référence d'adresse, ainsi
donnant l'illusion d'un espace d'adressage plat.
Rappelez-vous que les accès au disque peuvent nécessiter 100000 cycles
d'horloge pour
terminé, en raison du temps d'accès lent au sous-système de disque. Une fois
que
le processeur a, grâce à la médiation du système d'exploitation, fait
la demande appropriée au sous-système de disque, il est disponible pour
d'autres
Tâches.
La multiprogrammation partage le processeur entre des
programmes résidant dans la mémoire principale et donc disponibles pour
exécution.
Mémoire virtuelle :
L'unité de gestion de la mémoire, MMU est responsable du mappage logique
adresses émises par la CPU à des adresses physiques présentées à
le cache et la mémoire principale.