Neural Modulation for Flash Memory: An Unsupervised Learning Framework for Improved Reliability

Recent years have witnessed a significant increase in the storage density of NAND flash memory, making it a critical component in modern electronic devices. However, with the rise in storage capacity comes an increased likelihood of errors in data storage and retrieval. The growing number of errors poses ongoing challenges for system designers and engineers, in terms of the characterization, modeling, and optimization of NAND-based systems. We present a novel approach for modeling and preventing errors by utilizing the capabilities of generative and unsupervised machine learning methods. As part of our research, we constructed and trained a neural modulator that translates information bits into programming operations on each memory cell in NAND devices. Our modulator, tailored explicitly for flash memory channels, provides a smart writing scheme that reduces programming errors as well as compensates for data degradation over time. Specifically, the modulator is based on an auto-encoder architecture with an additional channel model embedded between the encoder and the decoder. A conditional generative adversarial network (cGAN) was used to construct the channel model. Optimized for the end-of-life work-point, the learned memory system outperforms the prior art by up to 56% in raw bit error rate (RBER) and extends the lifetime of the flash memory block by up to 25% .

Paper

Full text

PDF

Neural Modulation for Flash Memory: An Unsupervised Learning Framework for Improved Reliability

Semantic Scholar · Engineering · 2023

Abstract

Recent years have witnessed a significant increase in the storage density of NAND flash memory, making it a critical component in modern electronic devices. However, with the rise in storage capacity comes an increased likelihood of errors in data storage and retrieval. The growing number of errors poses ongoing challenges for system designers and engineers, in terms of the characterization, modeling, and optimization of NAND-based systems. We present a novel approach for modeling and preventing errors by utilizing the capabilities of generative and unsupervised machine learning methods. As part of our research, we constructed and trained a neural modulator that translates information bits into programming operations on each memory cell in NAND devices. Our modulator, tailored explicitly for flash memory channels, provides a smart writing scheme that reduces programming errors as well as compensates for data degradation over time. Specifically, the modulator is based on an auto-encoder architecture with an additional channel model embedded between the encoder and the decoder. A conditional generative adversarial network (cGAN) was used to construct the channel model. Optimized for the end-of-life work-point, the learned memory system outperforms the prior art by up to 56% in raw bit error rate (RBER) and extends the lifetime of the flash memory block by up to 25% .

Similar papers

Peer review

Reviewer zVdi7/10 · confidence 5/52023-06-17

Summary

A neural modulator is proposed and sufficient results are presented.

Strengths

Sufficient results are presented.

Weaknesses

No

Questions

1. What kind of noise added in the figure 1. 2. Elaborate briefly about the neural modulation comparison with conventional modulation. 3. Explain the experimental setup.

Rating

7: Accept: Technically solid paper, with high impact on at least one sub-area, or moderate-to-high impact on more than one areas, with good-to-excellent evaluation, resources, reproducibility, and no unaddressed ethical considerations.

Confidence

5: You are absolutely certain about your assessment. You are very familiar with the related work and checked the math/other details carefully.

Soundness

2 fair

Presentation

3 good

Contribution

3 good

Limitations

No

Reviewer 8xzT7/10 · confidence 4/52023-07-04

Summary

The paper introduces a programming method for 3D NAND flash memory. In 3D NAND, data is stored in the voltage level of cells. A cell can typically store a few bits of information (2,3,4 etc). As device density increases, the data is prone to multiple types of errors. The paper is targets two types of errors, those caused by inter-cell interference, and those caused by charge loss in time (retention error). The authors propose a machine learning scheme, based on an auto-encoder architecture with an additional cGAN (conditional generative adversarial network) between the encoder and the decoder. The auto-encoder model has been proposed before for communication systems. The addition of the cGAN is novel, and it is used to model the channel noise. The cGAN is used in order to overcome the fact that the flash channel is non-differentiable. The goal of the scheme is to predict better voltage thresholds for programming (data writing), by taking into account a more informative context for each cell (the value of its neighbors along the vertical channel dimension, and the position in the block). The new model is trained on data coming from on block of NAND and tested on data from 6 other blocks. Experimental evaluation shows a reduction of bit error rate by 56% and an extension of the program-erase cycles

Strengths

