Memory Controller Error Detection and Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory technologies, such as DRAM, face significant errors in data-heavy applications like servers and datacenters, leading to high costs and energy consumption due to the need for redundancy and aggressive error correction schemes, which are inefficient and limit the use of more advanced memory modules.

Innovation Solution

A memory controller that proactively detects and isolates memory failures by changing memory contents to identify error sources, allowing for targeted error correction and reducing the occurrence of uncorrectable errors, thereby delaying the need for replacement and optimizing energy use across various DRAM configurations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If aggressive error correction schemes (chipkill, double chipkill) are implemented, then reliability is improved, but device complexity and cost increase

Engineering Contradiction:
Improvememory error toleranceVSAvoidDRAM redundancy structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent performs error detection and characterization actions in advance by systematically flipping bits and monitoring for errors before actual data corruption occurs. This preliminary testing identifies faulty memory locations and allows the system to create a map of bad bits, enabling proactive error correction without requiring complex redundant hardware structures.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a virtual copy or map of the memory error characteristics by tracking which bits flip and under what conditions. Instead of physically replicating entire DRAM chips with dedicated ECC structures, the system copies error patterns and uses software/firmware logic to correct errors based on this virtual model, reducing hardware complexity.

Inventive Principle:
Principle #26Copying

2Reliability

If chipkill with single bit error correction is used, then reliability is improved, but energy consumption increases

Engineering Contradiction:
Improveerror correction capabilityVSAvoidenergy per memory access
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent applies partial error correction by targeting only the specific bits that are identified as faulty through systematic testing, rather than applying full chipkill correction to all bits. This selective approach corrects only the necessary errors, reducing the energy overhead associated with aggressive error correction schemes while maintaining adequate reliability.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system uses its own error detection capabilities to identify and correct errors autonomously without requiring external intervention or complex correction hardware. By monitoring bit flips and using the error information to guide correction actions, the memory system serves itself, reducing the energy consumption associated with dedicated correction circuits.

Inventive Principle:
Principle #25Self-service

3Reliability

If multiple DRAM memory modules are accessed to retrieve a single cacheline, then reliability is improved, but productivity decreases

Engineering Contradiction:
Improvefault toleranceVSAvoidmemory access performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent identifies specific local regions (bits or bytes) within memory modules that are faulty and excludes only those specific locations from normal operations. By characterizing errors at the bit level and creating a map of problematic areas, the system can maintain efficient access to good memory regions while avoiding only the minimal necessary re-accesses for corrected bits, preserving overall productivity.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8990646B2Memory error test routine
Publication Date: 2015.03.24 HEWLETT PACKARD ENTERPRISE DEV LP
  • US8990646B2 patent drawing
  • US8990646B2 patent drawing
  • US8990646B2 patent drawing

AI summary

An error test routine tests for a type of memory error by changing a content of a memory module. A memory handling procedure isolates the memory error in response to a positive outcome of the error test routine. The error test routine and memory handling procedure are to be performed at runtime transparent to an operating system. Information corresponding to isolating the memory error is stored.