IP Library Granted Patent US 9,348,520
Granted Patent B2
US 9,348,520 · App. 14/266,234 · Granted May 24, 2016

Lifetime extension of non-volatile semiconductor memory for data storage device

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 9,348,520
App. No.
14/266,234
Granted
May 24, 2016
Kind
B2
Abstract

Lifetime extension of a non-volatile semiconductor memory (NVSM) for a data storage device (DSD) includes determining a write amplification factor based on an amount of data previously written to the NVSM and at least one of an amount of data previously requested to be written to the DSD, and an amount of data previously requested to be written to the NVSM. At least a portion of the amount of data to be written to the NVSM is directed or redirected to the disk based on the determined write amplification factor.

Claims (67)

1. A data storage device (DSD), comprising:

a disk for storing data;

a non-volatile semiconductor memory (NVSM) for storing data; and

a controller configured to:

receive a write request from a host to write data to the DSD which includes data requested to be written to the NVSM;

determine a write amplification factor based on an amount of data previously written to the NVSM and at least one of:

an amount of data previously requested to be written to the DSD, and

an amount of data previously requested to be written to the NVSM; and

redirect at least a portion of the data requested to be written to the NVSM to the disk based on the determined write amplification factor, wherein the redirection is performed in a current stage of a plurality of successive stages with each stage defining a predetermined percentage of data to be redirected to the disk for more than one write request for data to be written to the NVSM during the stage.

2. The DSD of claim 1 , wherein an amount of data redirected to the disk in the current stage is less than an amount of data redirected to the disk in a following stage of the plurality of successive stages.

3. The DSD of claim 1 , wherein an amount of data redirected to the disk in the current stage is greater than or equal to an amount of data redirected to the disk in a following stage of the plurality of successive stages.

4. The DSD of claim 1 , wherein the controller is further configured to:

update the write amplification factor; and

move from the current stage to the following stage if the write amplification factor does not meet a target write amplification value.

5. The DSD of claim 4 , wherein the controller is further configured to update the write amplification factor after a predetermined amount of data is requested to be written to the DSD or after a predetermined amount of data is requested to be written to the NVSM.

6. The DSD of claim 4 , wherein the controller is further configured to update the write amplification factor after a predetermined time period has elapsed.

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

receive priority data from the host corresponding to the data requested to be written to the NVSM; and

redirect the at least a portion of the data requested to be written to the NVSM to the disk based on the received priority data.

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

determine a target amount of data to be redirected to the disk based on the determined write amplification factor;

determine whether redirecting data with a low priority would achieve the target amount of data to be redirected based on the priority data; and

redirect, to the disk, data requested to be written to the NVSM associated with a higher priority than the low priority if the controller determines that redirecting data with the low priority would not achieve the target amount of data to be redirected.

9. The DSD of claim 1 , wherein the controller is further configured to:

receive frequency-of-use data from the host corresponding to the data requested to be written to the NVSM; and

redirect the at least a portion of the data to be written to the NVSM based on the received frequency-of-use data.

10. The DSD of claim 1 , wherein the controller is further configured to redirect the data to be written to the NVSM based on at least one of a current power mode of the NVSM and a current power mode of the disk.

11. A method of operating a data storage device (DSD) including a non-volatile semiconductor memory (NVSM), the method comprising:

receiving a write request from a host to write an amount of data to the DSD which includes an amount of data requested to be written to the NVSM;

determining a write amplification factor based on an amount of data previously written to the NVSM and at least one of:

an amount of data previously requested to be written to the DSD, and

an amount of data previously requested to be written to the NVSM; and

redirecting at least a portion of the amount of data requested to be written to the NVSM to a disk of the DSD based on the determined write amplification factor, wherein the redirection is performed in a current stage of a plurality of successive stages with each stage defining a predetermined percentage of data to be redirected to the disk for more than one write request for data to be written to the NVSM during the stage.

12. The method of claim 11 , wherein an amount of data redirected to the disk in the current stage is less than an amount of data redirected to the disk in a following stage of the plurality of successive stages.

