Memory Controller Command Execution Timing Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Memory systems face challenges in maintaining quality of service (QoS) at a predetermined level while maximizing throughput, as existing technologies often experience degradation in QoS due to resource constraints during background operations like garbage collection, leading to increased latency and reduced performance.

Innovation Solution

A memory system and operating method that select target memory blocks based on valid page counts, calculating a percentage of valid pages to determine if and how to control the execution time of commands, adjusting processing intervals to manage QoS and throughput by optimizing the execution and completion times of commands.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the memory controller prioritizes maximizing throughput by processing commands quickly, then productivity is improved, but quality of service (QoS) and latency consistency deteriorate due to resource constraints during background operations

Engineering Contradiction:
ImprovethroughputVSAvoidquality of service
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The memory controller performs preliminary actions by proactively identifying and suspending commands that may cause QoS degradation before they actually degrade performance. The controller calculates R values and determines potential latency issues in advance, allowing it to preemptively adjust command execution timing and prevent QoS violations rather than reacting after damage is done.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adjusts command execution timing based on real-time conditions. The memory controller continuously monitors valid page counts, calculates R values, and adaptively modifies fetch operation intervals and command execution points. This dynamic adjustment allows the system to optimize throughput when conditions permit while maintaining QoS when resource constraints are detected.

Inventive Principle:
Principle #15Dynamics

2Reliability

If the memory controller controls the execution time of commands to maintain QoS, then quality of service is improved, but productivity decreases due to additional processing overhead and time intervals

Engineering Contradiction:
Improvequality of serviceVSAvoidthroughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The memory controller applies quality control selectively rather than uniformly to all commands. It identifies specific commands with high R values that are likely to cause QoS degradation and applies execution time control only to those commands. This localized approach maintains QoS for critical operations while minimizing the impact on overall throughput by leaving other commands to execute without additional delays.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system changes operational parameters dynamically based on system state. When QoS risks are detected (high R values), the controller adjusts fetch operation intervals and command execution timing parameters. When conditions are favorable (low R values), the controller reduces or eliminates these adjustments, thereby maintaining QoS when needed while maximizing throughput when possible.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If the memory controller processes all commands without selective time control, then productivity is maximized, but latency deviations increase and QoS cannot be maintained

Engineering Contradiction:
ImprovethroughputVSAvoidlatency deviation
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The memory controller implements a feedback mechanism by continuously monitoring valid page counts in memory blocks and calculating R values that indicate the likelihood of QoS degradation. This feedback information drives real-time decisions about which commands to suspend or delay, allowing the controller to maintain QoS by adjusting execution timing based on actual system conditions rather than using fixed or purely opportunistic timing.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11604734B2Memory system for determining whether to control a point of execution time of a command based on valid page counts of target memory blocks and operating method thereof
Publication Date: 2023.03.14 SK HYNIX INC
  • US11604734B2 patent drawing
  • US11604734B2 patent drawing
  • US11604734B2 patent drawing

AI summary

Embodiments of the disclosure relate to a memory system and an operating method thereof. The memory system is configured to select, among the plurality of memory blocks, one or more target memory blocks operable to store user data to be accessed by a host which requests the memory system to write data, and determine whether to control a point of execution time of a command received from the host, based on valid page counts of respective target memory blocks.