TWiCe: Time Window Counter Based Row Refresh to Prevent Row-Hammering

Computer systems using DRAM are exposed to row-hammering attacks, which can flip data in a DRAM row without directly accessing a row but by frequently activating its adjacent ones. There have been a number of proposals to prevent row-hammering, but they either incur large area/performance overhead or provide probabilistic protection. In this paper, we propose a new row-hammering mitigation mechanism named Time Window C ounter based row refresh (TWiCe) which prevents row-hammering by using a small number of counters without performance overhead. We first make a key observation that the number of rows that can cause flipping their adjacent ones (aggressor candidates) is limited by the maximum values of row activation frequency and DRAM cell retention time. TWiCe exploits this limit to reduce the required number of counter entries by counting only actually activated DRAM rows and periodically invalidating the entries that are not activated frequently enough to be an aggressor. We calculate the maximum number of required counter entries per DRAM bank, with which row-hammering prevention is guaranteed. We further improve energy efficiency by adopting a pseudo-associative cache design to TWiCe. Our analysis shows that TWiCe incurs no performance overhead on normal DRAM operations and less than 0.7 percent area and energy overheads over contemporary DRAM devices.

[1]  Kyungbae Park,et al.  Experiments and root cause analysis for active-precharge hammering fault in DDR3 SDRAM under 3 × nm technology , 2016, Microelectron. Reliab..

[2]  Onur Mutlu,et al.  The RowHammer problem and other issues we may face as memory becomes denser , 2017, Design, Automation & Test in Europe Conference & Exhibition (DATE), 2017.

[3]  Sungjoo Yoo,et al.  Making DRAM stronger against row hammering , 2017, 2017 54th ACM/EDAC/IEEE Design Automation Conference (DAC).

[4]  Chris Fallin,et al.  Flipping bits in memory without accessing them: An experimental study of DRAM disturbance errors , 2014, 2014 ACM/IEEE 41st International Symposium on Computer Architecture (ISCA).

[5]  Dae-Hyun Kim,et al.  Architectural Support for Mitigating Row Hammering in DRAM Memories , 2015, IEEE Computer Architecture Letters.

[6]  Bruce Jacob,et al.  DRAM Refresh Mechanisms, Penalties, and Trade-Offs , 2016, IEEE Transactions on Computers.

[7]  Todd M. Austin,et al.  When good protections go bad: Exploiting anti-DoS measures to accelerate rowhammer attacks , 2017, 2017 IEEE International Symposium on Hardware Oriented Security and Trust (HOST).

[8]  Seung-Moon Yoo,et al.  L1 data cache decomposition for energy efficiency , 2001, ISLPED'01: Proceedings of the 2001 International Symposium on Low Power Electronics and Design (IEEE Cat. No.01TH8581).

[9]  Rami G. Melhem,et al.  Counter-Based Tree Structure for Row Hammering Mitigation in DRAM , 2017, IEEE Computer Architecture Letters.

[10]  Herbert Bos,et al.  Flip Feng Shui: Hammering a Needle in the Software Stack , 2016, USENIX Security Symposium.