Memory Controller Bit-Level Error Correction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional memory controllers are unable to effectively correct uncorrectable errors in data stored in memory devices, often processing entire memory blocks as bad blocks, which can lead to inefficiencies and data loss.

Innovation Solution

A memory controller that includes a bit counter, flash translation layer, additional data generator, comparator, and error corrector to generate judgment and detection data, compare them, and correct uncorrectable errors by changing specific bits within the read data rather than marking entire blocks as bad, thereby allowing for precise error correction.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional memory controllers mark entire memory blocks as bad when errors are detected, then error handling is simplified, but data loss increases and storage efficiency decreases

Engineering Contradiction:
Improveerror correction capabilityVSAvoiddata loss
Core Design Contradiction:
ReliabilityVSLoss of substance

Solution Approach 1:

The patent segments the error correction process from the traditional block-level approach to bit-level operations. Instead of marking entire memory blocks as bad when errors occur, the system identifies and corrects only the specific erroneous bits within data packets, preserving the majority of functional data in each block and maintaining higher storage efficiency while improving reliability

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention applies local quality by implementing targeted error correction at the bit level rather than uniformly treating entire blocks. The memory controller generates judgment data and detection data to identify specific erroneous bits, then applies correction only to those localized positions, optimizing the balance between error handling and data preservation

Inventive Principle:
Principle #3Local quality

2Reliability

If bit-level error correction is implemented, then data integrity improves, but device complexity increases

Engineering Contradiction:
Improvedata integrityVSAvoidcontroller structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements preliminary action by pre-generating judgment data during the programming phase and storing it in the memory device. This judgment data contains information about the programmed data state, which is later used during reading to quickly identify errors without requiring complex real-time analysis, thus improving data integrity while managing controller complexity

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention introduces judgment data as an intermediary element that facilitates error detection and correction. This intermediate data structure serves as a mediator between the programmed data and the correction process, enabling the memory controller to identify and correct errors efficiently without directly analyzing the entire data structure, thereby balancing data integrity with manageable complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If conventional error correction methods are used, then processing speed is maintained, but uncorrectable errors cannot be corrected

Engineering Contradiction:
Improveprocessing speedVSAvoiduncorrectable error handling
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements feedback mechanisms by generating detection data from read data and comparing it with judgment data stored in the memory device. This feedback loop enables the memory controller to identify uncorrectable errors that conventional methods would miss, while the comparison-based approach maintains processing speed by avoiding exhaustive analysis of all data bits

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10990476B2Memory controller and method of operating the same
Publication Date: 2021.04.27 MIMIRIP LLC
  • US10990476B2 patent drawing
  • US10990476B2 patent drawing
  • US10990476B2 patent drawing

AI summary

Provided herein may be a memory controller and a method of operating the memory controller. The memory controller may control a memory device that stores data, and may include a bit counter configured to generate a count value by counting any one of bits in a programmed state and an erased state contained in the data, a flash translation layer configured to generate page information indicating an address of the data stored in the memory device, an additional data generator configured to generate judgment data for determining whether the data has changed, based on the count value and the page information, a comparator configured to generate comparison information by comparing the judgment data with detection data generated based on data read from the memory device, and a read data controller configured to perform an operation of correcting an error in the read data based on the comparison information.