I/O Hub CRC Control Element for End-to-End Error Checking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing PCIe communication protocols face inefficiencies in end-to-end data protection, particularly due to the distance of error checking from the application and limited support for protocols like FICONĀ® Cyclic Redundancy Check (CRC) in available adapters.

Innovation Solution

Implementing a cyclic redundancy check (CRC) control element (CCE) within the I/O hub of a computing environment to accumulate and check CRC values during I/O operations, facilitating error checking closer to the application without performance or CPU utilization penalties.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If error checking is performed at the adapter level using existing solutions, then data protection is provided, but the checking is further from the application and performance penalties occur

Engineering Contradiction:
Improvedata protectionVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent introduces an I/O hub as an intermediary component between the adapter and the application. The I/O hub includes a CRC control element that performs error checking closer to the application, eliminating the need for software-based checking while providing better data protection without performance penalties. The hub acts as a mediator that offloads the error checking function from both the adapter and the software layer.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If software is used for generation and checking of error values, then checking is closest to the application, but performance and CPU utilization penalties are imposed

Engineering Contradiction:
Improveend-to-end data protectionVSAvoidCPU utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent replaces the software-based error checking mechanism with a hardware-based CRC control element integrated into the I/O hub. This hardware implementation performs the same error checking function that would otherwise require CPU execution, thereby eliminating the performance and CPU utilization penalties while maintaining end-to-end data protection capabilities.

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

3Adaptability or versatility

If existing adapters are used for error checking, then some checking functionality is provided, but support for all checking protocols such as FICON CRC is not available

Engineering Contradiction:
Improveprotocol supportVSAvoiderror checking capability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent implements a universal CRC control element in the I/O hub that can handle multiple error checking protocols including FICON CRC and other standards. This multi-functional design allows the same hardware component to provide error checking for different protocols, eliminating the limitation of existing adapters that only support specific protocols while maintaining comprehensive error checking capability.

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

Data Source

PatentUS9384086B1I/O operation-level error checking
Publication Date: 2016.07.05 CAPROCK INTEGRATED TECHNOLOGIES LLC
  • US9384086B1 patent drawing
  • US9384086B1 patent drawing
  • US9384086B1 patent drawing

AI summary

Error checking in a computing environment at an input/output (I/O) level is facilitated by associating a cyclic redundancy check (CRC) control element (CCE) with an input/output (I/O) operation based on a command to perform the I/O operation of the computing environment. The CRC control element is used in accumulating during performance of the I/O operation an accumulated CRC value for the I/O operation to facilitate error checking of the I/O operation. By way of example, the associating and the accumulating of the accumulated CRC value may be performed within an I/O hub of the computing environment, and where data of the I/O operation is transferred in data fragments, the CRC control element is updated for each data fragment during the accumulating of the CRC context for the I/O operation.