skip to main content
research-article

Content-Aware Bit Shuffling for Maximizing PCM Endurance

Published: 23 May 2017 Publication History

Abstract

Recently, phase change memory (PCM) has been emerging as a strong replacement for DRAM owing to its many advantages such as nonvolatility, high capacity, low leakage power, and so on. However, PCM is still restricted for use as main memory because of its limited write endurance. There have been many methods introduced to resolve the problem by either reducing or spreading out bit flips. Although many previous studies have significantly contributed to reducing bit flips, they still have the drawback that lower bits are flipped more often than higher bits because the lower bits frequently change their bit values. Also, interblock wear-leveling schemes are commonly employed for spreading out bit flips by shifting input data, but they increase the number of bit flips per write. In this article, we propose a noble content-aware bit shuffling (CABS) technique that minimizes bit flips and evenly distributes them to maximize the lifetime of PCM at the bit level. We also introduce two additional optimizations, namely, addition of an inversion bit and use of an XOR key, to further reduce bit flips. Moreover, CABS is capable of recovering from stuck-at faults by restricting the change in values of stuck-at cells. Experimental results showed that CABS outperformed the existing state-of-the-art methods in the aspect of PCM lifetime extension with minimal overhead. CABS achieved up to 48.5% enhanced lifetime compared to the data comparison write (DCW) method only with a few metadata bits. Moreover, CABS obtained approximately 9.7% of improved write throughput than DCW because it significantly reduced bit flips and evenly distributed them. Also, CABS reduced about 5.4% of write dynamic energy compared to DCW. Finally, we have also confirmed that CABS is fully applicable to BCH codes as it was able to reduce the maximum number of bit flips in metadata cells by 32.1%.

References

