Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

A low-cost wear-leveling algorithm for block-mapping solid-state disks

Published: 11 April 2011 Publication History

Abstract

Multilevel flash memory cells double or even triple storage density, producing affordable solid-state disks for end users. However, flash lifetime is becoming a critical issue in the popularity of solid-state disks. Wear-leveling methods can prevent flash-storage devices from prematurely retiring any portions of flash memory. The two practical challenges of wear-leveling design are implementation cost and tuning complexity. This study proposes a new wear-leveling design that features both simplicity and adaptiveness. This design requires no new data structures, but utilizes the intelligence available in sector-translating algorithms. Using an on-line tuning method, this design adaptively tunes itself to reach good balance between wear evenness and overhead. A series of trace-driven simulations show that the proposed design outperforms a competitive existing design in terms of wear evenness and overhead reduction. This study also presents a prototype that proves the feasibility of this wear-leveling design in real solid-state disks.

References

[1]
N. Agrawal, V. Prabhakaran, T. Wobber, J. D. Davis, M. Manasse, and R. Panigrahy. Design tradeoffs for SSD performance. In ATC'08: USENIX 2008 Annual Technical Conference on Annual Technical Conference, pages 57--70. USENIX Association, 2008.
[2]
L.-P. Chang and C.-D. Du. Design and implementation of an efficient wear-leveling algorithm for solid-state-disk microcontrollers. ACM Trans. Des. Autom. Electron. Syst., 15 (1): 1--36, 2009.
[3]
L.-P. Chang and T.-W. Kuo. Efficient management for large-scale flash-memory storage systems with resource conservation. ACM Transactions on Storage, 1 (4): 381--418, 2005.
[4]
L.-P. Chang, T.-W. Kuo, and S.-W. Lo. Real-time garbage collection for flash-memory storage systems of real-time embedded systems. ACM Trans. on Embedded Computing Sys., 3 (4): 837--863, 2004.
[5]
Y.-H. Chang, J.-W. Hsieh, and T.-W. Kuo. Improving flash wear-leveling by proactively moving static data. IEEE Transactions on Computers, 59 (1): 53 --65, jan. 2010.
[6]
M.-L. Chiang, P. C. H. Lee, and R. chuan Chang. Using data clustering to improve cleaning performance for flash memory. Software Practice and Experience, 29 (3): 267--290, 1999.
[7]
A. Gupta, Y. Kim, and B. Urgaonkar. Dftl: a flash translation layer employing demand-based selective caching of page-level address mappings. In ASPLOS '09: Proceeding of the 14th international conference on Architectural support for programming languages and operating systems, pages 229--240. ACM, 2009.
[8]
006)}b:systemcIEEE Standards Association. IEEE Std 1666--2005 IEEE Standard SystemC Language Reference Manual. pages 1--423, 2006.
[9]
D. Jung, Y.-H. Chae, H. Jo, J.-S. Kim, and J. Lee. A group-based wear-leveling algorithm for large-capacity flash memory storage systems. In CASES '07: Proceedings of the 2007 international conference on Compilers, architecture, and synthesis for embedded systems, pages 160--164. ACM, 2007.
[10]
J.-U. Kang, J.-S. Kim, C. Park, H. Park, and J. Lee. A multi-channel architecture for high-performance NAND flash-based storage system. J. Syst. Archit., 53 (9): 644--658, 2007.
[11]
H.-J. Kim and S.-G. Lee. An effective flash memory manager for reliable flash memory space management. IEICE Transactions on Information and System., 85 (6): 950--964, 2002.
[12]
S.-W. Lee, D.-J. Park, T.-S. Chung, D.-H. Lee, S. Park, and H.-J. Song. A log buffer-based flash translation layer using fully-associative sector translation. Trans. on Embedded Computing Sys., 6 (3): 18, 2007.
[13]
Wear-Leveling Techniques in NAND Flash Devices. Micron® Application Note (TN-29--42), 2008.
[14]
Wear Leveling in Single Level Cell NAND Flash Memories. Numonyx® Application Note (AN1822), 2006.
[15]
C. Park, W. Cheon, J. Kang, K. Roh, W. Cho, and J.-S. Kim. A reconfigurable ftl (flash translation layer) architecture for nand flash-based applications. ACM Trans. Embed. Comput. Syst., 7 (4): 1--23, 2008.
[16]
K. Rosen. Discrete mathematics and its applications. McGraw-Hill New York, 2003. ISBN 0072424346.
[17]
K9F8G08B0M 1Gb * 8 Bit SLC NAND Flash Memory Data Sheet. Samsung Electronics Company, 2006.
[18]
K9MDG08U5M 4G * 8 Bit MLC NAND Flash Memory Data Sheet. Samsung Electronics Company, 2008.
[19]
Y. J. Seong, E. H. Nam, J. H. Yoon, H. Kim, J.-Y. Choi, S. Lee, Y. H. Bae, J. Lee, Y. Cho, and S. L. Min. Hydra: A block-mapped parallel flash memory solid-state disk architecture. IEEE Transactions on Computers, 59: 905--921, 2010.
[20]
Wear Leveling. Spansion® Application Note (AN01), 2008.
[21]
SmartMedia® Specification. SSFDC Forum, 1999.
[22]
S. P. D.-H. L. S.-W. L. Tae-Sun Chung, Dong-Joo Park and H.-J. Song. System software for flash memory: a survey. In EUC '06: Embedded and Ubiquitous Computing, pages 394--404, 2006.

