Unified Storage System Memory-Through Path Architecture

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Unified storage systems face decreased I/O performance due to finite internal bus bandwidth, particularly when transferring control data, which affects both block and file access operations.

Innovation Solution

A storage system design that includes a block control unit, a file control unit, and a shared memory with distinct memory-through paths for control information and I/O data, where the block control unit exchanges control information and I/O data with the file control unit via separate paths, optimizing data transfer speeds.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If control data is transferred through the internal bus in unified storage, then the storage system can operate, but the I/O performance decreases due to finite bandwidth

Engineering Contradiction:
ImproveI/O performanceVSAvoiddata transfer speed
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The patent segments the internal bus into multiple virtual channels (control data channel and I/O data channel) that are logically separated but physically share the same bus infrastructure. This allows control data and I/O data to be transmitted simultaneously through different virtual paths, eliminating the bandwidth contention that would occur if they shared a single channel.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a channel determination unit that acts as an intermediary to route data packets to appropriate transmission channels. This unit examines incoming data and directs control data to the control data channel while I/O data is directed to the I/O data channel, ensuring proper separation and preventing bandwidth conflicts without requiring separate physical buses.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If control data and I/O data share the same internal bus, then device complexity is reduced, but I/O performance deteriorates due to bandwidth contention

Engineering Contradiction:
ImproveI/O performanceVSAvoiddata path structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent makes the internal bus multi-functional by enabling it to simultaneously serve as both a control data transmission medium and an I/O data transmission medium through virtual channel division. The same physical bus infrastructure performs multiple functions concurrently, avoiding the need for separate dedicated buses for control and I/O operations.

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

Solution Approach 2:

The patent implements dynamic channel allocation where the internal bus can flexibly switch between transmitting control data and I/O data based on real-time requirements. The channel determination unit dynamically routes data packets to appropriate channels, allowing the system to adapt to varying data transmission needs without fixed dedicated paths.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10579275B2Storage system and storage control method
Publication Date: 2020.03.03 HITACHI VANTARA LTD
  • US10579275B2 patent drawing
  • US10579275B2 patent drawing
  • US10579275B2 patent drawing

AI summary

This storage system comprises a block interface, a block control unit, a file control unit, and shared memory. The file control unit and block control unit are coupled via a first memory-through path structured to pass through a first area of the shared memory, and via a second memory-through path structured to pass through a second area of the shared memory. The block control unit has a protocol control unit and a virtual driver; exchanges control information for the file control unit with the file control unit via the first memory-through path; uses the virtual driver to convert an I/O request passed from the file control unit via the second memory-through path and processes the result with a protocol processing unit; and bypasses the virtual driver and uses the protocol processing unit to process a block I/O request transferred from the block interface via a physical path.