Encoded Bit Inversion for Reliable Low-Power Asymmetric Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory technologies face challenges in reliability and power consumption, particularly in asymmetric memories like MRAM and R-RAM, where stuck-at faults and power consumption vary significantly between writing 0 and 1, and existing data storage methods do not effectively address these issues.

Innovation Solution

The proposed solution involves an apparatus and method that uses data inversion techniques, employing a processing unit to encode bits using a linear error correcting code and determine an inversion decision to either store bits directly or invert them, thereby adapting to the specific fault patterns and energy requirements of the memory type.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is stored directly without inversion in asymmetric memories, then the storage process is simple, but reliability deteriorates due to stuck-at faults and unidirectional errors

Engineering Contradiction:
Improvememory reliabilityVSAvoiddata storage complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies data inversion by determining whether to invert subsets of encoded bits before storage based on error patterns. When unidirectional errors or stuck-at faults are detected, the system inverts the data (changing 0s to 1s and vice versa) to mask these errors. This inversion strategy directly addresses reliability issues in asymmetric memories by transforming the data representation to compensate for systematic errors.

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The patent employs preliminary error detection and inversion decision-making before data storage. The processing unit encodes data with error correcting codes, detects potential error patterns, and determines inversion decisions prior to writing data to memory. This preliminary action prevents errors from being stored in the first place, improving reliability without requiring complex post-storage correction mechanisms.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If data inversion is applied to mask faults, then reliability improves, but power consumption increases due to additional processing operations

Engineering Contradiction:
Improvememory reliabilityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent applies local quality by inverting only specific subsets of bits rather than the entire data word. The system divides encoded data into subsets and applies inversion selectively based on detected error patterns. This localized approach reduces the computational overhead and power consumption compared to inverting all bits, while still effectively masking the relevant errors in the affected subsets.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes the parameter of data representation by inverting bit values (0 to 1, 1 to 0) based on detected error conditions. This parameter change transforms the data to mask errors while requiring minimal processing energy, as inversion is a simple bitwise operation rather than a complex transformation.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If error correcting codes with code distance at least 3 are used, then error correction capability improves, but device complexity increases due to encoding and decoding operations

Engineering Contradiction:
Improveerror correction capabilityVSAvoidcoding complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies partial action by using error correcting codes with code distance at least 3, which provides correction capability for up to 1 error per codeword. This level of correction is sufficient for many applications without requiring the more complex overhead of higher-distance codes. The system balances error correction capability with acceptable coding complexity by selecting the minimum necessary code distance.

Inventive Principle:
Principle #16Partial or excessive action

4Reliability

If subsets of encoded bits are inverted based on error patterns, then error masking improves, but processing time increases due to inversion decision-making

Engineering Contradiction:
Improveerror masking capabilityVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs inversion decision-making as a preliminary action during the data writing process rather than during reading or later processing. The system determines whether to invert subsets of bits before data is stored in memory, which prevents errors from being stored in the first place. This timing optimization reduces overall processing time compared to performing inversion decisions after data retrieval.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9582354B2Apparatus and method for improving data storage by data inversion
Publication Date: 2017.02.28 INFINEON TECHNOLOGIES AG
  • US9582354B2 patent drawing
  • US9582354B2 patent drawing
  • US9582354B2 patent drawing

AI summary

An apparatus includes a processing unit and a memory. The processing unit is configured to encode a plurality of bits to obtain a plurality of encoded bits, the processing unit is configured to determine an inversion decision. When the inversion decision indicates that the subset of the encoded bits shall not be inverted, the processing unit is configured to store, as a stored word, bits of the first codeword into the memory. When the inversion decision indicates that the subset of the encoded bits shall be inverted, the processing unit is configured to invert each encoded bit of a subset of the encoded bits to obtain a second codeword and to store the second codeword into the memory.