skip to main content
research-article

A reconfigurable FTL (flash translation layer) architecture for NAND flash-based applications

Published:01 August 2008Publication History
Skip Abstract Section

Abstract

In this article, a novel FTL (flash translation layer) architecture is proposed for NAND flash-based applications such as MP3 players, DSCs (digital still cameras) and SSDs (solid-state drives). Although the basic function of an FTL is to translate a logical sector address to a physical sector address in flash memory, efficient algorithms of an FTL have a significant impact on performance as well as the lifetime. After the dominant parameters that affect the performance and endurance are categorized, the design space of the FTL architecture is explored based on a diverse workload analysis. With the proposed FTL architectural framework, it is possible to decide which configuration of FTL mapping parameters yields the best performance, depending on the differing characteristics of various NAND flash-based applications.

References

  1. Ban, A. 1995. Flash file system. United States Patent, No. 5,404,485 (Apr.).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. 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). ACM, New York. 862--868. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Chiang, M.-L., Lee, P. C. H., and Chang, R.-C. 1999. Using data clustering to improve cleaning performance for flash memory. Softw. Pract. Exp. 29, 3, 267--290. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Gal, E. and Toledo, S. 2005. Algorithms and data structures for flash memories. ACM Comput. Surv. 37, 138--163. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Hennessy, J. L., and Patterson, D. A. 2003. Computer Architecture: A Quantitative Approach 3rd Ed. Morgan Kaufmann, Burlington, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 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 Conference on Embedded Software (EMSOFT'06). Seoul, S. Korea. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Kim, J. S., Kim, J. M., Noh, S. H., Min, S. L., and Cho, Y. K. 2002. A space-efficient flash translation layer for compact flash systems. IEEE Trans. Cons. Elect. 48, 366--375. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Lee, S.-W., Park, D.-J., Chung, T.-S., Lee, D.-H., Park, S., and Song H.-J. 2006. A log buffer based flash translation layer using fully associative sector translation. ACM Trans. Embed. Comput. Syst. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Min, S. L. 2004. Love/hate relationship between flash memory and microdrive for low-power portable storage. In 1st International Workshop on Power-Aware Real-Time Computing, Pisa, Italy.Google ScholarGoogle Scholar
  11. Samsung Electronics. 2005. NAND Flash Memory & Smart-Media Data Book.Google ScholarGoogle Scholar

Index Terms

  1. A reconfigurable FTL (flash translation layer) architecture for NAND flash-based applications

            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

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader
            About Cookies On This Site

            We use cookies to ensure that we give you the best experience on our website.

            Learn more

            Got it!