Dynamic Program Time Adjustment for Non-Volatile Memory Programming Speed

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional non-volatile memory systems face inefficiencies in programming time due to fixed program time allocation, which becomes inadequate as programming voltage increases, requiring more pulses and reducing system performance.

Innovation Solution

The program time allocated for voltage pump pulses is dynamically adjusted based on the number of pulses generated or the amplitude of pulses provided, ensuring a constant effective program time, thereby optimizing programming speed and reducing the number of pulses needed to reach threshold voltages.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If fixed program time allocation is used, then device complexity is reduced, but programming speed deteriorates as programming voltage increases

Engineering Contradiction:
Improveprogram time controlVSAvoidprogramming speed
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent applies dynamics by transitioning from a fixed program time allocation to a variable program time allocation that adapts to the programming voltage level. The program time is dynamically adjusted based on the charge pump output voltage, allowing the system to optimize programming speed at each voltage stage while maintaining manageable complexity through automated control.

Inventive Principle:
Principle #15Dynamics

2Productivity

If programming voltage is increased to program more cells, then productivity improves, but program time requirement increases

Engineering Contradiction:
Improvenumber of cells programmedVSAvoidprogram time
Core Design Contradiction:
ProductivityVSDuration of action of moving object

Solution Approach 1:

The patent dynamically adjusts program time based on the programming voltage level. As the charge pump generates higher voltages to program more cells, the program time is automatically extended to accommodate the increased voltage application duration, thereby maintaining productivity while handling larger cell counts.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the program time parameter in response to changes in programming voltage. By monitoring the charge pump output voltage and adjusting program time accordingly, the system optimizes the balance between programming speed and the ability to handle increasing numbers of cells.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If program time is extended to accommodate high voltage pulses, then programming speed is maintained, but total programming time increases

Engineering Contradiction:
Improveprogramming speedVSAvoidtotal programming time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies dynamics by making program time variable rather than fixed. The program time is extended only when necessary to accommodate high voltage pulses, and remains shorter for lower voltage stages. This dynamic adjustment maintains programming speed while minimizing total programming time compared to a uniformly extended approach.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS7327608B2Program time adjustment as function of program voltage for improved programming speed in programming method
Publication Date: 2008.02.05 SANDISK TECHNOLOGIES LLC
  • US7327608B2 patent drawing
  • US7327608B2 patent drawing
  • US7327608B2 patent drawing

AI summary

In a non-volatile memory system, the programming time period allocated for the program pulse is adjusted as a function of the voltage level of the pump pulse required so that the total number of pump pulses required to program the charge storage element to the required threshold voltage is reduced. For example, programming time period may be increased with an increase in the voltage level of the pump pulse required. This allows the programming time period of the program pulse to be increased to a value that compensates for the increased charge-up time that is required for the higher amplitude program pulses to reach the desired programming voltage.