IP Library Granted Patent US 11,190,218
Granted Patent B2
US 11,190,218 · App. 16/826,063 · Granted Nov 30, 2021

Code rate switching mechanism for data storage system

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,190,218
App. No.
16/826,063
Granted
Nov 30, 2021
Kind
B2
Abstract

A data storage system capable of switching a code rate based on a host command is disclosed. A controller of the data storage system may set a code rate in a data storage device to a first code rate for encoding data to be written to non-volatile memory of the data storage device. The controller may receive, at the data storage device, a host command indicating a switch point for switching the set code rate from the first code rate to a second code rate. The controller may switch the set code rate from the first code rate to the second code rate at the indicated switch point.

Claims (63)

1. A data storage system, comprising:

one or more memories; and

one or more controllers configured to cause:

obtaining a command indicating a switch point for switching a code rate from a first code rate to a second code rate that is different from the first code rate, wherein the code rate is for encoding data to be written to the one or more memories, and wherein the switch point corresponds to an operational threshold for the one or more memories;

setting a first switch point of the data storage system to the switch point;

switching the code rate from the first code rate to the second code rate, responsive to the switch point occurring;

after the switching, encoding the data at the second code rate; and

writing the data encoded at the second code rate to the one or more memories.

2. The data storage system of claim 1 ,

wherein obtaining the command comprises receiving the command from a system different from the data storage system,

wherein the first switch point is a pre-determined switch point, and

wherein the switch point is different from the pre-determined switch point.

3. The data storage system of claim 1 ,

wherein the first code rate comprises a first ratio of parity data for encoding data to be written to the one or more memories,

wherein the second code rate comprises a second ratio of parity data for encoding data to be written to the one or more memories, and

wherein the second ratio is different from the first ratio.

4. The data storage system of claim 3 , wherein the second ratio is greater than the first ratio responsive to the second code rate being less than the first code rate.

5. The data storage system of claim 1 , wherein the operational threshold for the one or more memories comprises a lifecycle threshold of the one or more memories.

6. The data storage system of claim 1 , wherein the switch point is time at which the switch point is received from a host.

7. The data storage system of claim 1 , wherein the one or more controllers are further configured to cause:

after the switching of the code rate but prior to the encoding of the data at the second code rate, reading and decoding the data encoded at the first code rate from the one or more memories.

8. The data storage system of claim 1 ,

wherein the switch point is a program-erase cycle threshold,

wherein the one or more controllers are further configured to cause:

determining that a program-erase cycle count of the one or more memories satisfies the program-erase cycle threshold,

wherein the switching of the code rate from the first code rate to the second code rate occurs in response to the determining.

9. The data storage system of claim 8 , wherein the program-erase cycle threshold is based on an offline duration specification of the data storage system.

10. A method, comprising:

obtaining a command indicating a switch point for switching a code rate from a first code rate to a second code rate that is different from the first code rate, wherein the code rate is for encoding data to be written to one or more memories, and wherein the switch point corresponds to an operational threshold for the one or more memories;

setting a first switch point of a data storage system to the switch point;

switching the code rate from the first code rate to the second code rate, responsive to the switch point occurring;

after the switching, encoding the data at the second code rate; and

writing the data encoded at the second code rate to the one or more memories.

11. The method of claim 10 ,

wherein obtaining the command comprises receiving the command from a system different from the data storage system,

wherein the first switch point is a pre-determined switch point, and

wherein the switch point is different from the pre-determined switch point.

12. The method of claim 10 ,

wherein the first code rate comprises a first ratio of parity data for encoding data to be written to the one or more memories,

wherein the second code rate comprises a second ratio of parity data for encoding data to be written to the one or more memories, and

wherein the second ratio is different from the first ratio.

13. The method of claim 12 , wherein the second ratio is greater than the first ratio responsive to the second code rate i-s-being less than the first code rate.

14. The method of claim 10 , wherein the operational threshold for the one or more memories comprises a lifecycle threshold of the one or more memories.

15. The method of claim 10 , further comprising:

after the switching of the code rate but prior to the encoding of the data at the second code rate, reading and decoding the data encoded at the first code rate from the one or more memories.

16. An apparatus, comprising:

means for obtaining a command indicating a switch point for switching a code rate from a first code rate to a second code rate that is different from the first code rate, wherein the code rate is for encoding data to be written to one or more memories, and wherein the switch point corresponds to an operational threshold for the one or more memories;

means for setting a first switch point of the apparatus to the switch point;

means for switching the code rate from the first code rate to the second code rate, responsive to the switch point occurring;

after the switching, means for encoding the data at the second code rate; and

means for writing the data encoded at the second code rate to the one or more memories.

17. The apparatus of claim 16 ,

wherein the means for obtaining the command comprises means for receiving the command from a system different from the apparatus,

wherein the first switch point is a pre-determined switch point, and

wherein the switch point is different from the pre-determined switch point.

18. The apparatus of claim 16 ,

wherein the first code rate comprises a first ratio of parity data for encoding data to be written to the one or more memories,

wherein the second code rate comprises a second ratio of parity data for encoding data to be written to the one or more memories, and

wherein the second ratio is different from the first ratio.

19. The apparatus of claim 18 , wherein the second ratio is greater than the first ratio responsive to the second code rate being less than the first code rate.

20. The apparatus of claim 16 , further comprising:

means for determining that the switch point is reached in the one or more memories,

wherein the means for switching comprises means for switching the code rate from the first code rate to the second code rate in response to determining that the switch point is reached.

Assignments (8)
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 053482 FRAME 0453 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058966/0279 →
SECURITY INTEREST Recorded May 14, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 053482/0453 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 15, 2020
From: COMETTI, ALDO GIOVANNI; DURGAM, ANIRYUDH REDDY
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 052409/0069 →