IP Library Granted Patent US 12,026,384
Granted Patent B2
US 12,026,384 · App. 17/896,717 · Granted Jul 2, 2024

Open block relocation

Inventors: Ji-Hyun In (Saratoga, CA); Yosief Ataklti (Fremont, CA); Aajna Karki (San Jose, CA); Hongmei Xie (Sunnyvale, CA); Xiaoying Li (Fremont, CA)
Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
G06F3/064G06F3/0619G06F3/0644G06F3/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,026,384
App. No.
17/896,717
Granted
Jul 2, 2024
Kind
B2
Abstract

Aspects of a storage device including a memory and a controller are provided. In certain aspects, the controller may determine that data stored on a first block satisfies a threshold data-error condition, the data comprising invalid data and valid data. For example, the first block may have a high ratio of valid data to invalid data that satisfies or exceeds a threshold value. In certain aspects, the controller may determine a close block boundary associated with the first block, wherein the close block boundary is configured to bifurcate the first block into a first portion and a second portion, wherein the first portion comprises the data. For example, the controller may determine a boundary defined by a data length, an indirection mapping unit, a physical program boundary, etc.

Claims (41)

1. A storage device, comprising:

a memory; and

a controller coupled to the memory and configured to:

determine that data stored on a first block satisfies a threshold data-error condition, the data comprising invalid data and valid data;

determine a close block boundary associated with the first block, wherein the close block boundary is configured to bifurcate the first block into a first portion and a second portion, wherein the first portion comprises the data; and

write generated data to the first portion of the first block, wherein the generated data fills the first portion of the first block to the close block boundary.

2. The storage device of claim 1 , wherein the close block boundary is defined by a data length associated with an error detection function.

3. The storage device of claim 2 , wherein the error detection function is an error correction code (ECC), a low-density parity-check code (LDPC), or an XOR function.

4. The storage device of claim 1 , wherein the close block boundary is defined by an indirection mapping unit.

5. The storage device of claim 1 , wherein the close block boundary is defined by a physical boundary of the memory.

6. The storage device of claim 5 , wherein the physical boundary of the memory is defined by one or more of a single-level cell (SLC) or multi-level cell (MLC) physical program boundary, or a triple-level cell (TLC) or quad-level cell (QLC) NAND layer.

7. The storage device of claim 1 , wherein the controller is further configured to:

close the first block after writing the generated data to the first portion;

open a second block in response to closure of the first block; and

relocate the valid data from the first portion of the first block to the second block.

8. The storage device of claim 7 , wherein the controller is further configured to:

erase the first block in response to the relocation of the valid data.

9. The storage device of claim 1 , wherein the generated data is dummy data.

10. The storage device of claim 1 , wherein the data error condition is a block error rate (BER) of data stored on the first block.

11. The storage device of claim 1 , wherein the threshold data-error condition is a ratio of valid data to invalid data.

12. A method for open block data relocation in a memory, comprising:

determining that data stored on a first block satisfies a threshold data-error condition, the data comprising invalid data and valid data;

determining a close block boundary associated with the first block, wherein the close block boundary is configured to bifurcate the first block into a first portion and a second portion, wherein the first portion comprises the data; and

writing generated data to the first portion of the first block, wherein the generated data fills the first portion of the first block to the close block boundary.

13. The method of claim 12 , wherein the close block boundary is defined by a data length associated with an error detection function.

14. The method of claim 13 , wherein the error detection function is an error correction code (ECC), a low-density parity-check code (LDPC), or an XOR function.

15. The method of claim 12 , wherein the close block boundary is defined by an indirection mapping unit.

16. The method of claim 12 , wherein the close block boundary is defined by a physical boundary of the memory.

17. The method of claim 16 , wherein the physical boundary of the memory is defined by one or more of a single-level cell (SLC) or multi-level cell (MLC) physical program boundary, or a triple-level cell (TLC) or quad-level cell (QLC) NAND layer.

18. The method of claim 12 , wherein the method further comprises:

closing the first block after writing the generated data to the first portion;

opening a second block in response to closure of the first block; and

relocating the valid data from the first portion of the first block to the second block.

19. The method of claim 18 , wherein the method further comprised:

erasing the first block in response to the relocation of the valid data.

20. A storage device, comprising:

a memory; and

a controller coupled to the memory and configured to:

close a first block based on a satisfies a threshold data-error condition of the first block, wherein the first block comprises invalid data and valid data;

open a second block in response to closing the first block; and

relocate the valid data from the first block to the second block.

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 Jan 18, 2023
From: IN, JI-HYUN; ATAKLTI, YOSIEF; KARKI, AAJNA; XIE, HONGMEI; LI, XIAOYING
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 062411/0162 →