Adaptive NVM Programming via Cell Grouping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing non-volatile memory (NVM) devices face challenges in ensuring sufficient current for programming due to process variations and marginal supply voltage, leading to inefficient programming even with oversized charge pumps.
Innovation Solution
Implementing control logic to divide NVM cells into groups and program them in different cycles, reducing the current load on the charge pump by halving the number of cells in each cycle until successful programming is achieved, allowing the charge pump to reach the target voltage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If an oversized charge pump is used to ensure sufficient current under worst case conditions, then the charge pump can provide enough current for programming, but the charge pump may still be too weak due to process variation or marginal supply voltage
Solution Approach 1:
The patent divides the NVM cells into multiple groups and programs them in sequential cycles rather than programming all cells simultaneously. This segmentation reduces the current demand on the charge pump during each programming cycle, allowing the charge pump to deliver sufficient current even under marginal conditions without requiring an oversized design.
2Productivity
If all NVM cells are programmed simultaneously in a single cycle, then programming speed is maximized, but the current load on the charge pump becomes excessive
Solution Approach 1:
The patent segments the NVM cells into multiple groups and distributes programming across multiple cycles. This reduces the simultaneous current demand on the charge pump while maintaining acceptable programming throughput by processing cells in batches rather than all at once.
Solution Approach 2:
The patent implements periodic programming cycles where cells are programmed in batches over multiple iterations. This periodic action allows the charge pump to deliver current in manageable pulses rather than continuous high demand, reducing peak power requirements while completing programming.
3Power
If the charge pump delivers high current to program NVM cells, then programming is achieved, but the charge pump cannot reach target voltage under suboptimal conditions
Solution Approach 1:
By dividing NVM cells into groups and programming them sequentially, the patent reduces the current demand on the charge pump during each cycle. This allows the charge pump to achieve and maintain target voltage levels more reliably, even under suboptimal supply conditions, since the reduced current demand prevents voltage droop.
Data Source
AI summary
In an embodiment, a method of programming non-volatile memory (NVM) comprises: determining, by control logic of an NVM system, a number of unsuccessful attempts to program NVM cells; responsive to the determining, dividing the NVM cells into at least a first group and a second group; programming the first group during a first programming cycle; and programming the second group during a second programming cycle, wherein the first programming cycle and second programming cycle are different.


