IP Library Granted Patent US 9,563,370
Granted Patent B2
US 9,563,370 · App. 14/621,200 · Granted Feb 7, 2017

Triggering a process to reduce declared capacity of a storage device

Inventors: Allen Samuels (San Jose, CA); Warren Fritz Kruger (Sunnyvale, CA); Linh Tien Truong (San Jose, CA)
Assignee: SANDISK TECHNOLOGIES LLC
G06F3/0616G06F3/061G06F3/0653G06F3/0655G06F11/00G06F12/0246G11C16/3495G06F12/0253G06F2212/7211
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,563,370
App. No.
14/621,200
Granted
Feb 7, 2017
Kind
B2
Abstract

Systems, methods and/or devices are used to enable triggering a process to reduce declared capacity of a storage device. In one aspect, the method includes, at a storage device of a storage system: (1) generating one or more metrics of the storage device, the storage device including non-volatile memory, (2) detecting a trigger condition in accordance with the one or more metrics of the storage device, and (3) enabling an amelioration process associated with the detected trigger condition, the amelioration process to reduce declared capacity of the non-volatile memory of the storage device. In some embodiments, the storage device includes one or more flash memory devices.

Claims (60)

1. A method of managing a storage system, the method comprising:

at a storage device of the storage system:

generating one or more metrics of the storage device, the storage device including non-volatile memory;

detecting a trigger condition in accordance with the one or more metrics of the storage device;

enabling an amelioration process associated with the detected trigger condition, the amelioration process to reduce declared capacity of the non-volatile memory of the storage device, wherein declared capacity is storage capacity available to a host;

prior to detecting the trigger condition, detecting a first wear condition of the non-volatile memory of the storage device, wherein a total storage capacity of the non-volatile memory of the storage device includes declared capacity and over-provisioning; and

in response to detecting the first wear condition, performing a remedial action that reduces over-provisioning of the non-volatile memory of the storage device without reducing declared capacity of the non-volatile memory of the storage device.

2. The method of claim 1 , wherein detecting the trigger condition comprises detecting a second wear condition distinct from the first wear condition.

3. The method of claim 1 , wherein enabling the amelioration process associated with the detected trigger condition includes notifying the host to which the storage device is operatively coupled of the trigger condition.

4. The method of claim 1 , wherein enabling the amelioration process associated with the detected trigger condition includes:

receiving a query from the host to which the storage device is operatively coupled; and

in response to receiving the query, reporting the trigger condition.

5. The method of claim 1 , wherein enabling the amelioration process associated with the detected trigger condition includes:

receiving a command from the host to which the storage device is operatively coupled; and

in response to receiving the command, sending a response to the command and a notification of the trigger condition.

6. The method of claim 1 , wherein enabling the amelioration process associated with the detected trigger condition includes:

receiving a command from the host to which the storage device is operatively coupled; and

in response to receiving the command, sending a response to the command and a notification that prompts the host to obtain information with respect to the trigger condition.

7. The method of claim 1 , wherein the host includes a client on behalf of which data is stored in the storage system.

8. The method of claim 1 , wherein the host includes a cluster controller of the storage system.

9. The method of claim 1 , wherein enabling the amelioration process associated with the detected trigger condition includes scheduling the amelioration process to be performed on the storage device.

10. The method of claim 1 , wherein enabling the amelioration process associated with the detected trigger condition includes determining one or more parameters for the amelioration process.

11. The method of claim 10 , wherein enabling the amelioration process associated with the detected trigger condition further includes reporting at least a subset of the one or more parameters for the amelioration process.

12. The method of claim 1 , wherein generating one or more metrics of the storage device includes generating at least one metric, of the one or more metrics, for each memory portion of a plurality of memory portions of the storage device.

13. The method of claim 1 , wherein the one or more metrics of the storage device include one or more status metrics corresponding to the storage device's ability to retain data.

14. The method of claim 1 , wherein the one or more metrics of the storage device include one or more performance metrics corresponding to performance of the storage device.

15. The method of claim 1 , wherein the one or more metrics of the storage device include one or more wear metrics corresponding to wear on the storage device.

16. The method of claim 1 , wherein the one or more metrics of the storage device include one or more time metrics.

17. The method of claim 1 , wherein the one or more metrics of the storage device include values of the one or more metrics from more than one time.

