Reconfigurable FTL Architecture for NAND Flash-Based Applications
NAND Flash memory is commonly used in mobile devices due to its reliability and non-volatile nature. Flash Translation Layer (FTL) plays a crucial role in optimizing NAND flash performance and lifetime. The design of FTL should focus on hiding technological details, maximizing performance, and considering access patterns of applications. This article discusses the background of NAND Flash structure, FTL concepts, and mapping schemes for efficient garbage collection.
Download Presentation
Please find below an Image/Link to download the presentation.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.
E N D
Presentation Transcript
A Reconfigurable FTL Architecture for NAND Flash-Based Applications ACM ToECS, 2008 2020. 3. 23
1. Introduction NAND Flash memory has become more common in many mobile devices Ex) MP3 players, MMC cards, cellular phones, and PDAs It is nonvolatile, reliable, more resistant to physical shocks and uses less power NAND flash memory is characterized by its erase-before-write operation This necessitates FTL(Flash Translation Layer) Important Factors that affects FTL design 1) hiding the technological details of NAND flash 2) maximizing the performance and lifetime of the underlying storage device 3) access patterns of different applications But it is designed and implemented with different constraints, depending on each target application 2
2. Background NAND Flash Structure a fixed number of blocks, 1 block has 64 pages 1 page has 12 KB of main data and 64 bytes of spare data Read operation 1) the command code and page address are inputted to the NAND flash through I/O pins 2) After the Page Read latency, the selected page is loaded into the page and spare registers 3) the loaded data is transferred to the system memory through the I/O bus Write operation 1) a command code and a page address are issued and data is loaded from the system memory to the page register and the spare register 2) After the Page Program latency, the data is programmed into the designated page Erase operation the command code and block address are inputted After the Block Erase duration, the corresponding block is erased 3
2. Background FTL(Flash Translation Layer) Concepts metadata area Reserved blocks, Map blocks and Write buffer blocks Page-write requests example In this case, the merge operation requires four page-read operations, four page program operations, and two block-erase operations Therefore reducing the numbers of merge operations and the required read/program operations at each merge operation is a main concern with FTL performance 4
3. Mapping Schemes and Related Work Scheme 1 Page Mapping LPN : Logical Page Number PPN : Physical Page Number Limitation An efficient garbage collection technique should be devised It requires a very large amount of memory space for the map table 5
3. Mapping Schemes and Related Work Scheme 2 Block Mapping LBN : Logical Block Number PBN : Physical Block Number Limitation Block mapping yields better performance over sequential write-access patterns, though it may show considerable performance degradation over random-access patterns 6
3. Mapping Schemes and Related Work Scheme 3 Hybrid Mapping compromises between page mapping and block mapping many hybrid mapping schemes reduce the mapping table size and the block copy overhead 7
4. The Proposed Approach : Flexible Group Mapping Flexible Group Mapping is based on the log block scheme configures the degree of sharing of log blocks among data blocks manages the degree of the allocation of log blocks for the frequently updated data blocks 8
4. The Proposed Approach : Flexible Group Mapping Write Scheme DBMT : the data-block-mapping table LBMT : the log-block-mapping table LPMT : the log-page-mapping table DGN : the data-block-group number DGN = LPN / (N x the number of pages per block) 9
4. The Proposed Approach : Flexible Group Mapping Merge Schemes Simple merge operation Swap merge operation Copy merge operation 10
5. Performance Model and Analysis Workload Analysis A sequence of write requests in a given workload and ?? denotes the ?th write request (0 ? < ?) ? = ?0,?1, ,?? 1, The request density ???,?= ??,?/ ? 11
5. Performance Model and Analysis Performance Analysis ?? : the active data block accessed by ?? ??? : the active data block group accessed by ?? ??(??) and ???(??) : the set of active blocks and the set of active block groups ? ??? : the number of log blocks associated with ??? 12
5. Performance Model and Analysis Memory Requirement Analysis An active log group has three data structures a page map table for 64N pages in the log group the active log group maintains some information for one or more log objects log group has a small number of additional variables that approximates the number of logs 13
6. Experimental Results Experiment environment CPU : Intel Pentium-4 RAM : 512MB Hard disk : 80GB OS : Windows XP File system : NTFS Experiment target : Internet Explorer, MS Office, MP3 download, File system, Virtual memory paging 14
7. Conclusions The proposed reconfigurable FTL architecture efficiently handles diverse NAND flash applications ranging from MP3 to SSD for a PC In order to efficiently explore the design space, a workload analysis method based on the density distribution of given requests and the update frequency is proposed The experimental results show the proposed architecture can be reconfigured to a given workload ranging from MP3 to PC applications the proposed analysis method can efficiently find the optimal N and K values within a reasonable amount of time 16
Thank You ! 17