Memory Cell Data Scrambling to Limit Charge Migration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Charge migration between neighboring memory cells in a memory system leads to increased raw bit error rates and reduced reliability due to differences in electron concentration, which can be exacerbated by programming memory cells to different states.

Innovation Solution

A memory system that generates a scrambling seed to scramble data before programming, compares the states of scrambled data with neighboring cells, and adjusts the scrambling seed until the aggregate difference in states is below a threshold to minimize charge migration.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If memory cells are programmed to different states, then data storage capability is improved, but charge migration increases and reliability deteriorates

Engineering Contradiction:
Improvedata storage capabilityVSAvoidmemory reliability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system performs preliminary actions by evaluating the aggregate difference between states of neighboring memory cells before programming occurs. The controller compares the first set of states with the second set of states and determines whether the aggregate difference satisfies a threshold condition, taking preventive action to avoid charge migration issues before they arise

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback by continuously monitoring the aggregate difference between neighboring cell states and using this information to determine whether to proceed with programming or generate a new scrambling seed. This feedback loop ensures that charge migration is prevented by adjusting the programming operation based on real-time state comparisons

Inventive Principle:
Principle #23Feedback

2Productivity

If data is programmed without scrambling, then programming speed is improved, but charge migration increases due to state differences

Engineering Contradiction:
Improveprogramming speedVSAvoidcharge migration
Core Design Contradiction:
ProductivityVSObject-generated harmful factors

Solution Approach 1:

The controller performs preliminary evaluation of state differences and scrambling operations before the actual programming occurs. By determining whether the aggregate difference satisfies the threshold and generating scrambled data in advance, the system prepares to minimize charge migration while maintaining efficient programming operations

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes the parameter of data state distribution by using scrambling to transform the data before programming. This parameter change ensures that neighboring cells have more similar electron concentrations, reducing the aggregate difference and minimizing charge migration during the programming process

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12525282B2Reducing charge migration in a memory system
Publication Date: 2026.01.13 MICRON TECHNOLOGY INC
  • US12525282B2 patent drawing
  • US12525282B2 patent drawing
  • US12525282B2 patent drawing

AI summary

Methods, systems, and devices for reducing charge migration in a memory system are described. The memory system may receive a command to program a first set of memory cells with first data. The memory system may generate a scrambling seed to scramble the first data. Before programming the scrambled data, the memory system may compare a first set of states in the scrambled data with a second set of states in second data to determine an aggregate difference between the sets of states. If the aggregate difference is less than a threshold, the memory system may program the first set of memory cells with the first data. If the aggregate difference is greater than a threshold, the memory system may generate a new scrambling seed to rescramble the first data and determine a new aggregate difference by comparing states of the rescrambled data to the states of the second data.