Two-Pass Memory Programming Mitigates Quick Charge Loss
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In memory devices using multi-level cells, especially quad-level cells (QLCs), there is a challenge with quick charge loss (QCL) during two-pass programming, which leads to data loss and increased buffer requirements, resulting in overprovisioning penalties and reduced bit density.
Innovation Solution
Implementing an 8-16 two-pass programming technique where a subset of data is programmed to a readable 8 threshold voltage state in the first pass, with the remainder buffered, and the remaining data programmed to a readable 16 threshold voltage state in the second pass, using a controlled delay to mitigate QCL by ensuring the threshold voltage reaches a steady state before the second pass.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional two-pass programming is used for multi-level cells, then programming capability is achieved, but quick charge loss occurs leading to data loss and increased buffer requirements
Solution Approach 1:
The patent segments the data into two subsets: a first subset programmed to an 8 threshold voltage state in the first pass, and a second subset programmed to a 16 threshold voltage state in the second pass. This segmentation allows the system to manage quick charge loss by processing data in controlled portions across multiple passes, preventing complete data loss while maintaining programming reliability.
Solution Approach 2:
The patent applies preliminary action by programming the first subset of data to the 8 threshold voltage state before programming the second subset to the 16 threshold voltage state. This preliminary programming of the first subset ensures that critical data is secured before the quick charge loss affects the entire data structure, thereby preventing data loss.
2Reliability
If buffer space is increased to prevent data loss during two-pass programming, then data safety is improved, but overprovisioning penalty increases and bit density decreases
Solution Approach 1:
By segmenting data into first and second subsets with different programming requirements, the patent reduces the buffering needed. Only the second subset requires buffering during the first pass, rather than buffering all data, thereby reducing buffer space requirements and minimizing overprovisioning penalty while maintaining data safety.
Solution Approach 2:
The patent applies partial action by buffering only the second subset of data during the first pass, rather than buffering all data. This partial buffering approach provides sufficient data safety for the critical second pass programming while minimizing the buffer space requirements and avoiding excessive overprovisioning.
3Reliability
If threshold voltage reaches steady state before second pass programming, then quick charge loss is mitigated, but programming time increases
Solution Approach 1:
The patent segments the programming process into two distinct passes with a delay period between them. The first pass programs the first subset to 8 threshold voltage state, then a delay period allows the threshold voltage to reach steady state and mitigate quick charge loss, followed by the second pass programming the second subset to 16 threshold voltage state. This segmentation with intermediate delay effectively mitigates QCL while managing time through structured progression.
Solution Approach 2:
The patent applies preliminary action by introducing a delay period after the first pass programming before initiating the second pass. This preliminary delay allows the threshold voltage to reach steady state and mitigates quick charge loss effects, ensuring reliable programming in the second pass while accepting the time cost as a necessary preliminary step.
Data Source
AI summary
Exemplary methods, apparatuses, and systems include a quick charge loss (QCL) mitigation manager for controlling writing data bits to a memory device. The QCL mitigation manager receives a first set of data bits for programming to memory. The QCL mitigation manager writes a first subset of data bits of the first set of data bits to a first memory block of the memory during a first pass of programming. The QCL mitigation manager writes a second subset of data bits of the first set of data bits to the first memory block during a second pass of programming in response to determining that the threshold delay is satisfied.


