# How long until my eMMC is dead?

I got some feedback from our software team. Apparently we're writing twenty 4KB blocks per second. I have a 4GB eMMC. The eMMC has a max number of P/E cycle of 3000.

I'm making the assumption that all 4GB will be available for writing/erasing.

I developed a spreadsheet to help me calculate endurance but it's coming up with a time longer than I would have expected.

eMMC Size: 4GB Number of days used: 365 Hours per day: 8 Max P/E cycles: 3000 Number of blocks per cycle: 20 Size of block: 4KB Number of writes per second: 1

I calculated 14.9 years endurance by taking the total number of bytes written per year and dividing it by (eMMC size x Max P/E cycles).

I calculate endurance at the end of the file. Am I doing it right or wrong?

• Could you put the calculated time into your question and include the formulas? There's plenty of folks who won't download an Excel file. Some won't because its too much hassle to download and open, and others won't because they don't like downloading files from unknown sources. – JRE Feb 23 '16 at 15:26
• Sure thing... will do. – Samee87 Feb 23 '16 at 15:27
• I come up with 4.75 years: 3000*(4GB/(20*4kB))/(60*60*24*365) – JRE Feb 23 '16 at 15:33
• Is your expectation that you would start seeing fails after more than 3000 P/E cycles ? I guess the number 3000 comes from the datasheet ? If coming from the datasheet I assume it is a manufacturer expected minimum which they are prepared to guarantee. The average number of cycles after which an average sample would start to fail could be much higher. A factor 2 or more would not surprise me at all. The memory cells wear out, this is quite unpredictable. It might be worse at high temperatures, you are probably testing at room temperature. – Bimpelrekkie Feb 23 '16 at 15:33
• That is, however, a naive estimate that ignores what happens when the blocks don't fit the block size of the underlying flash. – JRE Feb 23 '16 at 15:34

The optimistic estimation would be based on the assumption that your system accumulates data until it can fill one complete erase block, then writes all the data in one go. In that case, your eMMC will live

4'000'000 * 3'000 / (4*20) = 150'000'000 seconds