Controller Error Detection via Command Slot Status Indicators

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing controllers for digital logic circuits face challenges in efficiently detecting and correcting errors, particularly in NVMe-based systems, where error codes are not transparent between the host controller and the memory device, leading to time-consuming debugging processes.

Innovation Solution

The implementation of an 'on-the-fly' error detection and correction mechanism that provides additional debug information at the command level, allowing both the host device and the memory device to quickly recover from errors without requiring user intervention.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional error detection methods are used in NVMe controllers, then error codes can be detected, but the error codes are not transparent between host controller and memory device, requiring time-consuming debugging

Engineering Contradiction:
Improveerror detection capabilityVSAvoiddebugging time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent implements a feedback mechanism where the memory device reads status indicator portions from command slots and generates interrupt signals when errors are detected. This feedback loop provides transparent error information from the memory device to the host controller, enabling immediate error detection and correction without time-consuming debugging processes.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent introduces status indicator portions as intermediary elements that carry error information between the memory device and host controller. These status indicators act as mediators that make error codes transparent across the host-memory interface, allowing both parties to understand and respond to errors without extensive debugging.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If comprehensive error information is provided at command level, then error detection and correction speed is improved, but device complexity increases

Engineering Contradiction:
Improveerror recovery speedVSAvoidcontroller complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent segments error detection and correction into discrete command slot-level operations. Each command slot independently manages its own status indicator and error handling, allowing parallel error detection across multiple commands without requiring complex centralized control logic.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary error detection by continuously monitoring status indicator portions in command slots before errors propagate. The memory device proactively generates interrupt signals when errors are detected, enabling immediate correction before the error affects system operation, thus improving recovery speed without significant complexity increase.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20250147700A1Error detection and correction in a controller
Publication Date: 2025.05.08 MICRON TECHNOLOGY INC
  • US20250147700A1 patent drawing
  • US20250147700A1 patent drawing
  • US20250147700A1 patent drawing

AI summary

A host submits a command to a memory device, where a host status indicator (ID) for the host and a memory device status ID for the memory device are assigned with the command in at least one of a status command slot related to the command. An interrupt signal asserted during processing of the command is determined, where the interrupt signal is indicative of a change in at least one of the host status ID and the memory device status ID. After determining that the interrupt signal is asserted at least one of the host status ID and the memory device status ID are read. Based on the read information, a failure in at least one of the host and device is corrected prior to initiation of a timeout process.