{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,11]],"date-time":"2025-11-11T22:18:23Z","timestamp":1762899503209,"version":"3.41.0"},"reference-count":66,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2017,12,13]],"date-time":"2017-12-13T00:00:00Z","timestamp":1513123200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Archit. Code Optim."],"published-print":{"date-parts":[[2017,12,31]]},"abstract":"<jats:p>Emerging nonvolatile memories (NVMs) suffer from low write endurance, resulting in early cell failures (hard errors), which reduce memory lifetime. It was recognized early on that conventional error-correcting codes (ECCs), which are designed for soft errors, are a poor choice for addressing hard errors in NVMs. This led to the evolution of hard error correction schemes like dynamically replicated memory\u00a0(DRM), error-correcting pointers (ECPs), SAFER, FREE-p, PAYG, and Zombie memory to improve NVM lifetime. Whereas these approaches made significant inroads in addressing hard errors and low memory lifetime in NVMs, overcoming the challenges of underutilization of error-correcting resources and\/or implementation overhead (e.g., codec latency, hardware support) remain areas of active research and development.<\/jats:p>\n          <jats:p>This article proposes error-correcting strings (ECSs) as a high-utilization, low-latency solution for hard error correction in single-\/multi-\/triple-level cell (SLC\/MLC\/TLC) NVMs. At its core, ECS adopts a base-offset approach to store pointers to the failed memory cells; in this work, base is the address of the first failed cell in a memory block and offsets are the distances between successive failed cells in that memory block. Unlike ECP, which uses fixed-length pointers, ECS uses variable-length offsets to point to the failed cells, thereby realizing more pointers to tolerate more hard errors per memory block. Further, this article proposes eXtended-ECS\u00a0(XECS), a page-level error correction architecture, which employs dynamic on-demand ECS allocation and opportunistic pattern-based data compression to improve NVM lifetime by 2\u00d7 over ECP-6 for comparable overhead and negligible impact to system performance. Finally, this article demonstrates that ECS is a drop-in replacement for ECP to extend the lifetime of state-of-the-art ECP-based techniques like PAYG and Zombie memory; ECS is also compatible with MLC\/TLC NVMs, where it complements drift-induced soft error reduction techniques like ECC and incomplete data mapping to simultaneously extend NVM lifetime.<\/jats:p>","DOI":"10.1145\/3151083","type":"journal-article","created":{"date-parts":[[2017,12,13]],"date-time":"2017-12-13T14:50:37Z","timestamp":1513176637000},"page":"1-29","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":10,"title":["ECS"],"prefix":"10.1145","volume":"14","author":[{"given":"Shivam","family":"Swami","sequence":"first","affiliation":[{"name":"University of Pittsburgh, PA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Poovaiah M.","family":"Palangappa","sequence":"additional","affiliation":[{"name":"University of Pittsburgh, PA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Kartik","family":"Mohanram","sequence":"additional","affiliation":[{"name":"University of Pittsburgh, PA"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2017,12,13]]},"reference":[{"unstructured":"2011. International Technology Roadmap for Semiconductors.  2011. International Technology Roadmap for Semiconductors.","key":"e_1_2_1_1_1"},{"doi-asserted-by":"publisher","key":"e_1_2_1_2_1","DOI":"10.1145\/2000064.2000118"},{"key":"e_1_2_1_3_1","volume-title":"Wood","author":"Alameldeen Alaa R.","year":"2004","unstructured":"Alaa R. Alameldeen and David A . Wood . 2004 . Frequent Pattern Compression: A Significance-Based Compression Scheme for L2 Caches. Department of Computer Science, University of Wisconsin-Madison , Technical Report. Alaa R. Alameldeen and David A. Wood. 2004. Frequent Pattern Compression: A Significance-Based Compression Scheme for L2 Caches. Department of Computer Science, University of Wisconsin-Madison, Technical Report."},{"doi-asserted-by":"publisher","key":"e_1_2_1_4_1","DOI":"10.1109\/HPCA.2012.6168941"},{"doi-asserted-by":"publisher","key":"e_1_2_1_5_1","DOI":"10.1145\/2485922.2485961"},{"doi-asserted-by":"publisher","key":"e_1_2_1_6_1","DOI":"10.1116\/1.3301579"},{"doi-asserted-by":"publisher","key":"e_1_2_1_7_1","DOI":"10.1109\/JPROC.2017.2713127"},{"volume-title":"Automation Test in Europe Conference Exhibition (DATE\u201913)","author":"Cai Y.","unstructured":"Y. Cai , E. F. Haratsch , O. Mutlu , and K. Mai . 2013. Threshold voltage distribution in MLC NAND flash memory: Characterization, analysis, and modeling. In 2013 Design , Automation Test in Europe Conference Exhibition (DATE\u201913) . Y. Cai, E. F. Haratsch, O. Mutlu, and K. Mai. 2013. Threshold voltage distribution in MLC NAND flash memory: Characterization, analysis, and modeling. In 2013 Design, Automation Test in Europe Conference Exhibition (DATE\u201913).","key":"e_1_2_1_8_1"},{"doi-asserted-by":"publisher","key":"e_1_2_1_9_1","DOI":"10.1109\/DSN.2015.49"},{"doi-asserted-by":"publisher","key":"e_1_2_1_10_1","DOI":"10.1109\/HPCA.2015.7056062"},{"doi-asserted-by":"publisher","key":"e_1_2_1_11_1","DOI":"10.1109\/TVLSI.2015.2511147"},{"doi-asserted-by":"publisher","key":"e_1_2_1_12_1","DOI":"10.1145\/1669112.1669157"},{"volume-title":"IEEE International Solid-State Circuits Conference Digest of Technical Papers (ISSCC\u201912)","author":"Choi Youngdon","unstructured":"Youngdon Choi , Ickhyun Song , Mu-Hui Park , Hoeju Chung , Sanghoan Chang , Beakhyoung Cho , Jinyoung Kim , Younghoon Oh , Duckmin Kwon , Jung 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 IEEE International Solid-State Circuits Conference Digest of Technical Papers (ISSCC\u201912) . Youngdon Choi, Ickhyun Song, Mu-Hui Park, Hoeju Chung, Sanghoan Chang, Beakhyoung Cho, Jinyoung Kim, Younghoon Oh, Duckmin Kwon, Jung 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 IEEE International Solid-State Circuits Conference Digest of Technical Papers (ISSCC\u201912).","key":"e_1_2_1_13_1"},{"doi-asserted-by":"publisher","key":"e_1_2_1_14_1","DOI":"10.1145\/2540708.2540745"},{"doi-asserted-by":"publisher","key":"e_1_2_1_15_1","DOI":"10.5555\/1870926.1871147"},{"doi-asserted-by":"publisher","key":"e_1_2_1_16_1","DOI":"10.1016\/j.diin.2017.01.011"},{"doi-asserted-by":"publisher","key":"e_1_2_1_17_1","DOI":"10.1145\/1186736.1186737"},{"doi-asserted-by":"publisher","key":"e_1_2_1_18_1","DOI":"10.1145\/1736020.1736023"},{"doi-asserted-by":"publisher","key":"e_1_2_1_19_1","DOI":"10.1109\/HPCA.2013.6522321"},{"doi-asserted-by":"publisher","key":"e_1_2_1_20_1","DOI":"10.1145\/2333660.2333672"},{"doi-asserted-by":"publisher","key":"e_1_2_1_21_1","DOI":"10.1109\/TNANO.2013.2253329"},{"doi-asserted-by":"publisher","key":"e_1_2_1_22_1","DOI":"10.1145\/2807591.2807659"},{"doi-asserted-by":"publisher","key":"e_1_2_1_23_1","DOI":"10.1145\/1555754.1555758"},{"key":"e_1_2_1_24_1","volume-title":"Costello","author":"Lin Shu","year":"2004","unstructured":"Shu Lin and Daniel J . Costello . 2004 . Error Control Coding. Pearson Higher Education . Shu Lin and Daniel J. Costello. 2004. Error Control Coding. Pearson Higher Education."},{"key":"e_1_2_1_25_1","volume-title":"Proc. Intl. Asia and South Pacific Design Automation Conference.","author":"Liu Duo","year":"2013","unstructured":"Duo Liu , Tianzheng Wang , Yi Wang , Zili Shao , Qingfeng Zhuge , and Edwin Sha . 2013 . Curling-PCM: Application-specific wear leveling for phase change memory based embedded systems . In Proc. Intl. Asia and South Pacific Design Automation Conference. Duo Liu, Tianzheng Wang, Yi Wang, Zili Shao, Qingfeng Zhuge, and Edwin Sha. 2013. Curling-PCM: Application-specific wear leveling for phase change memory based embedded systems. In Proc. Intl. Asia and South Pacific Design Automation Conference."},{"doi-asserted-by":"publisher","key":"e_1_2_1_26_1","DOI":"10.1145\/2593069.2593130"},{"doi-asserted-by":"publisher","key":"e_1_2_1_27_1","DOI":"10.1109\/JSAC.2016.2603608"},{"doi-asserted-by":"publisher","key":"e_1_2_1_28_1","DOI":"10.1109\/PRDC.2013.42"},{"doi-asserted-by":"publisher","key":"e_1_2_1_29_1","DOI":"10.1109\/TC.2015.2479593"},{"doi-asserted-by":"publisher","key":"e_1_2_1_30_1","DOI":"10.5555\/2354410.2355178"},{"doi-asserted-by":"publisher","key":"e_1_2_1_31_1","DOI":"10.1145\/2796314.2745848"},{"doi-asserted-by":"publisher","key":"e_1_2_1_32_1","DOI":"10.1109\/DSN.2015.57"},{"key":"e_1_2_1_33_1","volume-title":"A survey of soft-error mitigation techniques for non-volatile memories. Computers","author":"Mittal Sparsh","year":"2017","unstructured":"Sparsh Mittal . 2017. A survey of soft-error mitigation techniques for non-volatile memories. Computers ( 2017 ). Sparsh Mittal. 2017. A survey of soft-error mitigation techniques for non-volatile memories. Computers (2017)."},{"doi-asserted-by":"publisher","key":"e_1_2_1_34_1","DOI":"10.1109\/ICCD.2013.6657035"},{"doi-asserted-by":"publisher","key":"e_1_2_1_35_1","DOI":"10.1109\/TC.2015.2506555"},{"doi-asserted-by":"publisher","key":"e_1_2_1_36_1","DOI":"10.1145\/2742060.2742110"},{"volume-title":"Proc. Intl. Symposium on High-Performance Computer Architecture.","author":"Poovaiah","unstructured":"Poovaiah M. Palangappa and Kartik Mohanram. 2016. CompEx: Compression-expansion coding for energy, latency, and lifetime improvements in MLC\/TLC NVM . In Proc. Intl. Symposium on High-Performance Computer Architecture. Poovaiah M. Palangappa and Kartik Mohanram. 2016. CompEx: Compression-expansion coding for energy, latency, and lifetime improvements in MLC\/TLC NVM. In Proc. Intl. Symposium on High-Performance Computer Architecture.","key":"e_1_2_1_37_1"},{"doi-asserted-by":"publisher","key":"e_1_2_1_38_1","DOI":"10.1145\/2749469.2750377"},{"doi-asserted-by":"publisher","key":"e_1_2_1_39_1","DOI":"10.1145\/2024724.2024954"},{"volume-title":"Proc. Intl. Symposium on High-Performance Computer Architecture.","author":"Pekhimenko G.","unstructured":"G. Pekhimenko , E. Bolotin , N. Vijaykumar , O. Mutlu , T. C. Mowry , and S. W. Keckler . 2016. A case for toggle-aware compression for GPU systems . In Proc. Intl. Symposium on High-Performance Computer Architecture. G. Pekhimenko, E. Bolotin, N. Vijaykumar, O. Mutlu, T. C. Mowry, and S. W. Keckler. 2016. A case for toggle-aware compression for GPU systems. In Proc. Intl. Symposium on High-Performance Computer Architecture.","key":"e_1_2_1_40_1"},{"doi-asserted-by":"publisher","key":"e_1_2_1_41_1","DOI":"10.1145\/2370816.2370870"},{"doi-asserted-by":"publisher","key":"e_1_2_1_42_1","DOI":"10.1145\/2155620.2155658"},{"doi-asserted-by":"publisher","key":"e_1_2_1_43_1","DOI":"10.1145\/1669112.1669117"},{"doi-asserted-by":"publisher","key":"e_1_2_1_44_1","DOI":"10.1145\/1555754.1555760"},{"doi-asserted-by":"publisher","key":"e_1_2_1_45_1","DOI":"10.1145\/1815961.1815980"},{"doi-asserted-by":"publisher","key":"e_1_2_1_46_1","DOI":"10.1109\/TDSC.2009.4"},{"key":"e_1_2_1_47_1","volume-title":"USENIX Conference on File and Storage Technologies.","author":"Schroeder Bianca","year":"2016","unstructured":"Bianca Schroeder , Raghav Lagisetty , and Arif Merchant . 2016 . Flash reliability in production: The expected and the unexpected . In USENIX Conference on File and Storage Technologies. Bianca Schroeder, Raghav Lagisetty, and Arif Merchant. 2016. Flash reliability in production: The expected and the unexpected. In USENIX Conference on File and Storage Technologies."},{"doi-asserted-by":"publisher","key":"e_1_2_1_48_1","DOI":"10.1145\/2492101.1555372"},{"doi-asserted-by":"publisher","key":"e_1_2_1_49_1","DOI":"10.1145\/1815961.1816014"},{"doi-asserted-by":"publisher","key":"e_1_2_1_50_1","DOI":"10.1109\/MICRO.2010.46"},{"doi-asserted-by":"publisher","key":"e_1_2_1_51_1","DOI":"10.1145\/2485922.2485960"},{"doi-asserted-by":"publisher","key":"e_1_2_1_52_1","DOI":"10.1145\/2694344.2694348"},{"doi-asserted-by":"publisher","key":"e_1_2_1_53_1","DOI":"10.1109\/VLSID.2016.33"},{"key":"e_1_2_1_54_1","volume-title":"Reliable non-volatile memories: Techniques and measures","author":"Swami Shivam","year":"2017","unstructured":"Shivam Swami and Kartik Mohanram . 2017. Reliable non-volatile memories: Techniques and measures . IEEE Design 8 Test ( 2017 ). Shivam Swami and Kartik Mohanram. 2017. Reliable non-volatile memories: Techniques and measures. IEEE Design 8 Test (2017)."},{"doi-asserted-by":"publisher","key":"e_1_2_1_55_1","DOI":"10.1145\/2463209.2488867"},{"doi-asserted-by":"publisher","key":"e_1_2_1_56_1","DOI":"10.1145\/2039370.2039420"},{"doi-asserted-by":"publisher","key":"e_1_2_1_57_1","DOI":"10.1109\/ISCAS.2007.377981"},{"doi-asserted-by":"publisher","key":"e_1_2_1_58_1","DOI":"10.1145\/2503210.2503221"},{"doi-asserted-by":"publisher","key":"e_1_2_1_59_1","DOI":"10.5555\/2014698.2014881"},{"doi-asserted-by":"publisher","key":"e_1_2_1_60_1","DOI":"10.1145\/2694344.2694387"},{"doi-asserted-by":"publisher","key":"e_1_2_1_61_1","DOI":"10.1109\/HPCA.2013.6522326"},{"doi-asserted-by":"publisher","key":"e_1_2_1_62_1","DOI":"10.1109\/ISCA.2016.52"},{"volume-title":"Proc. Intl. Symposium on High-Performance Computer Architecture.","author":"Zhang Mingzhe","unstructured":"Mingzhe Zhang , Lunkai Zhang , Lei Jiang , Zhiyong Liu , and Frederic T. Chong . 2017. Balancing performance and lifetime of MLC PCM by using a region retention monitor . In Proc. Intl. Symposium on High-Performance Computer Architecture. Mingzhe Zhang, Lunkai Zhang, Lei Jiang, Zhiyong Liu, and Frederic T. Chong. 2017. Balancing performance and lifetime of MLC PCM by using a region retention monitor. In Proc. Intl. Symposium on High-Performance Computer Architecture.","key":"e_1_2_1_63_1"},{"doi-asserted-by":"publisher","key":"e_1_2_1_64_1","DOI":"10.1145\/1669112.1669116"},{"doi-asserted-by":"publisher","key":"e_1_2_1_65_1","DOI":"10.1109\/PACT.2009.30"},{"doi-asserted-by":"publisher","key":"e_1_2_1_66_1","DOI":"10.1145\/1555754.1555759"}],"container-title":["ACM Transactions on Architecture and Code Optimization"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3151083","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3151083","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T02:13:39Z","timestamp":1750212819000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3151083"}},"subtitle":["Error-Correcting Strings for Lifetime Improvements in Nonvolatile Memories"],"short-title":[],"issued":{"date-parts":[[2017,12,13]]},"references-count":66,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2017,12,31]]}},"alternative-id":["10.1145\/3151083"],"URL":"https:\/\/doi.org\/10.1145\/3151083","relation":{},"ISSN":["1544-3566","1544-3973"],"issn-type":[{"type":"print","value":"1544-3566"},{"type":"electronic","value":"1544-3973"}],"subject":[],"published":{"date-parts":[[2017,12,13]]},"assertion":[{"value":"2017-03-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2017-09-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2017-12-13","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}