TY - JOUR
T1 - A space allocation and reuse strategy for PCM-based embedded systems
AU - Long, Linbo
AU - Liu, Duo
AU - Hu, Jingtong
AU - Gu, Shouzhen
AU - Zhuge, Qingfeng
AU - Sha, Edwin H.M.
N1 - Publisher Copyright:
© 2014 Elsevier B.V.All rights reserved.
PY - 2014
Y1 - 2014
N2 - Phase change memory (PCM) has emerged as a promising candidate to replace DRAM in embedded systems, due to its appealing properties, such as zero leakage power, scalability, shock-resistivity and high density. However, it can only sustain a limited number of write operations. On the other hand, as a program in embedded systems usually distributes write traffic in an extremely unbalanced way, which could further decrease PCM lifetime. In this paper, we propose a space-based wear leveling technique in software compiler level by exploiting the program-specific features. The basic idea is to extend frequently written variables into specific-sized arrays, and evenly distribute writes on allocated array. In such way, we can effectively distribute the write traffic of the program across the whole PCM chip. A space allocation and reuse (SAR) strategy and a polynomial-time algorithm are proposed to produce optimal and near-optimal space allocation, respectively, for achieving a balanced write distribution. The experimental results show our technique can greatly extend the lifetime of PCM-based embedded systems compared with the previous work, and achieve approximately 94% the theoretical maximum of lifetime. Compared with a baseline scheme without wear-leveling mechanism, our technique introduces no more than 0.8% extra writes and 0.7% running overhead.
AB - Phase change memory (PCM) has emerged as a promising candidate to replace DRAM in embedded systems, due to its appealing properties, such as zero leakage power, scalability, shock-resistivity and high density. However, it can only sustain a limited number of write operations. On the other hand, as a program in embedded systems usually distributes write traffic in an extremely unbalanced way, which could further decrease PCM lifetime. In this paper, we propose a space-based wear leveling technique in software compiler level by exploiting the program-specific features. The basic idea is to extend frequently written variables into specific-sized arrays, and evenly distribute writes on allocated array. In such way, we can effectively distribute the write traffic of the program across the whole PCM chip. A space allocation and reuse (SAR) strategy and a polynomial-time algorithm are proposed to produce optimal and near-optimal space allocation, respectively, for achieving a balanced write distribution. The experimental results show our technique can greatly extend the lifetime of PCM-based embedded systems compared with the previous work, and achieve approximately 94% the theoretical maximum of lifetime. Compared with a baseline scheme without wear-leveling mechanism, our technique introduces no more than 0.8% extra writes and 0.7% running overhead.
KW - Embedded systems
KW - Endurance
KW - Non-volatile memory
KW - Phase change memory
KW - Wear-leveling
UR - https://www.scopus.com/pages/publications/85027934078
U2 - 10.1016/j.sysarc.2014.07.002
DO - 10.1016/j.sysarc.2014.07.002
M3 - 文章
AN - SCOPUS:85027934078
SN - 1383-7621
VL - 60
SP - 655
EP - 667
JO - Journal of Systems Architecture
JF - Journal of Systems Architecture
IS - 8
ER -