UFS Controller Hint Mode Calibration for Cache Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current Universal Flash Storage (UFS) data storage devices face challenges in optimizing hint modes for maximizing system performance, quality of service, and power consumption, due to limited host device PRDT cache and the need for improved hint mode calibration.

Innovation Solution

A data storage device with a controller that determines the need for hint calibration, selects and iterates through multiple hint modes based on performance, quality of service, and power consumption, generating hints to optimize operations until another calibration is needed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the data storage device provides multiple hints to the host device for out of order data transfer, then the system performance and throughput are improved, but the host device PRDT cache is limited causing inefficiency when cache is full

Engineering Contradiction:
Improvedata transfer throughputVSAvoidhint utilization efficiency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system implements feedback by monitoring the host device's PRDT cache status and adjusting the number of hints provided accordingly. The data storage device receives feedback about cache availability and dynamically modifies its hint generation behavior to match current cache capacity, ensuring optimal hint utilization without overwhelming the limited cache resources.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent applies dynamics by making the hint mode configurable and adjustable rather than fixed. The system can dynamically switch between different hint modes (such as changing the number of hints provided or the hint structure) based on real-time conditions including cache availability, workload characteristics, and performance requirements, allowing the system to adapt to varying operational contexts.

Inventive Principle:
Principle #15Dynamics

2Speed

If the host device caches multiple PRDT entries using hints, then the data fetch efficiency is improved, but the limited PRDT cache capacity causes bottlenecks when cache is full

Engineering Contradiction:
Improvedata fetch speedVSAvoidcache management complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The system applies self-service by enabling the data storage device to autonomously determine the appropriate number of hints to provide based on the host's cache status. Rather than requiring complex host-side cache management or constant host intervention, the storage device independently monitors and adjusts its hint generation, effectively managing the caching relationship without adding significant complexity to either side.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent utilizes parameter changes by modifying the hint mode parameters (such as the number of hints, hint size, or hint frequency) to optimize performance. By adjusting these parameters based on cache availability and performance metrics, the system can maintain high data fetch speeds while adapting to the limited cache capacity without requiring complex structural changes.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If a new attribute is added to limit the number of outstanding hints, then the cache utilization is optimized, but the protocol complexity increases

Engineering Contradiction:
Improvehint processing efficiencyVSAvoidprotocol attribute complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system applies universality by designing the hint mode attribute to serve multiple functions simultaneously. The same attribute mechanism not only limits the number of outstanding hints but also provides information about cache status, guides hint generation strategy, and enables performance optimization. This multi-functionality reduces the need for separate attributes or mechanisms, thereby limiting the increase in protocol complexity while achieving cache optimization.

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Productivity

If the system iterates through multiple hint modes during calibration, then the performance optimization is improved, but the calibration time and processing overhead increase

Engineering Contradiction:
Improvesystem performanceVSAvoidcalibration time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system applies preliminary action by performing hint mode calibration in advance during system initialization or idle periods, rather than during active data transfer operations. The calibration process pre-determines the optimal hint mode based on the specific host-device combination, storing the results for future use. This approach minimizes the impact on operational performance by completing the time-consuming iteration process before actual data transfer begins.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements periodic action by scheduling calibration operations at specific intervals or under specific conditions (such as during idle periods, after significant system changes, or when performance degradation is detected). Rather than continuously iterating through all hint modes, the system performs calibrated iterations periodically, maintaining optimal performance while minimizing the time loss associated with calibration overhead during normal operations.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS11829615B2Out of order data transfer hint calibration
Publication Date: 2023.11.28 SANDISK TECHNOLOGIES LLC
  • US11829615B2 patent drawing
  • US11829615B2 patent drawing
  • US11829615B2 patent drawing

AI summary

A data storage device includes a memory device and a controller coupled to the memory device. The controller is configured to determine that a hint calibration operation is needed, select a first hint mode out of a plurality of hint modes, generate one or more hints based on a selected hint mode, and select a hint mode based on one or more of a performance, quality of service, and power consumption of the data storage device. The controller is further configured to iterate through the plurality of hint modes during the hint calibration operation and operate based on the selected hint mode until the controller determines that another hint calibration operation is needed.