A SSD Technology a Day (7) – Intelligent Bad Block Management

This entry is part 8 of 9 in the series One SSD Technology a Day

In previous posts I talked about the wear and RAISE algorithms implemented by SSD controllers. One of the inevitable issues solid state memory is how to gracefully deal with bad blocks.

Bad blocks are flash memory blocks that contain one or more invalid bits whose reliability is not guaranteed because of faulty dies, over-charge leaks or wear-out. Bad blocks may exist even on a new disk.

Bad Block Management or Intelligent Block Management is an algorithm that monitors and maintains bad blocks within the NAND device. The controller maintains tables of known bad blocks and can replace the new bad blocks with spare blocks that are reserved for use. typically 4-10% of the usable capacity is reserved for Bad Block Management This practice further enhances the overall SSD lifespan and ensures that a few bad blocks will not affect the integrity of the drive and the SSD device still operate.

Bad blocks are mapped as “do not use”and substituted with known good blocks from the percentage set aside for spare blocks. The percentage of bad blocks which can be accomodated is a product marketing decision and that is the reason why an 128GB SSD device will only present 120GB as available to use. The spare blocks come from over provisioning inside the SSD and using the capacity which is invisible to the user.

If the bad blocks exceed the remaining spare blocks for any reason- the SSD fails because the controller cannot safely substitute a block that has to be written on a new bad block and can result in data loss.

Retired block count

The measure for Bad Block Management is “Retired Block Count” but expect that count to go up as “SSD Life Left” nears 5-10%

Series Navigation<< A SSD Technology a Day (6) – CacheCadeA SSD Technology a Day (8) – eMLC and MLC-HET >>

4 Replies to “A SSD Technology a Day (7) – Intelligent Bad Block Management”

  1. You say the SSD fails when there are no spare blocks remaining. Is that a total failure or simply a failure to write data? Is there any alerting to tell you when you are approaching this threshold or do you have to go and check the counters manually?

  2. It depends. If all stars align and you are lucky the disk becomes read-only but there is also a possibility of a failure occurring and the data is gone.
    I would use the manufacturer’s app or an utility like DiskInfo above to check the SSD Life Left. Some manufectures will throw a warning event

  3. I am trying to find out where SSD saves this Bad block table? Is it in general flash area or somekind of designated safe location in the memory?

  4. I believe this is in a reserved memory area managed by SSD controller. This is similar to translation table from physical sector to flash block. I believe this is proprietary information and will be different for each chipset.

Leave a Reply

Your email address will not be published. Required fields are marked *