Cited By

View all
  • (2022)SSD internal cache management policiesJournal of Systems Architecture: the EUROMICRO Journal10.1016/j.sysarc.2021.102334122:COnline publication date: 1-Jan-2022
  • (2017)Redesign the Memory Allocator for Non-Volatile Main MemoryACM Journal on Emerging Technologies in Computing Systems10.1145/299765113:3(1-26)Online publication date: 14-Apr-2017
  • (2016)A Survey of Software Techniques for Using Non-Volatile Memories for Storage and Main Memory SystemsIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2015.244298027:5(1537-1550)Online publication date: 1-May-2016
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM SIGPLAN Notices
ACM SIGPLAN Notices  Volume 46, Issue 5
LCTES '10
May 2011
170 pages
ISSN:0362-1340
EISSN:1558-1160
DOI:10.1145/2016603
Issue’s Table of Contents
  • cover image ACM Conferences
    LCTES '11: Proceedings of the 2011 SIGPLAN/SIGBED conference on Languages, compilers and tools for embedded systems
    April 2011
    182 pages
    ISBN:9781450305556
    DOI:10.1145/1967677
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

Publication History

Published: 11 April 2011
Published in SIGPLAN Volume 46, Issue 5

Check for updates

Author Tags

  1. flash memory
  2. solid-state disks
  3. wear leveling

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)15
  • Downloads (Last 6 weeks)0
Reflects downloads up to 28 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2022)SSD internal cache management policiesJournal of Systems Architecture: the EUROMICRO Journal10.1016/j.sysarc.2021.102334122:COnline publication date: 1-Jan-2022
  • (2017)Redesign the Memory Allocator for Non-Volatile Main MemoryACM Journal on Emerging Technologies in Computing Systems10.1145/299765113:3(1-26)Online publication date: 14-Apr-2017
  • (2016)A Survey of Software Techniques for Using Non-Volatile Memories for Storage and Main Memory SystemsIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2015.244298027:5(1537-1550)Online publication date: 1-May-2016
  • (2016)DCSIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2015.250433335:8(1372-1385)Online publication date: 1-Aug-2016
  • (2014)DCS5Proceedings of the 2014 9th IEEE International Conference on Networking, Architecture, and Storage10.1109/NAS.2014.16(63-72)Online publication date: 6-Aug-2014
  • (2014)Microscopic Bit-Level Wear-Leveling for NAND Flash MemoryMobile, Ubiquitous, and Intelligent Computing10.1007/978-3-642-40675-1_48(315-320)Online publication date: 2014
  • (2012)Probability-based static wear-leveling algorithm for block and hybrid-mapping NAND flash memoryDesign Automation for Embedded Systems10.1007/s10617-013-9108-316:4(241-264)Online publication date: 1-Nov-2012
  • (2023)MC-ELMM: Multi-Chip Endurance-Limited Memory ManagementProceedings of the International Symposium on Memory Systems10.1145/3631882.3631905(1-16)Online publication date: 2-Oct-2023
  • (2019)Flash Translation Layer and its functionalities2019 IEEE Conference on Information and Communication Technology10.1109/CICT48419.2019.9066266(1-5)Online publication date: Dec-2019
  • (2017)Heating Dispersal for Self-Healing NAND Flash MemoryIEEE Transactions on Computers10.1109/TC.2016.259557266:2(361-367)Online publication date: 1-Feb-2017
  • Show More Cited By

View Options

Login options

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