Accelerating garbage collection for 3D MLC flash memory with SLC blocks

3D MLC NAND Flash is more appreciated for its massive capacity and significant performance. It's common to configure a portion of flash blocks to SLC-mode to further shorten the requests latency at a small cost of capacity. However, the limited SLC-mode blocks provoke GC (Garbage Collection) procedures more frequently and the GC penalty is heavier for 3D Flash than that for 2D Flash. As the block of 3D Flash consists of much more pages, the increment in the block size prolongs the erase operation latency and increases the number of migrated pages during GC. Existing works focus on reducing the number of migrated pages with sub-block GC strategies, which deeply depends on the distribution of valid pages across the sub-blocks in the victim block. In this paper, we propose a set of schemes called DCD which consists of Dual-mode Handler, Compensated GC and Dynamic Data Distribution. The key idea is to exploit the shorter operation delays of SLC-mode to accelerate the valid pages' migrations during GC, which doesn't rely on the distribution of valid pages inside the victim block. Experimental results show that compared with state-of-the-art designs, DCD shortens the average read response time by 19.8% and 37.3% for block-level and page-level FTL, respectively.

[1]  Mohammad Arjomand,et al.  Exploring the Potentials of Parallel Garbage Collection in SSDs for Enterprise Storage Systems , 2016, SC16: International Conference for High Performance Computing, Networking, Storage and Analysis.

[2]  Fang Wang,et al.  A user-visible solid-state storage system with software-defined fusion methods for PCM and NAND flash , 2016, J. Syst. Archit..

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

[4]  Jong Wook Kwak,et al.  HaWL: Hidden Cold Block-Aware Wear Leveling Using Bit-Set Threshold for NAND Flash Memory , 2016, IEICE Trans. Inf. Syst..

[5]  Mahmut T. Kandemir,et al.  HIOS: A host interface I/O scheduler for Solid State Disks , 2014, 2014 ACM/IEEE 41st International Symposium on Computer Architecture (ISCA).

[6]  Lei Yao,et al.  A workload-aware flash translation layer enhancing performance and lifespan of TLC/SLC dual-mode flash memory in embedded systems , 2017, Microprocess. Microsystems.

[7]  Mahmut T. Kandemir,et al.  PEN: Design and Evaluation of Partial-Erase for 3D NAND-Based High Density SSDs , 2018, FAST.

[8]  Chia-Lin Yang,et al.  Exploiting Write Heterogeneity of Morphable MLC/SLC SSDs in Datacenters with Service-Level Objectives , 2017, IEEE Transactions on Computers.

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

[10]  Tei-Wei Kuo,et al.  Garbage collection and wear leveling for flash memory: Past and future , 2014, 2014 International Conference on Smart Computing.

[11]  Dan Feng,et al.  Using Disturbance Compensation and Data Clustering (DC)2 to Improve Reliability and Performance of 3D MLC Flash Memory , 2017, 2017 IEEE International Conference on Computer Design (ICCD).

[12]  Luca Crippa,et al.  Inside NAND Flash Memories , 2010 .

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

[14]  Yi Qin,et al.  DT-GC: Adaptive Garbage Collection with Dynamic Thresholds for SSDs , 2014, 2014 International Conference on Cloud Computing and Big Data.

[15]  Dan Feng,et al.  Mapping granularity adaptive FTL based on flash page re-programming , 2017, Design, Automation & Test in Europe Conference & Exhibition (DATE), 2017.

[16]  Sungjin Lee,et al.  FlexFS: A Flexible Flash File System for MLC NAND Flash Memory , 2009, USENIX Annual Technical Conference.

[17]  Andrew A. Chien,et al.  Tiny-Tail Flash , 2017, ACM Trans. Storage.

[18]  Dongkun Shin,et al.  ComboFTL: Improving performance and lifespan of MLC flash memory using SLC flash buffer , 2010, J. Syst. Archit..

[19]  Xubin He,et al.  Reducing SSD read latency via NAND flash program and erase suspension , 2012, FAST.

[20]  Mahmut T. Kandemir,et al.  An Evaluation of Different Page Allocation Strategies on High-Speed SSDs , 2012, HotStorage.