[1]
A. Alsuwaiyan and K. Mohanram. 2015. MFNW: A flip-n-write architecture for multi-level cell non-volatile memories. In 2015 IEEE/ACM International Symposium on Nanoscale Architectures. 13--18.
[2]
S. Di Carlo, S. Galfano, M. Indaco, P. Prinetto, D. Bertozzi, P. Olivo, and C. Zambelli. 2014. FLARES: An aging aware algorithm to autonomously adapt the error correction capability in NAND flash memories. ACM Trans. Archit. Code Optim. 11, 3 (Oct. 2014), 26--50.
[3]
C.-H. Chen, P.-C. Hsiu, T.-W. Kuo, C.-L. Yang, and C.-Y. Michael Wang. 2012. Age-based PCM wear leveling with nearly zero search cost. In 2012 Proceedings of the 49th Annual Design Automation Conference. 453--458.
[4]
S. Chen, P. B. Gibbons, and S. Nath. 2011. Rethinking database algorithms for phase change memory. In 2011 5th Biennial Conference on Innovative Data Systems Research. 21--31.
[5]
S. Cho and H. Lee. 2009. Flip-N-Write: A simple deterministic technique to improve PRAM write performance, energy and endurance. In 2009 42nd Annual IEEE/ACM International Symposium on Microarchitecture. 347--357.
[6]
Y. Choi, I. Song, M. H. Park, H. Chung, S. Chang, B. Cho, J. Kim, Y. Oh, D. Kwon, J. Sunwoo, J. Shin, Y. Rho, C. Lee, M. G. Kang, J. Lee, Y. Kwon, S. Kim, J. Kim, Y. J. Lee, Q. Wang, S. Cha, S. Ahn, H. Horii, J. Lee, K. Kim, H. Joo, K. Lee, Y. T. Lee, J. Yoo, and G. Jeong. 2012. A 20nm 1.8V 8Gb PRAM with 40MB/s program bandwidth. In 2012 IEEE International Solid-State Circuits Conference. 46--48.
[7]
X. Dong and Y. Xie. 2011. AdaMS: Adaptive MLC/SLC phase-change memory design for file storage. In 2011 16th Asia and South Pacific Design Automation Conference. 31--36.
[8]
Y. Du, M. Zhou, B. R. Childers, D. Mossé, and R. Melhem. 2013. Bit mapping for balanced PCM cell programming. In 2013 40th Annual International Symposium on Computer Architecture. 428--439.
[9]
G. D. Forney. 1988a. Coset codes. I. introduction and geometrical classification. IEEE Trans. Inf. Theory 34, 5 (Sep. 1988), 1123--1151.
[10]
G. D. Forney. 1988b. Coset codes. II. Binary lattices and related codes. IEEE Trans. Inf. Theory 34, 5 (Sep. 1988), 1152--1187.
[11]
J. Han, J. Pei, and Y. Yin. 2000. Mining frequent patterns without candidate generation. SIGMOD Rec. 29, 2 (May 2000), 1--12.
[12]
M. Han and Y. Han. 2016. Bit flip reduction schemes to improve PCM lifetime: A survey. IEIE Trans. Smart Process. Comput. 5, 5 (Oct. 2016), 337--345.
[13]
I. Heng and C. H. Cooke. 1998. Error correcting codes associated with complex hadamard matrices. Appl. Math. Lett. 11, 4 (July 1998), 77--80.
[14]
A. N. Jacobvitz, R. Calderbank, and D. J. Sorin. 2013. Coset coding to extend the lifetime of memory. In 2013 IEEE 19th International Symposium on High Performance Computer Architecture. 222--233.
[15]
L. Jiang, Y. Zhang, and J. Yang. 2014. Mitigating write disturbance in super-dense phase change memories. In 2014 44th Annual IEEE/IFIP International Conference on Dependable Systems and Networks. 216--227.
[16]
H. A. Khouzani, C. Yang, and Jingtong Hu. 2015. Improving performance and lifetime of DRAM-PCM hybrid main memory through a proactive page allocation strategy. In 2015 20th Asia and South Pacific Design Automation Conference. 508--513.
[17]
D. H. Lawrie. 1975. Access and alignment of data in an array processor. IEEE Trans. Comput. 24, 12 (Dec. 1975), 1145--1155.
[18]
B. C. Lee, E. Ipek, O. Mutlu, and D. Burger. 2009. Architecting phase change memory as a scalable dram alternative. SIGARCH Comput. Archit. News 37, 3 (June 2009), 2--13.
[19]
S. Li and T. Zhang. 2009. Tri-level-cell phase change memory: Toward an efficient and reliable memory system. In 2009 19th ACM Great Lakes Symposium on VLSI. 499--504.
[20]
Y. Lin, P.-C. Huang, D. Liu, X. Zhu, and L. Liang. 2016. Making in-memory frequent pattern mining durable and energy efficient. In 2016 45th International Conference on Parallel Processing.
[21]
D. Liu, T. Wang, Y. Wang, Z. Shao, Q. Zhuge, and E. H. M. Sha. 2014. Application-specific wear leveling for extending lifetime of phase change memory in embedded systems. IEEE Trans. Comput-Aid. Design Integr. Circuits Syst. 33, 10 (Oct. 2014), 1450--1462.
[22]
D. Liu, K. Zhong, T. Wang, Y. Wang, Z. Shao, E. Sha, and J. Xue. 2016. Durable address translation in PCM-based flash storage systems. IEEE Trans. Parallel Distrib. Syst PP, 99 (2016), 1--1.
[23]
R. Maddah, S. M. Seyedzadeh, and R. Melhem. 2015. CAFO: Cost aware flip optimization for asymmetric memories. In 2015 IEEE 21st International Symposium on High Performance Computer Architecture. 320--330.
[24]
P. Mangalagiri, K. Sarpatwari, A. Yanamandra, V. Narayanan, Y. Xie, M. J. Irwin, and O. A. Karim. 2008. A low-power phase change memory based hybrid cache architecture. In 2008 18th ACM Great Lakes Symposium on VLSI. 395--398.
[25]
J. Massey. 1965. Step-by-step decoding of the bose-chaudhuri-hocquenghem codes. IEEE Trans. Inf. Theory 11, 4 (Oct. 1965), 580--585.
[26]
R. Micheloni, A. Marelli, and R. Ravasio. 2010. Error Correction Codes for Non-Volatile Memories. Springer Publishing Company.
[27]
NanGate 2008. Nangate 45nm Open Cell Library. NanGate. Retrieved from http://www.nangate.com/?pageid=2325.
[28]
A. Phansalkar, A. Joshi, and L. K. John. 2007. Analysis of redundancy and application balance in the SPEC CPU2006 benchmark suite. In 2007 34th Annual International Symposium on Computer Architecture. 412--423.
[29]
M. K. Qureshi, J. Karidis, M. Franceschini, V. Srinivasan, L. Lastras, and B. Abali. 2009. Enhancing lifetime and security of PCM-based main memory with start-gap wear leveling. In 2009 42nd Annual IEEE/ACM International Symposium on Microarchitecture. 14--23.
[30]
P. Rosenfeld, E. Cooper-Balis, and B. Jacob. 2011. DRAMSim2: A cycle accurate memory system simulator. IEEE Comput. Arch. Lett. 10, 1 (Jan. 2011), 16--19.
[31]
S. Schechter, G. H. Loh, K. Straus, and D. Burger. 2010. Use ECP, not ECC, for hard failures in resistive memories. In 2010 37th Annual International Symposium on Computer Architecture. 141--152.
[32]
N. H. Seong, D. H. Woo, V. Srinivasan, J. A. Rivers, and H. H. S. Lee. 2010. SAFER: Stuck-at-fault error recovery for memories. In 2010 43rd Annual IEEE/ACM International Symposium on Microarchitecture. 115--124.
[33]
Synopsys 2010. Design Compiler User Guide. Retrieved from http://acsweb.ucsd.edu/coz004/DC_user_guide.pdf.
[34]
Synopsys 2016. PrimeTime Golden Timing Signoff Solution and Environment. Retrieved from https://www.synopsys.com/Tools/Implementation/SignOff/Documents/primetime_ds.pdf.
[35]
J. Wang, X. Dong, G. Sun, D. Niu, and Y. Xie. 2012. Energy-efficient multi-level cell phase-change memory system with data encoding. In 2011 29th IEEE Conference on Computer Design. 175--182.
[36]
R. Wang, L. Jiang, Y. Zhang, and J. Yang. 2015. SD-PCM: Constructing reliable super dense phase change memory under write disturbance. In 2015 20th International Conference on Architectural Support for Programming Languages and Operating Systems. 19--31.
[37]
W. Xu, J. Liu, and T. Zhang. 2009. Data manipulation techniques to reduce phase change memory write energy. In 2009 Proceedings of the 2009 ACM/IEEE International Symposium on Low Power Electronics and Design. 237--242.
[38]
B.-D. Yang, J.-E. Lee, J.-S. Kim, J. Cho, S.-Y. Lee, and B. gon Yu. 2007. A low power phase-change random access memory using a data-comparison write scheme. In 2007 IEEE International Symposium on Circuits and Systems. 3014--3017.
[39]
D. H. Yoon, J. Chang, R. S. Schreiber, and N. P. Jouppi. 2013. Practical nonvolatile multilevel-cell phase change memory. In 2013 International Conference for High Performance Computing, Networking, Storage and Analysis. 1--12.
[40]
D. H. Yoon, N. Muralimanohar, J. Chang, P. Ranganathan, N. P. Jouppi, and M. Erez. 2011. FREE-p: Protecting non-volatile memory against both hard and soft errors. In 2011 IEEE 17th International Symposium on High Performance Computer Architecture. 466--477.
[41]
P. Zhou, B. Zhao, J. Yang, and Y. Zhang. 2009. A durable and energy efficient main memory using phase change memory technology. SIGARCH Comput. Archit. News 37, 3 (June 2009), 14--23.

