IP Library › Granted Patent US 12,026,051
Granted Patent B2
US 12,026,051 · App. 17/861,013 · Granted Jul 2, 2024

Adaptive parity techniques for a memory device

Inventors: Justin Eno (El Dorado Hills, CA); William A. Melton (Shingle Springs, CA); Sean S. Eilert (Penryn, CA)
Assignee: Micron Technology, Inc.
G06F11/1068G06F11/073G06F11/076G06F11/0772G06F11/1064G06F11/3037
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,026,051
App. No.
17/861,013
Granted
Jul 2, 2024
Kind
B2
Abstract

Methods, systems, and devices for adaptive parity techniques for a memory device are described. An apparatus, such as a memory device, may use one or more error correction code (ECC) schemes, an error cache, or both to support access operations. The memory device may receive a command from a host device to read or write data. If the error cache includes an entry for the data, the memory device may read or write the data using a first ECC scheme. If the error cache does not include an entry for the data, the memory device may read or write the data without using an ECC scheme or using a second ECC scheme different than the first ECC scheme.

Claims (54)

1. A method, comprising:

performing one or more error correction procedures using a cache;

determining whether data from a memory array includes one or more errors based at least in part on performing the one or more error correction procedures;

updating a list of addresses associated with the data with an address associated with the data based at least in part on determining whether the data includes the one or more errors; and

incrementing a counter to indicate a quantity of times that no errors are identified for the address indicated by the cache as including the one or more errors.

2. The method of claim 1 , further comprising:

identifying no errors in the data based at least in part on determining whether the data includes the one or more errors, wherein updating the list of addresses associated with the data is based at least in part on identifying no errors in the data.

3. The method of claim 2 , further comprising:

removing, from the cache, an entry for the address associated with the data based at least in part on identifying no errors in the data.

4. The method of claim 3 , further comprising:

determining that the quantity of times satisfies a threshold based at least in part on incrementing the counter, wherein removing the entry is based at least in part on determining that the quantity of time satisfies the threshold.

5. The method of claim 1 , further comprising:

identifying the one or more errors in the data based at least in part on determining whether the data includes the one or more errors, wherein updating the list of addresses associated with the data is based at least in part on identifying no errors in the data.

6. The method of claim 5 , further comprising:

outputting, to the cache, an indication of the address associated with the data based at least in part on identifying the one or more errors.

7. The method of claim 5 , further comprising:

incrementing the counter to indicate an error count for the address associated with the data based at least in part on identifying the one or more errors; and

writing, to the cache, an indication that the address includes the one or more errors based at least in part on the error count satisfying a threshold.

8. The method of claim 7 , further comprising:

generating parity bits based at least in part on writing to the cache; and

sending a first portion of the parity bits to the cache and a second portion of the parity bits to the memory array.

9. The method of claim 7 , further comprising:

switching the one or more error correction procedures performed based at least in part on the error count for the address satisfying the threshold.

10. The method of claim 1 , wherein the cache includes one or more entries for the address associated with the data, wherein the one or more entries stores an indication of the address and a set of parity bits.

11. An apparatus, comprising:

a memory array,

a cache configured to store a plurality of entries each corresponding to a respective set of memory cells within the memory array, and

circuitry configured to cause the apparatus to:

perform one or more error correction procedures using the cache;

determine whether data from the memory array includes one or more errors based at least in part on performing the one or more error correction procedures;

update a list of addresses associated with the data with an address associated with the data based at least in part on determining whether the data includes the one or more errors; and

increment a counter to indicate a quantity of times that no errors are identified for the address indicated by the cache as including the one or more errors.

12. The apparatus of claim 11 , wherein the circuitry is further configured to cause the apparatus to:

determine that the data includes no errors based at least in part on determining whether the data includes the one or more errors, wherein updating the list of addresses associated with the data is based at least in part on determining that the data includes no errors.

13. The apparatus of claim 11 , wherein the circuitry is further configured to cause the apparatus to:

determine that the data includes the one or more errors based at least in part on determining whether the data includes the one or more errors, wherein updating the list of addresses associated with the data is based at least in part on determining that the data includes the one or more errors.

14. The apparatus of claim 13 , wherein the circuitry is further configured to cause the apparatus to:

generate parity bits for data associated with the respective set of memory cells based at least in part on determining that the data includes the one or more errors.

15. The apparatus of claim 11 , wherein the circuitry is further configured to cause the apparatus to:

determine one or more results of the one or more error correction procedures; and

sending, to the cache, the one or more results based at least in part on determining the one or more results.

16. The apparatus of claim 11 , wherein each entry of the plurality of entries comprising an indication of an address associated with the respective set of memory cells, parity bits for data associated with the respective set of memory cells, or a combination thereof.

17. The apparatus of claim 11 , wherein the cache comprises a second memory array, a portion of the memory array, or a combination thereof.

18. A non-transitory computer-readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to:

perform one or more error correction procedures using a cache;

determine whether data from a memory array includes one or more errors based at least in part on performing the one or more error correction procedures;

update a list of addresses associated with the data with an address associated with the data based at least in part on determining whether the data includes the one or more errors; and

increment a counter to indicate a quantity of times that no errors are identified for the address indicated by the cache as including the one or more errors.

19. The non-transitory computer-readable storage medium of claim 18 , wherein the processing device is further to:

determine that the data includes no errors based at least in part on performing the one or more error correction procedures; and

cull entries for one or more addresses of the list of addresses based at least in part on determining that the data includes no errors.

20. The non-transitory computer-readable storage medium of claim 18 , wherein the processing device is further to:

determine that the data includes the one or more errors based at least in part on performing the one or more error correction procedures; and

add entries for one or more addresses of the list of addresses based at least in part on determining that the data includes the one or more errors.

Continuity (2)
Continuation 16993959 · Aug 14, 2020
Related Publication 20220405169A1 · Dec 22, 2022