13. The method of claim 11 , wherein an amount of data redirected to the disk in the current stage is greater than or equal to an amount of data redirected to the disk in a following stage of the plurality of successive stages.

14. The method of claim 11 , further comprising:

updating the write amplification factor; and

moving from the current stage to the following stage if the write amplification factor does not meet a target write amplification value.

15. The method of claim 14 , wherein the updating the write amplification factor is performed after a predetermined amount of data is requested to be written to the DSD or after a predetermined amount of data is requested to be written to the NVSM.

16. The method of claim 14 , wherein the updating the write amplification factor is performed after a predetermined time period has elapsed.

17. The method of claim 11 , further comprising receiving priority data from the host corresponding to the data requested to be written to the NVSM, wherein the redirecting at least a portion of the amount of data requested to be written to the NVSM to the disk is based on the received priority data.

18. The method of claim 17 , further comprising:

determining a target amount of data to be redirected to the disk based on the determined write amplification factor; and

determining whether redirecting data with a low priority would achieve the target amount of data to be redirected based on the priority data,

wherein the redirecting at least a portion of the amount of data requested to be written to the NVSM to the disk includes redirecting, to the disk, data requested to be written to the NVSM associated with a higher priority than the low priority if redirecting data with the low priority would not achieve the target amount of data to be redirected.

19. The method of claim 11 , further comprising:

receiving frequency-of-use data from the host corresponding to the data requested to be written to the NVSM, wherein the redirecting at least a portion of the amount of data requested to be written to the NVSM to the disk is based on the received frequency-of-use data.

20. The method of claim 11 , wherein the redirecting at least a portion of the amount of data requested to be written to the NVSM to the disk is based on at least one of a current power mode of the NVSM and a current power mode of the disk.

21. A host in communication with a data storage device (DSD) including a disk for storing data and a non-volatile semiconductor memory (NVSM) for storing data, the host comprising:

an interface for receiving from the DSD an amount of data previously written to the NVSM; and

a processor configured to:

determine a write amplification factor based on the amount of data previously written to the NVSM and at least one of:

an amount of data previously requested to be written to the DSD, and

an amount of data previously requested to be written to the NVSM;

determine an amount of data to be written to the DSD;

direct at least a portion of the amount of data to be written to the DSD to the disk based on the write amplification factor; and

increase the amount of data directed to the NVSM if the write amplification factor does not meet a target write amplification value.

22. The host of claim 21 , wherein the processor is further configured to direct the at least a portion of the amount of data to be written to the DSD to the NVSM based on priority data corresponding to the amount of data to be written to the DSD.

23. A method for writing data to a data storage device (DSD) including a disk for storing data and a non-volatile semiconductor memory (NVSM) for storing data, the method comprising:

receiving from the DSD an amount of data previously written to the NVSM;

determining a write amplification factor based on the amount of data previously written to the NVSM and at least one of:

an amount of data previously requested to be written to the DSD, and

an amount of data previously requested to be written to the NVSM;

determining an amount of data to be written to the DSD;

directing at least a portion of the amount of data to be written to the NVSM to the disk based on the write amplification factor; and

increasing the amount of data directed to the NVSM if the write amplification factor does not meet a target write amplification value.

24. The method of claim 23 , wherein the directing at least a portion of the amount of data to be written to the NVSM to the disk is based on priority data corresponding to the amount of data to be written to the NVSM.

Assignments (9)
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 038744 FRAME 0481 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058982/0556 →
RELEASE OF SECURITY INTEREST Recorded Mar 5, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 045501/0714 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038744/0481 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038722/0229 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038744/0281 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 20, 2015
From: DING, LU; ONG, CHOO-BHIN; GUDA, CHANDRA M.; KUTAS, MICHAEL C.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 034763/0192 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 25, 2014
From: DING, LU; ONG, CHOO-BHIN; GUDA, CHANDRA M.; KUTAS, MICHAEL C.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 033605/0140 →