Software enabled wear-leveling for hybrid PCM main memory on embedded systems

Phase Change Memory (PCM) is a promising DRAM replacement in embedded systems due to its attractive characteristics. However, relatively low endurance has limited its practical applications. In this paper, in additional to existing hardware level optimizations, we propose software enabled wear-leveling techniques to further extend PCM's lifetime when it is adopted in embedded systems. A polynomial-time algorithm, the Software Wear-Leveling (SWL) algorithm, is proposed in this paper to achieve wear-leveling without hardware overhead. According to the experimental results, the proposed technique can reduce the number of writes on the most-written bits by more than 80% when compared with a greedy algorithm, and by around 60% when compared with the existing Optimal Data Allocation (ODA) algorithm with under 6% memory access overhead.

[1]  Yi He,et al.  Reducing write activities on non-volatile memories in embedded CMPs via data migration and recomputation , 2010, Design Automation Conference.

[2]  Minming Li,et al.  Power-Aware Variable Partitioning for DSPs With Hybrid PRAM and DRAM Main Memory , 2011, IEEE Transactions on Signal Processing.

[3]  Wei-Che Tseng,et al.  Towards energy efficient hybrid on-chip Scratch Pad Memory with non-volatile memory , 2011, 2011 Design, Automation & Test in Europe.

[4]  Wei-Che Tseng,et al.  Minimizing write activities to non-volatile memory via scheduling and recomputation , 2010, 2010 IEEE 8th Symposium on Application Specific Processors (SASP).

[5]  Wei-Che Tseng,et al.  Write activity reduction on flash main memory via smart victim cache , 2010, GLSVLSI '10.

[6]  Trevor Mudge,et al.  MiBench: A free, commercially representative embedded benchmark suite , 2001 .

[7]  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).

[8]  Minming Li,et al.  Power-Aware Variable Partitioning for DSPs With Hybrid PRAM and DRAM Main Memory , 2013, IEEE Trans. Signal Process..

[9]  Sunggu Lee,et al.  Power management of hybrid DRAM/PRAM-based main memory , 2011, 2011 48th ACM/EDAC/IEEE Design Automation Conference (DAC).

[10]  Yuan Xie,et al.  PCRAMsim: System-level performance, energy, and area modeling for Phase-Change RAM , 2009, 2009 IEEE/ACM International Conference on Computer-Aided Design - Digest of Technical Papers.

[11]  Rami G. Melhem,et al.  Increasing PCM main memory lifetime , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).

[12]  Onur Mutlu,et al.  Architecting phase change memory as a scalable dram alternative , 2009, ISCA '09.

[13]  Jun Yang,et al.  A durable and energy efficient main memory using phase change memory technology , 2009, ISCA '09.

[14]  Minyi Guo,et al.  Loop scheduling and bank type assignment for heterogeneous multi-bank memory , 2009, J. Parallel Distributed Comput..

[15]  Wei-Che Tseng,et al.  Write Activity Minimization for Nonvolatile Main Memory Via Scheduling and Recomputation , 2011, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[16]  Vijayalakshmi Srinivasan,et al.  Scalable high performance main memory system using phase-change memory technology , 2009, ISCA '09.

[17]  Todd M. Austin,et al.  SimpleScalar: An Infrastructure for Computer System Modeling , 2002, Computer.

[18]  Tajana Simunic,et al.  PDRAM: A hybrid PRAM and DRAM main memory system , 2009, 2009 46th ACM/IEEE Design Automation Conference.

[19]  Wei-Che Tseng,et al.  Optimal scheduling to minimize non-volatile memory access time with hardware cache , 2010, 2010 18th IEEE/IFIP International Conference on VLSI and System-on-Chip.