검색 상세

A Dynamic Setting for Flash Translation Layer

A Dynamic Setting for Flash Translation Layer

초록/요약

Flash memory has been utilized in a lot of mobile computing devices, including smartphones and tablets because of its fast access speed, non-volatility, low power consumption, and resistance to shocks. Because of the hardware characteristics of the flash memory that differ from hard disk drives (HDD), a flash translation layer (FTL) has been introduced to make the flash memory device appear as block device to its host the equal as HDD does. However, due to the out-of-place-update feature of flash memory, fresh blocks need to be constantly availed through garbage collection (GC) of invalid pages which causes an expensive overhead. In the previous hybrid-level mapping schemes, there are three problems that cause GC overhead. First, a partial merge causes more page copies than a switch merge. However, many authors only approaches reducing a full merge. Second, the associativity between a data block and a log block makes the space utilization of the log block lower, and it also generates a very expensive full merge. Third, the space utilization of the data block is low since data block which has many free pages is merged. Therefore, in this thesis, we propose an FTL approach (DSFTL) that uses many SW (Sequential Write) log blocks which increase switch merge and decrease partial merge. DSFTL can dynamically manage the data blocks and log blocks to decrease operations of erase and expensive full merge. Also, our scheme prevents a data block with many free pages from being merged to increase the space utilization of the data block. Our extensive experimental results prove that our proposed approach (DSFTL) decreases the erase count and increase switch merge of flash memory devices employing hybrid-level mapping algorithms. As a result, DSFTL decreases the garbage collection overhead.

more

목차

Chapter 1 Introduction 1
Chapter 2 Background and Related Work 4
2.1 Nand flash memory 4
2.2 FTL 5
2.3 Related Work 7
Chapter 3 Problem Statement 10
3.1 Operations of merge 10
3.2 Associativity between a data block and a log block 12
3.3 Space utilization of a data block 14
Chapter 4 System Design 16
4.1 System architecture 16
4.2 Increase of a switch merge and Decrease of a partial merge 16
4.3 Adjust associativity dynamically 19
4.4 Increasing space utilization of a data block 22
Chapter 5 Evaluation 25
5.1 Experiment setup 25
5.2 Workloads 26
5.3 Experimental results 26
Chapter 6 Conclusion 30

more