This Article 
 Bibliographic References 
 Add to: 
A Hybrid Approach to NAND-Flash-Based Solid-State Disks
October 2010 (vol. 59 no. 10)
pp. 1337-1349
Li-Pin Chang, National Chiao-Tung University, Hsin-Chu
Replacing power-hungry disks with NAND-flash-based solid-state disks (SSDs) is a recently emerging trend in flash-memory applications. One important SSD design issue is achieving a good balance between cost, performance, and lifetime. This study introduces a hybrid approach to large SSDs that combines MLC NAND flash and SLC NAND flash. Each of these flash architectures has its own drawbacks and benefits, and this study proposes that the two can complement each other. However, there are technical challenges pertaining to data placement, data migration, and wear leveling in heterogeneous NAND flash. The experimental results of our study show that combining 256 MB SLC flash with 20 GB MLC flash produces a hybrid SSD. This hybrid SSD is 1.8 times faster than a purely MLC-flash-based SSD in terms of average response time and improves energy consumption by 46 percent. The proposed hybrid SSD costs only four percent more than a purely MLC-flash-based SSD. The extra cost of a hybrid SSD is very limited and rewarding.

[1] A. Kawaguchi, S. Nishioka, and H. Motoda, "A Flash-Memory Based File System," Proc. USENIX Technical Conf., 1995.
[2] B. Marsh, F. Douglis, and P. Krishnan, "Flash Memory File Caching for Mobile Computers," Proc. 27th Hawaii Conf. Systems Science, 1993.
[3] C. Park, P. Talawar, D. Won, M.J. Jung, J.B. Im, S.S. Kim, and Y.J. Choi, "A High Performance Controller for NAND Flash-Based Solid State Disk (NSSD)," Proc. 21st IEEE Non-Volatile Semiconductor Memory Workshop (NVSMW), 2006.
[4] 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, 2006.
[5] D. Roselli, J.R. Lorch, and T.E. Anderson, "A Comparison of File System Workloads," Proc. 2000 USENIX Ann. Technical Conf., 2000.
[6] E. Forgy, "Cluster Analysis of Multivariate Data: Efficiency versus Interpretability of Classifications," Biometrics, vol. 21, pp. 768-769, 1965.
[7] F. Chen, S. Jiang, and X. Zhang, "SmartSaver: Turning Flash Drive into a Disk Energy Saver for Mobile Computers," Proc. 11th ACM/IEEE Int'l Symp. Low Power Electronics and Design, 2006.
[8] E.J. O'Neil, P.E. O'Neil, and G. Weikum, "The LRU-k Page Replacement Algorithm for Database Disk Buffering," ACM SIGMOD Record, vol. 22, no. 2, pp. 297-306, 1993.
[9] H.G. Lee and N. Chang, "Energy-Aware Memory Allocation in Heterogeneous Non-Volatile Memory Systems," Proc. Int'l Symp. Low Power Electronics and Design, 2007.
[10] J.H. Yoon, E.H. Nam, Y.J. Seong, H.S. Kim, B.S. Kim, S.L. Min, and Y.K. Cho, "Chameleon: A High Performance Flash/FRAM Hybrid Solid-Sate Disk Architecture," IEEE Computer Architecture Letters, vol. 7, no. 1, pp. 17-20, Jan.-June 2008.
[11] J.W. Hsieh, T.W. Kuo, and L.P. Chang, "Efficient Identification of Hot Data for Flash Memory Storage Systems," ACM Trans. Storage, vol. 2, no. 1, pp. 22-40, 2006.
[12] J. Kim, J.M. Kim, S.H. Noh, S.L. Min, and Y. Cho, "A Space-Efficient Flash Translation Layer for Compactflash Systems," IEEE Trans. Consumer Electronics, vol. 48, no. 2, pp. 366-375, May 2002.
[13] L.P. Chang, "On Efficient Wear-Leveling for Large-Scale Flash-Memory Storage Systems," Proc. 22nd ACM Symp. Applied Computing, 2007.
[14] L.P. Chang, "Hybrid Solid-State Disks: Combining Heterogeneous NAND Flash in Large SSDs," Proc. 13th Asia and South Pacific Design Automation Conf., 2008.
[15] M.E. Russinovich and D.A. Solomon, Microsoft Windows Internals: Microsoft Windows Server 2003, Windows XP, and Windows 2000, fourth ed. Microsoft Press, 2004.
[16] O. Avissar, R. Barua, and D. Stewart, "An Optimal Memory Allocation Scheme for Scratch-Pad-Based Embedded Systems," ACM Trans. Embedded Computing Systems, vol. 1, no. 1, pp. 6-26, Nov. 2002.
[17] Samsung Electronics Company, "K9F2G08U0A 256M ∗ 8 Bit SLC NAND Flash Memory Data Sheet." 2006
[18] Samsung Electronics Company, "K9GAG08U0M 2G ∗ 8 Bit MLC NAND Flash Memory Data Sheet (Preliminary)." 2006
[19] Samsung Electronics Company, "NAND Flash-Based Solid State Disk Data Sheet," Semiconductor/ FlashSSD/downloadStandard_type.pdf , 2010.
[20] T. Bisson and S. Brandt, "Reducing Energy Consumption with a Non-Volatile Storage Cache," Proc. Int'l Workshop Software Support for Portable Storage (IWSSPS), 2005.
[21] S.W. Lee, D.J. Park, T.S. Chung, D.H. Lee, S.W. Park, and H.J. Song, "A Log Buffer-Based Flash Translation Layer Using Fully-Associative Sector Translation," ACM Trans. Embedded Computing Systems, vol. 6, no. 3, pp. 18:1-18:27, 2007.
[22] W.G. Wang, Y.P. Zhao, and R. Bunt, "HyLog: A High Performance Approach to Managing Disk Layout," Proc. Third USENIX Conf. File and Storage Technologies, 2004.
[23] W. Vogels, "File System Usage in Windows NT 4.0," Proc. 17th ACM Symp. Operating Systems Principles, 1999.
[24] Y.J. Kim, K.T. Kwon, and J. Kim, "Energy-Efficient File Placement Techniques for Heterogeneous Mobile Storage Systems," Proc. Sixth ACM and IEEE Int'l Conf. Embedded Software, 2006.
[25] Y.M. Hu and Q. Yang, "DCD-Disk Caching Disk: A New Approach for Boosting I/O Performance," Proc. 23rd Int'l Symp. Computer Architecture, 1996.
[26] Y.W. Park, S.H. Lim, C. Lee, and K.H. Park, "PFFS: A Scalable Flash Memory File System for the Hybrid Architecture of Phase-Change RAM and NAND Flash," Proc. 23rd ACM Symp. Applied Computing, 2008.
[27] T. Kgil, D. Roberts, and T. Mudge, "Improving NAND Flash Based Disk Caches," Proc. 35th Int'l Symp. Computer Architecture, 2008.
[28] A. Wang, P.L. Reiher, G.J. Popek, and G.H. Kuenning, "Conquest: Better Performance through a Disk/Persistent-RAM Hybrid File System," Proc. Ann. Conf. USENIX Ann. Technical Conf., 2002.
[29] T.M. Wong and J. Wilkes, "My Cache or Yours? Making Storage More Exclusive," Proc. Ann. Conf. USENIX Ann. Technical Conf., 2002.
[30] S. Lee, D. Shin, Y. Kim, and J. Kim, "LAST: Locality-Aware Sector Translation for NAND Flash Memory-Based Storage Systems," ACM SIGOPS Operating Systems Rev., vol. 42, no. 6, pp. 36-42, 2008.
[31] C. Park, W. Cheon, J. Kang, K. Roh, W. Cho, and J. Kim, "A Reconfigurable FTL (Flash Translation Layer) Architecture for NAND Flash-Based Applications," ACM Trans. Embedded Computing Systems, vol. 7, no. 4, pp. 38:1-38:23, 2008.
[32] D. Arthur and S. Vassilvitskii, "How Slow is the k-Means Method?" Proc. 22nd Ann. Symp. Computational Geometry, 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, 2008.
[34] 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.

Index Terms:
Flash memory, storage systems, file systems, solid-state disks.
Li-Pin Chang, "A Hybrid Approach to NAND-Flash-Based Solid-State Disks," IEEE Transactions on Computers, vol. 59, no. 10, pp. 1337-1349, Oct. 2010, doi:10.1109/TC.2010.14
Usage of this product signifies your acceptance of the Terms of Use.