I/O Expansion Logic for Non-Standard PCIe Adapter Integration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The PCIe standard restricts I/O adapters to operate within specific parameters, making it difficult to communicate with non-PCIe compatible adapters, such as legacy systems, without modifying the PCIe bus or switch infrastructure.

Innovation Solution

Implementing a method that transforms requests and responses between non-standard I/O adapters and the PCIe bus by creating a second request with a header formatted according to the PCIe protocol, allowing communication with non-PCIe compatible adapters through I/O expansion logic within the I/O hub, which translates and routes the data appropriately.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the PCIe standard parameters are strictly enforced to ensure standardized communication, then reliability of PCIe compatible adapters is improved, but adaptability to non-PCIe compatible adapters deteriorates

Engineering Contradiction:
Improvecommunication reliabilityVSAvoidadapter compatibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces an I/O expansion logic component that acts as an intermediary between non-PCIe compatible adapters and the PCIe bus. This mediator translates requests and responses between different protocols, allowing legacy adapters to communicate over PCIe infrastructure without modifying the bus itself. The expansion logic converts non-standard adapter requests into standardized PCIe transactions and vice versa, resolving the contradiction between maintaining PCIe reliability and supporting legacy adaptability

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the communication function into two distinct parts: the PCIe bus infrastructure that maintains standardized parameters for reliability, and the I/O expansion logic that handles protocol translation for adaptability. This segmentation allows the PCIe bus to enforce strict parameters while the expansion logic manages compatibility with non-PCIe adapters, effectively separating the reliability and adaptability concerns

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If the PCIe bus infrastructure is modified to support non-PCIe compatible adapters, then adaptability is improved, but device complexity increases

Engineering Contradiction:
Improveadapter compatibilityVSAvoidbus infrastructure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Instead of modifying the PCIe bus infrastructure, the patent introduces an I/O expansion logic intermediary that handles all protocol translation. This approach improves adaptability while avoiding increased bus complexity, as the expansion logic manages all the complexity of supporting legacy adapters without requiring changes to the PCIe bus itself

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a virtual representation of legacy adapter communication protocols within the I/O expansion logic. Rather than physically modifying the PCIe bus to support legacy protocols, the expansion logic copies and emulates the necessary protocol handling, allowing legacy adapters to appear compatible with PCIe without actually changing the bus infrastructure

Inventive Principle:
Principle #26Copying

Data Source

PatentUS8769180B2Upbound input/output expansion request and response processing in a PCIe architecture
Publication Date: 2014.07.01 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8769180B2 patent drawing
  • US8769180B2 patent drawing
  • US8769180B2 patent drawing

AI summary

Embodiments of the invention relate to non-standard I/O adapters in a standardized input/output (I/O) architecture. An aspect of the invention includes initiating a first request to perform an operation on a host system. The first request formatted for a first protocol and including data required to process the first request. A second request is created responsive to the first request, the second request including a header and is formatted according to the second protocol. The creating includes storing the data required to process the first request in the header of the second request. The second request is sent to the host system.