Abstract
Despite having a multi-billion dollar market and many operational advantages, Flash memory suffers from a serious drawback, that is, the gradual degradation of its storage locations through use. Manufacturers currently have no method to predict how long they will function correctly, resulting in extremely conservative longevity specifications being placed on Flash devices.
We leverage the fact that the durations of two crucial Flash operations, program and erase, change as the chips age. Their timings, recorded at intervals early in chips’ working lifetimes, are used to predict whether storage locations will function correctly after given numbers of operations. We examine how early and with how little data such predictions can be made. Genetic Programming, employing the timings as inputs, is used to evolve binary classifiers that achieve up to a mean of 97.88% correct classification. This technique displays huge potential for real-world application, with resulting savings for manufacturers.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Arbuckle, T., Hogan, D., Ryan, C.: Optimising Flash Memory for Differing Usage Scenarios: Goals and Approach. In: Lee, G., Howard, D., Ślęzak, D., Hong, Y.S. (eds.) ICHIT 2012. CCIS, vol. 310, pp. 137–140. Springer, Heidelberg (2012)
Arbuckle, T., Hogan, D., Ryan, C.: Optimising Flash non-volatile memory using machine learning: A project overview. In: Proceedings of the 5th Balkan Conference on Informatics (BCI 2012), pp. 235–238 (2012)
Boboila, S., Desnoyers, P.: Write endurance in Flash drives: Measurement and analysis. In: 8th USENIX Conference on File and Storage Technologies (FAST 2010), San Jose, California, pp. 115–128 (2010)
Brewer, J., Gill, M.: Nonvolatile Memory Technologies with Emphasis on Flash (A Comprehensive Guide to Understanding and Using Flash Memory Devices). Wiley-IEEE Press (2008)
Cai, Y., Haratsch, E., Mutlu, O., Mai, K.: Error patterns in MLC NAND Flash memory: Measurement, characterization, and analysis. In: Design, Automation Test in Europe Conference Exhibition (DATE 2012), pp. 521–526 (2012)
Cappelletti, P., Bez, R., Cantarelli, D., Fratin, L.: Failure mechanisms of Flash cell in program/erase cycling. In: Technical Digest, International Electron Devices Meeting (IEDM 1994), San Francisco, CA, USA, pp. 291–294 (1994)
Desnoyers, P.: Empirical evaluation of NAND Flash memory performance. SIGOPS Oper. Syst. Rev. 44, 50–54 (2010)
Fayrushin, A., Lee, C., Park, Y., Choi, J., Choi, J., Chung, C.: Endurance prediction of scaled NAND Flash memory based on spatial mapping of erase tunneling current. In: 3rd IEEE International Memory Workshop (IMW 2011), pp. 1–4 (2011)
Fowler, R.H., Nordheim, L.: Electron emission in intense electric fields. Proceedings of the Royal Society of London. Series A 119(781), 173–181 (1928)
Ghidini, G.: Charge-related phenomena and reliability of non-volatile memories. Microelectronics Reliability 52, 1876–1882 (2012)
Grupp, L.M., Caulfield, A.M., Coburn, J., Swanson, S., Yaakobi, E., Siegel, P.H., Wolf, J.K.: Characterizing Flash memory: anomalies, observations, and applications. In: Proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture, MICRO 42, pp. 24–33. ACM, New York (2009)
Grupp, L., Davis, J., Swanson, S.: The bleak future of NAND Flash memory. In: Proceedings of the 10th USENIX Conference on File and Storage Technologies, San Jose, California, pp. 17–24 (2012)
Hogan, D., Arbuckle, T., Ryan, C.: Evolving a storage block endurance classifier for Flash memory: A trial implementation. In: Proc. 11th IEEE Int. Conference on Cybernetic Intelligent Systems (CIS 2012), pp. 12–17 (2012)
Hogan, D., Arbuckle, T., Ryan, C., Sullivan, J.: Evolving a retention period classifier for use with Flash memory. In: Proc. 4th Int. Conf. on Evolutionary Computation Theory and Applications (ECTA 2012), pp. 24–33 (2012)
Kahng, D., Sze, S.: A floating-gate and its application to memory devices. The Bell System Technical Journal 46(6), 1288–1295 (1967)
Kitahara, Y., Hagishima, D., Matsuzawa, K.: Reliability of NAND Flash memories induced by anode hole generation in floating-gate. In: International Conference on Simulation of Semiconductor Processes and Devices (SISPAD 2011), pp. 131–134 (2011)
Koza, J.R.: Genetic Programming: On the Programming of Computers by Means of Natural Selection. The MIT Press (1992)
Luke, S.: ECJ 20. A Java-based evolutionary computation research system (2010), http://cs.gmu.edu/~eclab/projects/ecj/
Micheloni, R., Crippa, L., Marelli, A.: Inside NAND Flash Memories. Springer (2010)
Micheloni, R., Marelli, A., Ravasio, R.: Error Correction Codes for Non-Volatile Memories. Springer (2010)
Moon, J., No, J., Lee, S., Kim, S., Yang, J., Chang, S.H.: Noise and interference characterization for MLC Flash memories. In: International Conference on Computing, Networking and Communications (ICNC 2012), pp. 588–592 (2012)
Sullivan, J., Ryan, C.: A destructive evolutionary algorithm process. Soft Computing – A Fusion of Foundations, Methodologies and Applications 15, 95–102 (2011)
Trendforce: eMMC and SSD to contribute to 15% NAND Flash output value growth in 2013 (2012), http://press.trendforce.com/en/node/4931 (accessed January 11, 2013)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hogan, D., Arbuckle, T., Ryan, C. (2013). How Early and with How Little Data? Using Genetic Programming to Evolve Endurance Classifiers for MLC NAND Flash Memory. In: Krawiec, K., Moraglio, A., Hu, T., Etaner-Uyar, A.Ş., Hu, B. (eds) Genetic Programming. EuroGP 2013. Lecture Notes in Computer Science, vol 7831. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-37207-0_22
Download citation
DOI: https://doi.org/10.1007/978-3-642-37207-0_22
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-37206-3
Online ISBN: 978-3-642-37207-0
eBook Packages: Computer ScienceComputer Science (R0)