Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Performance and Reliability Analysis of Cross-Layer Optimizations of NAND Flash Controllers

Published: 21 January 2015 Publication History
  • Get Citation Alerts
  • Abstract

    NAND flash memories are becoming the predominant technology in the implementation of mass storage systems for both embedded and high-performance applications. However, when considering data and code storage in Non-Volatile Memories (NVMs), such as NAND flash memories, reliability and performance become a serious concern for systems designers. Designing NAND flash-based systems based on worst-case scenarios leads to waste of resources in terms of performance, power consumption, and storage capacity. This is clearly in contrast with the request for runtime reconfigurability, adaptivity, and resource optimization in modern computing systems. There is a clear trend toward supporting differentiated access modes in flash memory controllers, each one setting a differentiated tradeoff point in the performance-reliability optimization space. This is supported by the possibility of tuning the NAND flash memory performance, reliability, and power consumption through several tuning knobs such as the flash programming algorithm and the flash error correcting code. However, to successfully exploit these degrees of freedom, it is mandatory to clearly understand the effect that the combined tuning of these parameters has on the full NVM subsystem. This article performs a comprehensive quantitative analysis of the benefits provided by the runtime reconfigurability of an MLC NAND flash controller through the combined effect of an adaptable memory programming circuitry coupled with runtime adaptation of the ECC correction capability. The full NVM subsystem is taken into account, starting from a characterization of the low-level circuitry to the effect of the adaptation on a wide set of realistic benchmarks in order to provide readers a clear view of the benefit this combined adaptation may provide at the system level.

    References

    [1]
    G. Atwood, A. Fazio, D. Mills, and B. Reaves. 1997. Intel strataflash memory technology overview. Intel Technology Journal Quarterly 4 (1997). Retrieved from https://noggin.intel.com/content/intel-strataflash- memory-technology-overview.
    [2]
    R. Bez, E. Camerlenghi, A. Modelli, and A. Visconti. 2003. Introduction to flash memory. Proceedings of the IEEE 91, 4 (April 2003), 489--502.
    [3]
    R. C. Bose and D. K. Ray-Chaudhuri. 1960. On a class of error correcting binary group codes. Information and Control 3, 1 (1960), 68--79.
    [4]
    J. M. P. Cardoso and Michael Hübner. 2011. Reconfigurable Computing: From FPGAs to Hardware/Software Codesign. Springer, Berlin.
    [5]
    T.-H. Chen, Y.-Y. Hsiao, Y.-T. Hsing, and C.-W. Wu. 2009. An adaptive-rate error correction scheme for NAND flash memory. In Proceedings of the 27th IEEE VLSI Test Symposium (VTS’09). IEEE, 53--58.
    [6]
    CMP. 2012. CMP Project. Retrieved from http://cmp.imag.fr/.
    [7]
    J. Cooke. 2007. The inconvenient truths of NAND flash memory. Flash Memory Summit. Retrieved from http://download.micron.com/pdf/presentations/events/flash_mem_summit_jcooke_inconvenient_truths_ nand.pdf.
    [8]
    R. Dan and R. Singer. 2003. Implementing MLC NAND flash for cost-effective, high-capacity memory. M-Syst. White paper. Retrieved from http://tinyurl.com/o2443mh.
    [9]
    S. Di Carlo, M. Fabiano, P. Prinetto, and M. Caramia. 2011. Design Issues and Challenges of File Systems for Flash Memories. InTech, Croatia, Chapter 1, 3--30.
    [10]
    Evatronix. 2012. Evatronix NANDFLASH-CTRL NAND Flash Memory Controller. Retrieved from http://www.evatronix.pl/products/docs.html?id=10&product=TkFOREZMQVNILUN UUkw=.
    [11]
    M. Fabiano, M. Indaco, S. Di Carlo, and P. Prinetto. 2013. Design and optimization of adaptable BCH codecs for NAND flash memories. Microprocessors and Microsystems 37, 4--5 (2013), 407--419.
    [12]
    E. Grochowski and R. E. Fontana. 2012. Future technology challenges for NAND flash and HDD products. Flash Memory Summit. Retrieved from http://www.flashmemorysummit.com/English/Collaterals/Proceedings/2012/20120821_S102A_Grochowski.pdf.
    [13]
    J. Henkel, L. Bauer, M. Hübner, and A. Grudnitsky. 2011. i-Core: A run-time adaptive processor for embedded multi-core systems. In Proceedings of the International Conference on Engineering of Reconfigurable Systems and Algorithms (ERSA’11). ERSA-ADN.
    [14]
    iozone.org. 2012. IOzone File System Benchmark. Retrieved from http://www.iozone.org.
    [15]
    F. Irom and D. N. Nguyen. 2007. Single event effect characterization of high density commercial NAND and NOR nonvolatile flash memories. IEEE Transactions on Nuclear Science 54, 6 (Dec. 2007), 2547--2553.
    [16]
    JEDEC Solid State Technology Association. 2011. Failure mechanisms and models for semiconductor devices (JEP122G). Retrieved from http://www.jedec.org/standards-documents/docs/jep-122e.
    [17]
    Y. H. Kang, J. K. Kim, S. W. Hwang, J. Y. Kwak, J. Y. Park, D. Kim, C. H. Kim, J. Y. Park, Y. T. Jeong, J. N. Baek, et al. 2008. High-voltage analog system for a mobile NAND flash. IEEE Journal of Solid-State Circuits 43, 2 (Feb. 2008), 507--517.
    [18]
    J. Katcher. 1997. PostMark: A New File System Benchmark. Network Appliance Tech Report TR3022. Retrieved from https://communities.netapp.com/servlet/JiveServlet/download/2609-1551/Katcher97- postmark-netapp-tr3022.pdf.
    [19]
    J. D. Lee, J. H. Choi, D. Park, and K. Kim. 2003. Data retention characteristics of sub-100 nm NAND flash memory cells. IEEE Electron Device Letters 24, 12 (Dec. 2003), 748--750.
    [20]
    R.-S. Liu, C.-L. Yang, and W. Wu. 2012. Optimizing NAND flash-based SSDs via retention relaxation. In Proceedings of the 10th USENIX Conference on File and Storage Technologies (FAST’12). USENIX Association. Retrieved from http://static.usenix.org/event/fast12/tech/full_papers/Liu.pdf.
    [21]
    C. Miccoli, C. Monzio Compagnoni, A. S. Spinelli, and A. L. Lacaita. 2011. Investigation of the programming accuracy of a double-verify ISPP algorithm for nanoscale NAND Flash memories. In Proceedings of the IEEE International Reliability Physics Symposium (IRPS’11). IEEE, MY.5.1--MY.5.6.
    [22]
    R. Micheloni, L. Crippa, and A. Marelli. 2010. Inside NAND Flash Memories. Springer-Verlag, Berlin.
    [23]
    R. Micheloni, A. Marelli, and K. Eshghi. 2013. Inside Solid State Drives (SSDs). Springer, Berlin.
    [24]
    N. Mielke, T. Marquart, N. Wu, J. Kessenich, H. Belgal, E. Schares, F. Trivedi, E. Goodness, and L. R. Nevill. 2008. Bit error rate in NAND Flash memories. In Proceedings of the IEEE International Reliability Physics Symposium (IRPS’08). IEEE, 9--19.
    [25]
    V. Mohan, S. Gurumurthi, and M. R. Stan. 2010. FlashPower: A detailed power model for NAND flash memory. In Proceedings of Design, Automation & Test in Europe Conference & Exhibition (DATE). IEEE, 502--507.
    [26]
    ONFI Workgroup. 2012. Open NAND Flash Interface. Retrieved from http://onfi.org.
    [27]
    J. Ouyang, S. Lin, S. Jiang, Z. Hou, Y. Wang, and Y. Wang. 2014. SDF: Software-defined flash for web-scale internet storage systems. In Proceedings of the 19th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS’14). ACM, New York, NY, 471--484.
    [28]
    Y. Pan, G. Dong, and T. Zhang. 2011. Exploiting memory device wear-out dynamics to improve NAND flash memory system performance. In Proceedings of the 9th USENIX Conference on File and Storage Technologies (FAST’11). USENIX Association, Berkeley, CA.
    [29]
    A. Sampson, J. Nelson, K. Strauss, and L. Ceze. 2013. Approximate storage in solid-state memories. In Proceedings of the 46th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO-46). ACM, New York, NY, 25--36. http://www.datasheetarchive.com/dl/Datasheets-SW18/DSASW00344250.pdf.
    [30]
    Samsung. 2012. Samsung KFG4GH6x4M 4Gb Flex-OneNAND M-die Datasheet.
    [31]
    A. Spessot, A. Calderoni, P. Fantini, A. S. Spinelli, C. M Compagnoni, F. Farina, A. L. Lacaita, and A. Marmiroli. 2010. Variability effects on the VT distribution of nanoscale NAND flash memories. In IEEE International Reliability Physics Symposium (IRPS’10). IEEE, 970--974.
    [32]
    Standard Performance Evaluation Corporation. 2013. SPEC Benchmarks. Retrieved from http://www.spec.org.
    [33]
    H. Sun, B. Wood, and P. Grayson. 2011. Qualifying reliability of solid-state storage from multiple aspects. In Proceedings 7th IEEE International Workshop on Storage Network Architecture and Parallel I/O (SNAPI’11). IEEE. Retrieved from http://storageconference.org/2011/Papers/SNAPI/1.Sun.pdf.
    [34]
    A. Wilson. 2008. The new and improved filebench. In Proceedings of the 6th USENIX Conference on File and Storage Technologies (FAST’08). USENIX, Retrieved from https://www.usenix.org/legacy/events/fast08/wips_posters/wilson-wip.pdf.
    [35]
    E. Yaakobi, J. Ma, A. Caulfield, L. Grupp, S. Swanson, P. H. Siegel, and J. K. Wolf. 2009. Error correction coding for flash memories. Flash Memory Summit. Retrieved from http://www.bswd.com/FMS09/FMS09-201-Yaakobi.pdf.
    [36]
    E. Yaakobi, J. Ma, L. Grupp, P. H. Siegel, S. Swanson, and J. K. Wolf. 2010. Error characterization and coding schemes for flash memories. In Proceedings of the IEEE GLOBECOM Workshops (GC Wkshps’10). IEEE, 1856--1860.
    [37]
    C. Zambelli, M. Indaco, M. Fabiano, S. Di Carlo, P. Prinetto, P. Olivo, and D. Bertozzi. 2012. A cross-layer approach for new reliability-performance trade-offs in MLC NAND flash memories. In Proceedings of Design, Automation Test in Europe Conference Exhibition (DATE’12). IEEE, 881--886.

    Cited By

    View all
    • (2020)A Design of Four Dies Parallel NAND Flash Memory Controller Supporting Toggle and ONFI mode2020 IEEE 15th International Conference on Solid-State & Integrated Circuit Technology (ICSICT)10.1109/ICSICT49897.2020.9278398(1-3)Online publication date: 3-Nov-2020
    • (2019)RBER-Aware Lifetime Prediction Scheme for 3D-TLC NAND Flash MemoryIEEE Access10.1109/ACCESS.2019.29095677(44696-44708)Online publication date: 2019
    • (2019)Improvement of the tolerated raw bit error rate in NAND flash-based SSDs with selective refreshMicroelectronics Reliability10.1016/j.microrel.2019.01.01496(37-45)Online publication date: May-2019
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Transactions on Embedded Computing Systems
    ACM Transactions on Embedded Computing Systems  Volume 14, Issue 1
    January 2015
    443 pages
    ISSN:1539-9087
    EISSN:1558-3465
    DOI:10.1145/2724585
    Issue’s Table of Contents
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Journal Family

    Publication History

    Published: 21 January 2015
    Accepted: 01 April 2014
    Revised: 01 April 2014
    Received: 01 October 2013
    Published in TECS Volume 14, Issue 1

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Adaptable memory controllers
    2. ECC
    3. NAND flash memories

    Qualifiers

    • Research-article
    • Research
    • Refereed

    Funding Sources

    • 7th Framework Program of the European Union through the CLERECO Project

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)31
    • Downloads (Last 6 weeks)3
    Reflects downloads up to 12 Aug 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2020)A Design of Four Dies Parallel NAND Flash Memory Controller Supporting Toggle and ONFI mode2020 IEEE 15th International Conference on Solid-State & Integrated Circuit Technology (ICSICT)10.1109/ICSICT49897.2020.9278398(1-3)Online publication date: 3-Nov-2020
    • (2019)RBER-Aware Lifetime Prediction Scheme for 3D-TLC NAND Flash MemoryIEEE Access10.1109/ACCESS.2019.29095677(44696-44708)Online publication date: 2019
    • (2019)Improvement of the tolerated raw bit error rate in NAND flash-based SSDs with selective refreshMicroelectronics Reliability10.1016/j.microrel.2019.01.01496(37-45)Online publication date: May-2019
    • (2019)CalmWPC: A buffer management to calm down write performance cliff for NAND flash-based storage systemsFuture Generation Computer Systems10.1016/j.future.2018.08.01490(461-476)Online publication date: Jan-2019
    • (2017)Improvement of the tolerated raw bit error rate in NAND flash-based SSDs with the help of embedded statistics2017 IEEE International Test Conference (ITC)10.1109/TEST.2017.8242066(1-9)Online publication date: Oct-2017
    • (2017)Multi-Mode Low-Latency Software-Defined Error Correction for Data Centers2017 26th International Conference on Computer Communication and Networks (ICCCN)10.1109/ICCCN.2017.8038467(1-8)Online publication date: Jul-2017
    • (2017)Refresh frequency reduction of data stored in SSDs based on A-timer and timestamps2017 22nd IEEE European Test Symposium (ETS)10.1109/ETS.2017.7968233(1-6)Online publication date: May-2017
    • (2016)Image-Content-Aware I/O Optimization for Mobile VirtualizationACM Transactions on Embedded Computing Systems10.1145/295005916:1(1-24)Online publication date: 13-Oct-2016
    • (2016)Compact Modeling of Negative Shift Disturb in NAND Flash MemoriesIEEE Transactions on Electron Devices10.1109/TED.2016.253084763:4(1516-1523)Online publication date: Apr-2016
    • (2016)Multi-version checkpointing for flash file systems2016 21st Asia and South Pacific Design Automation Conference (ASP-DAC)10.1109/ASPDAC.2016.7428051(436-443)Online publication date: Jan-2016

    View Options

    Get Access

    Login options

    Full Access

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media