an efficient wear level architecture using self adaptive
play

An Efficient Wear-level Architecture using Self-adaptive Wear - PowerPoint PPT Presentation

An Efficient Wear-level Architecture using Self-adaptive Wear Leveling Jianming Huang , Yu Hua, Pengfei Zuo, Wen Zhou, Fangting Huang Huazhong University of Science and Technology ICPP 2020 Non-volatile Memory NVM features Non-volatility


  1. An Efficient Wear-level Architecture using Self-adaptive Wear Leveling Jianming Huang , Yu Hua, Pengfei Zuo, Wen Zhou, Fangting Huang Huazhong University of Science and Technology ICPP 2020

  2. Non-volatile Memory  NVM features − Non-volatility − Byte-addressability − Large capacity − DRAM-scale latency  NVM drawbacks Intel Optane DC Persistent ‒ Limited endurance Memory ‒ High write energy consumption 2

  3. Multi-level Cell NVM The MLC technique has been used in different kinds of # of cell NVM, including PCM, RRAM, and STT-RAM. single-level cell (SLC) 1 0 Wear-leveling schemes are V th necessary and important Compared with SLC NVM, MLC NVM # of cell  Higher storage density multi-level cell (MLC)  Lower cost  Comparable read latency 01 11 10 00  Weaker endurance V th 10^7 of SLC PCM vs 10^5 of MLC PCM 3

  4. Wear-leveling Schemes  Table based wear-leveling scheme (TBWL)  Algebraic based wear-leveling scheme (AWL)  Hybrid wear-leveling scheme (HWL) 4

  5. Wear-leveling Schemes  Table based wear-leveling scheme (TBWL) LA PA WC LA PA WC 0 0 150 0 150 0 trigger wear-leveling 1 1 519 2 116 1 2 2 115 1 521 2 3 3 210 3 210 3 Segment Swapping 5

  6. Wear-leveling Schemes  Table based wear- leveling scheme (TBWL)  Algebraic based wear-leveling scheme (AWL) Gap line Start line PA LA A A A A E D 0 B B B E A A 1 C C E B B B 2 D E C C C C 3 4 E D D D D E Initial State Step 1 Step 2 Step 3 Final State Step 4 region-based Start-Gap (RBSG) 6

  7. Wear-leveling Schemes  Table based wear- leveling scheme (TBWL)  Algebraic wear-leveling scheme (AWL)  Hybrid wear-leveling scheme (HWL) prn0 prn2 prn0 prn2 A E D H A E H D B F C G B F Read Out G C Write Back Line Shift C G B F C G F B Step 1 Step 2 Step 3 D H A E D H E A SRAM SRAM NVM NVM (Memory Controller) (Memory Controller) PCM-S 7

  8. RAA Attack for TBWL  RAA attack • Repeated Address Attack (RAA) • Repeatedly write data to the same address  The lifetime of TBWL under RAA attack • One region contains the limited lines • All lines in one region are repeatedly written • NVM is worn out at the early stage ‒ 𝑈ℎ𝑓 number of lines within a region × (Tℎ𝑓 endurance of a line) 8

  9. BPA Attack for AWL  BPA attack • Birthday Paradox Attack (BPA) • Randomly select logical addresses and repeatedly write to each 9

  10. BPA Attack for AWL  BPA attack  The lifetime of AWL under BPA attack • Lifetime is low 10

  11. BPA Attack for HWL  The lifetime of HWL under BPA attack • Smaller wear-leveling granularity increases the NVM lifetime 11

  12. Problems of Existing Wear-leveling Schemes  TBWL and AWL fail to defend against attacks • RAA attack leads to low lifetime in TBWL • BPA attack leads to low lifetime in AWL 12

  13. Problems of Existing Wear-leveling Schemes  TBWL and AWL fail to defend against attacks  HWL obtains high lifetime with small granularity • The large granularity leads to low lifetime • The small granularity leads to high lifetime 13

  14. Problems of Existing Wear-leveling Schemes  TBWL and AWL fail to defend against attacks  HWL obtains high lifetime with small granularity  The cache hit ratio of HWL is affected by the granularity • The wear-leveling entries stored on cache are limited • Entries with large granularity cover large NVM high cache hit ratio • Entries with small granularity cover small NVM low cache hit ratio 14

  15. Problems of Existing Wear-leveling Schemes  TBWL and AWL fail to defend against attacks  HWL obtains high lifetime with small granularity  The cache hit ratio of HWL is affected by the granularity  High performance and lifetime are in conflict How to address the conflict between the lifetime and performance is important 15

  16. SAWL SAWL: self-adaptive wear-leveling scheme High hit ratio & unbalanced Split regions to decrease write distribution the granularity achieve high lifetime and performance Merge regions to increase Low hit ratio & uniform the granularity write distribution 16

  17. Architecture of SAWL Memory Controller Global Translation Integrated Mapping Cached Mapping Directory (GTD) Table (IMT) Table (CMT) Data lrn 1 ,wlg 1 ,prn 1 ,key 1 ( prn,key ) tpma Exchange tlma tpma key (2,4),(4,5), ,(15,6) 0 0 3 0 lrn 2 ,wlg 2 ,prn 2 ,key 2 Address (6,3),(5,5), ,(18,7) 1 1 8 1 Translation (8,2),(10,7), ,(3,6) 2 lrn 3 ,wlg 3 ,prn 3 ,key 3 2 4 0 3 1 1 Region (SRAM) lrn k ,wlg k ,prn k ,key k (DRAM) Split/Merge sync region 0 region 1 region 2 region N region 0 region M line 0 line 0 line 0 line 0 line 0 line 0 line 1 line 1 line 1 line 1 line 1 line 1 line 2 line 2 line 2 line 2 line 2 line 2 Translation lines Data lines (NVM) • IMT (translation lines): record the locations in which the user data are actually stored wear-leveling the data lines 17

  18. Architecture of SAWL Memory Controller Global Translation Integrated Mapping Cached Mapping Directory (GTD) Table (IMT) Table (CMT) Data lrn 1 ,wlg 1 ,prn 1 ,key 1 ( prn,key ) tpma Exchange tlma tpma key (2,4),(4,5), ,(15,6) 0 0 3 0 lrn 2 ,wlg 2 ,prn 2 ,key 2 Address (6,3),(5,5), ,(18,7) 1 1 8 1 Translation (8,2),(10,7), ,(3,6) 2 lrn 3 ,wlg 3 ,prn 3 ,key 3 2 4 0 3 1 1 Region (SRAM) lrn k ,wlg k ,prn k ,key k (DRAM) Split/Merge sync region 0 region 1 region 2 region N region 0 region M line 0 line 0 line 0 line 0 line 0 line 0 line 1 line 1 line 1 line 1 line 1 line 1 line 2 line 2 line 2 line 2 line 2 line 2 Translation lines Data lines (NVM) • CMT: buffer the recently used IMT entries reduce translation latency 18

  19. Architecture of SAWL Memory Controller Global Translation Integrated Mapping Cached Mapping Directory (GTD) Table (IMT) Table (CMT) Data lrn 1 ,wlg 1 ,prn 1 ,key 1 ( prn,key ) tpma Exchange tlma tpma key (2,4),(4,5), ,(15,6) 0 0 3 0 lrn 2 ,wlg 2 ,prn 2 ,key 2 Address (6,3),(5,5), ,(18,7) 1 1 8 1 Translation (8,2),(10,7), ,(3,6) 2 lrn 3 ,wlg 3 ,prn 3 ,key 3 2 4 0 3 1 1 Region (SRAM) lrn k ,wlg k ,prn k ,key k (DRAM) Split/Merge sync region 0 region 1 region 2 region N region 0 region M line 0 line 0 line 0 line 0 line 0 line 0 line 1 line 1 line 1 line 1 line 1 line 1 line 2 line 2 line 2 line 2 line 2 line 2 Translation lines Data lines (NVM) • GTD: record the relationships between logical/physical addresses of translation lines wear-leveling the translation lines 19

  20. Operations in SAWL  Merge the region logical Physical logical Physical region region region region A F 1. Choose two unmerged neighborhood logical A D 0 2 B E regions. B C 0 C B C A 1 3 D A D B 2. Physically exchange the data to satisfy the E F E D 5 8 algebraic mapping between the logical and 8 5 E C F F physical regions. lrn wlg prn key lrn wlg prn key 0 2 3 0 0 4 2 3 CMT entry CMT entry 3. Update the relevant CMT entries on the prn key prn key lrn lrn SRAM and the IMT table on the NVM. 0 3 0 0 2 3 1 8 1 1 2 3 5 2 1 5 8 1 20 IMT entry IMT entry

  21. Operations in SAWL  Merge the region logical physical logical physical region region region region  Split the region A D A D 0 2 1. Logically split the region without data move. B C B C The data have already satisfied the algebraic 0 2 C B mapping. C B 1 D A 3 D A lrn wlg prn key lrn wlg prn key 2. Update the CMT entries and IMT table. 0 4 2 3 0 2 2 1 CMT entry CMT entry prn lrn key prn key lrn 0 2 3 0 3 1 1 2 3 1 2 1 21 IMT entry IMT entry

  22. When to Adjust the Region  We use the hit ratio as the trigger to merge/split region • Hit ratio below 90% significantly decreases the performance • Hit ratio above 95% slightly impacts on the performance hit ratio >= 95% Split the regions Merge the regions hit ratio <= 90% 22

  23. Parameter in SAWL  SOW: size of the observation window • Small SOW -> cache hit rate frequently fluctuates 23

  24. Parameter in SAWL  SOW: size of the observation window • Small SOW -> cache hit rate frequently fluctuates • Large SOW -> systems miss important trigger point 24

  25. Parameter in SAWL  SOW: size of the observation window • Small SOW -> cache hit rate frequently fluctuates • Large SOW -> systems miss important trigger point • We use 2^22 as the SOW value 25

  26. Parameter in SAWL  SSW: size of the settling window • Small SSW -> frequently adjust region size 26

  27. Parameter in SAWL  SSW: size of the settling window • Small SSW -> frequently adjust region size • Large SSW -> fail to sufficiently adjust the region size 27

  28. Parameter in SAWL  SSW: size of the settling window • Small SSW -> frequently adjust region size • Large SSW -> fail to sufficiently adjust the region size • We use 2^22 as the SSW value 28

  29. Experimental Setup  Configuration of simulated system via Gem5  Comparisons • Baseline: an NVM system without wear-leveling scheme. • NWL-4: naive wear-leveling scheme with a region consisting of 4 memory lines. • NWL-64: naive wear-leveling scheme with a region consisting of 64 memory lines. • AWL schemes: RBSG and TLSR. • HWL schemes: PCM-S and MWSR.  Benchmark: SPEC2006 29

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