Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

Libra: Software-Controlled Cell Bit-Density to Balance Wear in NAND Flash

Published: 17 February 2015 Publication History

Abstract

Hybrid flash storages combine a small Single-Level Cell (SLC) partition with a large Multilevel Cell (MLC) partition. Compared to MLC-only solutions, the SLC partition exploits fast and short local write updates, while the MLC part brings large capacity. On the whole, hybrid storage achieves a tangible performance improvement for a moderate extra cost. Yet, device lifetime is an important aspect often overlooked: in a hybrid system, a large ratio of writes may be directed to the small SLC partition, thus generating a local stress that could exhaust the SLC lifetime significantly sooner than the MLC partition's. To address this issue, we propose Libra, which builds on flash storage made solely of MLC flash and uses the memory devices in SLC mode when appropriate; that is, we exploit the fact that writing a single bit per cell in an MLC provides characteristics close to those of an ordinary SLC. In our scheme, the cell bit-density of a block can be decided dynamically by the flash controller, and the physical location of the SLC partition can now be moved around the whole device, balancing wear across it. This article provides a thorough analysis and characterization of the SLC mode for MLCs and gives evidence that the inherent flexibility provided by Libra simplifies considerably the stress balance on the device. Overall, our technique improves lifetime by up to one order of magnitude at no cost when compared to any hybrid storage that relies on a static SLC-MLC partitioning.

References

[1]
Ken Bates and Bruce McNutt. 2007. OLTP Application I/O. Retrieved from http://traces.cs.umass.edu/index.php/Storage/Storage.
[2]
Li-Pin Chang. 2010. A hybrid approach to NAND-flash-based solid-state disks. IEEE Trans. Comput. 59, 10 (Oct. 2010), 1337--1349.
[3]
Yuan-Hao Chang, Jen-Wei Hsieh, and Tei-Wei Kuo. 2007. Endurance enhancement of flash-memory storage, systems: An efficient static wear leveling design. In Design Automation Conf. San Diego, CA, 212--217.
[4]
Mong-Ling Chiao and Da-Wei Chang. 2011. ROSE: A novel flash translation layer for NAND flash memory based on hybrid address translation. IEEE Trans. Comput. 60, 6 (June 2011), 753--766.
[5]
Hyunjin Cho, Dongkun Shin, and Young Ik Eom. 2009. KAST: K-associative sector translation for NAND flash memory in real-time systems. In Design Automation and Test in Europe. 507--512.
[6]
Roohparvar Frankie. 2007. Single level cell programming in a multiple level cell non-volatile memory device. US Patent 11/298,013. (June 14, 2007).
[7]
Laura M. Grupp, Adrian M. Caulfield, Joel Coburn, Steven Swanson, Eitan Yaakobi, Paul H. Siegel, and Jack K. Wolf. 2009. Characterizing flash memory: Anomalies, observations, and applications. In ACM/IEEE Int. Symp. Microarchitecture. New York, NY, 24--33.
[8]
Laura M. Grupp, John D. Davis, and Steven Swanson. 2012. The bleak future of NAND flash memory. In USENIX Conf. on File and Storage Technologies. San Jose, CA.
[9]
Soojun Im and Dongkun Shin. 2010. ComboFTL: Improving performance and lifespan of MLC flash memory using SLC flash buffer. J. Syst. Archit. 56, 12 (Dec. 2010), 641--653.
[10]
Xavier Jimenez, David Novo, and Paolo Ienne. 2012. Software controlled cell bit-density to improve NAND flash lifetime. In Design Automation Conf. San Francisco, CA, 229--234.
[11]
Jesung Kim, Jong Min Kim, Sam H. Noh, Sang Lyul Min, and Yookun Cho. 2002. A space-efficient flash translation layer for CompactFlash systems. IEEE Trans. Consum. Electron. 48, 2 (May 2002), 366--375.
[12]
Sungjin Lee, Keonsoo Ha, Kangwon Zhang, Jihong Kim, and Junghwan Kim. 2009. FlexFS: A flexible flash file system for MLC NAND flash memory. In USENIX Annual Technical Conf. San Diego, CA.
[13]
Sungjin Lee, Dongkun Shin, Young-Jin Kim, and Jihong Kim. 2008. LAST: Locality-aware sector translation for NAND flash memory-based storage systems. ACM SIGOPS Operating Syst. Rev. 42, 6 (Oct. 2008), 36--42.
[14]
Sang-Won Lee, Dong-Joo Park, Tae-Sun Chung, Dong-Ho Lee, Sangwon Park, and Ha-Joo Song. 2007. A log buffer-based flash translation layer using fully-associative sector translation. ACM Trans. Embedded Comput. Syst. 6, 3 (July 2007), Article No. 18, 18:1--29.
[15]
Rino Micheloni, Luca Crippa, and Alessia Marelli. 2010. Inside NAND Flash Memories. Springer.
[16]
Micron. 2010. Bad Block Management in NAND Flash Memory. Retrieved from http://www.micron.com/products/support/technical-notes/.
[17]
Neal Mielke, Hanmant P. Belgal, Albert Fazio, Qingru Meng, and Nick Righos. 2006. Recovery effects in the distributed cycling of flash memories. In IEEE Int. Reliability Physics Symp. Proc. San Jose, CA, 29--35.
[18]
Vidyabhushan Mohan, Taniya Siddiqua, Sudhanva Gurumurthi, and Mircea R. Stan. 2010. How I learned to stop worrying and love flash endurance. In Proc. USENIX Conf. Hot Topics in Storage and File Systems. Boston, MA.
[19]
Muthukumar Murugan and David H. C. Du. 2012. Hybrot: Towards improved performance in hybrid SLC-MLC devices. In IEEE Int. Symp. Modeling, Analysis Simulation of Computer and Telecommunication Systems. Arlington, Virginia, USA, 481--484.
[20]
Dushyanth Narayanan, Austin Donnelly, and Antony Rowstron. 2008. Write off-loading: Practical power management for enterprise storage. In Proc. USENIX Conf. File and Storage Technologies. San Jose, CA, 253--267.
[21]
ONFI Workgroup. 2013. Open NAND Flash Interface 3.2. Retrieved from http://onfi.org/specifications/.
[22]
Jung-Wook Park, Seung-Ho Park, Charles C. Weems, and Shin-Dug Kim. 2011. A hybrid flash translation layer design for SLC-MLC flash memory based multibank solid state disk. Microproc. Microsyst. 35, 1 (Feb. 2011), 48--59.
[23]
David Woodhouse. 2001. JFFS: The journalling flash file system. In Proc. Linux Symp. Ottawa, Ontario, Canada.
[24]
Michael Wu and Willy Zwaenepoel. 1994. eNVy: A non-volatile, main memory storage system. In 6th Int. Conf. on Architectural Support for Programming Languages and Operating Systems. San Jose, CA, 86--97.

