Memory Controller Read Voltage Adjustment for Data Integrity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional semiconductor memory systems face challenges in maintaining data integrity due to changes in the amount of charges held in memory cells over time, leading to errors during read operations, as the read voltage needs to be adjusted to account for these changes.

Innovation Solution

The memory system employs a memory controller that adjusts the read voltage based on the comparison of data groups to minimize errors by calculating an estimation value for the read voltage, using error correction codes and voltage estimation processes to determine optimal read voltages for accurate data retrieval.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the read voltage is adjusted to account for charge changes in memory cells, then data integrity is improved, but device complexity increases due to voltage estimation processes

Engineering Contradiction:
Improvedata integrityVSAvoidvoltage estimation process
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The memory system performs self-diagnosis by comparing read data with expected data patterns to automatically detect errors and adjust read voltages without external intervention. The controller monitors its own operation and self-corrects voltage drift, making the system self-maintaining and reducing the need for complex external calibration equipment.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements a feedback mechanism where read operations are continuously monitored for errors, and the read voltage is adjusted based on detected error patterns. The controller uses error detection results to dynamically modify subsequent read operations, creating a closed-loop control system that automatically optimizes data integrity through iterative voltage adjustment.

Inventive Principle:
Principle #23Feedback

2Reliability

If error correction codes are used to detect and correct data errors, then reliability is improved, but processing time increases

Engineering Contradiction:
Improveerror detection and correctionVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary error detection during the read operation itself by comparing data against expected patterns before full data processing begins. Error correction codes are pre-calculated and applied during the read process rather than as a separate post-processing step, allowing early detection and correction that minimizes overall processing time impact.

Inventive Principle:
Principle #10Preliminary action

3Manufacturing precision

If read voltage is shifted according to charge changes, then manufacturing precision requirements are reduced, but energy consumption increases

Engineering Contradiction:
Improvecharge threshold controlVSAvoidenergy consumption
Core Design Contradiction:
Manufacturing precisionVSUse of energy by moving object

Solution Approach 1:

The system dynamically changes the read voltage parameter in response to detected charge threshold drift. Instead of maintaining a fixed read voltage, the controller adjusts the voltage level based on monitored charge changes in memory cells, allowing the system to adapt to manufacturing variations and charge degradation over time while minimizing energy consumption through targeted rather than continuous voltage adjustment.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10347353B2Memory system
Publication Date: 2019.07.09 KIOXIA CORP
  • US10347353B2 patent drawing
  • US10347353B2 patent drawing
  • US10347353B2 patent drawing

AI summary

According to one embodiment, a memory system includes a semiconductor memory and a memory controller. The memory controller writes a first data group in the semiconductor memory and then reads the first data group from the semiconductor memory. The memory controller counts a number of first data and a number of second data based on a comparison of a second data group with a third data group. The memory controller changes a first charge threshold based on the number of first data and the number of second data. The second data group is the first data group at the time of writing to the semiconductor memory. The third data group is the first data group read from the semiconductor memory. The first data is data changed from a first code to a second code. The second data is data changed from the second code to the first code.