Unified non-volatile memory and NAND flash memory architecture in smartphones

I/O is becoming one of major performance bottlenecks in NAND-flash-based smartphones. Novel NVMs (nonvolatile memories), such as PCM (Phase Change Memory) and STT-RAM (Spin-Transfer Torque Random Access Memory), can provide fast read/write operations. In this paper, we propose an unified NVM/flash architecture to improve the I/O performance. A transparent scheme, vFlash (Virtualized Flash), is also proposed to manage the unified architecture. Within vFlash, inter-app technique is proposed to optimize the application performance by exploiting the historic locality of applications. Since vFlash is on the bottom of the I/O stack, the application features will be lost. Therefore, we also propose a cross-layer technique to transfer the application information from the application layer to the vFlash layer. The proposed scheme is evaluated based on a real Android platform, and the experimental results show that the read and write performance for the proposed scheme is 2.45 times and 3.37 times better than that of the stock Android 4.2 system, respectively.

[1]  Rong Luo,et al.  Energy efficient neural networks for big data analytics , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[2]  Yu Wang,et al.  Training itself: Mixed-signal training acceleration for memristor-based neural network , 2014, 2014 19th Asia and South Pacific Design Automation Conference (ASP-DAC).

[3]  Edwin Hsing-Mean Sha,et al.  DR. Swap: Energy-efficient paging for smartphones , 2014, 2014 IEEE/ACM International Symposium on Low Power Electronics and Design (ISLPED).

[4]  Bo Zhao,et al.  A 3us wake-up time nonvolatile processor based on ferroelectric flip-flops , 2012, 2012 Proceedings of the ESSCIRC (ESSCIRC).

[5]  Chun Jason Xue,et al.  SLC-enabled wear leveling for MLC PCM considering process variation , 2014, 2014 51st ACM/EDAC/IEEE Design Automation Conference (DAC).

[6]  Yiran Chen,et al.  STT-RAM cell design optimization for persistent and non-persistent error rate reduction: A statistical design view , 2011, 2011 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[7]  Youjip Won,et al.  I/O Stack Optimization for Smartphones , 2013, USENIX ATC.

[8]  Yiran Chen,et al.  A 130 nm 1.2 V/3.3 V 16 Kb Spin-Transfer Torque Random Access Memory With Nondestructive Self-Reference Sensing Scheme , 2012, IEEE Journal of Solid-State Circuits.

[9]  Renhai Chen,et al.  On-Demand Block-Level Address Mapping in Large-Scale NAND Flash Storage Systems , 2015, IEEE Transactions on Computers.

[10]  Andrea C. Arpaci-Dusseau,et al.  A Study of Linux File System Evolution , 2013, FAST.

[11]  Renhai Chen,et al.  Deterministic crash recovery for NAND flash based storage systems , 2014, 2014 51st ACM/EDAC/IEEE Design Automation Conference (DAC).

[12]  Huazhong Yang,et al.  A compression-based area-efficient recovery architecture for nonvolatile processors , 2012, 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[13]  Renhai Chen,et al.  DHeating: Dispersed heating repair for self-healing NAND flash memory , 2013, 2013 International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[14]  Cristian Ungureanu,et al.  Revisiting storage for smartphones , 2012, TOS.

[15]  Wei-Che Tseng,et al.  Software enabled wear-leveling for hybrid PCM main memory on embedded systems , 2013, 2013 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[16]  Wei-Che Tseng,et al.  Data Allocation Optimization for Hybrid Scratch Pad Memory With SRAM and Nonvolatile Memory , 2013, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[17]  Yiran Chen,et al.  Processor caches built using multi-level spin-transfer torque RAM cells , 2011, IEEE/ACM International Symposium on Low Power Electronics and Design.

[18]  Jianhua Li,et al.  Compiler-Assisted STT-RAM-Based Hybrid Cache for Energy Efficient Embedded Systems , 2014, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[19]  HuJingtong,et al.  Write activity reduction on non-volatile main memories for embedded chip multiprocessors , 2013 .

[20]  Yiran Chen,et al.  Low cost power failure protection for MLC NAND flash storage systems with PRAM/DRAM hybrid buffer , 2013, 2013 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[21]  Yuan-Hao Chang,et al.  Space-efficient multiversion index scheme for PCM-based embedded database systems , 2014, 2014 51st ACM/EDAC/IEEE Design Automation Conference (DAC).

[22]  Wei-Che Tseng,et al.  Write activity reduction on non-volatile main memories for embedded chip multiprocessors , 2013, TECS.

[23]  Siyuan Ma,et al.  S-CAVE: Effective SSD caching to improve virtual machine storage performance , 2013, Proceedings of the 22nd International Conference on Parallel Architectures and Compilation Techniques.

[24]  Nikil D. Dutt,et al.  Meta-Cure: A reliability enhancement strategy for metadata in NAND flash memory storage systems , 2012, DAC Design Automation Conference 2012.

[25]  Huazhong Yang,et al.  PaCC: A Parallel Compare and Compress Codec for Area Reduction in Nonvolatile Processors , 2014, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[26]  Tei-Wei Kuo,et al.  A commitment-based management strategy for the performance and reliability enhancement of flash-memory storage systems , 2009, 2009 46th ACM/IEEE Design Automation Conference.

[27]  Yu Wang,et al.  ICE: Inline calibration for memristor crossbar-based computing engine , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[28]  Yiran Chen,et al.  Emerging non-volatile memories: Opportunities and challenges , 2011, 2011 Proceedings of the Ninth IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[29]  Tei-Wei Kuo,et al.  Special Issues in Flash , 2008, 2008 IEEE/ACM International Conference on Computer-Aided Design.