Memory Controller Firmware Software Coordination for DRAM Error Handling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory fault handling systems face inefficiencies due to the lack of cooperation between hardware and software functions, leading to temporary CPU usage drops and limitations in handling memory errors, especially in high-capacity in-memory computing environments where error frequencies increase, potentially causing system downtime.

Innovation Solution

A memory fault handling system that includes a memory controller, firmware, and software, where the memory controller notifies firmware or software of errors, and the firmware instructs spare memory switching, while the software disables error-prone pages, ensuring coordinated spare memory switching and page offline functions without CPU usage drops or notification limitations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the SW function (page offline) operates first when CEs occur in multiple DRAMs, then the system can prevent uncorrectable errors, but the number of usable memory pages decreases and kernel overhead increases

Engineering Contradiction:
Improvesystem reliabilityVSAvoidmemory usage efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by having the hardware function execute first to copy data to spare DRAM before the software function disables the affected pages. The memory management unit identifies which DRAMs have reached the CE threshold and pre-copies their data to spare DRAMs, so that when the software subsequently disables pages, fewer pages need to be offline and less kernel overhead is generated.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the memory error handling into distinct hardware and software components with specific responsibilities. The hardware function handles the initial data protection by copying to spare DRAM, while the software function handles page management. This segmentation allows each component to optimize its operation and avoid redundant actions that would reduce productivity.

Inventive Principle:
Principle #1Segmentation

2Reliability

If the HW function operates first to transfer data to spare DRAM, then data protection is improved, but SW cannot respond to memory errors effectively

Engineering Contradiction:
Improvedata integrityVSAvoidsoftware control capability
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent introduces the memory management unit as an intermediary between the hardware and software error handling functions. The MMU receives notifications from both the hardware ECC logic and the software, coordinates their actions, and ensures that the hardware function executes first to protect data, followed by the software function to manage pages. This intermediary enables both functions to operate effectively in a coordinated sequence.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The hardware function performs preliminary data protection by copying data to spare DRAM before the software function executes. This preliminary action ensures data integrity is maintained while still allowing the software to subsequently respond to and manage the memory errors through page offline operations.

Inventive Principle:
Principle #10Preliminary action

3Quantity of substance

If multiple DRAMs are mapped to a single page through memory interleaving, then memory capacity is increased, but CE counting accuracy for individual DRAMs deteriorates

Engineering Contradiction:
Improvememory capacityVSAvoidCE count accuracy
Core Design Contradiction:
Quantity of substanceVSMeasurement precision

Solution Approach 1:

The patent segments the CE counting function by implementing separate counters in the hardware for each individual DRAM, rather than a single counter for the interleaved page. This segmentation allows precise tracking of CEs in each DRAM independently, enabling the system to identify which specific DRAMs have reached the threshold and require data copying to spare DRAMs.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The memory management unit acts as an intermediary that receives individual DRAM CE notifications from the hardware and translates them into coordinated actions. The MMU maintains awareness of the interleaving mapping while using the hardware's precise per-DRAM CE counting to determine when data copying is needed, thus preserving both the capacity benefits of interleaving and the precision of individual DRAM monitoring.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11726888B2Memory fault handling system, information processing device, and memory fault handling method
Publication Date: 2023.08.15 NEC PLATFROMS LTD
  • US11726888B2 patent drawing
  • US11726888B2 patent drawing
  • US11726888B2 patent drawing

AI summary

A memory fault handling system includes: a memory controller, firmware, and software. The memory controller has: an error occurrence notification means for, when the occurrence of a memory error is detected, notifying firmware or software of the occurrence of the memory error on the basis of a setting pertaining to a notification recipient. The firmware includes: a notification recipient setting means for setting a notification recipient; and a spare memory switching instruction means for, when a notification indicating the occurrence of a memory error is received from the memory controller, instructing to switch from a memory to a spare memory. The software includes: a disabling instruction means for, when a notification indicating the occurrence of a memory error is received from the memory controller, instructing to cause a page corresponding to the memory in which the memory error has occurred to be disabled.