An associative cache and method for replacing data entries in the
associative cache by marking input-output (IO) device entries with an IO
state. The IO state of a data entry may be indicated by a status or state
tag. When valid data entries in a cache must be replaced to make way for
new data, entries marked with an IO state are replaced first. This order
of replacement improves the cache hit rate by non-IO agents such as data
processors by preserving their data entries in the cache. If no valid data
entries in the associative cache are marked with an IO state, the method
reverts to conventional replacement algorithms such as random or
least-recently-used (LRU) to determine which data will be replaced.
Um esconderijo e um método associativos para substituir introduções de dados de no esconderijo associativo marcando entradas do dispositivo do input-output (IO) com um estado do IO. O estado do IO de uma introdução de dados de pode ser indicado por um Tag do status ou do estado. Quando as introduções de dados de válidas em um esconderijo devem ser substituídas para fazer a maneira para dados novos, as entradas marcadas com um estado do IO estão substituídas primeiramente. Esta ordem da recolocação melhora a taxa de batida do esconderijo por agentes de non-Non-IO tais como processadores de dados preservando suas introduções de dados de no esconderijo. Se nenhuma introdução de dados de válida no esconderijo associativo for marcada com um estado do IO, o método reverts aos algoritmos convencionais da recolocação tais como aleatório ou least-recently-used (LRU) para determinar que dados serão substituídos.