conception des systèmes de mémoire introduction : Jusqu'à présent, nous avons t

conception des systèmes de mémoire 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 • La hiérarchie de la mémoire: de rapide et cher à lent et bon marché • Exemple: Registres-> Cache–> Mémoire principale-> Disque • Dans un premier temps, ne considérez que deux niveaux adjacents dans la hiérarchie • Le cache: haut débit et cher Types: mappé direct, associatif, ensemble associatif • Mémoire virtuelle - rend la hiérarchie transparente • Traduire l’adresse de l’adresse logique du processeur en adresse physique où les informations sont effectivement stockées • Gestion de la mémoire - comment faire reculer les informations et en avant • Multiprogrammation - que faire pendant que nous attendons • Le «TLB» permet d’accélérer la traduction des adresses Processus The CPU–Main Memory Interface Séquence d'événements: Lis: 1. Le processeur charge MAR, émet Read et REQUEST 2. La mémoire principale transmet les mots au MDR 3. La mémoire principale déclare COMPLETE. Écrire: 1. Le processeur charge MAR et MDR, affirme Write et REQUEST 2. La valeur en MDR est écrite dans l'adresse en MAR. 3. La mémoire principale déclare COMPLETE. Un peu de mémoire Propriétés : Symbole Définition Intel Intel IBM / Moto. 8088 8086 601 w Taille de mot du processeur 16 bits 16 bits 64 bits m Bits dans une adresse de mémoire logique 20 bits 20 bits 32 bits s Bits dans la plus petite unité adressable 8 8 8 b Taille du bus de données 8 16 64 2 m capacité wd, taille s wds 220 220 232 2mxs Capacité de mémoire en bits 220x8 220x8 232x8 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) »? Architecture Intel au fil du temps : 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. Cartes et modules de mémoire : • Il est nécessaire de disposer de mémoires plus grandes et plus larges qu’une seule puce Les puces peuvent être organisées en «planches». Les tableaux peuvent ne pas être des tableaux physiques réels, mais peuvent être constitués de matrices de puces structurées présentes sur la carte mère. • Une carte ou un ensemble de cartes constitue un module de mémoire. Modules de mémoire: Satisfaire le processeur - exigences de l'interface de la mémoire principale Peut avoir une capacité de rafraîchissement DRAM • Peut augmenter la capacité totale de la mémoire principale • Peut être entrelacé pour fournir un accès plus rapide aux blocs de mots. 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 : Performances du système de mémoire : Diviser le processus d'accès à la mémoire en étapes: Pour tous les accès: • transmission d'adresse en mémoire • transmission des informations de contrôle en mémoire (R / W, Request, etc.) • décodage d'adresse par mémoire Pour une lecture: • retour des données de la mémoire • transmission du signal d’achèvement Pour une écriture: • Transmission des données à la mémoire (généralement simultanée avec l'adresse) • stockage des données dans des cellules mémoire • transmission du signal d’achèvement RAM statique et dynamique Horaire : niveaux de la hiérarchie de la 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. Primary and secondary levels of the memory hierarchy : 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. La fonction de mappage de cache : La fonction de mappage de cache est responsable de toutes les opérations de cache: • Stratégie de placement: où placer un bloc entrant dans le cache • Stratégie de remplacement: quel bloc remplacer en cas d’échec • Politique de lecture et d'écriture: comment gérer les lectures et les écritures en cas d'échec du cache. La fonction de mappage doit être implémentée dans le matériel. (Pourquoi?) Trois types différents de fonctions de cartographie: •Associatif • Direct mappé • Association par blocs Champs de mémoire et traduction d'adresse: Exemple d'adresse virtuelle 32 bits émise par le processeur: Cette même adresse 32 bits partitionnée en deux champs, un champ de bloc, et un champ de mot. Le champ de mot représente le décalage dans le bloc spécifié dans le champ de bloc: Exemple de référence mémoire spécifique: bloc 9, mot 11. Mécanisme de cache associatif : Parce que n'importe quel bloc peut résider n'importe où dans le cache, un (content adressable) est utilisée. Tous les emplacements sont recherchés simultanément. Avantages et inconvénients du cache mappé associatif : Avantage • Le plus flexible de tous - n'importe quel bloc MM peut aller n'importe où dans le cache. Désavantages • Grande mémoire de balises. • Le besoin de rechercher simultanément la totalité de la mémoire de balises signifie Matériel. La politique de remplacement pose un problème lorsque le cache est plein. -plus tard- 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. Un mot sur les adresses: • Adresse effective - une adresse calculée par le processeur pendant exécuter un programme. Synonyme d'adresse logique • Le terme Adresse effective est souvent utilisé pour désigner activité à l'intérieur du CPU. L'adresse logique est le plus souvent utilisée lorsque se référant aux adresses vues de l'extérieur du CPU. • Adresse virtuelle - l'adresse générée à partir de l'adresse logique par l'unité de gestion de la mémoire, MMU. • Adresse uploads/Geographie/ conception-des-systemes-de-memoire1.pdf

  • 16
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager