« Fonctionnement d'un ordinateur/Les mémoires cache » : différence entre les versions

Contenu supprimé Contenu ajouté
Ligne 100 :
===Les caches directement adressés===
 
Avec lesLes caches directement adressés, peuvent être vus comme un cache totalement associatif auquel on aurait ajouté des restrictions assez drastiques. La restriction principale est que le contenu d'une adresse mémoire est chargée dans une ligne de cache prédéfinie, toujours la même. L'accès au cache a donc l'avantage d'être très rapide vu qu'il suffit de vérifier une seule ligne de cache : celle prédéfinie. Mais ces caches ne sont cependant pas sans défauts. Vu que le cache est plus petit que la mémoire, certaines adresses mémoires se partagent la même ligne de cache. Si le processeur a besoin d’accéder fréquemment à ces adresses, chaque accès à une adresse supprimera l'autre du cache : tout accès à l'ancienne adresse se soldera par un défaut de cache. Ce genre de défauts de cache causés par le fait que deux adresses mémoires ne peuvent utiliser la même ligne de cache s'appelle un '''défaut par conflit''' (''conflict miss''). Ainsi, le taux de succès de ce genre de cache est assez faible.
 
[[File:Cache adressé directement.png|centre|vignette|upright=2|Cache adressé directement.]]
 
Les concepteurs de caches s'arrangent pour que des adresses consécutives en mémoire RAM occupent des lignes de cache consécutives, par souci de simplicité. ChaqueEn ligneconséquence, une partie de cachel'adresse possèdemémoire unsert indice,à uneindiquer sortela d'adresseposition internede quila permetdonnée dans le cache. Le reste de l'identifieradresse sert encode le tag et la sélectionnerposition parmide toutesla lesdonnée autresdans lignesle ligne de cache. IlLa neposition s'agitde pasla vraimentligne d'unede adresse,cache vudans quela lemémoire cacheRAM n'est pasappelé adressablel'indice. viaOn peut le busvoir comme une sorte d'adresse interne au cache qui permet de l'identifier et la sélectionner parmi toutes les autres lignes.
 
[[File:Cache hash table - 2.png|centre|vignette|upright=2|Cache hash table - 2]]