Cited By

View all
  • (2023)Energy Efficiency Enhancement of SCM-Based Systems: Write-Friendly CodingIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2022.320423142:5(1425-1437)Online publication date: 1-May-2023
  • (2022)BiSuT: A NoC-Based Bit-Shuffling Technique for Multiple Permanent Faults MitigationIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2021.310140641:7(2276-2289)Online publication date: Jul-2022
  • (2022)Challenges in Design, Data Placement, Migration and Power-Performance Trade-offs in DRAM-NVM-based Hybrid Memory SystemsIETE Technical Review10.1080/02564602.2022.212794540:4(498-520)Online publication date: 13-Oct-2022
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Transactions on Design Automation of Electronic Systems
ACM Transactions on Design Automation of Electronic Systems  Volume 22, Issue 3
July 2017
440 pages
ISSN:1084-4309
EISSN:1557-7309
DOI:10.1145/3062395
  • Editor:
  • Naehyuck Chang
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: 23 May 2017
Accepted: 01 November 2016
Revised: 01 October 2016
Received: 01 June 2016
Published in TODAES Volume 22, Issue 3

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Bit shuffling
  2. PCM
  3. bit flips
  4. endurance
  5. lifetime
  6. stuck-at fault

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

  • SK hynix Inc

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)6
  • Downloads (Last 6 weeks)0
