Memory Controller Spare Cache Mapping for Failure Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computer systems face performance issues and data loss due to inadequate handling of small, localized memory failures, where operating systems either de-allocate excessive memory or fail to respond, leading to inefficient resource management.

Innovation Solution

A memory controller with a cache of spare memory locations and firmware that maps spare locations to failed portions of memory modules, redirecting requests and copying data to maintain system performance and prevent unnecessary memory de-allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the operating system de-allocates an entire page of memory locations in response to a memory failure, then data loss is prevented, but memory resource efficiency deteriorates due to excessive memory de-allocation

Engineering Contradiction:
Improvedata loss preventionVSAvoidmemory resource efficiency
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent segments the memory response into two distinct paths: a first response path for catastrophic failures that de-allocates the entire page, and a second response path for smaller failures that only de-allocates the specific failed memory portion. This segmentation allows the system to apply appropriate recovery actions based on failure severity, preventing excessive memory de-allocation while maintaining data loss prevention for critical failures.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements local quality by distinguishing between different types of memory failures (catastrophic vs. small/localized) and applying different recovery strategies to each. Instead of uniformly de-allocating entire pages for all failures, the system applies targeted de-allocation only to the specific failed memory portions, preserving functional memory resources while maintaining reliability.

Inventive Principle:
Principle #3Local quality

2Quantity of substance

If the operating system does not respond to memory failures, then memory resource efficiency is maintained, but system reliability deteriorates due to slower memory response times and potential data loss

Engineering Contradiction:
Improvememory resource efficiencyVSAvoidsystem reliability
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent implements feedback mechanisms where the memory controller monitors memory module responses and detects failures. Upon detecting a failure, the system provides feedback to the operating system with specific failure information, enabling targeted recovery actions. This feedback loop maintains system reliability by ensuring failures are detected and addressed appropriately while preserving memory resource efficiency through precise error handling.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs preliminary actions by having the memory controller detect and identify failed memory portions before the operating system processes the failure. The controller prepares failure information and initiates targeted de-allocation of only the failed portions, preventing the need for broader memory de-allocation and maintaining system reliability without sacrificing resource efficiency.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If spare memory locations are maintained in the memory controller cache, then memory failure recovery capability is improved, but device complexity increases

Engineering Contradiction:
Improvememory failure recovery capabilityVSAvoidmemory controller complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-allocating spare memory locations within the memory controller's cache before failures occur. These spare locations are prepared in advance and can be quickly mapped to replace failed memory portions, enabling rapid recovery without requiring complex real-time allocation decisions. This approach improves recovery capability while keeping the implementation relatively simple through pre-prepared redundancy.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses spare memory locations in the controller cache as an intermediary layer between the failed memory portions and the operating system. When a failure occurs, the spare locations serve as temporary substitutes, allowing the system to maintain operations while managing the failure. This intermediary approach simplifies the recovery process by providing a buffer that absorbs the impact of failures without requiring complex reconfiguration.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8386702B2Memory controller
Publication Date: 2013.02.26 SK HYNIX INC
  • US8386702B2 patent drawing
  • US8386702B2 patent drawing
  • US8386702B2 patent drawing

AI summary

In one embodiment, a memory control system is provided with a memory controller having 1) a first interface to receive memory read/write requests; 2) a second interface to read/write data from a number of memory modules; 3) a memory cache containing spare memory locations; and 4) logic to, upon receipt of a memory read/write request, i) direct the read/write request to the memory cache when an address associated with the read/write request resides in the memory cache, and ii) direct the read/write request to the second interface when the address associated with the read/write request does not reside in the memory cache.