IP Library Granted Patent US 10,339,343
Granted Patent B2
US 10,339,343 · App. 15/631,293 · Granted Jul 2, 2019

Storage system and method for improved generation and storage of data protection information

Inventors: Daniel Helmick (Broomfield, CO); Majid Nemati Anaraki (San Diego, CA); Mai Ghaly (San Jose, CA)
Assignee: Western Digital Technologies, Inc.
G06F21/64G06F21/60G11B20/1833G06F21/6227G11B20/18
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,339,343
App. No.
15/631,293
Granted
Jul 2, 2019
Kind
B2
Abstract

A storage system is provided comprising a memory and a controller. The controller is configured to receive a write command, data, and a logical address; determine a physical address associated with the logical address; generate protection information for the data using the data and at least one of the logical address and physical address; and store the data and the protection information in the memory without storing the at least one of the logical address and physical address in the memory.

Claims (44)

1. A storage system comprising:

a memory; and

a controller in communication with the memory, wherein the controller is configured to:

receive a write command, data, and a logical address;

determine a physical address associated with the logical address;

generate protection information for the data using the data, the logical address, and physical address; and

store the data and the protection information in the memory without storing the logical address and physical address in the memory.

2. The storage system of claim 1 , wherein the protection information comprises at least one of an error detection code and an error correction code.

3. The storage system of claim 1 , wherein the protection information comprises both an error detection code and an error correction code, and wherein the controller is configured to:

generate the error detection code using the data, the logical address, and physical address; and

generate the error correction code using the data, the, logical address, the physical address, and the error detection code.

4. The storage system of claim 1 , wherein the protection information comprises both an error detection code and an error correction code, and wherein the controller is configured to:

generate the error detection code using the data, the logical address, and physical address; and

generate the error correction code using the data and the error detection code but not the, logical address or the physical address.

5. The storage system of claim 1 , wherein the controller is further configured to:

receive a read command and the logical address;

determine the physical address associated with the logical address;

read the data and the protection information from the physical address in the memory; and

process the protection information.

6. The storage system of claim 1 , wherein the controller is further configured to generate new protection information and store the data and the new protection information in the memory in response to the storage system moving the data from the physical address to a new physical address.

7. The storage system of claim 1 , wherein the controller is further configured to map logical addresses to physical addresses such that each logical address maps to a single physical address and each physical address maps to a single logical address.

8. The storage system of claim 1 , wherein the controller is further configured to map logical addresses to physical addresses, wherein an accuracy of the mapping is above a threshold.

9. The storage system of claim 1 , wherein the memory comprises a three-dimensional memory.

10. The storage system of claim 1 , wherein the storage system is embedded in the host.

11. The storage system of claim 1 , wherein the storage system is removably connected to the host.

12. A method for writing a code word to memory, the method comprising:

performing the following in a storage system comprising a memory:

creating a logical address to physical address map;

creating error detection code using data, a logical address, and a physical address associated with the logical address;

creating error correction code using the data and the error detection code; and

writing, based on a determined accuracy of the logical address to physical address map, a code word comprising the data, error detection code, and error correction code in the memory, wherein the code word is free of the logical address and the physical address.

13. The method of claim 12 , wherein the error correction code comprises systematic error correction code, and wherein the error correction code is further generated using the logical address and the physical address.

14. The method of claim 12 , wherein the error correction code comprises non-systematic error correction code, and wherein the error correction code is generated without using the logical address and the physical address.

15. The method of claim 12 , wherein the accuracy of the mapping is above a threshold.

16. The method of claim 12 , wherein the memory comprises a three-dimensional memory.

17. The method of claim 12 , wherein the storage system is embedded in a host.

18. The method of claim 12 , wherein the storage system is removably connected to a host.

19. A storage system comprising:

a memory;

means for receiving a write command, data, and a logical address;

means for generating a logical address to physical address map;

means for generating protection information for the data using the logical address and a corresponding physical address; and

means for storing, based on a determined accuracy of the logical to physical address map, the data and the protection information in the memory without storing the logical address or the corresponding physical address.

20. The storage system of claim 19 , wherein the memory comprises a three-dimensional memory.

Assignments (10)
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 - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
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 →
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 Jun 23, 2017
From: HELMICK, DANIEL; NEMATI ANARAKI, MAJID; GHALY, MAI
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 042798/0058 →
Continuity (2)
Provisional Application 62515911 · Jun 6, 2017
Related Publication 20180349645A1 · Dec 6, 2018