Memory device with data scrubbing capability and methods
US-2024393961-A1 · Nov 28, 2024 · US
US9361036B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9361036-B2 |
| Application number | US-201514754468-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 29, 2015 |
| Priority date | Mar 14, 2013 |
| Publication date | Jun 7, 2016 |
| Grant date | Jun 7, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Systems and methods are disclosed for correcting block errors. In particular, a system can store a parity page per page-modulo, where a pre-determined number of pages of a block or a band of the NVM may be allocated as page-modulo XOR (“PMX”) parity pages. This enables a space efficient approach for recovering from single-block data errors.
Opening claim text (preview).
What is claimed is: 1. A memory interface for accessing a non-volatile memory (“NVM”), the memory interface comprising control circuitry operative to: detect whether an amount of memory currently available in the NVM is greater than a first pre-determined threshold; and in response to detecting that the amount of memory currently available is greater than the first pre-determined threshold, allocate a pre-determined number of pages at the end of a band of the NVM as parity pages for handling read errors localized to a block of the band. 2. The memory interface of claim 1 , wherein the pre-determined number of pages is based on vendor-specific characteristics of the NVM. 3. The memory interface of claim 1 , wherein the pre-determined number of pages span across at least one stripe of the band. 4. The memory interface of claim 1 , wherein the pre-determined number of pages are located after a log table of the band. 5. The memory interface of claim 1 , wherein the control circuitry is further operative to: detect whether the amount of memory currently available is greater than a second pre-determined threshold, wherein the second pre-determined threshold is larger than the first pre-determined threshold; and in response to detecting that the amount of memory currently available is greater than the second pre-determined threshold, allocate a block at the end of the band as a parity block. 6. The memory interface of claim 1 , wherein the control circuitry is further operative to allocate a plurality of pages of a different band of the NVM as partial parity pages, wherein partial parities stored in the partial parity pages are used to recover from the read errors detected when the band is only partially programmed. 7. A method for allocating portions of a non-volatile memory (“NVM”) for error corrections using a memory interface through control circuitry, the method comprising: detecting whether an amount of memory currently available in the NVM is greater than a first pre-determined threshold; and in response to detecting that the amount of memory currently available is greater than the first pre-determined threshold, allocating a pre-determined number of pages at the end of a band of the NVM as parity pages for handling read errors localized to a block of the band. 8. The method of claim 7 , wherein the pre-determined number of pages is based on vendor specific characteristics of the NVM. 9. The method of claim 7 , wherein the pre-determined number of pages span across at least one stripe of the band. 10. The method of claim 7 , wherein the pre-determined number of pages are located after a log table of the band. 11. The method of claim 7 , wherein the second pre-determined threshold is larger than the first pre-determined threshold. 12. The method of claim 7 , wherein upon detection of available memory is greater than the second pre-determined threshold, allocate a block at the end of the band as a parity block. 13. The method of claim 7 , wherein the control circuitry may allocate a plurality of pages of a different band of the NVM as partial parity pages, wherein partial parities stored in the partial parity pages are used to recover from the read errors detected when the band is only partially programmed. 14. A system comprising: non-volatile memory (“NVM”); and memory interface comprising control circuitry coupled to the NVM; means for detecting whether the amount of memory currently available in the NVM is greater than a first pre-determined threshold; in response to detecting that the amount of memory currently available is greater than the first pre-determined threshold, means for allocating a pre-determined number of pages at the end of a band of the NVM as parity pages for handling read errors localized to a block of the band. 15. The system of claim 14 wherein the pre-determined number of pages is based on vendor-specific characteristics of the NVM. 16. The system of claim 14 wherein the pre-determined number of pages span across at least one stripe of the band. 17. The system of claim 14 wherein the pre-determined number of pages are located after a log table of the band. 18. The system of claim 14 , further comprising: means for detecting whether the amount of available memory is greater than a second pre-determined threshold, wherein the second pre-determined threshold is larger than the first pre-determined threshold; and in response to detecting that the amount of memory currently available is greater than the second pre-determined threshold, means for allocating a block at the end of the band as a parity block. 19. The system of claim 14 , wherein the control circuitry is further operative to allocate a plurality of pages of a different band of the NVM as partial parity pages, wherein partial parities stored in the partial parity pages are used to recover from the read errors detected when the band is only partially programmed.
to protect a block of data words, e.g. CRC or checksum (G06F11/1076 takes precedence; security arrangements for protecting computers or computer systems against unauthorized activity G06F21/00) · CPC title
in relation to data integrity, e.g. data losses, bit errors · CPC title
in individual solid state devices (G06F11/1004 takes precedence) · CPC title
using arrangements adapted for a specific error detection or correction feature · CPC title
by allocating resources to storage systems · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.