VAST: Virtually Associative Sector Translation for MLC Storage Systems

In recent years, multilevel cell Flash memory (MLC), which stores two or more bits per cell, has gradually replaced single-level cell flash memory due to its lower cost and higher density. However, MLC also brings new constraints, i.e., no partial programming and sequential page writes within a block, to the management. This paper proposes a virtual log-block-based hybrid-mapping scheme, referred to as virtually associative sector translation (VAST), for MLC storage systems. Unlike traditional hybrid-mapping schemes, VAST is a combination of block-level and segment-level mappings and manages log blocks in a flexible manner. The goals of our research are to avoid timeout by decreasing dummy-page writes, to get a better response time by decreasing live-page copies, and to prolong the life span of flash memory by decreasing total block erasures. Our trace-driven simulation shows that VAST could reduce up to 90% of dummy-page writes, 22%~52% of live-page copies, and 55%~83% of block erasures, compared to well-known hybrid-mapping schemes.

[1]  JaeGyu Jung,et al.  A New Transactional Flash Translation Layer for Embedded Database Systems Based on MLC NAND Flash Memory , 2008, 2008 Digest of Technical Papers - International Conference on Consumer Electronics.

[2]  Tei-Wei Kuo,et al.  An adaptive striping architecture for flash memory storage systems of embedded systems , 2002, Proceedings. Eighth IEEE Real-Time and Embedded Technology and Applications Symposium.

[3]  Yon Dohn Chung,et al.  Design and implementation of MLC NAND flash-based DBMS for mobile devices , 2009, J. Syst. Softw..

[4]  Li-Pin Chang,et al.  Design and implementation of an efficient wear-leveling algorithm for solid-state-disk microcontrollers , 2009, TODE.

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

[6]  Charles C. Weems,et al.  A hybrid flash translation layer design for SLC-MLC flash memory based multibank solid state disk , 2011, Microprocess. Microsystems.

[7]  Jianhua Li,et al.  ExLRU: A unified write buffer cache management for flash memory , 2011, 2011 Proceedings of the Ninth ACM International Conference on Embedded Software (EMSOFT).

[8]  David Hung-Chang Du,et al.  Hybrot: Towards Improved Performance in Hybrid SLC-MLC Devices , 2012, 2012 IEEE 20th International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems.

[9]  Tei-Wei Kuo,et al.  An Adaptive Flash Translation Layer for High-Performance Storage Systems , 2010, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[10]  Chung-Hsien Wu,et al.  MFTL: A Design and Implementation for MLC Flash Memory Storage Systems , 2012, TOS.

[11]  Tei-Wei Kuo,et al.  Efficient identification of hot data for flash memory storage systems , 2006, TOS.

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

[13]  Wei-Che Tseng,et al.  Write activity reduction on flash main memory via smart victim cache , 2010, GLSVLSI '10.

[14]  Tei-Wei Kuo,et al.  Real-time garbage collection for flash-memory storage systems of real-time embedded systems , 2004, TECS.

[15]  Li-Pin Chang,et al.  A Hybrid Approach to NAND-Flash-Based Solid-State Disks , 2010, IEEE Transactions on Computers.

[16]  Liang Shi,et al.  Cooperating Write Buffer Cache and Virtual Memory Management for Flash Memory Based Systems , 2011, 2011 17th IEEE Real-Time and Embedded Technology and Applications Symposium.

[17]  Lei Zhang,et al.  S-FTL: An efficient address translation for flash memory by exploiting spatial locality , 2011, 2011 IEEE 27th Symposium on Mass Storage Systems and Technologies (MSST).

[18]  Young-Jin Kim,et al.  LAST: locality-aware sector translation for NAND flash memory-based storage systems , 2008, OPSR.

[19]  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).

[20]  Trevor N. Mudge,et al.  Improving NAND Flash Based Disk Caches , 2008, 2008 International Symposium on Computer Architecture.

[21]  Dongkun Shin,et al.  Storage architecture and software support for SLC/MLC combined flash memory , 2009, SAC '09.

[22]  Dongkun Shin,et al.  KAST: K-associative sector translation for NAND flash memory in real-time systems , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[23]  Jen-Wei Hsieh,et al.  Set-based management scheme for MLC flash memory storage system , 2011, 2011 IEEE 54th International Midwest Symposium on Circuits and Systems (MWSCAS).

[24]  Tei-Wei Kuo,et al.  A reliable MTD design for MLC flash-memory storage systems , 2010, EMSOFT '10.

[25]  Sungjin Lee,et al.  FlexFS: A Flexible Flash File System for MLC NAND Flash Memory , 2009, USENIX Annual Technical Conference.

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

[27]  Dongkun Shin,et al.  ComboFTL: Improving performance and lifespan of MLC flash memory using SLC flash buffer , 2010, J. Syst. Archit..