2017-07-06 8 views
0

Pour autant que je sache à propos du cache virtuellement étiqueté virtuellement indexé, nous avons ici une adresse virtuelle divisée en numéro de page et décalage de page. Nous utilisons ce numéro de page pour obtenir le bloc de cache. S'il y a un manque de cache, nous adressons la traduction en utilisant TLB et récupérons le bloc de cache approprié de la mémoire principale. Mon doute est quelle est la signification du mot "indexé" ici? Est-ce la façon dont les lignes de cache sont adressées? Et quelle est la signification de pratiquement marqué?Cache virtuellement étiqueté virtuellement indexé

Merci.

Répondre

1

Dans les caches VIVT, l'adresse virtuelle est utilisée pour les comparaisons d'étiquettes et l'indexation. En général, les caches CPU ont un index et une balise, qui sont deux parties d'une adresse mémoire. La partie index de l'adresse est utilisée pour indexer l'entrée dans un cache. Tag est utilisé pour vérifier que l'entrée que nous recherchons est la même que l'entrée qui est en cache. L'indexation et le marquage peuvent être effectués en utilisant soit une adresse physique, soit des adresses virtuelles, soit une combinaison des deux. VIPT - Virtuellement indexé physiquement balisé

Pour répondre à votre question, l'indexation signifie récupérer l'entrée de cache représentée par les bits d'index. Signifie virtuellement que les bits d'étiquette utilisés pour la comparaison proviennent d'adresses virtuelles.

+0

Merci pour votre réponse. Pouvez-vous me dire quelle partie de l'adresse virtuelle contient le tag? Est-ce le numéro de page ou le décalage de page? – Zephyr

+0

Ce sont des choses différentes. Le numéro de page et le décalage de page permettent d'accéder à la table de la page et aux informations sur l'adresse physique. Les bits d'étiquette sont déterminés par la taille des bits d'index qui sont à leur tour déterminés par la taille de l'antémémoire. –