Wear Leveling

How Controllers Maximize SSD Life – Better Wear Leveling

Tempus FugitIn this post we will explore how the right wear leveling algorithm  can help a controller maximize the life of an SSD.

Wear leveling is a fact of life with NAND flash – blocks start to suffer bit failures after a certain number of erase/write cycles (usually specified from the thousands to the hundreds of thousands) and it is only natural that software will attempt to over-write some blocks more than others.  In order to prevent this from causing failures, all of today’s SSD, USB flash drive, and flash card controllers incorporate some sort of wear leveling.

This is a simple re-mapping of the contents of the flash chips.  A more graphical explanation is Continue reading

How Controllers Maximize SSD Life

Tempus FugitHow do controllers maximize the life of an SSD?  After all, MLC flash has a lifetime of only 10,000 erase/write cycles or fewer and that is a very small number compared to the write traffic an SSD is expected to see in a high-workload environment, especially in the enterprise.  Still, MLC is becoming the norm in the enterprise.

How do they do that?

This is where SSD architects really earn their pay.  There are eight basic techniques that The SSD Guy knows of to extend SSD life beyond Continue reading