The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.03 - March (2011 vol.60)
pp: 305-320
Yuan-Hao Chang , National Taipei University of Technology, Taipei, Taiwan
Tei-Wei Kuo , National Taiwan University, Taipei, Taiwan
ABSTRACT
Cost has been a major driving force in the development of the flash-memory technology. Because of this, serious challenges are now faced for future products on reliability and performance requirements. In this work, we propose a management strategy to resolve the reliability and performance problems of many flash-memory products. A three-level address translation architecture with an adaptive block mapping mechanism is proposed to accelerate the address translation process with a limited amount of the RAM usage. Parallelism of operations over multiple chips is also explored with the considerations of the write constraints of advanced multilevel cell flash-memory chips. The capability of the proposed approach is analyzed with reliability considerations and evaluated by experiments over realistic workloads with respect to the reliability and performance improvement.
INDEX TERMS
Flash-memory management software, disposable flash memory, MLC flash memory, performance enhancement, reliability enhancement, address translation, update commitment.
CITATION
Yuan-Hao Chang, Tei-Wei Kuo, "A Management Strategy for the Reliability and Performance Improvement of MLC-Based Flash-Memory Storage Systems", IEEE Transactions on Computers, vol.60, no. 3, pp. 305-320, March 2011, doi:10.1109/TC.2010.126
REFERENCES
[1] Y.-H. Chang and T.-W. Kuo, "A Commitment-Based Management Strategy for the Performance and Reliability Enhancement of Flash-Memory Storage Systems," Proc. 46th ACM/IEEE Design Automation Conf. (DAC), 2009.
[2] "Understanding the Flash Translation Layer (FTL) Specification," technical report, Intel Corporation, http:/developer.intel.com/, Dec. 1998.
[3] "Windows ReadyDrive and Hybrid Hard Disk Drives," technical report, Microsoft, http://www.microsoft.com/whdc/device/ storage hybrid.mspx, May 2006.
[4] J.-W. Hsieh, T.-W. Kuo, P.-L. Wu, and Y.-C. Huang, "Energy-Efficient and Performance-Enhanced Disks Using Flash-Memory Cache," Proc. ACM/IEEE Int'l Symp. Low Power Electronics and Design (ISLPED), pp. 334-339, 2007.
[5] "Hybrid Hard Drives with Non-Volatile Flash and Longhorn," Microsoft Corporation, 2005.
[6] "iSuppli Warns of NAND Flash Slowdown in 2008," technical report, iSuppli, http://www.isuppli.com/newsdefault.asp? id=8805 , Feb. 2008.
[7] A. Ban, "Flash File System," US Patent 5,404,485, M-Systems, Apr. 1995.
[8] "FTL Logger Exchanging Data with FTL Systems," technical report, Intel Corporation, 1995.
[9] "Flash-Memory Translation Layer for NAND Flash (NFTL)," M-Systems, 1998.
[10] A. Birrell, M. Isard, C. Thacker, and T. Wobber, "A Design for High-Performance Flash Disks," SIGOPS Operating Systems Rev., vol. 41, no. 2, pp. 88-93, 2007.
[11] L.-P. Chang and T.-W. Kuo, "An Adaptive Striping Architecture for Flash Memory Storage Systems of Embedded Systems," Proc. IEEE Real-Time and Embedded Technology and Applications Symp. (RTAS), pp. 187-196, 2002.
[12] A. Kawaguchi, S. Nishioka, and H. Motoda, "A Flash-Memory Based File System," Proc. 1995 USENIX Technical Conf., pp. 155-164, Jan. 1995.
[13] C.-H. Wu and T.-W. Kuo, "An Adaptive Two-Level Management for the Flash Translation Layer in Embedded Systems," Proc. IEEE/ACM Int'l Conf. Computer-Aided Design (ICCAD), pp. 601-606, 2006.
[14] J.-H. Lin, Y.-H. Chang, J.-W. Hsieh, T.-W. Kuo, and C.-C. Yang, "A NOR Emulation Strategy over NAND Flash Memory," Proc. 13th IEEE Int'l Conf. Embedded and Real-Time Computing Systems and Applications (RTCSA), pp. 95-102, 2007.
[15] J.-H. Lee, G.-H. Park, and S.-D. Kim, "A New NAND-Type Flash Memory Package with Smart Buffer System for Spatial and Temporal Localities," J. Systems Architecture, vol. 51, pp. 111-123, www.elsevier.com/locatesysarc, 2004.
[16] C. Park, J.-U. Kang, S.-Y. Park, and J.-S. Kim, "Energy-Aware Demand Paging on NAND Flash-Based Embedded Storages," Proc. ACM/IEEE Int'l Symp. Low Power Electronics and Design (ISLPED), Aug. 2004.
[17] Y. Joo, Y. Choi, C. Park, S.W. Chung, E.Y. Chung, and N. Chang, "Demand Paging for OneNAND Flash eXecute-In-Place," Proc. Int'l Conf. Hardware/Software Codesign and System Synthesis (CODES+ISSS), Oct. 2006.
[18] "OneNAND Features and Performance," Samsung Electronics, 2005.
[19] "KFW8G16Q2M-DEBx 512M x 16Bit OneNAND Flash Memory Data Sheet," Samsung Electronics, 2006.
[20] A.O. Company, "Yet Another Flash Filing System," http://www.aleph1.co.ukyaffs/, 2010.
[21] D. Woodhouse, "JFFS: The Journalling Flash File System," Proc. Ottawa Linux Symp., 2001.
[22] T. Kgil and T. Mudge, "FlashCache: A NAND Flash Memory File Cache for Low Power Web Servers," Proc. Int'l Conf. Compilers, Architecture and Synthesis for Embedded Systems (CASES), pp. 103-112, 2006.
[23] G. Kim, S. Baek, H. Lee, H. Lee, and M. Joe, "LGeDBMS: A Small DBMS for Embedded System with Flash Memory," Proc. 32nd Int'l Conf. Very Large Data Bases (VLDB), VLDB Endowment, pp. 1255-1258, 2006.
[24] C.-H. Wu, L.-P. Chang, and T.-W. Kuo, "An Efficient B-Tree Layer for Flash-Memory Storage Systems," Proc. Ninth Int'l Conf. Real-Time and Embedded Computing Systems and Applications (RTCSA), 2003.
[25] L.-P. Chang and T.-W. Kuo, "An Efficient Management Scheme for Large-Scale Flash-Memory Storage Systems," Proc. ACM Symp. Applied Computing (SAC), pp. 862-868, Mar. 2004.
[26] Y. Du, M. Cai, and J. Dong, "Adaptive Energy-Aware Design of a Multi-Bank Flash-Memory Storage System," Proc. 11th IEEE Conf. Embedded and Real-Time Computing Systems and Applications (RTCSA), 2005.
[27] Y. Joo, Y. Cho, D. Shin, and N. Chang, "Energy-Aware Data Compression for Multi-Level Cell (MLC) Flash Memory," Proc. 44th ACM/IEEE Design Automation Conf. (DAC), pp. 716-719, 2007.
[28] H. Gyu and N. Chang, "Energy-Aware Memory Allocation in Heterogeneous Non-Volatile Memory Systems," Proc. Int'l Symp. Low Power Electronics and Design (ISLPED), 2003.
[29] A. Ban and R. Hasbaron, "Wear Leveling of Static Areas in Flash Memory," US Patent 6,732,221, M-Systems, 2004.
[30] Y.-H. Chang, J.-W. Hsieh, and T.-W. Kuo, "Endurance Enhancement of Flash-Memory Storage Systems: An Efficient Static Wear Leveling Design," Proc. 44th ACM/IEEE Design Automation Conf. (DAC), June 2007.
[31] L.-P. Chang, "On Efficient Wear Leveling for Large-Scale Flash-Memory Storage Systems," Proc. 2007 ACM Symp. Applied Computing (SAC), pp. 1126-1130, 2007.
[32] H. Jo, J.-U. Kang, S.-Y. Park, J.-S. Kim, and J. Lee, "FAB: Flash-Aware Buffer Management Policy for Portable Media Players," IEEE Trans. Consumer Electronics, vol. 52, no. 2, pp. 485-493, May 2006.
[33] H. Kim and S. Ahn, "BPLRU: A Buffer Management Scheme for Improving Random Writes in Flash Storage," Proc. Sixth USENIX Conf. File and Storage Technologies (FAST), pp. 239-252, 2008.
[34] S. yeong Park, D. Jung, J. uk Kang, J. soo Kim, and J. Lee, "CFLRU: A Replacement Algorithm for Flash Memory," Proc. Int'l Conf. Compilers, Architecture and Synthesis for Embedded Systems (CASES), 2006.
[35] "K9F1208U0M 64M ∗ 8 Bit NAND Flash Memory Data Sheet," Samsung Electronics, 2001.
[36] "K9K8G08U0M 1G ∗ 8 Bit NAND Flash Memory Data Sheet," Samsung Electronics, 2005.
[37] "K9GAG08U0M 2G x 8bit NAND Flash Memory Data Sheet," Samsung Electronics, Sept. 2006.
[38] "NAND08Gx3C2A 8Gbit Multi-Level NAND Flash Memory," STMicroelectronics, 2005.
[39] R. Dan and R. Singer, "Implementing MLC NAND Flash Memory for Cost-Effective, High-Capacity Memory," M-Systems, Sept. 2003.
[40] S. Zernovizky and R. Singer, "msystemsx4 Technology: 4-Bit/Cell NAND Usage Impossible?" M-Systems, 2006.
[41] Flash Contract Price, DRAMeXchange, http:/www. dramexchange.com/, 2008.
[42] T.-W. Kuo, Y.-H. Chang, P.-C. Huang, and C.-W. Chang, "Special Issues in Flash," Proc. IEEE/ACM Int'l Conf. Computer-Aided Design (ICCAD), 2008.
[43] "Using Multilevel Cell NAND Flash Technology in Consumer Applications," EE Times Asia, July 2005.
[44] A. Silberschatz, P.B. Galvin, and G. Gagne, Operating System Concepts, sixth ed. John Wiley & Sons, Inc., 2003.
[45] T.H. Cormen, C.E. Leiserson, R.L. Rivest, and C. Stein, Introduction to Algorithms, second ed., pp. 209-213. The MIT Press, 2001.
[46] R. Parent, Computer Animation: Algorithms and Techniques. Morgan Kaufmann, 2001.
[47] A. Ben-Aroya and S. Toledo, "Competitive Analysis of Flash-Memory Algorithms," Proc. 14th Conf. Ann. European Symp. (ESA), pp. 100-111, 2006.
[48] A. Ban, "Wear Leveling of Static Areas in Flash Memory," US Patent 6,732,221, M-Systems, 2004.
[49] M. Spivak and S. Toledo, "Storing a Persistent Transactional Object Heap on Flash Memory," Proc. 2006 ACM Conf. Language, Compilers, and Tool Support for Embedded Systems (LCTES), pp. 22-33, 2006.
[50] R.L. Graham, D.E. Knuth, and O. Patashnik, Concrete Mathematics: A Foundation for Computer Science. Addison Wesley, 2003.
[51] H.J. Larson, Introduction to Probability. Addison-Wesley, 1995.
[52] P. Cappelletti, C. Golla, P. Olivo, and E. Zanoni, Flash Memories. Kluwer Academic Publishers, 1999.
[53] T.H. Cormen, C.E. Leiserson, R.L. Rivest, and C. Stein, Introduction to Algorithms, second ed. The MIT Press, 2001.
[54] LM3S8962 Microcontroller, Luminary Micro, 2008.
[55] PIC Family, Microchip, 2008.
36 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool