IP Library Granted Patent US 10,218,789
Granted Patent B2
US 10,218,789 · App. 15/782,618 · Granted Feb 26, 2019

Erasure correcting coding using temporary erasure data

Inventors: Nian Niles Yang (Mountain View, CA); Steven T. Sprouse (San Jose, CA); Philip David Reusswig (Mountain View, CA); Tienchien Kuo (Sunnyvale, CA); Xinmiao Zhang (Mercer Island, WA)
Assignee: Western Digital Technologies, Inc.
H04L67/1097G06F11/1012G06F11/1068G11C29/52H03M13/033H03M13/13H03M13/154H03M13/1515H03M13/356H03M13/373H03M13/3761
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 10,218,789
App. No.
15/782,618
Granted
Feb 26, 2019
Kind
B2
Abstract

In an illustrative example, a data storage device includes a non-volatile memory and a controller coupled to the non-volatile memory. The controller includes an erasure correcting code engine configured to generate first erasure recovery data and temporary erasure recovery data in a volatile memory at least partially based on first data to be written to the non-volatile memory. The first erasure recovery data is configured to enable a first type of data recovery of the first data, and the temporary erasure recovery data is configured to enable a second type of data recovery of the first data. The controller is further configured to store the first erasure recovery data and the temporary erasure recovery data in the volatile memory and, after verifying that the first data is stored in the non-volatile memory, to discard or modify the temporary erasure recovery data.

Claims (57)

1. A data storage device comprising:

a non-volatile memory; and

a controller coupled to the non-volatile memory, the controller including:

a volatile memory; and

an erasure correcting code engine configured to

generate first erasure recovery data and temporary erasure recovery data at least partially based on first data to be written to the non-volatile memory,

perform a first type of data recovery of the first data based on the first erasure recovery data, and

perform a second type of data recovery of the first data based on the temporary erasure recovery data,

wherein the controller is further configured to:

store the first erasure recovery data and the temporary erasure recovery data in the volatile memory, and

after verifying that the first data is stored in the non-volatile memory, discard or modify the temporary erasure recovery data.

2. The data storage device of claim 1 , wherein the controller is further configured to discard the temporary erasure data to disable the second type of data recovery with respect to the first data.

3. The data storage device of claim 1 , wherein the non-volatile memory comprises multiple flash memory dies.

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

the non-volatile memory includes:

a first word line; and

a second word line that is adjacent to the first word line;

the first data is included in a first data group that is stored in first storage elements coupled to the first word line; and

the controller is further configured to verify that second data of a second data group is stored in second storage elements coupled to the second word line prior to discarding the temporary erasure recovery data.

5. The data storage device of claim 1 , wherein the first erasure recovery data corresponds to first parity data of a multi-die horizontal parity scheme, and wherein the temporary erasure recovery data corresponds to second parity data of the multi-die horizontal parity scheme.

6. The data storage device of claim 5 , wherein the first erasure recovery data corresponds to an exclusive-or (XOR) parity, and wherein the temporary erasure recovery data corresponds to a Reed-Solomon parity.

7. The data storage device of claim 1 , wherein the controller is further configured to modify the temporary erasure data to disable the second type of data recovery with respect to the first data.

8. The data storage device of claim 1 , wherein the first erasure recovery data corresponds to first parity data of a horizontal parity scheme across multiple planes of the non-volatile memory, and wherein the temporary erasure recovery data corresponds to second parity data of a vertical parity scheme that excludes at least one plane of the multiple planes.

9. The data storage device of claim 8 , wherein the first erasure recovery data corresponds to a first exclusive-or (XOR) parity, and wherein the temporary erasure recovery data corresponds to a second XOR parity.

10. A method comprising:

generating, with a controller of a data storage device, first erasure recovery data at least partially based on first data to be written to a non-volatile memory of the data storage device;

generating, with the controller, temporary erasure recovery data at least partially based on the first data;

controlling, with the controller, a volatile memory to store the temporary erasure recovery data;

writing, with the controller, the first data and the first erasure recovery data to the non-volatile memory; and

after verifying that the first data is stored in the non-volatile memory, discarding or modifying, with the controller, the temporary erasure recovery data.

11. The method of claim 10 , wherein:

the first data corresponds to a logical page of data to be written to a first page location in a first block location of a first die of the non-volatile memory;

the first erasure recovery data is generated further based on second data to be written to the first page location in the first block location of a second die of the non-volatile memory; and

the temporary erasure recovery data is generated further based on the second data.

12. The method of claim 11 , further comprising:

generating second erasure recovery data at least partially based on third data and fourth data;

writing the third data, the fourth data, and the second erasure recovery data to the non-volatile memory; and

wherein the temporary erasure recovery data is generated further based on the third data and the fourth data.

13. The method of claim 12 , wherein discarding or modifying the temporary erasure recovery data is performed after verifying that the first data, the second data, the third data, and the fourth data are stored in the non-volatile memory.

14. The method of claim 13 , further comprising:

generating third erasure recovery data based on the first data, the second data, the third data, and the fourth data; and

storing the third erasure recovery data in the non-volatile memory.

15. The method of claim 10 , wherein:

the first data corresponds to a logical page of data to be written to a first page location in a first block location in a first plane of the non-volatile memory;

the first erasure recovery data is generated farther based on second data to be written to the first page location in the first block location in a second plane of the non-volatile memory; and

the temporary erasure recovery data is generated independent of the second data.

16. The method of claim 15 , wherein the temporary erasure recovery data is generated based on data written to the first page location of multiple open blocks of the non-volatile memory.

17. The method of claim 16 , wherein modifying the temporary erasure recovery data includes performing an exclusive-or (XOR) operation of the first data and the temporary erasure recovery data in response to closing a first block after verifying that a block write operation is successful, wherein the block write operation includes writing the first data to the first block.

18. An apparatus comprising:

means for storing data; and

means for controlling the means for storing data, the means for controlling including

means for generating first erasure recovery data and temporary erasure recovery data at least partially based on first data to be written to the means for storing data,

means for performing a first type of data recovery of the first data based on the first erasure recovery data,

means for performing a second type of data recovery of the first data based on the temporary erasure recovery data, and

means for discarding or modifying the temporary erasure recovery data after verifying that the first data is stored in the means for storing data.

19. The apparatus of claim 18 , wherein the first erasure recovery data corresponds to first parity data of a multi-die horizontal parity scheme, and wherein the temporary erasure recovery data corresponds to second parity data of the multi-die horizontal parity scheme.

20. The apparatus of claim 18 , wherein the first erasure recovery data corresponds to first parity data of a horizontal parity scheme across multiple planes of the means for storing data, and wherein the temporary erasure recovery data corresponds to second parity data of a vertical parity scheme that excludes at least one plane of the multiple planes.

Assignments (10)
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 →
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 →
RELEASE OF SECURITY INTEREST AT REEL 052915 FRAME 0566 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 059127/0001 →
SECURITY INTEREST Recorded Feb 6, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 052915/0566 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2017
From: YANG, NIAN NILES; SPROUSE, STEVEN T.; REUSSWIG, PHILIP DAVID; KUO, TIENCHIEN; ZHANG, XINMIAO
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 044015/0347 →
Continuity (3)
Continuation In Part 15179325 · Jun 10, 2016
Provisional Application 62304113 · Mar 4, 2016
Related Publication 20180032395A1 · Feb 1, 2018
Cited By (2)
US 12,206,434 US 12,260,925