8972776

Partial R-Block Recycling

PublishedMarch 3, 2015
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
20 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. An apparatus comprising: a non-volatile memory comprising a plurality of R-blocks; and a controller coupled to said non-volatile memory, wherein said controller is configured to (i) write data using said R-blocks as a unit of allocation and (ii) perform recycling operations selectively on either an entire one of said R-blocks or a portion less than all of one of said R-blocks.

2

2. The apparatus according to claim 1 , wherein said controller is further configured to perform said recycling operations on said entire one of said R-blocks as part of garbage collection.

3

3. The apparatus according to claim 1 , wherein said controller is further configured to perform said recycling operations on said portion less than all of one of said R-blocks as part of error handling.

4

4. The apparatus according to claim 3 , wherein: said error handling is enabled in response to detection of a program error in a block of said non-volatile memory; and said portion less than all of one of said R-blocks is a portion of said block of said non-volatile memory.

5

5. The apparatus according to claim 3 , wherein: said error handling is enabled in response to detection of a program error in a block of said non-volatile memory; and said portion less than all of one of said R-blocks is an R-page.

6

6. The apparatus according to claim 3 , wherein: said error handling is enabled in response to detection of a read disturb condition of a block of said non-volatile memory; and said portion less than all of one of said R-blocks is said block of said non-volatile memory affected by said read disturb condition.

7

7. The apparatus according to claim 1 , wherein said controller is configured to perform said recycling operations on a granularity less than that of an entire one of said R-blocks by performing said recycling operations on said portion less than all of one of said R-blocks.

8

8. The apparatus according to claim 1 , wherein: said portion less than all of one of said R-blocks comprises a plurality of pages of said non-volatile memory, with said plurality of pages storing at least a portion of one or more valid data items; and said controller is configured to perform said recycling operations on said portion less than all of one of said R-blocks by making a determination whether a particular one of said one or more valid data items spans into or out of the portion less than all of one of said R-blocks and, based upon the determination, selectively performing recycling operations that recycle all of the one or more valid data items.

9

9. The apparatus according to claim 1 , wherein said portion less than all of one of said R-blocks comprises at least one of a single non-volatile memory block, a portion of said single non-volatile memory block, a single R-page, a single e-page.

10

10. A method for recycling non-volatile memory (NVM) blocks in an R-block comprising the steps of: reading a NVM page in a selected NVM block; locating data unit within said NVM page; determining whether said data unit within said NVM page spans outside said selected NVM block; determining whether said data unit is valid; if said data unit is valid, also determining which, if any, neighbor NVM pages are affected; if neighbor NVM pages are affected, reading any neighbor NVM pages so all portions of said data unit are available along with any related meta-data associated with the span of said data unit; recycling the valid data unit by re-writing the data unit to another NVM location outside the area being recycled.

11

11. The method according to claim 10 , wherein said R-block comprises a combination of NVM blocks providing cross-die redundancy for error correction.

12

12. The method according to claim 10 , wherein said span of said data unit comprises one or both of (i) a data unit starting in one or more previous NVM blocks and (ii) a data unit continuing into one or more subsequent NVM blocks.

13

13. The method according to claim 12 , wherein meta-data within the data indicates spanning of data units.

14

14. The method according to claim 13 , further comprising parsing the meta-data to determine whether previous NVM blocks, subsequent NVM blocks, or both previous and subsequent NVM blocks are needed.

15

15. The method according to claim 10 , further comprising calculating the neighbor NVM pages based on worst case spanning conditions.

16

16. A method for recycling a single R-page comprising: reading one or more NVM pages in a selected R-page; locating data units within the one or more NVM pages; determining if data units in the one or more NVM pages span outside the selected R-page; determining which data units are valid; for each data unit that is valid, also determining which neighbor NVM pages are affected; if neighbor NVM pages are affected, reading the neighbor NVM pages so all portions of said data units along with any related meta-data associated with the span of data units are available; recycling the valid data units by re-writing the data units to another NVM location.

17

17. The method according to claim 16 , wherein said R-page comprises a set of NVM pages and each neighbor NVM page as defined by a write order can be on one or both of a different NVM block and a different NVM die.

18

18. The method according to claim 16 , wherein said R-page contains cross-die or cross-block redundancy.

19

19. The method according to claim 16 , wherein the NVM pages in the selected R-page are read in sequence or concurrently.

20

20. The method according to claim 16 , further comprising updating the map information with a new location and size for each data unit being rewritten after the re-write.

Patent Metadata

Filing Date

Unknown

Publication Date

March 3, 2015

Inventors

Leonid Baryudin
Alex G. Tang
Earl T. Cohen

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “PARTIAL R-BLOCK RECYCLING” (8972776). https://patentable.app/patents/8972776

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.