Dynamically sized redundant write buffer with sector-based tracking
AssigneeMicron Technology, Inc.
InventorsCagdas Dirik, Robert M. Walker
Life of this patent
Estimating the term…
Abstract
Exemplary methods, apparatuses, and systems include detecting an operation to write dirty data to a cache. The cache is divided into a plurality of channels. In response to the operation, the dirty data is written to a first cache line in the cache, the first cache line being accessed via a first channel. Additionally, a redundant copy of the dirty data is written to a second cache line in the cache. The second cache line serves as a redundant write buffer and is accessed via a second channel, the first and second channels differing from one another. A metadata entry for the second cache line is updated to reference a location of the dirty data in the first cache line.
Claims20
A method comprising:
- detecting an operation to write dirty data to a cache, wherein the cache is divided into a plurality of channels and further divided into a plurality of sets addressed via set values;
- writing the dirty data to a first cache line in the cache, wherein the first cache line is accessed via a first channel;
- selecting a second cache line for writing a redundant copy of the dirty data, wherein the second cache line is accessed via a second channel and selected because the first and second cache lines have a same set value on different channels;
- and
- writing the redundant copy of the dirty data to the second cache line in the cache, wherein the second cache line serves as a redundant write buffer.
A non-transitory computer-readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to:
- detect an operation to write dirty data to a cache, wherein the cache is divided into a plurality of channels and further divided into a plurality of sets addressed via set values;
- write the dirty data to a first cache line in the cache, wherein the first cache line is accessed via a first channel;
- select a second cache line for writing a redundant copy of the dirty data, wherein the second cache line is accessed via a second channel and selected because the first and second cache lines have a same set value on different channels;
- and
- write the redundant copy of the dirty data to the second cache line in the cache, wherein the second cache line serves as a redundant write buffer.
A system comprising:
- a plurality of memory components;
- and
- a processing device, operatively coupled with the plurality of memory components, to:
- detect an operation to write dirty data to a cache, wherein the cache is divided into a plurality of channels and further divided into a plurality of sets addressed via set values;
- write the dirty data to a first cache line in the cache, wherein the first cache line is accessed via a first channel;
- select a second cache line for writing a redundant copy of the dirty data, wherein the second cache line is accessed via a second channel and selected because the first and second cache lines have a same set value on different channels;
- write the redundant copy of the dirty data to the second cache line in the cache, wherein the second cache line serves as a redundant write buffer;
- and
- update a metadata entry for the second cache line to reference a location of the dirty data in the first cache line.
Dependencies are inferred from the claim text.