Back to results
US 8,751,753 B1Granted
Coherence de-coupling buffer
OwnerGuillermo J. Rozasinventor
Life of this patent
Estimating the term…
Abstract
A coherence decoupling buffer. In accordance with a first embodiment of the present invention, a coherence decoupling buffer is for storing tag information of cache lines evicted from a plurality of cache memories. A coherence decoupling buffer may be free of value information of the plurality of cache memories. A coherence decoupling buffer may also be combined with a coherence memory.
Claims11
A cache system comprising:
- a cache memory including a plurality of cache lines, wherein the cache memory is configured to receive a local access;
- and
- a coherence decoupling buffer configured to store at least a portion of a cache line evicted from the cache memory and configured to receive a snoop, wherein if the snoop causes a miss, the snoop is propagated to the cache memory, wherein if the local access causes a cache miss in the cache memory, the local access is propagated to the coherence decoupling buffer, wherein responsive to the local access being propagated from the cache memory to the coherence decoupling buffer, if the local access causes a hit in the coherence decoupling buffer, an entry of the coherence decoupling buffer is re-inserted from the coherence decoupling buffer into the cache memory and removed from the coherence decoupling buffer.
A method comprising:
- determining if a tag of a snooped cache line is present in a coherence decoupling buffer coupled to a cache, wherein the cache includes a plurality of cache lines, wherein the cache is configured to receive a local access, wherein the coherence decoupling buffer is configured to store at least a portion of a cache line evicted from the cache and is configured to receive a snoop, wherein if the snoop causes a miss, the snoop is propagated to the cache, wherein if the local access causes a cache miss in the cache, the local access is propagated to the coherence decoupling buffer, wherein responsive to the local access being propagated from the cache to the coherence decoupling buffer, if the local access causes a hit in the coherence decoupling buffer, an entry of the coherence decoupling buffer is re-inserted from the coherence decoupling buffer into the cache and removed from the coherence decoupling buffer;
- and
- granting, by the coherence decoupling buffer, access to the cache line responsive to a presence of the tag.
A computer system comprising:
- a main memory;
- a cache memory including a plurality of cache lines, wherein the cache memory is configured to receive a local access;
- and
- a coherence decoupling buffer coupled to the main memory and to the cache memory, wherein the coherence decoupling buffer is configured to store at least a portion of a cache line evicted from the cache memory and is configured to receive a snoop, wherein if the snoop causes a miss, the snoop is propagated to the cache memory, wherein if the local access causes a cache miss in the cache memory, the local access is propagated to the coherence decoupling buffer, wherein responsive to the local access being propagated from the cache memory to the coherence decoupling buffer, if the local access causes a hit in the coherence decoupling buffer, an entry of the coherence decoupling buffer is re-inserted from the coherence decoupling buffer into the cache memory and removed from the coherence decoupling buffer.
1 more element
Dependencies are inferred from the claim text.