Así que estoy realizando un ejercicio de tarea y no estoy entendiendo la solución al problema. Se nos da una secuencia de referencias de memoria y debemos usar un conjunto de tres vías de caché asociativa con bloques de dos palabras y un tamaño total de 24 palabras. (Para consultar la pregunta aquí ). Según su solución, el desplazamiento es de 1 bit, el índice es de dos bits y la etiqueta son los bits restantes.
Primero, para asegurarme de que entiendo, hay cuatro conjuntos porque cada conjunto contiene 3 bloques (conjunto asociativo de tres vías), y hay un total de 12 referencias de memoria, por lo que 12/3 = 4 conjuntos, por lo que los índices en binario sería 00, 01, 10 y 11, cada uno con tres "ranuras" para datos.
En segundo lugar, las referencias de memoria provienen de otro problema donde se indica que las referencias se dan como "direcciones de palabras". ¿Significa esto que son palabras direccionables, no bytes direccionables? Si es así, pensé que, dado que el caché tiene dos bloques de palabras (8 bytes), el desplazamiento sería de 3 bits (2 ^ 3)? ¿Cuál es el significado de tener bloques de dos palabras o de una sola palabra?
Mi principal dificultad es comprender cómo se calculan los bits de desplazamiento en diferentes asignaciones de caché. Entiendo el método de reemplazo en el sentido de que el último elemento usado recientemente es el que se reemplazará por un elemento entrante.