Non-systematic ECC Encoding for Flash Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash memory devices face issues with localized damage to error correction codes and the storage of data in plaintext formats, leading to increased data loss and security vulnerabilities due to complex ECC hardware and susceptibility to errors.

Innovation Solution

Implementing non-systematic ECC encoding and distributed ECC codes within memory segments, allowing for reduced complexity error detection and correction hardware, and ensuring user data is stored in an encoded format to enhance security and robustness.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If systematic ECC encoding is used with separate overhead data areas, then error detection and correction can be performed, but the ECC codes become susceptible to localized damage and require complex hardware

Engineering Contradiction:
Improveerror detection and correction capabilityVSAvoidECC hardware complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges the user data and ECC codes into a single encoded data structure where the ECC codes are distributed throughout the encoded data rather than stored separately. This integration reduces hardware complexity by eliminating separate overhead data area management while maintaining error detection and correction capabilities through the distributed code structure.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The ECC codes are segmented and distributed throughout the encoded data at multiple locations rather than concentrated in a single overhead area. This segmentation approach makes the system more robust against localized damage since no single point of failure can corrupt all ECC codes, and simplifies hardware by avoiding complex overhead management.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If user data is stored in plaintext format in memory, then data can be easily accessed, but security vulnerabilities arise from potential unauthorized access

Engineering Contradiction:
Improvedata accessibilityVSAvoidsecurity vulnerabilities
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

Solution Approach 1:

The patent applies preliminary encoding to user data before storage in the memory array. The encoding process transforms plaintext data into an encoded format that maintains accessibility for authorized operations while providing security against unauthorized access. The data is prepared in advance with protective encoding before being written to memory.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If ECC codes are stored in separate overhead data areas, then error correction can be performed, but localized damage to overhead areas can cause data loss

Engineering Contradiction:
Improveerror correction capabilityVSAvoiddata loss from localized damage
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The ECC codes are divided and distributed throughout the encoded data at multiple locations rather than concentrated in a single overhead area. This segmentation ensures that localized damage to any single location does not result in complete loss of error correction capability, as remaining distributed code segments can still provide protection.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different portions of the encoded data contain different segments of the ECC codes, creating local redundancy. This distribution strategy ensures that each location contributes to the overall error correction capability, and damage to any local area does not compromise the entire system's reliability.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS7444579B2Non-systematic coded error correction
Publication Date: 2008.10.28 OVONYX MEMORY TECHNOLOGY LLC
  • US7444579B2 patent drawing
  • US7444579B2 patent drawing
  • US7444579B2 patent drawing

AI summary

Improved memory devices, circuitry, and data methods are described that facilitate the detection and correction of data in memory systems or devices by encoding the data bits of a memory row or block in a non-systematic ECC code. This allows memory embodiments of the present invention to utilize reduced complexity error detection and correction hardware and/or routines to efficiently detect and correct corrupted user data in a segment of memory, such as a sector, word line row, or erase block. Additionally, in embodiments of the present invention user data is not stored in a plaintext format in the memory array, allowing for an increased level of data security. Further, in embodiments of the present invention, the ECC code is distributed throughout the stored data in the memory segment, increasing the robustness of the ECC code and its resistance to damage or data corruption.