Reflects downloads up to 24 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2023)Energy Efficiency Enhancement of SCM-Based Systems: Write-Friendly CodingIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2022.320423142:5(1425-1437)Online publication date: 1-May-2023
  • (2022)BiSuT: A NoC-Based Bit-Shuffling Technique for Multiple Permanent Faults MitigationIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2021.310140641:7(2276-2289)Online publication date: Jul-2022
  • (2022)Challenges in Design, Data Placement, Migration and Power-Performance Trade-offs in DRAM-NVM-based Hybrid Memory SystemsIETE Technical Review10.1080/02564602.2022.212794540:4(498-520)Online publication date: 13-Oct-2022
  • (2022)Gray counters for non-volatile memoriesMemories - Materials, Devices, Circuits and Systems10.1016/j.memori.2022.1000142(100014)Online publication date: Oct-2022
  • (2021)LEnS: Lifetime Enhancement Coding Scheme for Non-volatile Memory Processors2021 IEEE International Midwest Symposium on Circuits and Systems (MWSCAS)10.1109/MWSCAS47672.2021.9531891(365-368)Online publication date: 9-Aug-2021
  • (2020)Multiple Permanent Faults Mitigation Through Bit-Shuffling for Network-an-Chip Architecture2020 IEEE 38th International Conference on Computer Design (ICCD)10.1109/ICCD50377.2020.00046(205-212)Online publication date: Oct-2020
  • (2020)Balanced Gray Codes for Reduction of Bit-Flips in Phase Change MemoriesModelling, Analysis, and Simulation of Computer and Telecommunication Systems10.1007/978-3-030-68110-4_11(159-171)Online publication date: 17-Nov-2020
  • (2019)Optimizing systems for byte-addressable NVM by reducing bit flippingProceedings of the 17th USENIX Conference on File and Storage Technologies10.5555/3323298.3323301(17-30)Online publication date: 25-Feb-2019
  • (2019)Coding for Write Latency Reduction in a Multi-Level Cell (MLC) Phase Change Memory (PCM)IEEE Transactions on Computers10.1109/TC.2018.286892868:2(301-306)Online publication date: 1-Feb-2019
  • (2018)On Coding for Endurance Enhancement and Error Control of Phase Change Memories With Write Latency ReductionIEEE Transactions on Very Large Scale Integration (VLSI) Systems10.1109/TVLSI.2017.276636226:2(230-238)Online publication date: 1-Feb-2018
  • Show More Cited By

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