ECAM: An Efficient Cache Management Strategy for Address Mappings in Flash Translation Layer

Solid State Drives SSDs have been widely adopted in both enterprise and embedded storage systems with the great improvement in NAND flash memory technology. With the growing size of NAND flash memory, how to keep the most active address mappings be cached in limited on-flash SRAM is crucial to a Flash Translation Layer FTL scheme, that plays an important role in managing NAND flash. In this paper, we propose an efficient cache management strategy, called ECAM, to enhance the capability of caching page-level address mappings in demand-based Flash Translation Layer. In ECAM, we optimize the structure of Cached Mapping Table CMT to record multiple address mappings with consecutive logical page numbers and physical page numbers in just one mapping entry, and propose another two tables, Cached Split Table CST and Cached Translation Table CTT. CST can cache the split mapping entries caused by the partial updates in CMT and CTT is used to reduce the overhead of address translation for large number of sequential requests. By the cooperation of CMT, CST and CTT, ECAM implements an efficient two-tier selective caching strategy to jointly exploit the temporal and spatial localities of workloads. The simulation on various realistic workloads shows that ECAM can improve the cache hit ratio and reduce the number of expensive extra read/write operations between SRAM and flash efficiently.

[1]  Xiaodong Zhang,et al.  Understanding intrinsic characteristics and system implications of flash memory based solid state drives , 2009, SIGMETRICS '09.

[2]  Antony I. T. Rowstron,et al.  Write off-loading: Practical power management for enterprise storage , 2008, TOS.

[3]  Heeseung Jo,et al.  Superblock FTL: A superblock-based flash translation layer with a hybrid address translation scheme , 2010, TECS.

[4]  Lei Zhang,et al.  S-FTL: An efficient address translation for flash memory by exploiting spatial locality , 2011, 2011 IEEE 27th Symposium on Mass Storage Systems and Technologies (MSST).

[5]  Bongki Moon,et al.  FASTer FTL for Enterprise-Class Flash Memory SSDs , 2010, 2010 International Workshop on Storage Network Architecture and Parallel I/Os.

[6]  Anand Sivasubramaniam,et al.  Leveraging Value Locality in Optimizing NAND Flash-based SSDs , 2011, FAST.

[7]  Tian Luo,et al.  CAFTL: A Content-Aware Flash Translation Layer Enhancing the Lifespan of Flash Memory based Solid State Drives , 2011, FAST.

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

[9]  Young-Jin Kim,et al.  LAST: locality-aware sector translation for NAND flash memory-based storage systems , 2008, OPSR.

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

[11]  Bharadwaj Veeravalli,et al.  WAFTL: A workload adaptive flash translation layer with data partition , 2011, 2011 IEEE 27th Symposium on Mass Storage Systems and Technologies (MSST).

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

[13]  Rina Panigrahy,et al.  Design Tradeoffs for SSD Performance , 2008, USENIX Annual Technical Conference.

[14]  Ruixuan Li,et al.  CAST: A page-level FTL with compact address mapping and parallel data blocks , 2012, 2012 IEEE 31st International Performance Computing and Communications Conference (IPCCC).

[15]  Chundong Wang,et al.  ADAPT: Efficient workload-sensitive flash management based on adaptation, prediction and aggregation , 2012, 012 IEEE 28th Symposium on Mass Storage Systems and Technologies (MSST).

[16]  J. Spencer Love,et al.  Caching strategies to improve disk system performance , 1994, Computer.

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