Demand-based block-level address mapping in large-scale NAND flash storage systems

The increasing capacity of NAND flash memory leads to large RAM footprint on address mapping in the Flash Translation Layer (FTL) design. This paper proposes a novel Demand-based block-level Address mapping scheme with two-level Caching mechanism (DAC) for large-scale NAND flash storage systems. The objective is to reduce RAM footprint without sacrificing too much system response time. In our technique, the block-level address mapping table is stored in fixed pages (called translation pages) in the flash memory. Considering temporal locality that workloads exhibit, we maintain one cache in RAM to store the on-demand block-level address mapping information. Meanwhile, by exploring both spatial locality and access frequency of workloads with another two caches, the second-level cache is designed to cache selected translation pages into RAM. In such a way, address mapping information for both sequential accesses and most-frequently-accessed translation pages can be found in the cache, and therefore, the system response time can be improved. We conduct experiments on a mixture of real-world and synthetic traces. The experimental results show that our technique can significantly reduce the RAM footprint while the average response time is kept well under control. Moreover, our technique shows big improvement on wear-leveling compared with the previous work.

[1]  Sang Lyul Min,et al.  A space-efficient flash translation layer for CompactFlash systems , 2002, IEEE Trans. Consumer Electron..

[2]  Adam Leventhal,et al.  Flash storage memory , 2008, CACM.

[3]  Sang-Won Lee,et al.  A survey of Flash Translation Layer , 2009, J. Syst. Archit..

[4]  Alex Orailoglu,et al.  Application Specific Low Latency Instruction Cache for NAND Flash Memory Based Embedded Systems , 2008, 2008 Symposium on Application Specific Processors.

[5]  Chin-Hsien Wu,et al.  A time-predictable system initialization design for huge-capacity flash-memory storage systems , 2008, CODES+ISSS '08.

[6]  Youngjae Kim,et al.  DFTL: a flash translation layer employing demand-based selective caching of page-level address mappings , 2009, ASPLOS.

[7]  Tony Givargis,et al.  Performance improvement of block based NAND flash translation layer , 2007, 2007 5th IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[8]  Tei-Wei Kuo,et al.  An Adaptive Two-Level Management for the Flash Translation Layer in Embedded Systems , 2006, 2006 IEEE/ACM International Conference on Computer Aided Design.

[9]  Li-Pin Chang,et al.  Hybrid solid-state disks: Combining heterogeneous NAND flash in large SSDs , 2008, 2008 Asia and South Pacific Design Automation Conference.

[10]  Tei-Wei Kuo,et al.  Efficient management for large-scale flash-memory storage systems with resource conservation , 2005, TOS.

[11]  Joon-Hyuk Chang,et al.  Anticipatory I/O Management for Clustered Flash Translation Layer in NAND Flash Memory , 2008 .

[12]  KimJin-Soo,et al.  A reconfigurable FTL (flash translation layer) architecture for NAND flash-based applications , 2008 .

[13]  Song Jiang,et al.  LIRS: an efficient low inter-reference recency set replacement policy to improve buffer cache performance , 2002, SIGMETRICS '02.

[14]  阿米尔·班 Flash File System , 1994 .

[15]  Sang-Won Lee,et al.  A log buffer-based flash translation layer using fully-associative sector translation , 2007, TECS.

[16]  Sooyong Kang,et al.  Performance Trade-Offs in Using NVRAM Write Buffer for Flash Memory-Based Storage Devices , 2009, IEEE Transactions on Computers.

[17]  Tei-Wei Kuo,et al.  A commitment-based management strategy for the performance and reliability enhancement of flash-memory storage systems , 2009, 2009 46th ACM/IEEE Design Automation Conference.

[18]  David Hung-Chang Du,et al.  CFTL: a convertible flash translation layer adaptive to data access patterns , 2010, SIGMETRICS '10.

[19]  Hyojun Kim,et al.  BPLRU: A Buffer Management Scheme for Improving Random Writes in Flash Storage , 2008, FAST.

[20]  Dongchul Park,et al.  CFTL: A Convertible Flash Translation Layer with Consideration of Data Access Patterns , 2009 .

[21]  Meng Wang,et al.  RNFTL: a reuse-aware NAND flash translation layer for flash memory , 2010, LCTES '10.

[22]  Tei-Wei Kuo,et al.  An efficient management scheme for large-scale flash-memory storage systems , 2004, SAC '04.