IP Library Granted Patent US 11,526,439
Granted Patent B2
US 11,526,439 · App. 17/149,366 · Granted Dec 13, 2022

Storage device and operating method thereof

Inventors: Jin Woo Kim (Gyeonggi-do, KR); Jin Woong Kim (Gyeonggi-do, KR); Hui Jae Yu (Gyeonggi-do, KR)
Assignee: SK hynix Inc.
G06F12/0276G06F3/064G06F3/0611G06F3/0679G06F12/1009
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 11,526,439
App. No.
17/149,366
Granted
Dec 13, 2022
Kind
B2
Abstract

A storage device includes a nonvolatile memory including a plurality of first blocks having memory cells each configured to store one bit of data and a plurality of second blocks having memory cells each configured to multiple bits of data; and a controller configured to determine whether or not a number of use-completed second blocks, each of which has a first threshold number or less of valid pages, among use-completed second blocks of the plurality of second blocks, is equal to or larger than a second threshold number and to select, according to a determination result, a victim block on which garbage collection is to be performed among used-completed first blocks of the plurality of first blocks or the use-completed second blocks each having the first threshold number or less of valid pages.

Claims (28)

1. A storage device comprising:

a nonvolatile memory including a plurality of first blocks having memory cells each configured to store one bit of data and a plurality of second blocks having memory cells each configured to multiple bits of data; and

a controller configured to determine whether or not a number of use-completed second blocks, each of which has a first threshold number or less of valid pages, among use-completed second blocks of the plurality of second blocks, is equal to or larger than a second threshold number, to select, according to a determination result, a victim block on which garbage collection is to be performed among used-completed first blocks of the plurality of first blocks or the use-completed second blocks each having the first threshold number or less of valid pages, and to perform the garbage collection on the selected victim block.

2. The storage device of claim 1 , wherein the plurality of first blocks include single-level cell (SLC) blocks, and the plurality of second blocks include extra-level cell (XLC) blocks.

3. The storage device of claim 1 , wherein the controller selects the victim block on which the garbage collection is to be performed among the use-completed first blocks when the number of use-completed second blocks, each having the first threshold number or less of valid pages, is less than the second threshold number.

4. The storage device of claim 3 , wherein the controller performs the garbage collection on the selected victim block by migrating all data stored in the selected victim block to at least one of the second blocks.

5. The storage device of claim 1 , wherein the controller selects the victim block on which the garbage collection is to be performed among the use-completed second blocks, each having the first threshold number or less of valid pages, when the number of the use-completed second blocks, each having the first threshold number or less of valid pages, is equal to or larger than the second threshold number.

6. The storage device of claim 5 , wherein the controller performs the garbage collection on the selected victim block by migrating data stored in the valid pages of the selected victim block to another second block.

7. The storage device of claim 6 , wherein the another second block is one of a second block being currently used and a non-used second block.

8. The storage device of claim 1 , wherein the controller counts the number of second blocks each having the first threshold number or less of valid pages, based on the number of valid pages in each of the use-completed second blocks and compares the number of counted second blocks with the second threshold number.

9. An operating method of a storage device which includes a nonvolatile memory including a plurality of first blocks having memory cells each configured to store one bit of data and a plurality of second blocks having memory cells each configured to store multiple bits of data and a controller configured to control the nonvolatile memory, the method comprising:

determining whether or not a garbage collection trigger condition for the nonvolatile memory is satisfied;

determining whether or not a number of use-completed second blocks, each of which has a first threshold number or less of valid pages, among use-completed second blocks of the plurality of second blocks, is equal to or larger than a second threshold number;

selecting, according to a determination result for the number of use-completed second blocks, a victim block on which garbage collection is to be performed among used-completed first blocks of the plurality of first blocks or the use-completed second blocks each having the first threshold number or less of valid pages, and

performing the garbage collection on the selected victim block.

10. The method of claim 9 , wherein the plurality of first blocks include single-level cell (SLC) blocks, and the plurality of second blocks include extra-level cell (XLC) blocks.

11. The method of claim 9 , wherein the selecting of the victim block on which the garbage collection is to be performed includes selecting the victim block on which garbage collection is to be performed among the use-completed first blocks when the number of use-completed second blocks, each having the first threshold number or less of valid pages, is less than the second threshold number.

12. The method of claim 11 , wherein the performing of the garbage collection includes performing the garbage collection on the selected victim block by migrating all data stored in the selected victim block to at least one of the second blocks.

13. The method of claim 9 , wherein the selecting of the victim block on which the garbage collection is to be performed includes selecting the victim block on which the garbage collection is to be performed among the use-completed second blocks each having the first threshold number or less of valid pages, when the number of the use-completed second blocks, each having the first threshold number or less of valid pages, is equal to or larger than the second threshold number.

14. The method of claim 13 , wherein the performing of the garbage collection includes performing the garbage collection on the selected victim block by migrating data stored in the valid pages of the selected victim block to another second block.

15. The method of claim 14 , wherein the another second block is one of a second block being currently used and a non-used second block.

16. The method of claim 9 , further comprising counting the number of second blocks each having the first threshold number or less of valid pages, based on the number of valid pages in each of the use-completed second blocks.

17. The method of claim 16 , wherein the determining whether or not the number of use-completed second blocks, each having the first threshold number or less of valid pages, is equal to or larger than the second threshold number includes comparing the number of counted second blocks with the second threshold number.

18. A storage device comprising:

a nonvolatile memory including a plurality of single-level cell (SLC) blocks and a plurality of extra-level cell (XLC) blocks; and

a collector configured to select a victim block on which garbage collection is to be performed among the plurality of SLC blocks or among the plurality of XLC blocks, based on a number of use-completed XLC blocks each having K or less valid pages among use-completed XLC blocks of the plurality of XLC blocks, wherein K is a natural number of 1 or more, and to perform the garbage collection on the selected victim block.

19. The storage device of claim 18 , wherein, when the number of use-completed XLC blocks each having K or less valid pages is less than P, the controller performs the garbage collection by selecting a use-completed SLC block among the plurality of SLC blocks as the victim block, wherein P is a natural number of 1 or more.

20. The storage device of claim 18 , wherein, when the number of use-completed XLC blocks each having K or less valid pages is equal to or larger than P, the controller performs the garbage collection by selecting the victim block among the use-completed XLC blocks having K or less valid pages, wherein P is a natural number of 1 or more.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 14, 2021
From: KIM, JIN WOO; KIM, JIN WOONG; YU, HUI JAE
To: SK HYNIX INC.
Reel/Frame 054924/0987 →
Priority Claims (1)
KR 10-2020-0061334 · May 22, 2020 · national
Continuity (1)
Related Publication 20210365367A1 · Nov 25, 2021