Hardware Prefetcher for Storage Device Memory Loading

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage devices face challenges in improving cache hit rates and reducing latency due to random access patterns and limited computational resources, leading to underutilization of parallel processing capabilities.

Innovation Solution

The implementation of an in-device hardware prefetcher that retrieves memory address information from a host, stores it in a buffer, and loads data from storage media to memory media based on this information, thereby enhancing cache population and reducing latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is loaded from storage media to memory media based on random access patterns, then cache hit rate is improved, but device complexity increases due to need for prefetching mechanisms

Engineering Contradiction:
Improvecache hit rateVSAvoidprefetching mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The hardware prefetcher performs preliminary actions by retrieving memory address information from the host before actual data access occurs. It stores these addresses in a buffer and proactively loads data from storage media to memory media in advance, so that when the host needs the data, it is already cached and ready for immediate access.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The prefetcher operates autonomously without requiring additional computational resources from the host CPU. It independently monitors host memory access patterns, manages its own buffer, and executes data loading operations, thereby serving the caching function without burdening the host's computational resources.

Inventive Principle:
Principle #25Self-service

2Productivity

If parallel processing capabilities are increased to handle more memory operations, then productivity is improved, but device complexity increases due to resource management overhead

Engineering Contradiction:
Improveinput/output operations per secondVSAvoidresource management overhead
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments memory address information into individual addresses stored in a buffer, allowing each address to be processed independently. This segmentation enables parallel loading operations where multiple data blocks can be loaded simultaneously from storage media to memory media, increasing throughput without requiring complex centralized coordination.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The buffer acts as an intermediary structure between the host and the data loading mechanism. It stores memory address information in a structured format that enables efficient parallel processing, decoupling the host from the complexity of parallel resource management while still enabling high-speed concurrent data transfers.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If additional threads are added to the host to improve data loading, then productivity is improved, but CPU resource consumption increases

Engineering Contradiction:
Improvedata loading throughputVSAvoidCPU resource consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The hardware prefetcher performs data loading operations autonomously without requiring additional host threads or CPU intervention. It independently retrieves memory address information, manages the address buffer, and executes data transfers from storage media to memory media, thereby achieving high data loading throughput while consuming minimal host CPU resources.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces the software-based thread mechanism with a hardware-based prefetcher. Instead of using multiple CPU threads to manage data loading, the system uses dedicated hardware circuitry that operates in parallel with the host processor, substituting mechanical/software resource management with dedicated hardware functionality that consumes less overall system resources.

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

Data Source

PatentUS20250123968A1Systems, methods, and apparatus for memory loading in a storage device
Publication Date: 2025.04.17 SAMSUNG ELECTRONICS CO LTD
  • US20250123968A1 patent drawing
  • US20250123968A1 patent drawing
  • US20250123968A1 patent drawing

AI summary

A device may include memory media; storage media; a buffer; and at least one circuit configured to perform one or more operations including receiving memory address information; storing the memory address information in the buffer; determining that data may be loaded to the memory media; and loading data to the memory media, from the storage media, corresponding to the memory address information in the buffer. In some aspects, the memory address information is first memory address information; the data is first data; and the at least one circuit is further configured to perform one or more operations including receiving a memory access request including second memory address information; determining to load second data based on the memory access request; and loading the second data to the memory media, from the storage media, based on the second memory address information.