Method and system for online program/erase count estimation
First Claim
1. A method for managing persistent storage, the method comprising:
- selecting a sample set of physical addresses in a solid state memory module (SSMM), wherein the sample set of physical addresses is associated with a region in the SSMM;
performing a garbage collection operation on the sample set of physical addresses;
after the garbage collection operation, issuing a write request to the sample set of physical addresses;
after issuing the write request, issuing a read request to the sample set of physical addresses to obtain a copy of data stored in the sample set of physical addresses;
determining an error rate in the copy of the data stored using at least one selected from a group consisting of an Error Correction Code (ECC) codeword and, known data in the write request;
determining a calculated P/E cycle value for the SSMM using at least the error rate; and
updating an in-memory data structure in a control module with the calculated P/E cycle value.
5 Assignments
0 Petitions
Accused Products
Abstract
In general, the technology relates to a method for managing persistent storage. The method includes selecting a sample set of physical addresses in a solid state memory module, and performing a garbage collection operation on the sample set of physical addresses. The method further includes, after the garbage collection operation, issuing a write request to the sample set of physical addresses, issuing a request read to the sample set of physical addresses to obtain a copy of the data stored in the sample set of physical addresses, determining an error rate in the copy of the data stored using an Error Correction Code codeword or known data in the write request, determining a calculated P/E cycle value for the SSMM using at least the error rate, and updating an in-memory data structure in a control module with the calculated P/E cycle value.
90 Citations
16 Claims
-
1. A method for managing persistent storage, the method comprising:
-
selecting a sample set of physical addresses in a solid state memory module (SSMM), wherein the sample set of physical addresses is associated with a region in the SSMM; performing a garbage collection operation on the sample set of physical addresses; after the garbage collection operation, issuing a write request to the sample set of physical addresses; after issuing the write request, issuing a read request to the sample set of physical addresses to obtain a copy of data stored in the sample set of physical addresses; determining an error rate in the copy of the data stored using at least one selected from a group consisting of an Error Correction Code (ECC) codeword and, known data in the write request; determining a calculated P/E cycle value for the SSMM using at least the error rate; and updating an in-memory data structure in a control module with the calculated P/E cycle value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor enables the computer processor to:
-
select a sample set of physical addresses in a solid state memory module (SSMM), wherein the sample set of physical addresses is associated with a region in the SSMM; perform a garbage collection operation on the sample set of physical addresses; after the garbage collection operation, issue a write request to the sample set of physical addresses; after issuing the write request, issue a read request to the sample set of physical addresses to obtain a copy of data stored in the sample set of physical addresses; determine an error rate in the copy of the data stored using at least one selected from a group consisting of an Error Correction Code (ECC) codeword and, known data in the write request; determine a calculated P/E cycle value for the SSMM using at least the error rate; and update an in-memory data structure in a control module with the calculated P/E cycle value. - View Dependent Claims (15, 16)
-
Specification