Memory Controller Credit-Based Rate Control for Bursty Completions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Memory systems, such as enterprise SSDs, face inconsistent performance metrics due to bursty command processing completions, leading to variability in throughput and latency, which affects quality of service and consistency over time.

Innovation Solution

Implementing a credit-based rate control mechanism in the memory system's controller to manage the completion notification rate of commands across time intervals, ensuring consistent throughput and reduced latency by redistributing bursty completions and adjusting throughput credits based on target performance metrics.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If bursty command processing completions are allowed to proceed naturally, then processing speed is improved, but throughput consistency deteriorates

Engineering Contradiction:
Improvecommand processing speedVSAvoidthroughput consistency
Core Design Contradiction:
SpeedVSStability of the object's composition

Solution Approach 1:

The patent applies periodic action by using time intervals to regulate completion notifications. The controller determines a number of completion notifications to transmit within each time interval based on throughput credit, creating a periodic control mechanism that smooths bursty completions while maintaining processing speed.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The patent changes the parameter of completion notification rate by using throughput credit to dynamically adjust the number of notifications transmitted per time interval. This parameter change transforms bursty completions into a regulated stream, achieving both speed and consistency.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If completion notifications are transmitted at high rate, then productivity is improved, but latency variability worsens

Engineering Contradiction:
Improvecompletion notification rateVSAvoidlatency variability
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent changes the transmission rate parameter of completion notifications by using throughput credit to control the number of notifications per time interval. This dynamic parameter adjustment maintains high productivity while reducing latency variability through regulated transmission.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent ensures continuity of useful action by maintaining a steady stream of completion notifications through credit-based regulation. Instead of allowing bursty interruptions, the system maintains continuous regulated transmission, improving latency predictability while preserving overall productivity.

Inventive Principle:
Principle #20Continuity of useful action

3Stability of the object's composition

If throughput credit is used to regulate completion notifications, then throughput consistency is improved, but system complexity increases

Engineering Contradiction:
Improvethroughput consistencyVSAvoidcontroller complexity
Core Design Contradiction:
Stability of the object's compositionVSDevice complexity

Solution Approach 1:

The patent uses feedback by monitoring completion notifications and adjusting throughput credit accordingly. The controller determines the number of notifications to transmit based on current credit status, creating a feedback loop that maintains throughput consistency without requiring complex external control systems.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11321017B2Systems and methods for controlling completion rate of commands
Publication Date: 2022.05.03 SK HYNIX INC
  • US11321017B2 patent drawing
  • US11321017B2 patent drawing
  • US11321017B2 patent drawing

AI summary

A controller of a memory system controls a completion rate of commands. The controller receives, from a host, command requests to be processed on a memory device. The controller processes the command requests, determines a first number of completion notifications, which are to be transmitted to the host in a first time interval, among multiple completion notifications associated with the command requests, based on a throughput credit, a set maximum credit, and the number of the multiple completion notifications. The controller transmits, to the host, the first number of completion notifications in the first time interval, and transmits a second number of completion notifications in the second time interval.