A cache memory replacement algorithm replaces cache lines based on the
likelihood that cache lines will not be needed soon. A cache memory in
accordance with the present invention includes a plurality of cache lines
that are accessed associatively, with a count entry associated with each
cache line storing a count value that defines a replacement class. The
count entry is typically loaded with a count value when the cache line is
accessed, with the count value indicating the likelihood that the contents
of cache lines will be needed soon. In other words, data which is likely
to be needed soon is assigned a higher replacement class, while data that
is more speculative and less likely to be needed soon is assigned a lower
replacement class. When the cache memory becomes full, the replacement
algorithm selects for replacement those cache lines having the lowest
replacement class. Accordingly, the cache lines selected for replacement
contain the most speculative data in the cache that is least likely to be
needed soon.
Un algoritmo del reemplazo de la memoria de escondrijo substituye las líneas del escondrijo basadas en la probabilidad que las líneas del escondrijo no serán necesitadas pronto. Una memoria de escondrijo de acuerdo con la actual invención incluye una pluralidad de líneas del escondrijo que estén alcanzadas sociable, con una entrada de la cuenta asociada a cada línea del escondrijo que almacena un valor de cuenta que defina una clase del reemplazo. La entrada de la cuenta se carga típicamente con un valor de cuenta cuando la línea del escondrijo está alcanzada, con el valor de cuenta indicando la probabilidad que el contenido de las líneas del escondrijo será necesitado pronto. Es decir datos que son probables ser necesitados pronto se asignan una clase más alta del reemplazo, mientras que los datos que son más especulativos y menos probables ser necesitados pronto se asignan una clase más baja del reemplazo. Cuando se convierte la memoria de escondrijo por completo, el algoritmo del reemplazo selecciona para el reemplazo esas líneas del escondrijo que tienen la clase más baja del reemplazo. Por consiguiente, las líneas del escondrijo seleccionadas para el reemplazo contienen los datos más especulativos en el escondrijo que es lo más menos posible probable ser necesitado pronto.