Deferred ECC Scheduling in Memory Banks to Preserve Data Bandwidth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing DRAM systems employing inline ECC schemes face a bandwidth penalty due to the need to transfer ECC parity bits alongside user data, which reduces overall system performance by utilizing valuable data bandwidth for error correction operations.

Innovation Solution

The proposed solution involves deferring ECC operations during memory read and write operations based on pre-configured triggers, such as high bus utilization or explicit commands, allowing for exclusive user data transfer and resuming ECC operations when conditions are met, thereby optimizing bandwidth utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If ECC parity bits are transferred alongside user data during memory operations, then data integrity is ensured through error detection and correction, but effective data bandwidth is reduced due to the overhead of transmitting additional ECC bits

Engineering Contradiction:
Improvedata integrityVSAvoideffective data bandwidth
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the memory operations into two distinct phases: a first mode where data is transferred without ECC processing to maximize bandwidth, and a second mode where ECC operations are performed separately. This segmentation allows the system to achieve both high effective data bandwidth during data transfer and reliable error correction during the separate ECC processing phase, resolving the contradiction between data integrity and bandwidth efficiency.

Inventive Principle:
Principle #1Segmentation

2Reliability

If ECC operations are performed during every memory read/write operation, then data errors are detected and corrected in real-time, but system performance degrades due to continuous bandwidth consumption by ECC overhead

Engineering Contradiction:
Improveerror detection and correctionVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements periodic ECC operations instead of continuous ECC processing during every memory operation. The system alternates between a first operational mode (data transfer without ECC) and a second operational mode (ECC processing), transitioning between these modes based on predefined criteria such as temperature thresholds, error rates, or workload characteristics. This periodic approach maintains data integrity through regular ECC checks while significantly improving overall system performance by minimizing the time spent in ECC-processing mode.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The patent introduces dynamic mode switching that adapts the ECC operation frequency based on real-time system conditions. The controller monitors parameters such as temperature, error rates, and workload intensity to dynamically adjust between aggressive ECC processing (when reliability is critical) and minimal ECC processing (when performance is prioritized). This dynamic adaptation allows the system to optimize the balance between error detection/correction capability and system performance according to actual operating conditions.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10956262B2Deferred error code correction with improved effective data bandwidth performance
Publication Date: 2021.03.23 MICRON TECHNOLOGY INC
  • US10956262B2 patent drawing
  • US10956262B2 patent drawing
  • US10956262B2 patent drawing

AI summary

A deferred error correction code (ECC) scheme for memory devices is disclosed. In one embodiment, a method is disclosed comprising starting a deferred period of operation of a memory system in response to detecting the satisfaction of a condition; receiving an operation during the deferred period, the operation comprising a read or write operation access one or more memory banks of the memory system; deferring ECC operations for the operation; executing the operation; detecting an end of the deferred period of operation; and executing the ECC operations after the end of the deferred period.