Adaptive Programming Voltage for Non-Volatile Memory Cells
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Non-volatile memory devices face issues with threshold voltage shifts due to insulative layer degradation, leading to over-programming and read errors, which existing technologies fail to address effectively.
Innovation Solution
An on-die controller in the memory die adapts programming settings by determining if the current programming voltage causes suboptimal programming and stores a revised, lower programming voltage without erasing the original setting, using a dummy word line and spare columns to store and retrieve these settings efficiently.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a fixed programming voltage is used, then the programming process is simple, but threshold voltage shifts cause over-programming and read errors
Solution Approach 1:
The patent implements dynamic programming voltage adjustment by monitoring threshold voltage shifts and adapting the programming voltage accordingly. The system transitions from a fixed voltage approach to a dynamic one where the programming voltage is adjusted based on real-time cell conditions, preventing over-programming while maintaining programming effectiveness
Solution Approach 2:
The patent employs feedback mechanisms where the programming process monitors cell state changes and uses this information to adjust subsequent programming voltages. This closed-loop control ensures that programming stops at the optimal point, avoiding over-programming while maintaining simplicity through automated voltage adaptation
2Productivity
If programming voltage is increased to ensure data writing, then programming speed improves, but insulative layer degradation accelerates
Solution Approach 1:
The patent dynamically changes the programming voltage parameter based on cell conditions and programming progress. By adjusting the voltage to match actual cell needs rather than using a consistently high voltage, the system maintains programming speed while reducing stress on insulative layers and extending device lifespan
Solution Approach 2:
The patent applies programming voltage in controlled amounts, using just enough voltage to achieve successful programming without excessive voltage that would accelerate degradation. This partial action approach ensures sufficient programming speed while preserving device reliability
3Reliability
If programming voltage is reduced to prevent over-programming, then device lifespan extends, but programming reliability decreases
Solution Approach 1:
The system dynamically adjusts programming voltage based on real-time monitoring of cell threshold voltage shifts. This dynamic approach allows the system to use lower voltages when appropriate (extending lifespan) while maintaining programming accuracy through continuous adaptation to cell conditions
Solution Approach 2:
The programming system performs self-adjustment by monitoring its own effectiveness and automatically modifying the programming voltage. This self-service capability ensures that the system maintains programming precision without requiring external intervention, while using minimal necessary voltage to preserve device lifespan
Data Source
AI summary
Apparatuses, systems, and methods are disclosed for adjusting a programming setting such as a programming voltage of a set of non-volatile storage cells, such as an SLC NAND array. The non-volatile storage cells may be arranged into a plurality of word lines. A subset of the non-volatile storage cells may be configured to store a programming setting. An on-die controller may be configured to read the programming setting from the setting subset, and write data to the non-volatile storage cells, using the programming setting. The on-die controller may further be configured to determine that the programming setting causes suboptimal programming of one or more of the non-volatile storage cells, and in response to the determination, store a revised programming setting on the setting subset.


