IP Library Granted Patent US 11,029,857
Granted Patent B2
US 11,029,857 · App. 16/839,873 · Granted Jun 8, 2021

Offloading device maintenance to an external processor in low-latency, non-volatile memory

Inventor: Michael Nishimoto (Saratoga, CA)
Assignee: EMC IP Holding Company LLC
G06F3/0619G06F3/0647G06F3/0652G06F3/0688G06F13/4068G06F13/4282G06F2213/0026
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,029,857
App. No.
16/839,873
Granted
Jun 8, 2021
Kind
B2
Abstract

A set of device maintenance related data is received from each of a plurality of non-volatile memory modules. Each of the plurality of non-volatile memory modules comprise a plurality of non-volatile memory devices. Based at least in part on said set of device maintenance related data a maintenance operation to be performed is determined. The determined device maintenance related operation is performed.

Claims (23)

1. A data storage system, comprising:

a control module connected to each non-volatile memory module in a plurality of non-volatile memory modules each comprising a plurality of non-volatile memory devices, the control module comprising a processor external to said non-volatile memory modules, the processor being configured to: receive from each of said non-volatile memory modules a set of device maintenance related data, wherein the set of device maintenance related data includes a read disturb count of a cell of a plurality of cells of a non-volatile memory device; determine based at least in part on said set of device maintenance related data a maintenance operation to be performed; select a count limit based on a first neighboring cell or a second neighboring cell, wherein the count limit is updated based on a location of a neighboring cell on the non-volatile memory device, a temperature of the non-volatile memory device, and a version of 3D media; and perform the determined device maintenance related operation.

2. The system recited in claim 1 , further comprising the plurality of non-volatile memory modules.

3. The system recited in claim 1 , wherein the external processor is connected by a PCIe bus to said non-volatile memory modules.

4. The system recited in claim 1 , wherein each non-volatile memory device has data which are overwritten in place.

5. The system recited in claim 1 , wherein each non-volatile memory module further comprises a module microprocessor, and wherein the module microprocessor is configured to send the maintenance related data.

6. The system recited in claim 5 , wherein the external processor is further configured to send to each module microprocessor associated with each non-volatile memory module persistence training.

7. The system recited in claim 6 , wherein the persistence training includes a persistence algorithm in the event non-volatile memory module power is lost.

8. The system recited in claim 7 , wherein a persistence algorithm includes redundancy instructions.

9. The system recited in claim 1 , wherein the maintenance operation comprises scrubbing.

10. The system recited in claim 9 , wherein said set of device maintenance related data comprises scrubbing data.

11. The system recited in claim 10 , wherein scrubbing data comprises an indication related to how much error correction has been exercised.

12. The system recited in claim 1 , wherein the control module runs software on an external processor.

13. The system recited in claim 1 , wherein the maintenance operation is determined across two or more non-volatile memory modules.

14. The system recited in claim 1 , wherein said set of device maintenance related data comprises wear data.

15. The system recited in claim 14 , wherein the maintenance operation comprises determining based at least in part on the wear data a migration from a first non-volatile memory module to a first non-volatile memory module, possibly overwriting in place.

16. The system recited in claim 14 , wherein the maintenance operation comprises determining based at least in part on the wear data a migration from a first non-volatile memory module to a second non-volatile memory module, possibly overwriting in place.

17. The system recited in claim 1 , wherein said set of device maintenance related data comprises location data of objects across two or more non-volatile memory modules.

18. The system recited in claim 17 , wherein the location data of objects includes physical layout data and disturb tracking.

19. A method of storing data, comprising:

receiving from each of a plurality of non-volatile memory modules a set of device maintenance related data, wherein each of the plurality of non-volatile memory modules comprise a plurality of non-volatile memory devices, and wherein the set of device maintenance related data includes a read disturb count of a cell of a plurality of cells of a non-volatile memory device; determining based at least in part on said set of device maintenance related data a maintenance operation to be performed; selecting a count limit based on a first neighboring cell or a second neighboring cell, wherein the count limit is updated based on a location of a neighboring cell on the non-volatile memory device, a temperature of the non-volatile memory device, and a version of 3D media; and performing the determined device maintenance related operation.

20. A computer program product for data storage, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

receiving from each of a plurality of non-volatile memory modules a set of device maintenance related data, wherein each of the plurality of non-volatile memory modules comprise a plurality of non-volatile memory devices, and wherein the set of device maintenance related data includes a read disturb count of a cell of a plurality of cells of a non-volatile memory device; determining based at least in part on said set of device maintenance related data a maintenance operation to be performed; selecting a count limit based on a first neighboring cell or a second neighboring cell, wherein the count limit is updated based on a location of a neighboring cell on the non-volatile memory device, a temperature of the non-volatile memory device, and a version of 3D media; and performing the determined device maintenance related operation.

Assignments (10)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0081) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0441 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0917) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0509 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052852/0022) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0582 →
RELEASE OF SECURITY INTEREST AT REEL 052771 FRAME 0906 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0298 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052852/0022 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0081 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0917 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 30, 2020
From: NISHIMOTO, MICHAEL
To: EMC CORPORATION
Reel/Frame 052794/0884 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 30, 2020
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 052797/0301 →
SECURITY AGREEMENT Recorded May 28, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052771/0906 →