The topic is good application of modern machine learning tools the a specific problem of data storage in 3D NAND flash memory. The presentation is very clear, and the paper offers a good amount of details and background about all the components of the scheme.

Weaknesses

The paper has a very specialized focus, and the techniques that are presented may have limited impact. The experimental assessment is relatively small.

Questions

1. It seems not clear whether any part of the experimental evaluation was performed on a physical device, or it was simulated. Could you please give some details? 2. It seems that when you move to a new block, the SSL would be a new physical location. I'm wondering if it is useful to include this value in the context. In a similar vein, the ICI in 3D NAND is characterized in various sources, for example the one cited below. As we see there, of the two immediate neighbors in the pillar, the one that was programmed before has small ICI, while the one that will be programmed after has high ICI. Similarly, the neighbors along the logical wordline have significant ICI. Would it help to include this information, perhaps in a weighted fashion in your context? S. K. Park and J. Moon, "Characterization of Inter-Cell Interference in 3D NAND Flash Memory," in IEEE Transactions on Circuits and Systems I: Regular Papers, vol. 68, no. 3, pp. 1183-1192, March 2021, doi: 10.1109/TCSI.2020.3047484. 3. In a 3D NAND there are potentially thousands of blocks. Do you have a proposal for scaling your scheme, how should the training be performed?

Rating

7: Accept: Technically solid paper, with high impact on at least one sub-area, or moderate-to-high impact on more than one areas, with good-to-excellent evaluation, resources, reproducibility, and no unaddressed ethical considerations.

Confidence

4: You are confident in your assessment, but not absolutely certain. It is unlikely, but not impossible, that you did not understand some parts of the submission or that you are unfamiliar with some pieces of related work.

Soundness

3 good

Presentation

3 good

Contribution

2 fair

Limitations

N/A

Reviewer EdAW6/10 · confidence 4/52023-07-06

Summary

This paper presents a novel approach for improving the reliability of NAND flash memory by utilizing unsupervised learning and neural modulation techniques. The authors constructed and trained a neural modulator that reduces programming errors and compensates for data degradation over time. The proposed framework outperforms prior art by up to 56% in raw bit error rate (RBER) and extends the lifetime of the flash memory block by up to 25%.

Strengths

a. Overview: The study proposes a novel approach for modeling and preventing errors in NAND flash memory using generative and unsupervised machine learning methods. The authors utilize a neural modulator that translates information bits into programming operations on each memory cell, reducing programming errors and compensating for data degradation over time. The modulator is based on an auto-encoder architecture with a channel model embedded between the encoder and the decoder. The channel model is constructed using a conditional generative adversarial network (cGAN). b. Methods: The neural-modulation training procedure consists of two steps. In the first step, a cWGAN based channel model is trained using a set of vth reads of a single block programmed with given targets. The critic is used solely to train the generator and is then discarded. In the second step, the modulator and demodulator are jointly trained. The modulator translates a block of information symbols into vth targets. c. Experimental results: The trained channel model shows good performance in predicting the bit error rate (BER) and generating accurate histograms. The Wasserstein distance between the real and generated histograms is measured to be 6 ± 2 mV, which is comparable to the average distance between two real blocks in the same chip. The predicted BER has an error margin of up to 5%. The modulator extends the number of program/erase (PE) cycles by 25% before the memory device reaches its end-of-life (EOL) point.

Weaknesses

The overhead from programming such models is not adequately discussed

Questions

When quantizing the target, how 60 target is decided (in Appendix)? is it the goal to control BER gap within 0.02? Any rationale?

Rating

6: Weak Accept: Technically solid, moderate-to-high impact paper, with no major concerns with respect to evaluation, resources, reproducibility, ethical considerations.

Confidence

4: You are confident in your assessment, but not absolutely certain. It is unlikely, but not impossible, that you did not understand some parts of the submission or that you are unfamiliar with some pieces of related work.

Soundness

3 good

Presentation

3 good

Contribution

3 good

Limitations

The authors have clearly described the limitations and proposed the next works to tackle. No negative societal impact.

Reviewer KCDD6/10 · confidence 2/52023-07-07

Summary

* This paper introduces a unsupervised learning method using GAN for flash memory.

Strengths

* The paper is well written and organized, generally easy to follow. * To the best of my knowledge, this paper is the first to introduce an unsupervised technique to this kind of problem. * The core problem is well formatted. The idea of using a cWGAN as channel model looks interesting and intuitive in section 3. * Experimental results look promising, especially on extending storage life.

