Serving the Critical Data Storage Needs
of Industrial and OEM Customers

FORTASA BLOG

Flash Storage Solutions for Embedded Designs
High Reliability Flash SSDs, Cards and Modules for Industrial Applications

Best Algorithm to Improve Flash SSD Life Expectancy - Static Data Wear Leveling

Posted by Biraj Jamalayam on Tuesday, 11 Feb 2014

Unlike Dynamic Data Wear Leveling, Static Wear Leveling algorithm not only rotates the dynamic blocks, but also the blocks that store a static data partition. In many embedded applications, a significant portion of memory space is actually used by a large static partition such as OS or Application program files. Typically these files are written once and read multiple times as on the device power-up sequence. The large static data block leaves only a small memory space for file updates or data recording. Due to such unbalanced usage the dynamic memory area gets extensive wear. Once any of these high usage blocks approach the endurance limit, and begin to lose data, the whole drive would fail. To avoid this situation, a Static Wear leveling algorithm was implemented.

When the device is in a standby (non-active) mode, the algorithm drives the Flash controller to re-write the static partition from the less used blocks to the dynamic partition of the higher used blocks. By readjusting the block usage, the memory wear will be evenly spread between the static and dynamic memory partitions. The algorithm defines a usage threshold which when reached by any one memory block initiates a static partition rotation, or swapping, of the highest usage blocks for the lowest usage ones.  This process typically occurs in the background while the Flash controller is in a stand-by or non-active mode.

While the Static Data Wear Leveling algorithm can slow down Flash Drive operation during the swapping sequence and also increases the overall block usage due to the rotation overhead, it is nonetheless the best method to maximize the SSD life.

READ MORE

Improving Flash SSD Endurance - Dynamic Data Wear Leveling

Posted by Biraj Jamalayam on Monday, 10 Feb 2014

As previously described, Flash memory inherently has limited endurance (number of program and erase cycles) before it starts to fail and information is no longer reliably retained. The intrinsic component endurance is specifically stated in the respective component data sheet. Typically, the inherent endurance is 3000 cycles for MLC NAND Flash and 60,000 cycles for SLC NAND Flash. In managed Flash storage devices such as SSDs or Flash cards, the expected life of the device is further reduced due to a Write Amplification phenomenon. To reverse this rapid degradation a Dynamic Weal Leveling algorithm was introduced.

At initialization, the Flash controller allocates all the formatted (unused) memory blocks into a unused block pool and sets up the usage counter for each block. With Dynamic Wear Leveling, every time a host would write new data to the storage module, Flash controller would select the block with least amount of usage and write the new data to it. Every time a host would erase a file, the Flash controller would free up (format) a block and place it in the unused block pool ranked by the amount of usage this block had gone through. This way with every new write or erase sequence the block usage would adjust and spread the memory wear from highest used block to the lowest use block. While this algorithm is highly beneficial to the dynamic (updated and erased) data, it doesn't improve the Flash wear for drive usage with large static partition, as with OS system files which are written once and don't typically get moved or updated, A complementary algorithm to spread the usage of the Flash blocks that store static data is called Static Data Wear Leveling.

Please contact Fortasa toreceive more information about Fortasa product reliability.

READ MORE

Sochi Security Cameras Require High Reliability Flash SSD

Posted by Samuel Nakhimovsky on Monday, 10 Feb 2014

Security Camera in Sochi

The installation of Security Cameras and other Surveillance equipment in 2014 Sochi was unprecedented. Protecting the most popular sports event in a politically unstable region became a critical priority to the Russian Politicians. In one of the the most controversial comment Dmitry Kozak, Russian deputy prime minister responsible for Olympic preparation, revealed that authorities have video from hotels showing what people do inside their hotel rooms. While comments like this add to the fear of unwanted personal intrusion, outside surveillance cameras are now the norm. In the name of protection, safety and security the installation of outside cameras has been extensive and unprecedented.

READ MORE

Wear Leveling - Simplest Way to Increase SSD Life

Posted by Samuel Nakhimovsky on Thursday, 06 Feb 2014

The most concerning question lingering with most SSD customer is how long with the Flash drive last. Even Hard Disk Drives (HDDs) which have been used in ubiquitous computing applications for over 50 years and went through many generations of technical improvements are well known for frequent errors and even catastrophic failures. SSDs which are appreciated by the Industrial Application market segment for it's superior environmental and temperature specifications are also expected to offer greater reliability and useful life expectancy.

The major drawback that all Flash based storage solutions inherently possess is a limited number of write cycles that can be performed on any specific memory sector. This limit is uniquely specified in the data sheet for each memory component. Ranging from 3Kcycles for an MLC NAND Flash to 100Kcycles for an SLC NAND Flash, this finite threshold is a stated limit of the component's ability to perform as expected.

To overcome the component technical limitation, the Flash Controller developers have devised various system level solutions to improve the overall usage and life expectancy of the whole drive. A major part of this improvement solution is a Wear Leveling algorithm that spreads the uneven usage of specific memory block across the full memory address space.

READ MORE

Page