Flash Memory Summit 2015 Does soft-decision ECC improve endurance? Thomas Parnell IBM Research - Zurich © 2015 IBM Corporation FMS 2015 -- Does Soft-Decision ECC Improve Endurance? Outline • Motivation – Why do we need more endurance? • Capacity – What is channel capacity? – How can it be used to compare different error-correction techniques? • MLC Flash Channel – How do we evaluate capacity for MLC Flash devices? • Experimental Results + Analysis – How much endurance gain can soft-decision ECC offer for real MLC devices? – Why does the MLC programming algorithm affect capacity? • Conclusion 2 © 2015 IBM Corporation FMS 2015 -- Does Soft-Decision ECC Improve Endurance? Why do we need more endurance? All-flash storage solutions are gaining momentum in the enterprise sector LDPC codes can make use of “soft” information from Flash to enhance reliability HOW? High performance and rapidly decreasing $/GB Papers on “LDPC” + “Flash” listed on IEEE Xplore WHAT IS DRIVING DOWN COST? In part, the move from SLC eMLC cMLC ISN’T cMLC VERY UNRELIABLE? 2D cMLC has ~3k P/E cycling endurance BUT ENTERPRISE NEEDS >20k? Advanced ECC is required to boost endurance 3 Source: http://ieeexplore.ieee.org/ © 2015 IBM Corporation FMS 2015 -- Does Soft-Decision ECC Improve Endurance? Channel Capacity (Shannon 1948) Channel Capacity: Amount of information (in bits) that channel output (Y) contains about channel input (X) (Maximized over all input distributions) C max I ( X ;Y ) R>C Error-free operation is NOT possible R<C Error-free operation is possible P( X ) BINARY SYMMETRIC CHANNEL 0 Channel capacity can be used in two ways: 1 a) For a given level of channel noise, what ECC rate is required in order to operate reliably? b) For a given ECC rate, how much channel noise can be tolerated? f X Y f 1 4 1-f 0 1-f © 2015 IBM Corporation FMS 2015 -- Does Soft-Decision ECC Improve Endurance? AWGN Channel: Hard vs. Soft Information AWGN CHANNEL Binary Input X Binary Output 1 0 1 Y 0 X̂ RBER gain in capacity highly correlated with RBER gain for real ECC Soft output (Fine quantization) SOFT CAPACITY HARD CAPACITY CSOFT max I Y ; X CHARD max I Xˆ ; X P( X ) 5 P( X ) ECC data sourced from: Tzimpragos et al. – ‘A Survey on FEC Codes for 100G and Beyond Optical Networks’, IEEE Comm. Surveys & Tutorials, 2014 © 2015 IBM Corporation FMS 2015 -- Does Soft-Decision ECC Improve Endurance? MLC Flash Channel Vi , j Soft Output (21 shifted reads from Flash) MLC FLASH CHANNEL Binary Input (2 bits) X X (U ) i, j x2 + ( L) i, j BL[j-1] BL[j] X i, j 11 X i 1, j 1 X i 1, j X i 1, j 1 WL[i] X i , j 1 X i, j X i , j 1 ( L) i, j Y 11 WL[i-1] 6 X i 1, j 1 X i 1, j X i 1, j 1 00 1 Y 0 01 00 10 ( L) i, j Yi ,(Uj ) READ (Lower) ( L) i, j 10 Read Lower Page BL[j+1] WL[i+1] 01 READ (Upper) Y Read Upper Page (U ) i, j Y 1 Y (U ) i, j 11 Vi , j 01 0 Yi ,(Uj ) 1 00 10 Vi , j © 2015 IBM Corporation Binary Output (2 bits) FMS 2015 -- Does Soft-Decision ECC Improve Endurance? MLC Flash Channel is NOT Memoryless Threshold voltage distribution conditional on state of aggressor cells 11 11 X i, j 10 11 10 11 7 10 10 MLC flash channel is a FSMC: Finite State Markov Channel The threshold voltage of a cell depends on the data written to the surrounding cells Pr Vi ,0 ,Vi ,1 X i, j n 1 ,Vi ,n 1 | X Pr Vi , j | X i , j 1 , X i , j , X i , j 1 , X i 1, j , X i 1, j j 0 Conditional threshold voltage distributions are extracted from real MLC Flash devices © 2015 IBM Corporation FMS 2015 -- Does Soft-Decision ECC Improve Endurance? Calculation of Symmetric Capacity Capacity* is calculated recursively using a very long sample from the channel (n=107) assuming i.u.d input distribution [ICC2015] SOFT CAPACITY (UPPER PAGE) (U ) SOFT C 1 (U ) (U ) (U ) lim I Vi ,0 ,Vi ,1,...,Vi ,n 1; X i ,0 , X i ,1 ,..., X i ,n 1 n n Vi , j Soft Output MLC FLASH CHANNEL Binary Input (2 bits) X X (U ) i, j ( L) i, j x2 READ (Upper) + 11 X i, j 01 00 (U ) i, j Y 10 READ (Lower) ( L) i, j Y HARD CAPACITY (LOWER PAGE) C 8 ( L) HARD 1 ( L) ( L) ( L) ( L) ( L) ( L) lim I Yi ,0 , Yi ,1 ,..., Yi ,n 1; X i ,0 , X i ,1 ,..., X i ,n 1 n n © 2015 IBM Corporation Binary Output (2 bits) FMS 2015 -- Does Soft-Decision ECC Improve Endurance? Experimental Results VENDOR A Vendor A/B – 1y-nm MLC devices with approx. same cell area VENDOR B Gain in capacity due to soft information is much larger for upper pages 9 © 2015 IBM Corporation FMS 2015 -- Does Soft-Decision ECC Improve Endurance? How much endurance can we gain using soft information? Endurance (Balanced ECC) Endurance (Unbalanced ECC) Same ECC rate in upper/lower page: Different ECC rate in upper/lower page: PEC( R) min(PECL ( R), PECU ( R)) PEC( R) max min(PECL ( RL ), PECU ( RU )) VENDOR A (R=0.99) RL RU 2 R VENDOR B (R=0.99) 21% 14% 10 11% 21% © 2015 IBM Corporation FMS 2015 -- Does Soft-Decision ECC Improve Endurance? Why do we only see a small increase in capacity for lower pages? 1y-nm MLC DEVICE INTERMEDIATE READ (a) Program LP=1 E 11 VTH x0 Read LP=0 Read LP=1 (b) Program UP=0 01 00 10 VTH Degradation of the erase state can lead to errorpropagation during two-stage MLC programming 11 LP=1 LP=0 Programming errors are present for the lower page that are difficult to correct even with soft information © 2015 IBM Corporation FMS 2015 -- Does Soft-Decision ECC Improve Endurance? What if we can prevent programming errors? 1x-nm MLC MODEL [ICC2015] Removing programming errors dramatically improves the lower page capacity ~40% endurance gain due to soft information BALANCED ECC (R=0.99) 37% 5% 12 © 2015 IBM Corporation FMS 2015 -- Does Soft-Decision ECC Improve Endurance? Conclusion Does soft-decision ECC improve endurance? Sub-20nm planar MLC device? YES NO SLC, TLC, and 3D devices have not been studied Does the device employ two-pass programming? NO YES ~40% Endurance Gain Same ECC in upper/lower pages? NO ~20% Endurance Gain 13 YES ~10-15% Endurance Gain © 2015 IBM Corporation FMS 2015 -- Does Soft-Decision ECC Improve Endurance? Acknowledgements IBM - Zurich Research Laboratory IBM FlashSystem™ 900/V9000 • IBM Research – Zurich • IBM Flash Systems Development (Houston) • IBM Systems (San Jose, Poughkeepsie, Raleigh) 14 © 2015 IBM Corporation