Virtual Flash Chips: Reinforcing the Hardware Abstraction Layer to Improve Data Recoverability of Flash Devices

The market trend of flash memory chips has been toward high density but with low reliability. The rapidly increasing bit error rates and emerging reliability issues of the coming triple-level cell and even three-dimensional flash chips will expose users to extremely high risks for storing data in such low reliability storage media. With these concerns in mind, this paper rethinks the layer design of flash devices and proposes a complete paradigm shift to re-configure physical flash chips of potentially massive parallelism into better “virtual chips”, in order to improve the data recoverability in a modular and low-cost way. The concept of virtual chips is realized by reinforcing the hardware abstraction layer without continually complicating the conventional flash management software of the flash translation layer. The capability and compatibility of the proposed design were verified by both property analysis and a series of experiments with encouraging results.

[1]  Tei-Wei Kuo,et al.  Working-set-based address mapping for ultra-large-scaled flash devices , 2012, CODES+ISSS '12.

[2]  Youngjae Kim,et al.  DFTL: a flash translation layer employing demand-based selective caching of page-level address mappings , 2009, ASPLOS.

[3]  Tei-Wei Kuo,et al.  A commitment-based management strategy for the performance and reliability enhancement of flash-memory storage systems , 2009, 2009 46th ACM/IEEE Design Automation Conference.

[4]  Jun Fan,et al.  A Method of Counting the Number of Cycles in LDPC Codes , 2006, 2006 8th international Conference on Signal Processing.

[5]  David Hung-Chang Du,et al.  Rejuvenator: A static wear leveling algorithm for NAND flash memory with minimized overhead , 2011, 2011 IEEE 27th Symposium on Mass Storage Systems and Technologies (MSST).

[6]  Nikil D. Dutt,et al.  3D-FlashMap: A physical-location-aware block mapping strategy for 3D NAND flash memory , 2012, 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[7]  Zili Shao,et al.  MNFTL: An efficient flash translation layer for MLC NAND flash memory storage systems , 2011, 2011 48th ACM/EDAC/IEEE Design Automation Conference (DAC).

[8]  Paul H. Siegel,et al.  Characterizing flash memory: Anomalies, observations, and applications , 2009, 2009 42nd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[9]  Nikolai Joukov,et al.  A nine year study of file system and storage benchmarking , 2008, TOS.

[10]  Dongkun Shin,et al.  Flash-Aware RAID Techniques for Dependable and High-Performance Flash Memory SSD , 2011, IEEE Transactions on Computers.

[11]  Yi Qin,et al.  A Parity Scheme to Enhance Reliability for SSDs , 2012, 2012 IEEE Seventh International Conference on Networking, Architecture, and Storage.

[12]  阿米尔·班 Flash File System , 1994 .

[13]  J. Kessenich,et al.  Bit error rate in NAND Flash memories , 2008, 2008 IEEE International Reliability Physics Symposium.

[14]  Sang Lyul Min,et al.  A space-efficient flash translation layer for CompactFlash systems , 2002, IEEE Trans. Consumer Electron..

[15]  Tei-Wei Kuo,et al.  Virtual flash chips: Rethinking the layer design of flash devices to improve data recoverability , 2015, 2015 52nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[16]  Sang-Won Lee,et al.  A log buffer-based flash translation layer using fully-associative sector translation , 2007, TECS.

[17]  Tei-Wei Kuo,et al.  Endurance Enhancement of Flash-Memory Storage, Systems: An Efficient Static Wear Leveling Design , 2007, 2007 44th ACM/IEEE Design Automation Conference.

[18]  Tei-Wei Kuo,et al.  A disturb-alleviation scheme for 3D flash memory , 2013, 2013 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[19]  Hong Jiang,et al.  Exploring and Exploiting the Multilevel Parallelism Inside SSDs for Improved Performance and Endurance , 2013, IEEE Transactions on Computers.

[20]  Nikil D. Dutt,et al.  A Reliability Enhanced Address Mapping Strategy for Three-Dimensional (3-D) NAND Flash Memory , 2014, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.