Host Device Data Access via Segmented I/O Requests

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In memory-constrained host systems, the limited buffer capacity prevents the host device from issuing sufficient I/O commands to data storage devices, thereby underutilizing the capabilities of these devices.

Innovation Solution

The host device transmits data access requests to the data storage device in two parts: a first part with data access information and parameters, and a second part with buffer information, allowing for efficient data transfer even with limited buffer availability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the host device transmits complete I/O commands with buffer information in limited buffer capacity, then the data transfer can be initiated, but the host device cannot issue sufficient I/O commands due to buffer exhaustion

Engineering Contradiction:
Improvenumber of I/O commands issuedVSAvoidbuffer capacity
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The I/O command is divided into two separate parts: the first part contains data access information and parameters, while the second part contains buffer information. This segmentation allows the host device to transmit the smaller first part when buffer space is limited, enabling multiple command submissions without requiring the entire command structure to be present in buffer simultaneously.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The host device transmits the first part of the I/O command (data access information and parameters) in advance before the buffer information is ready or before the data is actually transferred. This preliminary action allows the storage device to prepare for the operation while the host can continue issuing other commands, improving overall productivity without requiring large buffer capacity.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the host device waits for data to be ready before issuing I/O commands, then buffer management is simplified, but the data storage device capabilities are underutilized

Engineering Contradiction:
Improvedata storage device utilizationVSAvoidbuffer availability time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The host device submits the first part of the I/O command (data access information and parameters) in advance to the storage device, allowing the storage device to begin preparation operations immediately. The host does not need to wait for data readiness before issuing the command structure, thereby utilizing the storage device's capabilities more effectively while managing buffer resources efficiently.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The storage device processes the first part of the command and provides feedback or notification when data is ready for transfer. This feedback mechanism allows the host device to issue subsequent commands or transmit the second part (buffer information) at appropriate times, optimizing both device utilization and buffer management without requiring the host to continuously monitor data readiness.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12210772B2Method and a host device for accessing data from a data storage device
Publication Date: 2025.01.28 SAMSUNG ELECTRONICS CO LTD
  • US12210772B2 patent drawing
  • US12210772B2 patent drawing
  • US12210772B2 patent drawing

AI summary

A method of accessing data from a data storage device includes transmitting a request including a first part to the data storage device, based on availability of memory in host device. The first part includes data access information and one or more parameters for accessing data from data storage device. The method further includes receiving a first notification from the data storage device, indicating a transfer of the data to a storage buffer associated with the data storage device. The method further includes accessing the data from the data storage device by transmitting second part of request to the data storage device. The second part includes buffer information associated with a host buffer of host device. The data is transferred by the data storage device from the storage buffer to the host buffer of host device using buffer information.