Weaknesses

Please see questions

Questions

* On Figure 7, it does give a view of generated WL from the generated model, is there quantized way to measure the quality? * On 3.5, quantization, to what degree to quantize and is there any effect on the overall performance? * How much resource does it take to run the modulator? Considering it is to be run on flash controllers.

Rating

6: Weak Accept: Technically solid, moderate-to-high impact paper, with no major concerns with respect to evaluation, resources, reproducibility, ethical considerations.

Confidence

2: You are willing to defend your assessment, but it is quite likely that you did not understand the central parts of the submission or that you are unfamiliar with some pieces of related work. Math/other details were not carefully checked.

Soundness

3 good

Presentation

3 good

Contribution

3 good

Limitations

The authors have discussed the limitation of modulator and channel model.

Reviewer yAhR7/10 · confidence 3/52023-07-25

Summary

The authors propose a generative model architecture for compensating for errors in NAND flash memory, with the goal of extending flash memory block lifetime. The architecture consists of a GAN and an autoencoder, where the encoder and decoder represent the memory’s modulator and demodulator respectively. The encoder predicts an optimal $v_{th}$ target for a cell, to which the GAN adds noise simulating errors that occur during writing and storage. The decoder then creates a recovered symbol from the perturbed $v_{th}$ value output by the GAN.

Strengths

- Memory lifetime and reliability are very important, and an ML approach to model and counteract memory errors sounds promising. In particular, using a GAN to simulate the errors that occur during storage by taking into account the ICI appears novel and is quite clever. A search returned no prior works on unsupervised ML for flash memory modulation. - Because the proposed technique modifies only the writing stage, the reading algorithm does not need to change. - The work is well-written and easy to understand, especially in explaining the workings of flash memory. - The graphics are useful for summarizing and visualizing the proposed method.

Weaknesses

- Though this appears to be the first unsupervised ML approach to flash memory modulation, no reference is provided to similar prior works on ML and flash memory. A quick search returned several, such as - https://ieeexplore.ieee.org/abstract/document/9205258 - https://iopscience.iop.org/article/10.35848/1347-4065/aba5e0/meta?casa_token=JMOIMn_8RJoAAAAA:EoRkZ4ZeYNlOcGh22YIgLcWTwCxmrbKxvvZF6sbHY3Blc7Nj93sAeaxFCbLdE1aaBL-CgyWbkGY - https://ieeexplore.ieee.org/abstract/document/9013031?casa_token=YNITahKT5uEAAAAA:f0HrohD0iLmhUh5PhI_lKSk2GL5rNulHxe3dBhO4nnHo_8iTJdO6mp7uIVi0aFcWrEV9bGBPJA - The figure references on lines 315 and 322 (for figures 9a and 9b) appear to be switched. - The error bars on figure 9a suggest that the difference in retention time between default and modulated targets is not significant.

Questions

- We customize the $v_th$ target for a given cell, but assume the neighbors use default target values. Would it not be better for the encoder to predict target values for the entire vector of symbols for the WL, then see how the GAN would distort the WL? - If the GAN is trained based on a channel model, how realistic does this model have to be? For instance, should we make a new GAN for each class of flash device, for each operating condition such as varying temperatures, etc.? - Section 4.1: Why do you perturb like this? What is the range of the targets? - In a real-world application, it would be necessary to run the encoder on each write operation. Does this greatly increase writing latency?

Rating

7: Accept: Technically solid paper, with high impact on at least one sub-area, or moderate-to-high impact on more than one areas, with good-to-excellent evaluation, resources, reproducibility, and no unaddressed ethical considerations.

Confidence

3: You are fairly confident in your assessment. It is possible that you did not understand some parts of the submission or that you are unfamiliar with some pieces of related work. Math/other details were not carefully checked.

Soundness

3 good

Presentation

3 good

Contribution

4 excellent

Limitations

No

Reviewer 8xzT2023-08-12

Thank you for the detailed answers. I will increase my rating from 6 to 7.

Reviewer yAhR2023-08-12

Thank you for the further details and graphics, I will increase my rating from 6 to 7 as well.

Program Chairsdecision2023-09-21

Decision

Accept (poster)

© 2026 NYSGPT2525 LLC