IP Library Granted Patent US 11,853,607
Granted Patent B2
US 11,853,607 · App. 17/558,954 · Granted Dec 26, 2023

Optimizing flash memory utilization for NVMe KV pair storage

Inventors: David Avraham (Even Yehuda, IL); Alexander Bazarsky (Holon, IL); Ran Zamir (Ramat Gan, IL)
Assignee: Western Digital Technologies, Inc.
G06F3/0659G06F3/0604G06F3/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 11,853,607
App. No.
17/558,954
Granted
Dec 26, 2023
Kind
B2
Abstract

A data storage device includes a memory device and a controller coupled to the memory device. The controller is configured to determine a health of a plurality of wordlines of a block of a plurality of blocks, receive key value (KV) pair data, select a wordline of the plurality of wordlines based on the health, and program the KV pair data to the selected wordline. The KV pair data includes a value length and a relative performance indicator. The controller is further configured to mark a block of the plurality of blocks due to a high bit error rate (BER) indication, where the marked block is KV operable only. The non-KV pair data stored in the marked block is relocated to a non-marked block.

Claims (47)

1. A data storage device, comprising:

a memory device; and

a controller coupled to the memory device, the controller configured to:

determine a health of a plurality of wordlines of a block of a plurality of blocks;

receive a key value (KV) pair, wherein the KV pair includes a value length;

select a wordline of the plurality of wordlines based on the health; and

program the KV pair to the selected wordline, wherein the selected wordline is a part of a marked block, and wherein the marked block has a bit error rate (BER) greater than a threshold, wherein the marked block is marked for storing KV database data only.

2. The data storage device of claim 1 , wherein the health is based on a bit error rate (BER), a program erase count (PEC), and a physical location of a wordline in the block.

3. The data storage device of claim 2 , wherein the physical location is either a first location or a second location, and wherein the first location is an edge wordline of the block and the second location is a middle wordline of the block.

4. The data storage device of claim 3 , wherein the first location has a first BER, and the second location has a second BER, and wherein the first BER is greater than the second BER.

5. The data storage device of claim 1 , wherein the controller is further configured to mark the block having a BER greater than a threshold value based on a severity of the BER, wherein each level of hierarchy corresponds to a relative performance level, and wherein the KV pair further includes a relative performance indicator.

6. The data storage device of claim 1 , wherein the selected wordline is selected according to the value length of the KV pair.

7. The data storage device of claim 6 , wherein the value length is an amount of memory needed to store the KV pair.

8. A data storage device, comprising:

a memory device; and

a controller coupled to the memory device, the controller configured to:

determine a health of a plurality of wordlines of a block of a plurality of blocks;

receive a key value (KV) pair, wherein the KV pair includes a value length;

select a wordline of the plurality of wordlines based on the health; and

program the KV pair to the selected wordline, wherein the selected wordline is a part of a marked block, and wherein the marked block has a bit error rate (BER) greater than a threshold, wherein non-KV database data is relocated from the marked block to a non-marked block.

9. The data storage device of claim 8 , wherein the marked block is for storing KV database data only.

10. The data storage device of claim 8 , wherein the selected wordline is selected according to a relative performance of the KV pair.

11. A data storage device, comprising:

a memory device; and

a controller coupled to the memory device, the controller configured to:

determine a bit error rate (BER) of a page on a block;

determine that the BER is greater than or equal to a BER threshold;

determine that the block has had more than one high BER indication; and

mark the block as key value (KV) pair operable only, wherein the marked block stores only KV database data.

12. The data storage device of claim 11 , wherein the controller is further configured to relocate non-KV database data from the marked block to a non-marked block.

13. The data storage device of claim 11 , wherein the controller is further configured to:

determine that a number of high BER indications for the marked block is greater than or equal to an indication threshold;

relocate the KV database data from the marked block to another marked block; and

retire the marked block.

14. The data storage device of claim 11 , wherein the controller is further configured to mark the block as either a first level marked block or a second level marked block, wherein the first level marked block has a first BER and the second level marked block has a second BER, and wherein the first BER is less than the second BER.

15. The data storage device of claim 14 , wherein a KV pair includes a relative performance indicator, wherein the relative performance indicator is either a first level relative performance or a second level relative performance, and wherein the first level relative performance has a performance requirement greater than the second level relative performance.

16. The data storage device of claim 15 , wherein the controller is further configured to write the KV pair having the first level relative performance to a first level marked block and the KV pair having the second level relative performance to a second level marked block.

17. The data storage device of claim 11 , wherein the block has an overall performance level, wherein the overall performance level is an average of a first performance level and a second performance level, wherein the first performance level corresponds to a performance of edge wordlines of the block and the second performance level corresponds to a performance of middle wordlines of the block, and wherein the first performance level and the second performance level are different.

18. A data storage device, comprising:

memory means; and

a controller coupled to the memory means, the controller configured to:

determine a physical storage location for key value (KV) pair data based on value length and/or relative performance;

program the KV pair data to the determined physical storage location;

determine that a block of the memory means has bit error rate (BER) greater than a threshold; and

mark the block for storing KV pair data only.

19. The data storage device of claim 18 , wherein the determined physical storage location has a bit error rate (BER) greater than or equal to a threshold sufficient for storing non-KV pair data.

20. The data storage device of claim 18 , wherein the relative performance corresponds to a severity of BER of the determined physical storage location.

Assignments (8)
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 →
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 22, 2021
From: AVRAHAM, DAVID; BAZARSKY, ALEXANDER; ZAMIR, RAN
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058464/0754 →