Bi-directional I/O via Transport Command Word

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current input/output (I/O) processing systems are limited in that they can only support either input or output data within a single I/O operation, restricting the kinds of commands that can be grouped together and thus limiting communication throughput.

Innovation Solution

The introduction of a transport command word (TCW) that allows a control unit to receive a command block with both input and output commands, enabling bi-directional data transfer within a single I/O operation by specifying locations for input and output data and indicating whether the operation includes input or output data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple commands are grouped into a single I/O operation to reduce processing overhead, then productivity is improved, but device complexity worsens due to the need to manage both input and output data areas

Engineering Contradiction:
Improvecommunication throughputVSAvoidI/O operation structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the I/O operation into distinct input data area and output data area components within a single command block. This allows the system to handle multiple commands with different data directions (input/output) in one operation while maintaining clear separation of data flows, thus improving throughput without excessive complexity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The command block structure is designed to be universal by incorporating both input and output data area specifications within a single I/O operation framework. This multi-functional design enables the same I/O operation structure to handle various command types (read, write, bidirectional) without requiring separate processing paths, thereby improving productivity while controlling complexity

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

2Productivity

If a single data area is used for I/O operations, then device complexity is reduced, but productivity worsens due to inability to perform bidirectional data transfer in one operation

Engineering Contradiction:
Improvecommunication throughputVSAvoiddata area management
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges multiple data transfer operations (input and output) into a single I/O operation by combining both input data area and output data area specifications in one command block. This allows bidirectional data transfer to occur in one operation rather than requiring separate operations, thus improving throughput while managing complexity through unified command structure

Inventive Principle:
Principle #5Merging (Combining)

3Measurement precision

If channels parse and track each CCW individually, then measurement precision of command state is improved, but productivity worsens due to large processing overhead

Engineering Contradiction:
Improvecommand state trackingVSAvoidcommunication throughput
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent merges multiple individual CCW parsing and tracking operations into a single I/O operation processing event. By handling multiple commands within one operation framework, the channel subsystem reduces the number of parse and track cycles required, thereby improving throughput while maintaining adequate command state management through the unified operation structure

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9298379B2Bi-directional data transfer within a single I/O operation
Publication Date: 2016.03.29 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9298379B2 patent drawing
  • US9298379B2 patent drawing
  • US9298379B2 patent drawing

AI summary

A computer program product, apparatus, and a method for facilitating input/output (I/O) processing for an I/O operation at a host computer system configured for communication with a control unit. The method includes receiving, by a control unit, a command block configured to hold a plurality of commands including an input command and/or an output command, the plurality of commands specified by a transport command word (TCW) including a read indicator configured to indicate whether the I/O operation includes input data and a write indictor configured to indicate whether the I/O operation includes output data; based on the command block holding at least one output command, receiving the output data and executing the at least one output command; and based on the command block holding at least one input command, forwarding the input data to the channel subsystem for storage at a location specified by the TCW.