Hiérarchie mémoire

Quel est le principal avantage d’un cache L1 séparé en cache d’instructions (cache I) et cache de données (cache D) ?

  1. ALes instructions et les données placées à la même adresse n’entrent plus en conflit, et la capacité semble doublée
  2. BLa lecture des instructions et la lecture/écriture des données peuvent avoir lieu en parallèle dans le même cycle d’horloge
  3. CLes instructions n’étant pas modifiées, le cache D peut être supprimé
Afficher la réponse et l'explication

Réponse : B. La lecture des instructions et la lecture/écriture des données peuvent avoir lieu en parallèle dans le même cycle d’horloge

Dans un pipeline, une instruction est lue à chaque cycle pendant qu’une autre lit ou écrit des données. Séparer le L1 en caches d’instructions et de données permet d’effectuer les deux accès en parallèle sans se disputer un port unique, et d’adapter la configuration de chacun à ses caractéristiques. La capacité n’est pas doublée : la capacité totale est partagée. Les lectures et écritures de données étant toujours nécessaires, le cache D ne peut pas être supprimé. À partir du L2, instructions et données sont généralement partagées.

S'entraîner sur ce thème Retour au thème

Autres questions sur Hiérarchie mémoire

  1. Dans un système à pages de 4 KB et lignes de 64 octets, le cache L1 est à index virtuel et étiquette physique (VIPT), et l’index et le déplacement doivent n’utiliser que des bits internes à la page. Avec une associativité à 8 voies, quelle est la capacité maximale du cache ?
  2. Pourquoi le schéma à index virtuel et étiquette physique (VIPT) est-il couramment utilisé pour les caches L1 ?
  3. Avec un temps de succès de 2 cycles, un taux de défauts de 4% et une pénalité de défaut de 150 cycles, quel est le temps moyen d’accès mémoire en cycles ?
  4. Un processeur a un CPI moyen de 1.0 avec un cache idéal. Il effectue en moyenne 1.3 accès mémoire par instruction, avec un taux de défauts de 2% et une pénalité de défaut de 100 cycles. Quel est le CPI moyen réel ?
  5. Quel est le principal avantage d’un cache non bloquant (cache qui accepte d’autres accès pendant le traitement d’un défaut) ?

Comparatifs sur ce thème