Memory Controller Error Recovery via Selective Command Reissue

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data communication systems face inefficiencies due to error detection and correction processes, which limit the availability of memory controllers for normal operations and increase memory latency.

Innovation Solution

The method involves issuing commands to redrive devices, storing received data, and merging it to complete commands, as well as transmitting a constant pattern during link retraining with a sequence of transitions to maintain alignment, thereby reducing the complexity and time spent on corrective actions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the memory controller performs corrective actions such as retraining the link and reissuing commands, then transmission errors are corrected, but the time spent on corrective actions increases and availability for normal operations decreases

Engineering Contradiction:
Improveerror correction capabilityVSAvoidtime spent on corrective actions
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary error detection by checking acknowledgment packets before initiating corrective actions. The memory controller detects errors in acknowledgment packets returned from the memory device, allowing it to identify transmission errors early and initiate targeted corrective actions only when necessary, rather than performing blanket retraining operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system extracts and handles only the specific commands that encountered errors, rather than retraining the entire link. The memory controller identifies which specific read or write commands failed based on error detection in acknowledgment packets, and reissues only those specific commands after targeted retraining, leaving other commands unaffected and continuing normal operations.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If the memory controller reissues commands after error detection, then data integrity is maintained, but the complexity of error correction processes increases

Engineering Contradiction:
Improvedata integrityVSAvoiderror correction process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system uses feedback from acknowledgment packets to detect transmission errors. The memory device returns acknowledgment packets that contain error detection information, allowing the memory controller to identify which commands failed. This feedback mechanism enables precise error detection and targeted reissue of only the failed commands, simplifying the error correction process compared to blanket retraining approaches.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The error correction process is segmented into distinct stages: error detection through acknowledgment packet checking, selective identification of failed commands, targeted link retraining, and selective reissue of only the failed commands. This segmentation allows the system to handle errors efficiently without complicating the overall process, as each stage is independent and well-defined.

Inventive Principle:
Principle #1Segmentation

3Reliability

If the link is retrained to correct transmission errors, then error rates are reduced, but the memory controller's availability for normal operations is reduced

Engineering Contradiction:
Improvetransmission reliabilityVSAvoidmemory controller availability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs partial link retraining only for the specific lanes or channels that experienced errors, rather than retraining the entire link. When errors are detected in acknowledgment packets, the memory controller identifies the affected command channels and performs targeted retraining only on those specific channels, allowing other channels to continue normal operations without interruption.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system performs preliminary error detection through acknowledgment packet checking before initiating link retraining. This allows the system to determine whether retraining is actually necessary, avoiding unnecessary retraining operations that would reduce availability. The memory controller only initiates link retraining when errors are actually detected, maintaining high availability during error-free operation.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20110066921A1System and Method for Responding to Error Detection
Publication Date: 2011.03.17 LENOVO INT LTD
  • US20110066921A1 patent drawing
  • US20110066921A1 patent drawing
  • US20110066921A1 patent drawing

AI summary

Systems and methods to respond to error detection are provided. A particular method may include issuing a first command to a first redrive device and a second command to a second redrive device. The method may also include reissuing the second command to the second redrive device in response to detecting a transmission error between a memory controller and the second redrive device. The method may further include storing at a first buffer first data that is received from the first redrive device in response to the first command. The method may include storing at a second buffer second data that is received from the second redrive device in response to the reissued second command. The method also may include merging the second data with the first data.