Hardware Command-Lifecycle Logger for Memory Sub-System Debugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory sub-systems face challenges in debugging and logging, making it difficult to determine the cause of operational errors and failures due to their high-speed operations, which complicates error analysis and troubleshooting.

Innovation Solution

A media management logger system with a triggerable, hardware-based command-lifecycle logger that logs debugging data upon specific events, providing detailed records of command lifecycles, including start, dispatch, internal state, and completion, which can be accessed via interfaces like UART, PCIe, or NVMe, and stored in various memory locations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If memory sub-system operations are performed at high speed, then productivity is improved, but debugging and logging become difficult due to the high-speed operations

Engineering Contradiction:
Improveoperation speedVSAvoiderror analysis difficulty
Core Design Contradiction:
ProductivityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent implements a hardware-based logger that proactively captures and stores command lifecycle data (including read, write, and erase commands) as events occur during high-speed memory operations. This preliminary action of logging data at the source enables subsequent error analysis without slowing down the memory sub-system operations, resolving the contradiction between high productivity and ease of debugging.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If detailed command lifecycle data is logged, then measurement precision is improved, but device complexity increases due to the hardware-based logging system

Engineering Contradiction:
Improveerror detection detailVSAvoidlogging system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent replaces software-based logging mechanisms with a dedicated hardware-based logger that directly interfaces with the memory sub-system controller. This hardware implementation captures command lifecycle events at the circuit level, providing precise error detection data without the overhead and complexity of software logging layers. The hardware logger operates autonomously to record detailed events including commands, addresses, and status information.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Reliability

If a hardware-based logger is implemented, then reliability is improved by capturing accurate debugging data, but manufacturing complexity increases

Engineering Contradiction:
Improvedebugging data accuracyVSAvoidsystem manufacturing complexity
Core Design Contradiction:
ReliabilityVSEase of manufacture

Solution Approach 1:

The patent integrates the hardware-based logger directly into the memory sub-system controller, merging the logging functionality with the existing control architecture. This integration allows the logger to share resources and infrastructure with the controller, reducing overall manufacturing complexity while maintaining reliable, accurate debugging data capture. The unified design enables simultaneous operation of memory control and logging functions without requiring separate independent systems.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11294750B2Media management logger for a memory sub-system
Publication Date: 2022.04.05 MICRON TECHNOLOGY INC
  • US11294750B2 patent drawing
  • US11294750B2 patent drawing
  • US11294750B2 patent drawing

AI summary

In an embodiment, a system includes a plurality of memory components and a processing device. The processing device includes a command-lifecycle logger component that is configured to perform command-lifecycle-logging operations, which include detecting a triggering event for logging command-lifecycle debugging data, and responsively logging command-lifecycle debugging data. Logging command-lifecycle debugging data includes generating the command-lifecycle debugging data and storing the generated command-lifecycle debugging data in data storage.