Storage Device Direct Memory Access for Host Workload Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing protocols for data transfer between computers and data storage devices often require the computer to manage memory access, leading to potential bottlenecks that limit performance and efficiency, especially when handling multiple commands simultaneously.

Innovation Solution

The data storage device is empowered to directly access the computer's memory by receiving a list of commands and associated memory locations, allowing it to execute commands independently without relying on the host adaptor for memory access, thereby reducing the computer's workload and enabling it to perform other tasks while data transfer occurs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the computer manages memory access through host adaptor, then data transfer can be controlled, but system performance is limited due to bottlenecks

Engineering Contradiction:
Improvedata transfer speedVSAvoidmemory access management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent inverts the traditional memory access control model by allowing the data storage device to directly access computer memory without requiring the host adaptor to mediate each memory access. This inversion of the control flow from host-centric to device-centric eliminates the bottleneck in the host adaptor and significantly improves data transfer speed while reducing the complexity of memory access management from the computer's perspective

Inventive Principle:
Principle #13The other way round (Inversion)

2Productivity

If the computer performs memory access tasks, then data transfer can be managed, but the computer cannot perform other tasks simultaneously

Engineering Contradiction:
Improveoverall system performanceVSAvoidtime spent on memory access tasks
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The data storage device performs self-service by directly accessing computer memory to execute read and write commands without requiring the computer to actively manage each memory access operation. This enables the storage device to autonomously handle data transfer tasks, freeing the computer to perform other productive tasks simultaneously and eliminating time loss associated with waiting for memory access operations

Inventive Principle:
Principle #25Self-service

3Productivity

If multiple commands are queued for execution, then data transfer speed increases, but the computer needs to manage command execution order

Engineering Contradiction:
Improvedata transfer throughputVSAvoidcommand execution management
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The data storage device autonomously manages command execution order by receiving a queue of commands from the computer and independently determining the optimal sequence for executing them. This eliminates the need for the computer to actively manage command execution order, allowing the storage device to optimize throughput while the computer simply needs to provide the command queue

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8667188B2Communication between a computer and a data storage device
Publication Date: 2014.03.04 HEWLETT PACKARD DEVELOPMENT COMPANY LP
  • US8667188B2 patent drawing
  • US8667188B2 patent drawing
  • US8667188B2 patent drawing

AI summary

A method for communicating between a computer and a data storage device comprises receiving, by a data storage device, information indicative of a plurality of commands and information indicative of a memory location in a computer associated with each of the plurality of commands. The method further comprises executing, by the data storage device, one of the plurality of commands. In one embodiment, executing the command comprises directly accessing the computer memory location associated with the command.