en English

How does FTL algorithm the core SSD technology affect SSD?

The FTL algorithm directly determines SSD Performance, Reliability, and Endurance. FTL is the core component of SSD firmware.
FTL-algorithm

Table of Contents

The FTL algorithm directly determines SSD Performance, Reliability, and Endurance. FTL is the core component of SSD firmware.

FTL is the abbreviation of Flash Translation Layer, which completes the Translation, or Mapping, of the logical address space of Host (or user, Host) to the physical address space of Flash. Every time an SSD writes a piece of user logical data to the flash address space, it records the mapping between the logical address and the physical address. The next time the host wants to read the data, the SSD reads the data from the flash and returns it to the user.

Mapping logical address space to physical address space is the most primitive and basic function of FTL. In fact, FTL in SSDS now has a lot to do. SSDS generally uses NAND Flash storage media.

SSD storage media in addition to Flash, RAM, 3D XPoint, and other new storage media. Unless otherwise specified, the following SSD storage media refer to NAND Flash.

▮ Features of Nand Flash

① Flash blocks need to be erased before they can be written, and cannot Update in place.

Unable to cover writing, when writing a new data, not directly in the old place changes directly (flash are not allowed in a repeat on flash memory page (page), once erased only write once), must be written to a new location, therefore, FW (the Firmware and the Firmware) needs to maintain a logical address to physical address mapping table; In addition, writing data to a new location will cause the data in the old location to become invalid, which is junk data. Garbage data will occupy the space of the flash memory. When the available space of the flash memory is insufficient, FTL needs to do garbage collection, that is, write the valid data from several flash blocks to a new flash block, and then erase these flash blocks to get the usable flash block. This is the Garbage Collection (GC), an important thing FTL needs to do.

② Nand Flash blocks have a lifetime

Each time a flash block is erased, it wears out the flash block, so the flash block has a lifetime measured by Program/Erase Count (PE). We don’t want to concentrate on writing data to a few flash blocks that will soon die from RUNNING out of PE. We expect all flash blocks to evenly distribute data writes, not some blocks to death while others watch them die. FTL needed to Wear Leveling so that the data write would be evenly distributed across each flash block so that each block would Wear out equally to ensure the SSD would have the maximum number of writes.

Each flash block can be Read-only a limited number of times. If you read too many, the data on the flash block will also make mistakes — a problem known as Reading interference.

FTL needs to deal with the problem of reading interference. When the number of reading times on a flash block reaches a certain threshold, FTL needs to remove the data from the flash block to avoid data errors.

③ Data Retention of Nand Flash

The data stored on the flash memory is lost due to the loss of charge. This time can be as long as a decade, as short as a few years or even months, or even less. (This is at room temperature; at higher temperatures, the charge drains faster and the data lasts even shorter.)

If the SSD is not powered up, FTL can’t do anything about it. But once it is powered on, FTL needs to do something about it, such as scan flash memory to see if there is a data retention problem and if there is, move the data to prevent it from happening. Good FTL requires the ability to handle data retention issues.

④ The use of SSD also generates new bad blocks

The symptoms of bad blocks are erasure failures or read failures (ECC cannot correct data errors). Bad block management is also a big task for FTL.

FTL-for-BBM-of-Nand-Flash

⑤ For MLC or TLC, there is the issue of Lower Page corruption

If an abnormal power failure occurs while writing to the Upper Page/Extra Page (the flash Page shared with the Lower Page), the data that was successfully written to the Lower Page will be destroyed. Good FTL, there should be mechanisms to avoid this problem as much as possible;

Neither MLC nor TLC has the same read/write speed as SLC, but both of them can be used in SLC mode.

FTL algorithms take advantage of this feature to improve SSD performance and reliability.

Different flash memory has their own problems. In addition to the basic address mapping, FTL also needed to do Leveling, GC, Wear balancing, bad block management, Read interference, and Data Retention. As the quality of flash deteriorates, FTL not only completes the above routine processing but also needs to do some special processing for specific flash characteristics to achieve good performance and high reliability.

▮ FTL includes Host Based and Device Based

Host-Based means that FTL is implemented on the Host side using your computer’s CPU and memory resources.

In addition to fusion-IO using Host-Based FTL, as far as I know, there are other companies in the industry such as Fangyi Information Technology, Baocun, and CNEXLabs doing Host-Based FTL.

Instead, Device-Based means FTL is implemented on the Device side, using controllers and RAM resources on SSDs.

END.

DiskMFR Field Sales Manager - Leo

It’s Leo Zhi. He was born on August 1987. Major in Electronic engineering, He is an Enthusiastic professional, responsible person, and computer hardware & software literate. Proficient in NAND flash products for more than 10 years, critical thinking skills, outstanding leadership, excellent Teamwork, and interpersonal skills.  Understanding customer technical queries and issues, providing initial analysis and solutions. If you have any queries, Please feel free to let me know, Thanks

DiskMFR Free Sample Application
  • Still worried about storage product quality?
  • Current suppliers can’t provide perfect after-sales service

  • Get our free sample for testing now

Leave a Reply

Your email address will not be published.

16 − two =

Please let us know what you require, and you will get our reply within 24 hours.

  • Our team will answer your inquiries within 24 hours.
  • Your information will be kept strictly confidential.

Let's Have A Chat

Learn How We Served 100+ Global Device Brands with our Products & Get Free Sample!!!

Email Popup Background 2