Improving Performance of TLC RRAM with Compression-Ratio-Aware Data Encoding

Resistive Random Access Memory (RRAM) technology is proposed as a promising replacement candidate for DRAM-based main memory due to its good scalability, low standby power, and non-volatility. The structure of Triple-Level Cell (TLC) can offer higher data density over Single-Level Cell (SLC). However, TLC RRAM suffers from high write energy and latency. Data compression techniques can reduce the size of the data to store. In contrast, data encoding methods such as Incomplete Data Mapping (IDM) can 'expand' the size for latency and energy reduction. We observe that the compression ratio of each cacheline varies, and therefore the saved space of each compressed cacheline is different. On the other hand, we find that different IDMs have different tradeoffs in capacity and write latency/energy. To fully exploit the space saved by compression for reducing the write latency/energy, and improving the performance of TLC RRAM-based main memory system, Compression-Ratio-Aware Data Encoding (CRADE) is proposed. The key idea of CRADE is to dynamically select the best-performing IDM according to the compression ratio of each cacheline. The cacheline is compressed first, and then the compressed cacheline is encoded by IDM. For each compressed cacheline, the IDM which uses the fewest states to encode is applied on the condition that the encoded data size will not exceed the cacheline size. Experimental results show that CRADE can reduce the write energy by 15%, decrease the write latency by 19%, reduce the read latency by 4%, and improve the IPC performance by 2% compared with the state-of-the-art scheme.

[1]  Cong Xu,et al.  Low power multi-level-cell resistive memory design with incomplete data mapping , 2013, 2013 IEEE 31st International Conference on Computer Design (ICCD).

[2]  Tao Zhang,et al.  Overcoming the challenges of crossbar resistive memory architectures , 2015, 2015 IEEE 21st International Symposium on High Performance Computer Architecture (HPCA).

[3]  Jongman Kim,et al.  A Compression-Based Hybrid MLC/SLC Management Technique for Phase-Change Memory Systems , 2012, 2012 IEEE Computer Society Annual Symposium on VLSI.

[4]  Yuan Xie,et al.  Energy-efficient multi-level cell phase-change memory system with data encoding , 2011, 2011 IEEE 29th International Conference on Computer Design (ICCD).

[5]  Onur Mutlu,et al.  Base-delta-immediate compression: Practical data compression for on-chip caches , 2012, 2012 21st International Conference on Parallel Architectures and Compilation Techniques (PACT).

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

[7]  Amin Jadidi,et al.  A morphable phase change memory architecture considering frequent zero values , 2011, 2011 IEEE 29th International Conference on Computer Design (ICCD).

[8]  Norman P. Jouppi,et al.  Understanding the trade-offs in multi-level cell ReRAM memory design , 2013, 2013 50th ACM/EDAC/IEEE Design Automation Conference (DAC).

[9]  Yuan Xie,et al.  AdaMS: Adaptive MLC/SLC phase-change memory design for file storage , 2011, 16th Asia and South Pacific Design Automation Conference (ASP-DAC 2011).

[10]  Tao Zhang,et al.  NVMain 2.0: A User-Friendly Memory Simulator to Model (Non-)Volatile Memory Systems , 2015, IEEE Computer Architecture Letters.

[11]  Kartik Mohanram,et al.  CompEx: Compression-expansion coding for energy, latency, and lifetime improvements in MLC/TLC NVM , 2016, 2016 IEEE International Symposium on High Performance Computer Architecture (HPCA).

[12]  Moinuddin K. Qureshi,et al.  Morphable memory system: a robust architecture for exploiting multi-level phase change memories , 2010, ISCA.

[13]  Jingtong Hu,et al.  State Asymmetry Driven State Remapping in Phase Change Memory , 2017, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[14]  Heng-Yuan Lee,et al.  A 4Mb embedded SLC resistive-RAM macro with 7.2ns read-write random-access time and 160ns MLC-access capability , 2011, 2011 IEEE International Solid-State Circuits Conference.

[15]  Jun Yang,et al.  Improving write operations in MLC phase change memory , 2012, IEEE International Symposium on High-Performance Comp Architecture.

[16]  Jun Yang,et al.  ER: elastic RESET for low power and long endurance MLC based phase change memory , 2012, ISLPED '12.

[17]  Xin Li,et al.  Energy Optimization for Multi-level Cell STT-MRAM Using State Remapping , 2016, 2016 IEEE 18th International Conference on High Performance Computing and Communications; IEEE 14th International Conference on Smart City; IEEE 2nd International Conference on Data Science and Systems (HPCC/SmartCity/DSS).

[18]  Cong Xu,et al.  Building energy-efficient multi-level cell STT-MRAM based cache through dynamic data-resistance encoding , 2014, Fifteenth International Symposium on Quality Electronic Design.

[19]  Hsien-Hsin S. Lee,et al.  Tri-level-cell phase change memory: toward an efficient and reliable memory system , 2013, ISCA.

[20]  Somayeh Sardashti,et al.  The gem5 simulator , 2011, CARN.

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

[22]  Jun Yang,et al.  TriState-SET: Proactive SET for improved performance of MLC phase change memories , 2015, 2015 33rd IEEE International Conference on Computer Design (ICCD).

[23]  Yiran Chen,et al.  Processor caches with multi-level spin-transfer torque ram cells , 2011, ISLPED '11.

[24]  David A. Wood,et al.  Frequent Pattern Compression: A Significance-Based Compression Scheme for L2 Caches , 2004 .

[25]  John L. Henning SPEC CPU2006 benchmark descriptions , 2006, CARN.