IP Library Granted Patent US 11,520,504
Granted Patent B2
US 11,520,504 · App. 17/027,598 · Granted Dec 6, 2022

Data storage device and operating method thereof

Inventors: Yong Jin (Icheon, KR); Seung Won Jeon (Icheon, KR); In Hyuk Park (Icheon, KR); Yoon Jo Oh (Icheon, KR)
Assignee: SK hynix Inc.
G06F3/0631G06F3/061G06F3/0604G06F3/0644G06F3/0656G06F3/0658G06F3/0673G06F3/0679G06F12/0246G06F12/0607
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,520,504
App. No.
17/027,598
Granted
Dec 6, 2022
Kind
B2
Abstract

A data storage device includes a storage including a buffer zone and a data zone and a controller for exchanging data with the storage by allocating at least one zone namespace (ZNS) in the data zone, a ZNS being a data storage region that is physically and logically divided and allocated to each of application programs driven in a host. The controller opens one or more sub buffer zones in the buffer zone, divides write data from the host into one or more segments respectively corresponding to sizes of the one or more sub buffer zones, buffers each of the one or more segments in a corresponding one of the one or more sub buffer zones, opens a ZNS corresponding to a length of the write data in the data zone, and migrates the one or more segments buffered in the sub buffer zones to the opened ZNS.

Claims (36)

1. A data storage device comprising:

a storage including a buffer zone and a data zone; and

a controller configured to exchange data with the storage by allocating at least one zone namespace (ZNS) in the data zone of the storage, a ZNS being a data storage region that is physically and logically divided and allocated to each of a plurality of application programs driven in a host,

wherein the controller is configured to:

open one or more sub buffer zones in the buffer zone of the storage

divide first write data transmitted from the host into one or more segments respectively corresponding to sizes of the one or more sub buffer zones;

buffer each of the one or more segments of the first write data in a corresponding one of the one or more sub buffer zones;

open a ZNS, which has a size corresponding to a length of the first write data in the data zone of the storage after buffering all of the one or more segments of the first write data in the one or more sub buffer zones; and

migrate each of the one or more segments buffered in the one or more sub buffer zones to the opened ZNS.

2. The data storage device of claim 1 , wherein the controller is configured to determine a programming method of the one or more sub buffer zones based on an attribute of the first write data, and

the programming method is determined based on a number of bits of data stored in each of memory cells included in the one or more sub buffer zones.

3. The data storage device of claim 2 , wherein the controller is configured to determine the attribute of the first write data according to whether the first write data is random data or sequential data.

4. The data storage device of claim 3 , wherein the controller is configured to allocate the one or more sub buffer zones so that each of the memory cells stores 1-bit data when the first write data is the random data.

5. The data storage device of claim 3 , wherein the controller is configured to allocate the one or more sub buffer zones so that each of the memory cell stores multi-bit data when the first write data is the sequential data.

6. The data storage device of claim 1 , wherein the data zone is configured in such a manner that each memory cell included in the data zone stores multi-bit data.

7. The data storage device of claim 1 , wherein the storage includes a plurality of dies, and

the controller is configured to access the storage in a die interleaving manner.

8. The data storage device of claim 1 , wherein the controller is further configured to perform an erase operation on each of the one or more sub buffer zones after a corresponding segment of the first write data buffered in said each of the one or more sub buffer zones is migrated to the opened ZNS and then buffer a next segment corresponding to next write data.

9. An operating method of a data storage device which includes a controller and a storage including a buffer zone and a data zone, the controller configured to exchange data with the storage by allocating at least one zone namespace (ZNS) in the storage, a ZNS being a data storage region that is physically and logically divided and allocated to each of a plurality of application programs driven in a host, the method comprising:

receiving a write request including first write data of an application program from the host;

opening one or more sub buffer zones in the buffer zone of the storage in response to the write request;

dividing the first write data into one or more segments respectively corresponding to sizes of the one or more sub buffer zones;

buffering the one or more segments of the first write data in the one or more sub buffer zones;

opening a ZNS, which has a size corresponding to a length of the first write data, in the data zone of the storage after buffering all of the one or more segments of the first data in the one or more sub buffer zones; and

migrating the one or more segments buffered in the one or more sub buffer zones to the opened ZNS.

10. The method of claim 9 , further comprising:

determining an attribute of the first write data; and

determining a programming method of the one or more sub buffer zones based on the attribute,

wherein the programming method is determined based on a number of bits of data stored in each of memory cells included in the one or more sub buffer zones.

11. The method of claim 10 , wherein the determining of the attribute includes determining whether or not the first write data is random data or sequential data.

12. The method of claim 11 , wherein the determining of the programming method includes allocating the one or more sub buffer zones so that each of the memory cells stores 1-bit data when the first write data is the random data.

13. The method of claim 11 , wherein the determining of the programming method includes allocating the one or more sub buffer zones so that each of the memory cells stores multi-bit data when the first write data is the sequential data.

14. The method of claim 9 , wherein the data zone is configured in such a manner that each memory cell included in the data zone stores multi-bit data.

15. The method of claim 9 , wherein the storage includes a plurality of dies, and

the controller is configured to access the storage in a die interleaving manner.

16. The method of claim 9 , further comprising performing an erase operation on each of the one or more sub buffer zones after a corresponding segment of the first write data buffered in said each of the one or more sub buffer zones is migrated to the opened ZNS, and then buffering a next segment corresponding to next write data.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 7, 2024
From: SK HYNIX INC.
To: MIMIRIP LLC
Reel/Frame 067335/0246 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 22, 2020
From: JIN, YONG; JEON, SEUNG WON; PARK, IN HYUK; OH, YOON JO
To: SK HYNIX INC.
Reel/Frame 053846/0253 →