Fixed-Capability ECC Engine with Product Codes for Memory Reliability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory systems face inefficiencies due to the complexity and increased area occupied by reconfigurable error correction code (ECC) engines, which are designed to handle various error correction levels, leading to reduced integration density and limited flexibility in responding to unexpected operational situations.

Innovation Solution

A memory system with a non-reconfigurable ECC engine that operates at a fixed error correction level, switching to a higher level only when necessary, using row and column product codes to enhance error correction capabilities without increasing circuit complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the error correction capability of the ECC engine is increased to improve reliability, then the stability of the memory system is improved, but the circuit complexity and area occupied by the ECC engine increases

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

Solution Approach 1:

The error correction operation is segmented into two distinct modes: a first error correction mode using the fixed-capability ECC engine for routine operations, and a second error correction mode using product codes (row and column parity) for scenarios requiring higher correction capability. This segmentation allows the system to achieve high reliability when needed while maintaining simple circuitry for normal operation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically selects between two error correction modes based on the detected number of erroneous bits. When the number of errors exceeds the fixed ECC engine's capability, the system transitions to the product code-based second mode, providing adaptive error correction capability without requiring a permanently complex circuit design.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If the ECC engine is designed with reconfigurable scheme to handle multiple error correction levels, then the adaptability is improved, but the area occupied by the ECC engine and its complexity increases

Engineering Contradiction:
Improveerror correction level flexibilityVSAvoidECC engine area
Core Design Contradiction:
Adaptability or versatilityVSArea of stationary object

Solution Approach 1:

The fixed-capability ECC engine is made universal by combining it with product code capabilities. The same ECC engine handles both the first error correction mode (direct correction) and assists in the second mode by correcting row and column product codes, eliminating the need for multiple dedicated ECC engines for different correction levels.

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

Solution Approach 2:

Product codes (row and column parity bits) serve as an intermediary mechanism that bridges the gap between the fixed ECC engine capability and the need for higher error correction levels. The product codes enable the system to achieve reconfigurable-like flexibility without requiring a reconfigurable ECC engine, as the parity structure naturally supports variable correction scenarios.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If the ECC engine is designed with reconfigurable scheme to prepare for worst scenario, then the reliability is improved, but the area occupied by the ECC engine increases inefficiently

Engineering Contradiction:
Improveworst scenario preparednessVSAvoidECC engine area
Core Design Contradiction:
ReliabilityVSArea of stationary object

Solution Approach 1:

Instead of designing the ECC engine for excessive correction capability to cover all worst-case scenarios, the system applies partial correction using the fixed ECC engine for typical cases and reserves product code mechanisms for extreme scenarios. This partial action approach achieves worst-case preparedness without the area overhead of designing for maximum capability from the start.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10847246B2Memory systems performing reconfigurable error correction operation using ECC engine with fixed error correction capability
Publication Date: 2020.11.24 SK HYNIX INC
  • US10847246B2 patent drawing
  • US10847246B2 patent drawing
  • US10847246B2 patent drawing

AI summary

A memory system includes a memory medium and a memory controller. The memory medium includes data symbols and parity symbols which are respectively disposed at cross points of a plurality rows and a plurality of columns. The memory controller includes an error correction code (ECC) engine that is designed to execute an error correction operation at a fixed error correction level while the memory controller accesses the memory medium. The memory controller performs the error correction operation at the fixed error correction level using the ECC engine in a first error correction mode. The memory controller performs the error correction operation at an error correction level higher than the fixed error correction level using the ECC engine in a second error correction mode.