Media ECC Decoder Skipping Unnecessary Decoding for NVDIMM Read Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In memory systems, the high error correction capabilities of NVDIMMs lead to increased read latency due to the need to perform ECC operations on both normal and poison data, which can be uncorrectable and thus require unnecessary decoding efforts.

Innovation Solution

A memory system with a media ECC decoder that skips decoding when the number of erroneous bits in encoded read data is below a threshold, and a poison decoder circuit that controls ECC decoding based on poison bits to differentiate between normal and uncorrectable data, reducing unnecessary ECC operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the module controller performs ECC encoding and decoding operations on all read data, then error correction capability is improved, but read latency increases due to unnecessary operations on poison data

Engineering Contradiction:
Improveerror correction capabilityVSAvoidread latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by performing a poison check on read data before executing ECC decoding operations. The poison check circuit quickly determines whether the read data is poison data, and only then decides whether to perform the full ECC decoding operation. This preliminary filtering action prevents unnecessary ECC operations on poison data, thereby reducing read latency while maintaining error correction capability for valid data.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the ECC engine performs decoding operations on poison data, then comprehensive error handling is achieved, but processing efficiency decreases due to wasted decoding efforts

Engineering Contradiction:
Improveerror handling completenessVSAvoiddata processing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the poison data identification function as a separate preliminary step before the main ECC decoding process. By taking out the poison check operation and performing it independently first, the system can identify and exclude poison data from the subsequent ECC decoding pipeline. This extraction prevents wasted processing efforts on uncorrectable poison data while maintaining complete error handling for legitimate data that requires correction.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If the module controller has high error correction capability for large memory capacity, then data integrity is improved, but system performance deteriorates due to increased processing overhead

Engineering Contradiction:
Improvedata integrityVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by implementing a poison check circuit that operates before the main ECC decoding engine. This preliminary check quickly identifies poison data and prevents it from entering the resource-intensive ECC decoding process. As a result, the system maintains high error correction capability for valid data while significantly reducing the processing overhead caused by attempting to decode poison data, thereby improving overall system performance.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10503588B2Memory systems including memory controllers and memory modules and methods of processing data in the memory systems
Publication Date: 2019.12.10 SK HYNIX INC
  • US10503588B2 patent drawing
  • US10503588B2 patent drawing
  • US10503588B2 patent drawing

AI summary

A memory system includes a memory medium configured to store memory data and a media error correction code (ECC) decoder coupled to the memory medium. The media ECC decoder is configured to receive encoded read data from the memory medium, wherein the encoded read data is read from the stored memory data. The media ECC decoder is further configured to decode the encoded read data when the encoded read data is not poison data and a number of erroneous bits for the encoded read data is less than or equal to a threshold value. The media ECC decoder is also configured to skip decoding the encoded read data when the encoded read data is poison data and the number of erroneous bits for the encoded read data is less than or equal to the threshold value.