Flash memory read error recovery with soft-decision decode
US-9021332-B2 · Apr 28, 2015 · US
US9645763B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9645763-B2 |
| Application number | US-201414181893-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 17, 2014 |
| Priority date | Jan 13, 2014 |
| Publication date | May 9, 2017 |
| Grant date | May 9, 2017 |
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.
An apparatus includes a plurality of memory devices and a controller. The controller is coupled to the plurality of memory devices and configured to store data in the plurality of memory devices using units of super-blocks. Each super-block comprises a block from each of the plurality of memory devices and the controller balances time efficiency and robustness during collection of statistics from soft reads of each super-block.
Opening claim text (preview).
The invention claimed is: 1. An apparatus comprising: a memory comprising a plurality of memory devices; and a controller coupled to the memory and configured to process a plurality of read/write operations to/from the memory, store data in the plurality of memory devices using units of super-blocks, and generate a number of unique weight statistics in a single read operation by reading a number of dies within a super-block with dissimilar read reference voltages, wherein each super-block comprises a block from a die of each of the plurality of memory devices, and the number of unique weight statistics are represented by 3-tuple vectors of weights. 2. The apparatus according to claim 1 , wherein the controller is further configured to balance time efficiency and robustness during collection of statistics from soft reads of each super-block by setting a number of parameters of an adaptive tracking routine. 3. The apparatus according to claim 2 , wherein the parameters comprise a first parameter defining a number of dies in a group and a second parameter defining a number of groups. 4. The apparatus according to claim 3 , wherein the adaptive tracking routine is configured to average a number of page weights collected from within each group. 5. The apparatus according to claim 1 , wherein the controller is further configured to perform one or more of: averaging page weights on a component weight basis; and choosing pages across the dies of each super-block such that the pages are distributed to average out page-to-page variation. 6. The apparatus according to claim 1 , wherein the controller is further configured to split the number of dies in each super-block into two sets and collect page weights for upper pages from one of the two sets and page weights for lower pages from the other of the two sets. 7. The apparatus according to claim 6 , wherein: across all lower page reads, MSB related voltages are set to default or previously tracked read reference voltages; across all upper page reads, LSB related voltages are set to default or previously tracked read reference voltages; and averaging and interleaving are applied within each set. 8. The apparatus according to claim 1 , wherein the memory and the controller are part of a solid state drive (SSD). 9. A method of collecting statistics from soft reads of a flash memory comprising: storing data in a plurality of flash memory devices using units of super-blocks, wherein each super-block comprises a block from a die of each of the plurality of flash memory devices; and generating a number of unique weight statistics in a single read operation by reading a number of the dies within a super-block with dissimilar read reference voltages, wherein the number of unique weight statistics are represented by 3-tuple vectors of weights. 10. The method according to claim 9 , further comprising: splitting the number of dies in each super-block into two sets to collect page weights for upper and lower pages. 11. The method according to claim 10 , wherein: across all lower page reads, MSB related voltages are set to default or previously tracked read reference voltages; across all upper page reads, LSB related voltages are set to default or previously tracked read reference voltages; and averaging and interleaving are applied within each set. 12. The method according to claim 9 , further comprising: choosing pages across the dies of each super-block such that the pages are distributed to average out page-to-page variation. 13. The method according to claim 9 , further comprising: balancing time efficiency and robustness during collection of statistics from soft reads of each super-block by setting a number of parameters of an adaptive tracking routine. 14. The method according to claim 13 , wherein the parameters comprise a first parameter defining a number of dies in a group and a second parameter defining a number of groups in each super-block. 15. The method according to claim 14 , wherein the adaptive tracking routine is configured to average a number of page weights collected from within a group. 16. An apparatus comprising: an interface configured to process a plurality of read/write operations to/from a memory comprising a plurality of memory devices; and a control circuit configured to store data in the plurality of memory devices using units of super-blocks, balance time efficiency and robustness during collection of statistics from soft reads of each super-block, and generate a number of unique weight statistics in a single read operation by reading a number of dies within a super-block with dissimilar read reference voltages, wherein each super-block comprises a block from a die of each of the plurality of memory devices, and the number of unique weight statistics are represented by 3-tuple vectors of weights. 17. The apparatus according to claim 16 , wherein the control circuit is further configured to split the number of dies in each super-block into two sets and collect page weights for upper pages from one of the two sets and page weights for lower pages from the other of the two sets. 18. The apparatus according to claim 16 , wherein the interface and the control circuit are part of a solid state drive (SSD) controller.
Monitoring storage devices or systems · CPC title
Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP] · CPC title
Non-volatile semiconductor memory arrays · CPC title
in relation to response time · CPC title
Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.