skip to main content
research-article

LDPC Level Prediction Toward Read Performance of High-Density Flash Memories

Published: 01 October 2023 Publication History

Abstract

High-density NAND flash memories have been prevailing in storage systems to achieve large capacities for explosive data. However, they suffer from more severe reliability degradation due to the narrowed margins between threshold voltage states. Low-density parity-check (LDPC) codes have been widely applied in high-density flash memories to ensure data reliability. Due to the increased number of cell states, more read voltages are required in reading a flash page correctly. This induces more soft levels to read pages with high-bit error rates in LDPC decoding. Read latency is significantly increased in high-density flash memories. To enhance the read performance of high-density flash memories, this article proposes PreLDPC, an LDPC-level prediction approach with fine-grained LDPC reading. The key idea of PreLDPC is to predict the final read level during the early read iteration, thus, avoiding unnecessary read-retry latency. From a preliminary study, we observe that after decoding in the first two iterations, the ratio of cells that lie in the error-prone area (i.e., adjacent area of two cell states) can be obtained. The ratio is closely related to the final read level for a successful decoding. By exploiting this observation, PreLDPC directly uses the predicted read level for LDPC reading, which could eliminate the excessive number of read retries. Furthermore, by exploiting the benefit of fine-grained LDPC reading, this article further divides the existing integer level (called i-level, e.g., level-1 and level-2) into a finer decimal level (called d-level, e.g., level-1.25 and level-1.5), and proposes a fine-grained read method. By combining the prediction method and fine-grained method together, PreLDPC can first estimate the i-level and then perform the read-retry iteration with d-levels to eliminate unnecessary read latency as much as possible. From experimental results of real-world workloads on Disksim with SSD extensions, it is verified that PreLDPC can effectively reduce read latency in high-density flash memories.

References

