Memory Controller Abort Handling via Regeneration Queue

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory systems face challenges in efficiently processing abort commands, particularly in high-performance environments, where aborting a command can be complex and time-consuming, leading to increased system complexity and processing time.

Innovation Solution

A controller with a command queue and a re-generation queue is implemented, where upon receiving an abort command, remaining commands are moved to the re-generation queue, and the command queue is reset, allowing for the generation and re-queuing of re-generated commands, thereby simplifying the abort process and reducing system complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If traditional command abort processing is used in memory systems, then the system can handle basic command operations, but the processing time for abort commands increases and system complexity increases

Engineering Contradiction:
Improveabort command processing timeVSAvoidsystem complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent divides the command queue into two separate queues: a command queue for normal command processing and a re-generation queue for handling abort commands. This segmentation allows independent optimization of each queue's processing logic, reducing the complexity of abort handling while improving processing speed. The command queue maintains normal FIFO processing, while the re-generation queue specifically handles regenerated commands after aborts, isolating the complex abort logic from the main command flow.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The re-generation queue acts as an intermediary structure between the command queue and the abort processing mechanism. When an abort command is received, instead of directly complex processing in the main queue, the system generates new commands and places them in the re-generation queue, which then processes them separately. This intermediary queue simplifies the abort processing path while maintaining overall system integrity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If commands are processed sequentially in a single queue, then the system structure remains simple, but the processing speed for multiple commands decreases

Engineering Contradiction:
Improvecommand processing speedVSAvoidqueue structure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the single command queue into two specialized queues: the command queue for normal operations and the re-generation queue for abort handling. This allows parallel processing paths where normal commands continue processing efficiently while abort commands are handled through a dedicated regeneration path, improving overall productivity without requiring complete restructuring of the command processing architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by maintaining a ready-state re-generation queue structure that can immediately receive and process regenerated commands when aborts occur. This pre-prepared infrastructure eliminates the need for complex real-time reorganization during abort events, allowing faster command processing while keeping the queue structure manageable.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11249686B2Controller for handling an abort command using a regeneration queue and operation method thereof
Publication Date: 2022.02.15 SK HYNIX INC
  • US11249686B2 patent drawing
  • US11249686B2 patent drawing
  • US11249686B2 patent drawing

AI summary

A controller for controlling a memory device includes: a command queue suitable for queuing two or more commands received from a host; a re-generation queue suitable for queuing, in response to an abort command for aborting an abort-target command, a re-generated command corresponding to a remaining command other than the abort-target command among the commands queued in the command queue; a processor suitable for resetting the command queue when queuing a command in the re-generation queue is completed, and queuing the re-generated command into the command queue.