mitigating wordline crosstalk using adaptive trees of
play

Mitigating Wordline Crosstalk using Adaptive Trees of Counters - PowerPoint PPT Presentation

Mitigating Wordline Crosstalk using Adaptive Trees of Counters Mohammad Seyedzadeh , Alex Jones, Rami Melhem University of Pi8sburgh Wordline Crosstalk in DRAM DRAM Scaling High Memory Capacity Voltage Fluctua<ons DRAM Cells


  1. Mitigating Wordline Crosstalk using Adaptive Trees of Counters Mohammad Seyedzadeh , Alex Jones, Rami Melhem University of Pi8sburgh

  2. Wordline Crosstalk in DRAM DRAM Scaling ✔ High Memory Capacity ✖ Voltage Fluctua<ons DRAM Cells Deep-scaled DRAM Cells 2 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  3. Wordline Crosstalk in DRAM Row of Cells Row of Cells Vic@m Row Wordline Aggressor Row Vic@m Row DRAM Bank DRAM Cells Deep-scaled DRAM Cells 2 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  4. Wordline Crosstalk in DRAM Row of Cells Row of Cells Vic@m Row Wordline Aggressor Row Vic@m Row DRAM Bank DRAM Cells Deep-scaled DRAM Cells The malicious exploit of this crosstalk by repeatedly accessing a row to induce this effect is known as • row hammering. 2 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  5. Outline • Wordline Crosstalk in DRAM • Probabilistic and Deterministic Solutions • CAT: Counter based Adaptive Tree • Evaluation • Conclusion 3 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  6. Wordline Crosstalk in DRAM: Related Work Probabilis<c Determinis<c Approach Approach Deep-scaled DRAM Cells Probabilistic Row Activation (PRA) Static Counter Assignment (SCA) 4 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  7. Probabilistic Row Activation (PRA) Probabilis<c Approach RNG(p) Deep-scaled DRAM Cells • Using a Random Number Generator to refresh the vic@m rows with the probability of ‘p’. 5 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  8. Probabilistic Row Activation (PRA) Refresh Threshold (T) 32k 24k 16k 8k 1.E+00 PRA Failure Probability PRA Unsurvivability 1.E-04 for 5 Years 1.E-08 for 5 years 1.E-12 1.E-16 1.E-20 1.E-24 1.E-28 p=0.001 p=0.002 p=0.003 p=0.004 p=0.005 p=0.006 Chipkill Pseudo Random Number Generator (PRNG) LFSR-based RNG Refresh threshold: # of aggressor row accesses before read disturbance errors occur in vic@m rows. 6 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  9. Probabilistic Row Activation (PRA) Refresh Threshold (T) 32k 24k 16k 8k 1.E+00 PRA Failure Probability PRA Unsurvivability 1.E-04 for 5 Years 1.E-08 for 5 years 1.E-12 1.E-16 1.E-20 1.E-24 1.E-28 p=0.001 p=0.002 p=0.003 p=0.004 p=0.005 p=0.006 Chipkill LFSR-based RNG Refresh threshold: # of aggressor row accesses before read disturbance errors occur in vic@m rows. 6 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  10. Probabilistic Row Activation (PRA) Refresh Threshold (T) 32k 24k 16k 8k 1.E+00 PRA Failure Probability PRA Unsurvivability 1.E-04 for 5 Years 1.E-08 for 5 years 1.E-12 1.E-16 1.E-20 1.E-24 1.E-28 p=0.001 p=0.002 p=0.003 p=0.004 p=0.005 p=0.006 Chipkill LFSR-based RNG Refresh threshold: # of aggressor row accesses before read disturbance errors occur in vic@m rows. 6 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  11. Static Counter Assignment (SCA) C 0 C 0 . . . . . . . . . C m C n . . . C N-1 Deep-scaled DRAM Cells Deep-scaled DRAM Cells e P s o w c i e e r r t P o m r a e i n w t a i n o P i n g h s C e o Power to maintaining r u f n Conservative e t e R r s Refresh Power Counters 7 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  12. Static Counter Assignment (SCA) Counters (Sta:c+Dynamic) Counters (Sta:c+Dynamic) Counters (Sta:c+Dynamic) Refresh Refresh Refresh Total (refresh+counter energy) Total (refresh+counter energy) Total (refresh+counter energy) 1.E+07 1.E+07 1.E+07 1.E+06 1.E+06 1.E+06 Energy (nJ) Energy (nJ) Energy (nJ) 1.E+05 1.E+05 1.E+05 Unu<lized Counters 1.E+04 1.E+04 1.E+04 1.E+03 1.E+03 1.E+03 1.E+02 1.E+02 1.E+02 1.E+01 1.E+01 1.E+01 1.E+00 1.E+00 1.E+00 16 16 16 32 32 32 64 64 64 128 128 128 256 256 256 512 512 512 1024 1024 1024 2048 2048 2048 4096 4096 4096 8192 8192 8192 16384 16384 16384 32768 32768 32768 65536 65536 65536 # of Counters # of Counters # of Counters • Non-uniform row access pa8erns in DRAM banks because of data locality 8 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  13. How to Efficiently Leverage Counters in the Crosstalk Mitigation? 8 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  14. Our Solution: Counter-based Adap@ve Tree (CAT) Row Address Ac@ve Counter Expired Counter DRAM BANK (N rows) × 10 4 × 10 4 × 10 4 × 10 4 × 10 4 × 10 4 × 10 4 10 10 10 10 10 10 10 Access Frequency Access Frequency Access Frequency Access Frequency Access Frequency Access Frequency Access Frequency 8 8 8 8 8 8 8 6 6 6 6 6 6 6 4 4 4 4 4 4 4 2 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6 0 0 1 1 2 2 3 3 4 4 5 5 6 6 0 1 2 3 4 5 6 0 1 2 3 4 5 6 Row Address Row Address Row Address Row Address Row Address × 10 4 × 10 4 × 10 4 × 10 4 × 10 4 Row Address × 10 4 Row Address × 10 4 9 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  15. Our Solution: Counter-based Adap@ve Tree (CAT) Row Address Ac@ve Counter Expired Counter DRAM BANK (N rows) × 10 4 × 10 4 × 10 4 × 10 4 × 10 4 × 10 4 × 10 4 10 10 10 10 10 10 10 Access Frequency Access Frequency Access Frequency Access Frequency Access Frequency Access Frequency Access Frequency 8 8 8 8 8 8 8 6 6 6 6 6 6 6 4 4 4 4 4 4 4 2 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 1 1 2 2 3 3 4 4 5 5 6 6 0 0 0 0 0 1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4 5 5 5 5 5 6 6 6 6 6 Row Address Row Address × 10 4 × 10 4 Row Address Row Address Row Address Row Address Row Address × 10 4 × 10 4 × 10 4 × 10 4 × 10 4 10 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  16. CAT: Counter based Adaptive Tree ² PRCAT: Periodically Reset CAT Ø Burst Refresh Mechanism Ø Reset CAT at the end of each refresh Interval ² DRCAT: Dynamically Reconfigured CAT Ø Distributed Refresh Mechanism Ø Reconfigure CAT during consecutive refresh intervals 11 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  17. PRCAT: Periodically Reset CAT C0 Burst Refresh 64ms 64ms 12 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  18. PRCAT: Periodically Reset CAT I0 C1 C0 Burst Refresh 64ms 64ms 12 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  19. PRCAT: Periodically Reset CAT I0 I1 C0 I2 I3 C1 I4 C3 C6 I5 C4 C2 C5 Burst Refresh 64ms 64ms 12 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  20. PRCAT: Periodically Reset CAT I0 I1 C0 I2 I3 C1 I4 C3 I6 C6 C7 I5 C4 C2 C5 Burst Refresh 64ms 64ms 12 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  21. PRCAT: Periodically Reset CAT C0 I0 I1 C0 I2 I3 C1 I4 C3 I6 C6 C7 I5 C4 C2 C5 Reset CAT Burst Refresh 64ms 64ms 12 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  22. PRCAT: Periodically Reset CAT C0 Build CAT from the Root Reset CAT Burst Refresh 64ms 64ms 12 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  23. DRCAT: Dynamically Reconfigured CAT I0 I1 C0 I2 I3 C1 I4 C3 I6 C6 C7 I5 C4 C2 C5 Distributed Refresh 64ms 64ms 12 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  24. DRCAT: Dynamically Reconfigured CAT I0 I1 C0 I2 I3 C1 I4 C3 I6 C6 C6 C7 I5 C4 C2 C2 C5 C5 Distributed Refresh 64ms 64ms 13 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  25. DRCAT: Dynamically Reconfigured CAT I0 I1 C0 I2 I3 C1 I4 C3 I6 I5 C7 C5 I5 C4 C2 C6 Distributed Refresh 64ms 64ms 13 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  26. DRCAT: Dynamically Reconfigured CAT W C I I0 I0 I1 I0 I1 C0 1 0 C0 0 C0 I1 C0 I1 I2 I3 1 1 C1 0 I2 I3 I2 I3 I2 C1 I4 0 1 C2 1 M-1 I3 C3 I6 0 1 C3 1 I4 I6 C1 C3 M C1 I4 C3 I6 I4 C5 C4 0 0 C4 0 I5 C5 C4 C7 I5 C6 C2 0 0 C5 0 I5 C7 C5 I5 C4 I6 I5 C7 1 0 C6 1 C6 C2 C2 C6 L-ptr R-ptr L-leaf R-leaf C7 1 (a) (b) (c) (d) • During each row access, the tree structure is traversed sequen@ally by chasing the pointers to find the counter assigned to a specific row address. 13 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  27. Experimental Settings USIMM Simulator: Two 3.2GHz cores, 2 channels(each 8GB DIMM), 1 rank/ channel 8 banks/rank, 64K rows/bank Synopsys Design Compiler Power Overhead Performance Overhead PARSEC, SPEC, Commercial and Biobench Kernel Malicious A8ack 14 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  28. Power Overhead 30% Probabilis<c Row Ac<va<on Sta<c Counter Assignment 25% PRCAT DRCAT 20% 15% 10% 5% 0% com1 com2 com3 com4 com5 swapt fluid str black ferret face MTC MTF libq leslie mum <gr Mean freq COMM PARSEC SPEC BIO Power overhead for DRCAT in dual-core systems is 4.5%, which is an improvement over the 12% and • 13% incurred in PRA and SCA. 15 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

  29. Performance Overhead 4% Probabilis<c Row Ac<va<on Sta<c Counter Assignment 3% PRCAT DRCAT 2% 1% 0% com1 com2 com3 com4 com5 swapt fluid str black ferret face freq MTC MTF libq leslie mum <gr Mean COMM PARSEC SPEC BIO • DRCAT, PRCAT and PRA incur very low performance overhead (<0.5%). 16 DRCAT: Dynamically Reconfigured Counter based Adaptive Tree

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend