skip to main content
research-article

An index-based management scheme with adaptive caching for huge-scale low-cost embedded flash storages

Published:25 October 2013Publication History
Skip Abstract Section

Abstract

Due to its remarkable access performance, shock resistance, and costs, NAND flash memory is now widely adopted in a variety of computing environments, especially in mobile devices such as smart phones, media players and electronic book readers. For the consideration of costs, low-cost embedded flash storages such as flash memory cards are often employed on such devices. Different from solid-state disks, the RAM buffer equipped on low-cost embedded flash storages are very small, for example, limited under several dozens of kilobytes, despite of the rapidly growing capacity of the storages. The significance of effectively utilizing the very limited on-device RAM buffers of embedded flash storages is therefore highlighted, and a novel design of scalable flash management schemes is needed to tackle the new access constraints of MLC NAND flash memory. In this work, a highly scalable design of the flash translation layer is presented with the considerations of the on-device RAM size, user access patterns, address-mapping-information caching and MLC access constraints. Through a series of experiments, it is verified that, with appropriate settings of cache sizes, the proposed management scheme provides comparable performance results to prior arts with much lower requirements on the on-device RAM. In other words, the proposed scheme suggests a strategy to make better use of the on-device RAM, and is suitable for embedded flash storages.

References

  1. Amir, B. 1999. Flash file system optimized for page-mode flash technologies. U.S. Patent No. 5937425.Google ScholarGoogle Scholar
  2. Chang, L.-P. and Kuo, T.-W. 2002. An adaptive striping architecture for flash memory storage systems of embedded systems. In Proceedings of the 8th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS'02). IEEE, 187. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Chang, L.-P. and Kuo, T.-W. 2004. An efficient management scheme for large-scale flash-memory storage systems. In Proceedings of the ACM Symposium on Applied Computing (SAC'04). ACM, New York, 862--868. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Chang, L.-P. and Kuo, T.-W. 2009. A commitment-based management strategy for the performance and reliability enhancement of flash-memory storage systems. In Proceedings of the 46th Annual Design Automation Conference (DAC'09). ACM, New York, 858--863. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Cormen, T. H., Leiserson, C. E., and Rivest, R. L. 2001. Introduction to Algorithms. MIT Press, Cambridge, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Dramexchange Tech. 2010. Flash Spot and Contract Prices, www.dramexchange.com.Google ScholarGoogle Scholar
  7. Gal, E. and Toledo, S. 2005. Algorithms and data structures for flash memories. ACM Comput. Surv. 37, 2, 138--163. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Goodson, G. and Iyer, R. 2010. Design tradeoffs in a flash translation layer. In Proceedings of the HPCA WEST'10 Workshop on the Use of Emerging Storage and Memory Technologies.Google ScholarGoogle Scholar
  9. Gupta, A., Kim, Y., and Urgaonkar, B. 2009. DFTL: A flash translation layer employing demand-based selective caching of page-level address mappings. In Proceeding of the 14th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS'09). 229--240. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Hsieh, J.-W., Kuo, T.-W., and Chang, L.-P. 2006. Efficient identification of hot data for flash memory storage systems. ACM Trans. Storage 2, 1, 22--40. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Kang, J.-U., Jo, H., Kim, J.-S., and Lee, J. 2006. A superblock-based flash translation layer for NAND flash memory. In Proceedings of the 6th ACM & IEEE International Conference on Embedded Software (EMSOFT'06). 161--170. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Kawaguchi, A., Nishioka, S., and Motoda, H. 1995. A flash-memory based file system. In Proceedings of the USENIX Technical Conference (TCON'95). USENIX Association, Berkeley, CA, 13--13. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Kim, J., Kim, J. M., Noh, S., Min, S. L., and Cho, Y. 2002. A space-efficient flash translation layer for compactflash systems. IEEE Trans. Consum. Electron. 48, 2, 366--375. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Kuo, T.-W., Chang, Y.-H., Huang, P.-C., and Chang, C.-W. 2008. Special issues in flash. In Proceedings of the IEEE/ACM International Conference on Computer-Aided Design (ICCAD'08). 821--826.Google ScholarGoogle Scholar
  15. Lai, S. K. 2008. Flash memories: Successes and challenges. Storage Technologies and Systems, IBM J. Res. Dev. 52, 4/5, 529--535. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Lee, S.-W., Choi, W.-K., and Park, D.-J. 2006. FAST: An efficient flash translation layer for flash memory. In Emerging Directions in Embedded and Ubiquitous Computing, Lecture Notes in Computer Science, vol. 4097, 879--887. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Lee, S.-W., Park, D.-J., Chung, T.-S., Lee, D.-H., Park, S., and Song, H.-J. 2007. A log buffer-based flash translation layer using fully-associative sector translation. ACM Trans. Embed. Comput. Syst. 6, 3, 18. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Micron. 2007a. The 128Gbits SLC NAND Flash Memory Specification, www.micron.com.Google ScholarGoogle Scholar
  19. Micron. 2007b. The 64Gbits SLC NAND Flash Memory Specification, www.micron.com.Google ScholarGoogle Scholar
  20. Microsoft Corporation. 2012. Windows Sysinternals: Documentation, downloads, and additional resources, technet.microsoft.com/en-us/sysinternals/default.aspx/.Google ScholarGoogle Scholar
  21. Microsoft. 2010. MSDN Library: SDRAM Density and Capacity and Power Consumption, msdn.microsoft.com/en-us/library/aa462406.aspx.Google ScholarGoogle Scholar
  22. Ocz Technology Group Inc. 2012. The OCZ Colossus Series SATA II 3.5'' SSD specifications, www.ocztechnology.com.Google ScholarGoogle Scholar
  23. Photofast Global Inc. 2012. The PhotoFast GMonster-V3 SSD specifications, www.photofast.tw.Google ScholarGoogle Scholar
  24. Qin, Z., Wang, Y., Liu, D., and Shao, Z. 2010. Demand-based block-level address mapping in large-scale NAND flash storage systems. In Proceedings of the 8th IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES/ISSS'10). ACM, New York, 173--182. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Seong, Y. J., Nam, E. H., Yoon, J. H., Kim, H., Choi, J.-Y., Lee, S., Bae, Y. H., Lee, J., Cho, Y., and Min, S. L. 2010. Hydra: A block-mapped parallel flashmemory solid-state disk architecture. IEEE Trans. Comput. 59, 7, 905--921. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Spectek. 2010a. The MLC NAND Flash Chip FxxL63A Datasheet, www.spectek.com.Google ScholarGoogle Scholar
  27. Spectek. 2010b. The SLC NAND Flash Chip FNNM40A Datasheet, www.spectek.com.Google ScholarGoogle Scholar
  28. Texas Instruments. 2008. LM3S8962 Microcontroller Datasheet, www.ti.com/product/lm3s8962.Google ScholarGoogle Scholar
  29. Wu, C.-H. and Kuo, T.-W. 2006. An adaptive two-level management for the flash translation layer in embedded systems. In Proceedings of the IEEE/ACM International Conference on Computer-Aided Design (ICCAD'06). ACM, New York, NY, USA, 601--606. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Yim, K. S., Bahn, H., and Koh, K. 2004. A flash compression layer for smartmedia card systems. IEEE Trans. Consum. Electron. 50, 1, 192--197. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. An index-based management scheme with adaptive caching for huge-scale low-cost embedded flash storages

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image ACM Transactions on Design Automation of Electronic Systems
          ACM Transactions on Design Automation of Electronic Systems  Volume 18, Issue 4
          Special Section on Networks on Chip: Architecture, Tools, and Methodologies
          October 2013
          380 pages
          ISSN:1084-4309
          EISSN:1557-7309
          DOI:10.1145/2541012
          Issue’s Table of Contents

          Copyright © 2013 ACM

          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: 25 October 2013
          • Accepted: 1 June 2013
          • Revised: 1 March 2013
          • Received: 1 September 2012
          Published in todaes Volume 18, Issue 4

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
          • Research
          • Refereed

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader