Presentation is loading. Please wait.

Presentation is loading. Please wait.

Embedded System Lab. Jung Young Jin The Design and Implementation of a Log-Structured File System D. Ma, J. Feng, and G. Li. LazyFTL:

Similar presentations


Presentation on theme: "Embedded System Lab. Jung Young Jin The Design and Implementation of a Log-Structured File System D. Ma, J. Feng, and G. Li. LazyFTL:"— Presentation transcript:

1 Embedded System Lab. Jung Young Jin cyj4369@gmail.com The Design and Implementation of a Log-Structured File System D. Ma, J. Feng, and G. Li. LazyFTL: a page-level flash translation layer optimized for NAND flash memory. In Proceedings of the 2011 international conference on Management of data (SIGMOD’11), pages 1–12, 2011.

2 정 영 진 Embedded System Lab. FTL Introduction LazyFTL architecture Major functionalities State transition Performance evaluation Conclusion Reference Contents

3 정 영 진 Embedded System Lab. FTL FTL(Flash Translation Layer)  Flash memory disadvantage Operation unit  R/W : Page  Erase : Block Out-place-update Limited lifespan  Mapping Page Block Hybrid  Garbage Collection Full merge Partial merge Switch merge  Wear leveling

4 정 영 진 Embedded System Lab. Floating gate  Limited lifespan  Oxide wear FTL Drain Source Oxide Floating Gate Control Gate

5 정 영 진 Embedded System Lab. Kinds of Flash Memory  Bit count in flash memory cell  1bit(SLC) / 2bit(MLC) / 3bit(TLC) / 4bit(QLC)  Voltage ex) SLC : 100%(0), 0%(1) MLC : 100%(00), 66%(01), 33%(10), 0%(11)  Bit count increase: lifespan, stability, performance ↓ degree of integration ↑ FTL

6 정 영 진 Embedded System Lab. FTL HDD HDD?

7 정 영 진 Embedded System Lab. Page mapping FTL  Page-level mapping  Advantage Good performance compared to other mapping policy Random write  Disadvantage Large size mapping table FTL 0512 11 20 32 4256 5384 …… n x m LPNPPN 500 9000 8000 600 ……… page 0 page 1 page 2 page 3 … page m … Block 0Block 1Block n Write 1(300) 500 9000 8000 600 … 500 9000 8000 600 300 … 0512 14 20 32 4256 5384 …… n x m … 500 8000 300 … 0512 166 264 365 4256 5384 …… n x m

8 정 영 진 Embedded System Lab. Block mapping FTL  Block-level mapping  Same page index in a block  Advantage Small size mapping table Sequential write  Disadvantage Random write FTL LBNPBN … 500 9000 8000 600 …… page 0 page 1 page 2 page 3 … page m … Block 0Block 1Block n 03 11 26 38 44 59 …… nn Write 66(300) LBN = 66/64 = 1 Offset = 2 500 9000 600 … 500 9000 300 600 …… 03 10 26 38 44 59 …… nn

9 정 영 진 Embedded System Lab. Hybrid mapping FTL  Page-level and Block-level mapping  Different page index in a block  FAST, LAST, SAST, KAST… FTL LBNPBN 03 11 26 38 44 59 …… nn Write 66(300) LBN = 66/64 = 1 Offset = 2 … 500 9000 8000 600 700 … 7000 8000 9000 … … Block 0Block 1Block 100(Log Block) 500 9000 8000 600 700 … … 7000 8000 9000 300 … 1100 02 11 2 …… DataLog Logical Page Offset Physical Page Offset 1100 02 11 23 …… 9000 8000 300 600 700 ……… 03 10 26 38 44 59 …… nn 0100 02 11 23 ……

10 정 영 진 Embedded System Lab. Garbage Collection  Make free page  Merge Full merge Partial merge Switch merge FTL erase change erase change erase change invalid valid free

11 정 영 진 Embedded System Lab. Wear leveling  Extend the life of Flash memory cell  Erase distribution FTL Block # Erase # … Block # Erase # …

12 정 영 진 Embedded System Lab. Overview of FTL  Page-level FTL scheme DFTL  Block-level FTL scheme NFTL-1. NFTL-N  Hybrid FTL scheme BAST, FAST, SAST, LAST, A-SAST, KAST, HFTL  Variable-length FTL μ-FTL, JFTL Introduction

13 정 영 진 Embedded System Lab. LazyFTL design principle  Page mapping FTL  2 bit map Update flag, invalidate flag  No wear-leveling Focus on address translation and data organization  LRU strategy in SRAM  Using lazy manner  Divide the entire flash memory into four parts Introduction

14 정 영 진 Embedded System Lab. Architecture of LazyFTL LazyFTL architecture

15 정 영 진 Embedded System Lab. Convert  CBA and the UBA cannot be too large  Convert the victim block to a normal data block logically  Only overhead for GMT updates  Convert operation four steps Select a victim block in UMT Collect mapping entries in UMT(update flag → 0) Modify mapping entries Victim block is converted to a normal data block logically Major functionalities

16 정 영 진 Embedded System Lab. Garbage collection  Valid pages should be relatively colder than the invalid ones Major functionalities

17 정 영 진 Embedded System Lab. Write  Simpler than the convert operation and the garbage collection operation. Major functionalities

18 정 영 진 Embedded System Lab. State transition of pages State transition

19 정 영 진 Embedded System Lab. State transition of pages Performance evaluation GMTUMT DBA CBA/UBA vailid page invailid page

20 정 영 진 Embedded System Lab. Experimental setup  1GB SLC flash memory(widely used, enterprise grade)  Trace-driven simulator, 36 qualified traces  Utilization 0%~82.87%  Compare with NFTL-1, NFTL-N, BAST, FAST, LAST, A-SAST (Block mapping FTL, Hybrid mapping FTL) Greedy strategy GC LBA size(Hybrid FTL) is same with UBA + CBA Performance evaluation

21 정 영 진 Embedded System Lab. Performance evaluation

22 정 영 진 Embedded System Lab. Performance evaluation

23 정 영 진 Embedded System Lab. LazyFTL successfully avoids merge operations LazyFTL is the most efficient and effective FTL scheme ever invented, which is hard to surpass since we have successfully approached the theoretically optimal result. Conclusion

24 정 영 진 Embedded System Lab. H.KimandS.Ahn.BPLRU:ABufferManagementSchemefor Improving Random Writes in Flash Storage. In FAST, 2008. S.-W. Lee, D.-J. Park, T.-S. Chung, et al. A Log Buffer Based Flash Translation Layer using Fully Associative Sector Translation. ACM Transactions on Embedded Computing Systems (TECS), 6(3), July 2007. Reference

25 정 영 진 Embedded System Lab. Q & A


Download ppt "Embedded System Lab. Jung Young Jin The Design and Implementation of a Log-Structured File System D. Ma, J. Feng, and G. Li. LazyFTL:"

Similar presentations


Ads by Google