[1]
C. Siau, K.-H. Kim, and S. Lee, “13.5 a 512Gb 3-bit/cell 3D flash memory on 128-Wordline-layer with 132MB/s write performance featuring circuit-under-array technology,” in Proc. IEEE Int. Solid-State Circuits Conf. (ISSCC), 2019, pp. 218–220.
[2]
C. Kimet al., “A 512-gb 3-b/cell 64-stacked WL 3-D-NAND flash memory,” IEEE J. Solid-State Circuits, vol. 53, no. 1, pp. 124–133, Jan. 2018.
[3]
D. Kang, M. Kim, and S. Jeon, “13.4 a 512gb 3-bit/cell 3D 6th-generation V-NAND flash memory with 82MB/s write throughput and 1.2gb/s interface,” in Proc. IEEE Int. Solid-State Circuits Conf. (ISSCC), 2019, pp. 216–218.
[4]
S. Lee, C. Kim, and M. Kim, “A 1Tb 4b/cell 64-stacked-WL 3D NAND flash memory with 12MB/s program throughput,” in Proc. IEEE Int. Solid-State Circuits Conf. (ISSCC), 2018, pp. 340–342.
[5]
M. Huang, Z. Liu, L. Qiao, Y. Wang, and Z. Shao, “An endurance-aware metadata allocation strategy for MLC NAND flash memory storage systems,” IEEE Trans. Comput.-Aided Design Integr. Circuits Syst., vol. 35, no. 4, pp. 691–694, Apr. 2016.
[6]
Q. Xionget al., “Characterizing 3D floating gate NAND flash: Observations, Analyses, and implications,” ACM Trans. Storage, vol. 14, no. 2, pp. 1–31, 2018.
[7]
W. Liuet al., “Modeling of threshold voltage distribution in 3D NAND flash memory,” in Proc. Design Autom. Test Europe Conf. Exhibit. (DATE), 2021, pp. 1729–1732.
[8]
D. J. MacKay, “Good error-correcting codes based on very sparse matrices,” IEEE Trans. Inf. Theory, vol. 45, no. 2, pp. 399–431, Mar. 1999.
[9]
M. Zhang, F. Wu, Y. Du, W. Liu, and C. Xie, “Pair-bit errors aware LDPC decoding in MLC NAND flash memory,” IEEE Trans. Comput.-Aided Design Integr. Circuits Syst., vol. 38, no. 12, pp. 2312–2320, Dec. 2019. [Online]. Available: https://doi.org/10.1109/TCAD.2018.2878132
[10]
R.-S. Liu, M.-Y. Chuang, C.-L. Yang, C.-H. Li, K.-C. Ho, and H.-P. Li, “EC-cache: Exploiting error locality to optimize LDPC in NAND flash-based SSDs,” in Proc. ACM Design Autom. Conf. (DAC), 2014, pp. 1–6.
[11]
K. C. Ho, P. C. Fang, H. P. Li, C. Wang, and H. C. Chang, “A 45nm 6b/cell charge-trapping flash memory using LDPC-based ECC and drift-immune soft-sensing engine,” in IEEE Int. Solid-state Circuits Conf. Dig. Tech. Papers, 2013, pp. 222–223.
[12]
Y. Cai, E. F. Haratsch, O. Mutlu, and K. Mai, “Error patterns in MLC NAND flash memory: Measurement, characterization, and analysis,” in Proc. IEEE DATE, 2012, pp. 521–526.
[13]
Q. Li, L. Shi, C. Gao, Y. Di, and C. J. Xue, “Access characteristic guided read and write cost regulation for performance improvement on flash memory,” IEEE Trans. Comput., vol. 67, no. 12, pp. 1663–1676, Dec. 2018.
[14]
K. Zhao, W. Zhao, H. Sun, X. Zhang, N. Zheng, and T. Zhang, “LDPC-in-SSD: Making advanced error correction codes work effectively in solid state drives,” presented at the 11th USENIX Conf. File Storage Technol. (FAST), 2013, pp. 243–256.
[15]
J. Wanget al., “Enhanced precision through multiple reads for LDPC decoding in flash memories,” IEEE J. Sel. Areas Commun., vol. 32, no. 5, pp. 880–891, May 2014.
[16]
G. Dong, N. Xie, and T. Zhang, “On the use of soft-decision error-correction codes in nand flash memory,” IEEE Trans. Circuits Syst. I, Reg. Papers, vol. 58, no. 2, pp. 429–439, Feb. 2011.
[17]
T. Kim and J. Park, “Logistic regression for LDPC decoding failure prediction,” in Proc. IEEE 18th Annu. Consum. Commun. Netw. Conf. (CCNC), 2021, pp. 1–6.
[18]
J. S. Bucy, J. Schindler, S. Schlosser, and G. Ganger. “The DiskSim Simulation Environment (v4.0).” 2008. Accessed: Nov. 2018. [Online]. Available: https://www.pdl.cmu.edu/DiskSim/
[19]
A. Silvagni, “3D NAND flash based on planar cells,” Computers, vol. 6, p. 28, Oct. 2017.
[20]
R. Micheloni, L. Crippa, C. Zambelli, and P. Olivo, “Architectural and integration options for 3D NAND flash memories,” Computers, vol. 6, no. 3, p. 27, 2017.
[21]
M. Jia, Y. Kong, X. Zhan, M. Zhang, F. Wu, and J. Chen, “Optimal program-read schemes towards highly reliable open block operations in 3D charge-trap NAND flash memory,” IEEE Trans. Comput.-Aided Design Integr. Circuits Syst., vol. 41, no. 11, pp. 4797–4807, Nov. 2022.
[22]
C. Gao, L. Shi, K. Wu, C. J. Xue, and H. M. Sha, “Exploit asymmetric error rates of cell states to improve the performance of flash memory storage systems,” in Proc. IEEE Int. Conf. Comput. Design, 2014, pp. 202–207.
[23]
C. Gao, X. Xin, Y. Lu, Y. Zhang, J. Yang, and J. Shu, “ParaBit: Processing parallel bitwise operations in NAND flash memory based SSDs,” in Proc. 54th Annu. IEEE/ACM Int. Symp. Microarchitect. (MICRO), 2021, pp. 59–70.
[24]
Y. Cai, S. Ghose, E. F. Haratsch, Y. Luo, and O. Mutlu, “Error characterization, mitigation, and recovery in flash-memory-based solid-state drives,” Proc. IEEE, vol. 105, no. 9, pp. 1666–1704, Sep. 2017.
[25]
Y. Cai, Y. Luo, S. Ghose, E. F. Haratsch, K. Mai, and O. Mutlu. “Read Disturb Errors in MLC NAND Flash Memory.” 2018. [Online]. Available: https://arxiv.org/abs/1805.03283
[26]
V. Taranalli, “Error characterization, channel modeling and coding for flash memories,” Ph.D. dissertation, Elect. Eng., Univ. California, San Diego, San Diego, CA, USA, 2017.
[27]
N. Papandreou, T. Parnell, H. Pozidis, T. Mittelholzer, and A. Walls, “Enhancing the reliability of MLC NAND flash memory systems by read channel optimization,” ACM Trans. Design Autom. Electron. Syst., vol. 20, no. 4, pp. 1–24, 2015.
[28]
T. Takahashi, S. Yamazaki, and K. Takeuchi, “Data-retention time prediction of long-term archive SSD with flexible-nLC NAND flash,” in Proc. Rel. Phys. Symp., 2016, pp. 1–8.
[29]
Y. Pan, H. Zhang, R. Yu, Z. Lu, H. Zhang, and Z. Liu, “LightWarner: Predicting failure of 3D NAND flash memory using reinforcement learning,” IEEE Trans. Comput., early access, Jun. 17, 2022. 10.1109/TC.2022.3184270.
[30]
T.-C. Yu, C.-H. Wu, and Y.-Q. Liao, “CRRC: Coordinating retention errors, read disturb errors and Huffman coding on TLC NAND flash memory,” IEEE Trans. Depend. Secure Comput., early access, May 26, 2022. 10.1109/TDSC.2022.3177812.
[31]
M. Ye, Q. Li, C. Gao, S. Deng, T.-W. Kuo, and C. J. Xue, “Stop unnecessary refreshing: Extending 3D NAND flash lifetime with ORBER,” CCF Trans. High Perform. Comput., vol. 4, pp. 281–301, Jun. 2022.
[32]
W. Liu, F. Wu, S. Meng, X. Chen, and C. Xie, “Error generation for 3D NAND flash memory,” in Proc. Design Autom. Test Europe Conf. Exhibit. (DATE), 2022, pp. 56–59.
[33]
L. Qiao, S. Liang, Y. Di, Y. Du, and E. Sha, “Exploiting process variation for read performance improvement on LDPC based flash memory storage systems,” in Proc. IEEE 35th Int. Conf. Comput. Design (ICCD), 2017, pp. 681–684.
[34]
M. C. Yang, Y. H. Chang, C. W. Tsao, and P. C. Huang, “New ERA: New efficient reliability-aware wear leveling for endurance enhancement of flash storage devices,” in Proc. 50th ACM/EDAC/IEEE Design Autom. Conf. (DAC), 2013, pp. 1–8.
[35]
D. Wei, L. Deng, L. Qiao, Z. Peng, and X. Peng, “PEVA: A page endurance variance aware strategy for the lifetime extension of NAND flash,” IEEE Trans. Very Large Scale Integr. (VLSI) Syst., vol. 24, no. 5, pp. 1749–1760, May 2016.
[36]
L. Shi, Y. Di, M. Zhao, C. J. Xue, K. Wu, and H. M. Sha, “Exploiting process variation for write performance improvement on NAND flash memory storage systems,” IEEE Trans. Very Large Scale Integr. (VLSI) Syst., vol. 24, no. 1, pp. 334–337, Jan. 2016.
[37]
A. Spessot, A. Calderoni, P. Fantini, A. S. Spinelli, and A. Marmiroli, “Variability effects on the VT distribution of nanoscale NAND flash memories,” in Proc. Rel. Phys. Symp., 2010, pp. 1–9.
[38]
Y. Luo, S. Ghose, Y. Cai, E. F. Haratsch, and O. Mutlu, “Improving 3D NAND flash memory lifetime by tolerating early retention loss and process variation,” in Proc. ACM Int. Conf. Meas. Model. Comput. Syst., 2018, pp. 106–106.
[39]
J. Cui, Z. Zeng, J. Huang, W. Yuan, and L. T. Yang, “Improving 3D NAND SSD read performance by parallelizing read-retry,” IEEE Trans. Comput.-Aided Design Integr. Circuits Syst., early access, Jul. 14, 2022. 10.1109/TCAD.2022.3191256.
[40]
A. Marelli and R. Micheloni, BCH and LDPC Error Correction Codes for NAND Flash Memories. Berlin, Germany: Springer, 2016.
[41]
G. Dong, N. Xie, and T. Zhang, “Enabling NAND flash memory use soft-decision error correction codes at minimal read latency overhead,” IEEE Trans. Circuits Syst. I, Reg. Papers, vol. 60, no. 9, pp. 2412–2421, Sep. 2013.
[42]
X. Chen, H. Li, J. Qu, and A. Razi, “Boosting belief propagation for LDPC codes with deep convolutional neural network predictors,” in Proc. IEEE 18th Annu. Consum. Commun. Netw. Conf. (CCNC), 2021, pp. 1–6.
[43]
C. A. Aslam, L. G. Yong, and K. Cai, “Retention-aware belief-propagation decoding for NAND flash memory,” IEEE Trans. Circuits Syst. II, Exp. Briefs, vol. 64, no. 6, pp. 725–729, Jun. 2017.
[44]
Q. Li, L. Shi, Y. Cui, and C. J. Xue, “Exploiting asymmetric errors for LDPC decoding optimization on 3D NAND flash memory,” IEEE Trans. Comput., vol. 69, no. 4, pp. 475–488, Apr. 2020.
[45]
MSR Cambridge Traces.” Accessed: Feb. 12, 2023. [Online]. Available: https://iotta.snia.org/traces/388
[46]
Storage-UMASS Trace Repository.” Accessed: Feb. 12, 2023. [Online]. Available: https://traces.cs.umass.edu/index.php/Storage/Storage
[47]
Y. Du, D. Zou, Q. Li, L. Shi, H. Jin, and C. J. Xue, “LaLDPC: Latency-aware LDPC for read performance improvement of solid state drives,” in Proc. IEEE Int. Conf. Massive Storage Syst. Technol. (MSST), 2017, pp. 1–6.
[48]
Y. Du, Y. Zhou, M. Zhang, W. Liu, and S. Xiong, “Adapting layer RBERs variations of 3D flash memories via multi-granularity progressive LDPC reading,” in Proc. 56th Annu. Design Autom. Conf., 2019, p. 37.
[49]
M. Zhang, F. Wu, X. He, P. Huang, S. Wang, and C. Xie, “REAL: A retention error aware LDPC decoding scheme to improve NAND flash read performance,” in Proc. IEEE Symp. Mass Storage Syst. Technol. (MSST), 2016, pp. 1–13.
[50]
F. Wuet al., “Using error modes aware LDPC to improve decoding performance of 3D TLC NAND flash,” IEEE Trans. Comput.-Aided Design Integr. Circuits Syst., vol. 39, no. 4, pp. 909–921, Apr. 2020.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems  Volume 42, Issue 10
Oct. 2023
350 pages

Publisher

IEEE Press

Publication History

Published: 01 October 2023

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 25 Dec 2024

Other Metrics

Citations

Cited By

View all

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media