Cited By

View all
  • (2020)Current-Aware Flash Scheduling for Current Capping in Solid State DisksIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2018.288704639:2(321-334)Online publication date: Feb-2020
  • (2018)Flash read disturb management using adaptive cell bit-density with in-place reprogramming2018 Design, Automation & Test in Europe Conference & Exhibition (DATE)10.23919/DATE.2018.8342030(325-330)Online publication date: Mar-2018
  • (2018)A survey of techniques for architecting SLC/MLC/TLC hybrid Flash memory–based SSDsConcurrency and Computation: Practice and Experience10.1002/cpe.442030:13Online publication date: 23-Jan-2018
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Transactions on Embedded Computing Systems
ACM Transactions on Embedded Computing Systems  Volume 14, Issue 2
March 2015
472 pages
ISSN:1539-9087
EISSN:1558-3465
DOI:10.1145/2737797
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Journal Family

Publication History

Published: 17 February 2015
Accepted: 01 June 2014
Revised: 01 March 2014
Received: 01 November 2013
Published in TECS Volume 14, Issue 2

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. MLC
  2. NAND flash memory
  3. SLC
  4. endurance
  5. lifetime
  6. wear balancing
  7. wear leveling

Qualifiers

  • Research-article
  • Research
  • Refereed

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)13
  • Downloads (Last 6 weeks)3
Reflects downloads up to 30 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2020)Current-Aware Flash Scheduling for Current Capping in Solid State DisksIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2018.288704639:2(321-334)Online publication date: Feb-2020
  • (2018)Flash read disturb management using adaptive cell bit-density with in-place reprogramming2018 Design, Automation & Test in Europe Conference & Exhibition (DATE)10.23919/DATE.2018.8342030(325-330)Online publication date: Mar-2018
  • (2018)A survey of techniques for architecting SLC/MLC/TLC hybrid Flash memory–based SSDsConcurrency and Computation: Practice and Experience10.1002/cpe.442030:13Online publication date: 23-Jan-2018
  • (2017)The Unwritten Contract of Solid State DrivesProceedings of the Twelfth European Conference on Computer Systems10.1145/3064176.3064187(127-144)Online publication date: 23-Apr-2017
  • (2016)Reducing solid-state storage device write stress through opportunistic in-place delta compressionProceedings of the 14th Usenix Conference on File and Storage Technologies10.5555/2930583.2930592(111-124)Online publication date: 22-Feb-2016

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media