IP Library Granted Patent US 12,360,673
Granted Patent B1
US 12,360,673 · App. 18/676,929 · Granted Jul 15, 2025

Data storage device and method for garbage collection in a multi-tier memory

Inventors: Manoj M. Shenoy (Ernakulam, IN); Ramanathan Muthiah (Bangalore, IN)
Assignee: Sandisk Technologies, Inc.
G06F3/061G06F3/064G06F3/0679
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,360,673
App. No.
18/676,929
Granted
Jul 15, 2025
Kind
B1
Abstract

A multi-tier memory comprises a block of memory with a plurality of sub-blocks (e.g., three sub-blocks). A garbage collection operation that chooses a source block based on a valid fragment count may not be suitable in multi-tier memories where sub-blocks have a dependency on one another (e.g., for an erase or program operation). The embodiments presented herein provide various garbage collection techniques that can be used in this situation. The techniques described herein can take in to account the valid fragment count of various sub-block groupings when deciding where to perform a garbage collection operation.

Claims (47)

1. A data storage device comprising:

a memory comprising a plurality of blocks, each block configured to be partitioned into a plurality of sub-blocks; and

one or more processors, individually or in combination, configured to:

determine a sum of valid fragment counts of a first grouping of sub-blocks;

determine a sum of valid fragment counts of a second grouping of sub-blocks;

determine which of the first and second groupings of sub-blocks has a lower sum of valid fragment counts; and

perform garbage collection on whichever of the first and second groupings of sub-blocks that is determined to have the lower sum of valid fragment counts.

2. The data storage device of claim 1 , wherein:

each block comprises an upper, middle, and lower sub-block;

the first grouping of sub-blocks comprises the upper and middle sub-block; and

the second grouping of sub-blocks comprises the middle and lower sub-blocks.

3. The data storage device of claim 1 , wherein none of the plurality of sub-blocks comprise an unselected-sub-block-disturb (USBD) error.

4. The data storage device of claim 1 , wherein one of the plurality of blocks has a dependency on another one of the plurality of blocks for an erase or program operation.

5. The data storage device of claim 1 , wherein each sub-block of a given block occupies a single x-y location but is located in a different z location.

6. The data storage device of claim 1 , wherein each sub-block of a given block is connected vertically to a same memory hole.

7. The data storage device of claim 1 , wherein each sub-block of a given block comprises its own wordline zone.

8. The data storage device of claim 1 , wherein each sub-block of a given block operates independently of other sub-blocks of the given block.

9. The data storage device of claim 1 , wherein the memory comprises a three-dimensional memory.

10. In a data storage device comprising a memory comprising a plurality of blocks, each block configured to be partitioned into a plurality of sub-blocks, a method comprising:

for each block of the plurality of blocks, determining a sum of valid fragment counts of the plurality of sub-blocks in that block;

determining which block of the plurality of blocks has the lowest sum of valid fragment counts;

determining a sum of valid fragment counts of each of a plurality of sub-block groupings in the block of the plurality of blocks determined to have the lowest sum of valid fragment counts;

determining which sub-block grouping of the plurality of sub-block groupings has a lowest sum of valid fragment counts; and

performing garbage collection on the determined sub-block grouping.

11. The method of claim 10 , wherein at least one of the plurality of sub-blocks comprise an unselected-sub-block-disturb (USBD) error.

12. The method of claim 10 , further comprising:

choosing another sub-block grouping of the plurality of sub-block groupings as an immediate next candidate for garbage collection to maintain program-erase-count sync among the plurality of sub-blocks in the block of the plurality of blocks determined to have the lowest sum of valid fragment counts.

13. The method of claim 10 , wherein:

each block comprises an upper, middle, and lower sub-block; and

the plurality of sub-block groupings comprises:

a first sub-block grouping comprising the upper and middle sub-blocks; and

a second sub-blocks grouping comprising the middle and lower sub-blocks.

14. The method of claim 10 , further comprising:

performing garbage collection on only sub-block of the determined sub-block grouping; and

performing garbage collection on a left-over sub-block grouping.

15. The method of claim 10 , further comprising:

determining that the plurality of blocks do not have equal valid fragment counts; and

performing garbage collection on whichever block of the plurality of blocks has a lowest sum of valid fragment counts.

16. The method of claim 10 , wherein each sub-block of a given block occupies a single x-y location but is located in a different z location.

17. The method of claim 10 , wherein each sub-block of a given block is connected vertically to a same memory hole.

18. The method of claim 10 , wherein each sub-block comprises wear level logic.

19. The method of claim 10 , wherein the memory comprises a three-dimensional memory.

20. A data storage device comprising:

a memory comprising a block configured to be partitioned into upper, middle, and lower sub-blocks; and

means for:

performing garbage collection on whichever of the upper sub-block and the lower sub-block that has a greater valid fragment count; and

grouping the middle sub-block with whichever of the upper sub-block and the lower sub-block that does not have the greater valid fragment count, wherein the grouping competes with other sub-block groupings and individual sub-blocks in the memory for a future garbage collection operation.

Assignments (4)
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2024
From: SANDISK TECHNOLOGIES LLC
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 069796/0423 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: SHENOY, MANOJ M.; MUTHIAH, RAMANATHAN
To: SANDISK TECHNOLOGIES LLC
Reel/Frame 067557/0194 →
References Cited (7)
US 10157680B2 · Yang et al. · 2018 [cited by applicant]
US 11269767B2 · Byun · 2022 [cited by examiner]
US 20150370701A1 · Higgins · 2015 [cited by examiner]
US 20160267004A1 · Perlstein · 2016 [cited by examiner]
US 20190286556A1 · You · 2019 [cited by examiner]
US 20240069789A1 · Oh · 2024 [cited by examiner]
US 20250094078A1 · Oh · 2025 [cited by examiner]