18. The method of claim 1 , further comprising:

after enabling the amelioration process:

re-evaluating the trigger condition in accordance with the one or more metrics of the storage device; and

in accordance with a determination that the trigger condition is no longer valid, aborting the amelioration process to reduce declared capacity of the non-volatile memory of the storage device.

19. The method of claim 1 , wherein the amelioration process to reduce declared capacity of the non-volatile memory of the storage device includes a process to reduce utilization of the non-volatile memory of the storage device.

20. The method of claim 1 , wherein the storage device comprises one or more flash memory devices.

21. A storage device, comprising:

non-volatile memory;

one or more processors; and

controller memory storing one or more programs, which when executed by the one or more processors cause the storage device to perform operations comprising:

generating one or more metrics of the storage device;

detecting a trigger condition in accordance with the one or more metrics of the storage device;

enabling an amelioration process associated with the detected trigger condition, the amelioration process to reduce declared capacity of the non-volatile memory of the storage device, wherein declared capacity is storage capacity available to a host;

prior to detecting the trigger condition, detecting a first wear condition of the non-volatile memory of the storage device, wherein a total storage capacity of the non-volatile memory of the storage device includes declared capacity and over-provisioning; and

in response to detecting the first wear condition, performing a remedial action that reduces over-provisioning of the non-volatile memory of the storage device without reducing declared capacity of the non-volatile memory of the storage device.

22. The storage device of claim 21 , wherein detecting the trigger condition comprises detecting a second wear condition distinct from the first wear condition.

23. The storage device of claim 21 , wherein enabling the amelioration process associated with the detected trigger condition includes notifying the host to which the storage device is operatively coupled of the trigger condition.

24. The storage device of claim 21 , wherein the one or more metrics of the storage device include one or more status metrics corresponding to the storage device's ability to retain data.

25. The storage device of claim 21 , wherein the one or more metrics of the storage device include one or more performance metrics corresponding to performance of the storage device.

26. The storage device of claim 21 , wherein the storage device comprises one or more flash memory devices.

27. A non-transitory computer readable storage medium, storing one or more programs configured for execution by one or more processors of a storage device, the one or more programs including instructions for:

generating one or more metrics of the storage device, the storage device including non-volatile memory;

detecting a trigger condition in accordance with the one or more metrics of the storage device;

enabling an amelioration process associated with the detected trigger condition, the amelioration process to reduce declared capacity of the non-volatile memory of the storage device, wherein declared capacity is storage capacity available to a host;

prior to detecting the trigger condition, detecting a first wear condition of the non-volatile memory of the storage device, wherein a total storage capacity of the non-volatile memory of the storage device includes declared capacity and over-provisioning; and

in response to detecting the first wear condition, performing a remedial action that reduces over-provisioning of the non-volatile memory of the storage device without reducing declared capacity of the non-volatile memory of the storage device.

28. The non-transitory computer readable storage medium of claim 27 , wherein detecting the trigger condition comprises detecting a second wear condition distinct from the first wear condition.

29. The non-transitory computer readable storage medium of claim 27 , wherein enabling the amelioration process associated with the detected trigger condition includes notifying the host to which the storage device is operatively coupled of the trigger condition.

30. The non-transitory computer readable storage medium of claim 27 , wherein the one or more metrics of the storage device include one or more status metrics corresponding to the storage device's ability to retain data.

31. The non-transitory computer readable storage medium of claim 27 , wherein the one or more metrics of the storage device include one or more performance metrics corresponding to performance of the storage device.

32. The non-transitory computer readable storage medium of claim 27 , wherein the storage device comprises one or more flash memory devices.

Assignments (5)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2024
From: SANDISK TECHNOLOGIES LLC
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 069796/0423 →
CHANGE OF NAME Recorded May 25, 2016
From: SANDISK TECHNOLOGIES INC
To: SANDISK TECHNOLOGIES LLC
Reel/Frame 038807/0807 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 4, 2015
From: SAMUELS, ALLEN; KRUGER, WARREN FRITZ; TRUONG, LINH TIEN
To: SANDISK TECHNOLOGIES INC.
Reel/Frame 035085/0155 →
Continuity (2)
Provisional Application 62044883 · Sep 2, 2014
Related Publication 20160062680A1 · Mar 3, 2016