Abstract
Flash is a widely used storage device that provides high density and low power, appealing properties for general purpose computing. Today, its usual application is in portable special purpose devices such as MP3 players. In this paper we examine its use in the server domain—a more general purpose environment. Aggressive process scaling and the use of multi-level cells continues to improve density ahead of Moore’s Law predictions, making Flash even more attractive as a general purpose memory solution. Unfortunately, reliability limits the use of Flash. To seriously consider Flash in the server domain, architectural support must exist to address this concern. This paper first shows how Flash can be used in today’s server platforms as a disk cache. It then proposes two improvements. The first improves performance and reliability by splitting Flash based disk caches into separate read and write regions. The second improves reliability by employing a programmable Flash memory controller. It can change the error code strength (number of correctable bits) and the number of bits that a memory cell can store (cell density) according to the demands of the application. Our studies show that Flash reduces overall power consumed by the system memory and hard disk drive up to 3 times while maintaining performance. We also show that Flash lifetime can be improved by a factor of 20 when using a programmable Flash memory controller, if some performance degradation (below 5%) is acceptable.
- Flash Solid State Drive. http://www.samsung.com/ Products/Semiconductor/FlashSSD/index. htm.Google Scholar
- Hard Disk Drive Specification Hitachi Travelstar 7K60 2.5 inch ATA/IDE Hard Disk Drive Model: HTS726060M9AT00. http://www.hitachigst. com/tech/techlib.nsf/techdocs/ 53989D390D44D88F86256D1F0058368D/$file/ T7K60_sp2.0.pdf.Google Scholar
- Hybrid Hard Drives with Non-Volatile Flash and Longhorn. http://www.samsung.com/Products/ HardDiskDrive/news/HardDiskDrive_ 20050425_0000117556.htm.Google Scholar
- Samsung NAND Flash Memory Datasheet. http://www.samsung.com/products/ semiconductor/NANDFlash/SLC_LargeBlock/ 8Gbit/K9K8G08U0A/K9K8G08U0A.htm.Google Scholar
- Seagate Barracuda. http://www.seagate.com/ products/personal/index.html.Google Scholar
- Technical Note: TrueFFS Wear-Leveling Mechanism(TN-DOC-017). http://www.embeddedfreebsd. org/Documents/TrueFFS_Wear_Leveling_ Mechanism.pdf.Google Scholar
- The Micron System-Power Calculator. http://www. micron.com/products/dram/syscalc.html.Google Scholar
- University of Massachusetts Trace Repository. http://traces.cs.umass.edu/index.php/ Storage/Storage.Google Scholar
- Wear Leveling in Single Level Cell NAND Flash Memories. http://www.st.com/stonline/products/ literature/an/10122.pdf.Google Scholar
- N. Binkert, R. Dreslinski, L. Hsu, K. Lim, A. Saidi, and S. Reinhardt. The M5 simulator: Modeling networked systems. IEEE Micro, 26(4):52-60, Jul/Aug 2006. Google ScholarDigital Library
- T. Cho, Y. Lee, E. Kim, J. Lee, S. Choi, S. Lee, D. Kim, W. Han, Y. Lim, J. Lee, J. Choi, and K. Suh. A dual-mode NAND flash memory: 1-Gb multilevel and high-performance 512-mb single-level modes. IEEE Journal of Solid State Circuits, 36(11), Nov 2001.Google Scholar
- T. Hara, K. Fukuda, K. Kanazawa, N. Shibata, K. Hosono, H. Maejima, M. Nakagawa, T. Abe, M. Kojima, M. Fujiu, Y. Takeuchi, K. Amemiya, M. Morooka, T. Kamei, H. Nasu, C. Wang, K. Sakurai, N. Tokiwa, H. Waki, T. Maruyama, S. Yoshikawa, M. Higashitani, T. D. Pham, Y. Fong, and T. Watanabe. A 146mm2 8Gb Multi-Level NAND Flash Memory With 70-nm CMOS Technology. IEEE Journal of Solid State Circuits, 41(1), Jan 2006.Google ScholarCross Ref
- R. Hobson and K. Cheung. A High-Performance CMOS 32-Bit Parallel CRC Engine. IEEE Journal of Solid State Circuits, 34(2), Feb 1999.Google ScholarCross Ref
- D. Ielmini, A. S. Spinelli, A. L. Lacaita, and M. J. van Duuren. A Comparative Study of Characterization Techniques for Oxide Reliability in Flash Memories. IEEE trans. on device and materials and reliability, 4(3), Sep 2004.Google Scholar
- T. Kgil. Architecting Energy Efficient Servers. PhD thesis, University of Michigan, 2007. Google ScholarDigital Library
- T. Kgil and T. Mudge. FlashCache: a NAND flash memory file cache for low power web servers. In Proc. Int'l Conf. on Compilers, Architecture and Synthesis for Embedded Systems , 2006. Google ScholarDigital Library
- K. Kim and J. Choi. Future Outlook of NAND Flash Technology for 40nm Node and Beyond. In Workshop on Non-Volatile Semiconductor Memory, pages 9-11, Feb 2006.Google ScholarCross Ref
- J. Lee, S. Lee, O. Kwon, K. Lee, D. Byeon, I. Kim, K. Lee, Y. Lim, B. Choi, J. Lee, W. Shin, J. Choi, and K. Suh. A 90-nm CMOS 1.8-V 2-Gb NAND Flash Memory for Mass Storage Applications. IEEE Journal of solid-state circuits, 38(11), Nov 2003.Google Scholar
- S. Lee, Y. Lee, W. Han, D. Kim, M. Kim, S. Moon, H. Cho, J. Lee, D. Byeon, Y. Lim, H. Kim, S. Hur, and K. Suh. A 3.3V 4Gb Four-Level NAND Flash Memory with 90nm CMOS Technology. In Proc. Int'l Solid-State Circuits Conference , pages 52-53, 2004.Google Scholar
- C. Lefurgy, K. Rajamani, F. Rawson, W. Felter, M. Kistler, and T. Keller. Energy management for commercial servers. IEEE Computer, 36(12):39-48, 2003. Google ScholarDigital Library
- S. Lin and D. Costello. Error Control Coding, Second Edition . 2004. Google ScholarDigital Library
- R. Micheloni, R. Ravasio, A. Marelli, E. Alice, V. Altieri, A. Bovino, L. Crippa, E. D. Martino, L. D. Onofrio, A. Gambardella, E. Grillea, G. Guerra, D. Kim, C. Missiroli, I. Motta, A. Prisco, G. Ragone, M. Romano, M. Sangalli, P. Sauro, M. Scotti, and S. Won. A 4Gb 2b/cell NAND Flash Memory with Embedded 5b BCH ECC for 36MB/s System Read Throughput. In Proc. Int'l Solid-State Circuits Conference, pages 497-506, Feb 2006.Google ScholarCross Ref
- N. Mielke, H. Belgal, I. Kalastirsky, P. Kalavade, A. Kurtz, Q. Meng, N. Righos, and J. Wu. Flash EEPROM Threshold Instabilities due to Charge Trapping During Program/Erase Cycling. IEEE trans. on device and materials and reliability, 4(3), Sep 2004.Google Scholar
- A. Modelli, A. Visconti, and R. Bez. Advanced Flash Memory Reliability. In Proc. of Int'l Conf. on Integrated Circuit Design and Technology, pages 211-218, 2004.Google ScholarCross Ref
- C. Park, J. Seo, S. Bae, H. Kim, S. Kim, and B. Kim. A Low-cost Memory Architecture With NAND XIP for Mobile Embedded Systems. In Proc. Int'l Conf. on HW-SW Codesign and System Synthesis(CODES+ISSS), Oct 2003. Google ScholarDigital Library
- M. Wu and W. Zwaenepoel. eNVy: A Non-Volatile, Main Memory Storage System. In Proc. Int'l Conf. on Arch. Support for Prog. Lang. and Oper. Sys., Oct. 1994. Google ScholarDigital Library
Index Terms
- Improving NAND Flash Based Disk Caches
Recommendations
Improving NAND Flash Based Disk Caches
ISCA '08: Proceedings of the 35th Annual International Symposium on Computer ArchitectureFlash is a widely used storage device that provides high density and low power, appealing properties for general purpose computing. Today, its usual application is in portable special purpose devices such as MP3 players. In this paper we examine its use ...
A PRAM and NAND flash hybrid architecture for high-performance embedded storage subsystems
EMSOFT '08: Proceedings of the 8th ACM international conference on Embedded softwareNAND flash-based storage is widely used in embedded systems due to its numerous benefits: low cost, high density, small form factor and so on. However, NAND flash-based storage is still suffering from serious performance degradation for random or small ...
Testing Disturbance Faults in Various NAND Flash Memories
NAND flash memory is one popular non-volatile memory. Flash memory is prone to disturbance faults due to its specific mechanism of functional operations. Furthermore, different NAND flash memories might be different on the array organizations and the ...
Comments