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

m
==Les caches adressés par somme et hashés==
 
Pour rappel, la gestion de certains modes d'adressage demande que le processeur calcule l'adresse. Les calculs d'adresse en question sont généralement assez simples : ils prennent une adresse de base, à laquelle ils ajoutent une constante. Généralement, l'adresse de base est l'adresse d'un tableau ou d'une structure, et la constante ajoutée indique la position de la données dans le tableau/la structure. Le processeur lit généralement l'adresse de base et le décalage (la constante à ajouter) depuis deux registres et c'est l'unité d'accès à la mémoire qui fait l'addition. Mais dans certains cas, l'addition peut être faite directement dans la mémoire cache, voire omise ou remplacée par des opérations plus simples. Les optimisations qui permettent cela donnent les caches hashés et les caches adressés par somme. Voyons d'abord les caches hashés, avant de passer aux caches adressés par somme.
Pour rappel, certains modes d'adressage ont besoin de faire des calculs d'adresse, les plus communs consistant à ajouter un décalage à une adresse.
 
===Les caches hashés===
 
PourSur éviterles d'effectuer l'addition'caches entre lhashés'''adresse et le décalage, certains concepteurs de mémoire cache ont cherchés à ruser en remplaçant l'addition est remplacée par une autre choseopération, notammentpar exemple des opérations bit à bit du style XOR, AND ou OR, etc. De tels caches sont appelés des '''caches hashés'''. Seulement, utiliser des opérations bit à bit apose un problème : il arrive que deux couples Adresse/décalage donnent lale même adresse mémoire, après l'application de l’opération bit à bitrésultat. Par exemple, le couple Adresse/décalage 11101111/0001 donnera la même adresse que le couple 11110000/0000. Dit autrement, deux adresses censées être différentes (après application du décalage) sont en réalité attribuées à la même ligne de cache. Il étaitest toutefois possible de gérer ces situations, mais cela nécessitaitdemande quelquesdes techniquesastuces de haute volée pour faire fonctionner la mémoire cache correctement.
 
===Les caches adressés par somme===
39 492

modifications