ECC and Hamming-Weight Encoding for Memory Tearing Errors

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data corruption due to tearing errors occurs when power is interrupted during writing or erasing operations in memory devices, such as RFID chips and IoT systems, leading to unreliable data storage.

Innovation Solution

Implementing a method that encodes data with an error correcting code (ECC) and Hamming weight, where the ECC has a minimum Hamming distance of at least 4t+1 to correct up to t bit errors and detect up to 3t bit errors, and concatenating the encoded data with multiple copies of the inverted Hamming weight to enhance error detection and correction.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is written to memory without enhanced error correction, then storage speed and simplicity are maintained, but data integrity deteriorates when power interruption occurs during write/erase operations

Engineering Contradiction:
Improvedata integrityVSAvoidencoding complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-calculating and storing the Hamming weight of the data before the actual write operation. This pre-computed metadata is stored alongside the encoded data, enabling rapid error detection and correction without adding complex real-time computation during the write process. The Hamming weight serves as a preliminary checksum that facilitates tearing error detection.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the error correction mechanism into distinct components: (1) traditional ECC encoding for bit-level errors, (2) Hamming weight calculation for unidirectional error detection, and (3) a combined decoding process that leverages both. This segmentation allows each component to specialize in detecting specific error types while maintaining overall system manageability and reducing the complexity of implementing a single monolithic error correction system.

Inventive Principle:
Principle #1Segmentation

2Reliability

If traditional ECC with minimum Hamming distance of 2t+1 is used, then up to t bit errors can be corrected, but detection of unidirectional tearing errors is insufficient

Engineering Contradiction:
Improveerror detection capabilityVSAvoidnumber of check bits
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent makes the Hamming weight check multi-functional by designing it to simultaneously detect unidirectional tearing errors and contribute to overall error correction. The same Hamming weight metadata serves dual purposes: (1) detecting power interruption tearing errors through comparison with expected values, and (2) providing additional constraints for the ECC decoder to resolve ambiguous error patterns. This multi-functionality avoids the need for separate dedicated tearing error detection mechanisms.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Reliability

If power interruption protection is implemented without Hamming weight encoding, then encoding overhead is reduced, but detection of tearing errors is insufficient

Engineering Contradiction:
Improvetearing error detectionVSAvoidencoding overhead
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent applies parameter changes by transforming the data representation through Hamming weight encoding. Instead of storing raw data or using conventional ECC alone, the system encodes data with an additional parameter - the Hamming weight - which captures the unidirectional error characteristics. This parameter transformation enables the detection of tearing errors without requiring substantial increases in overall encoding overhead, as the Hamming weight can be efficiently computed and stored.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12113550B1Enhanced tearing save encoding
Publication Date: 2024.10.08 NXP BV
  • US12113550B1 patent drawing
  • US12113550B1 patent drawing
  • US12113550B1 patent drawing

AI summary

A method for encoding data to be stored in a memory, including: encoding the data to be stored in memory with an error correcting code (ECC) as first encoded data, wherein the ECC is configured to have a minimum Hamming distance of at least 4t+1 in order to correct up to t bit errors and detect up to 3t bit errors where t≥1; determining a Hamming weight of the first encoded data; encoding the determined Hamming weight, wherein for all higher Hamming weights the encoding should have at least 2t+1 bit-positions that change from 1 to 0 per Hamming weight; concatenating the first encoded data and the encoded Hamming weight as concatenated data; and storing the concatenated data in the memory.