PCIe Bridge Event Handling via Device Tree and Action List

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing information processing systems face challenges in efficiently handling errors and events across PCIe devices due to varying specifications among different controllers, leading to increased development complexity and difficulty in absorbing differences between devices.

Innovation Solution

An information processing apparatus with a PCIe bridge that registers event processes for each device, acquires event notifications, specifies the device location, extracts the relevant process, and sends execution instructions, allowing each PCIe device to perform its specific process without relying on device drivers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a device driver is changed for each controller to handle error handling conforming to hardware specifications, then the error handling reliability is improved, but the device complexity and development time are increased

Engineering Contradiction:
Improveerror handling reliabilityVSAvoiddevice driver complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces an input/output control unit as an intermediary between the arithmetic processing unit and processing units. This unit includes a location information storage unit that stores location information of each processing unit, and an execution process information storage unit that stores execution processes for each processing unit. When an event occurs, the input/output control unit acquires the event occurrence notification, specifies the location of the affected processing unit using the location information, extracts the appropriate execution process from the execution process information, and sends it to the arithmetic processing unit. This intermediary structure eliminates the need for separate device drivers for each controller while maintaining reliable error handling specific to each device.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If conventional technology blocks instructions and controls devices based on OS commands, then common processes are simplified, but the ability to handle device-specific differences is reduced

Engineering Contradiction:
Improveprocess control simplicityVSAvoiddevice difference absorption capability
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent applies preliminary action by pre-storing location information and execution process information in the input/output control unit before events occur. The location information storage unit contains location information for each processing unit, and the execution process information storage unit contains device-specific execution processes. When an event occurs, the system quickly retrieves the appropriate pre-prepared execution process based on the processing unit's location, rather than needing to determine the appropriate control method in real-time. This allows the system to maintain simple centralized control while effectively handling device-specific differences through pre-configured execution processes.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9892078B2Information processing apparatus and control method of the information processing apparatus
Publication Date: 2018.02.13 FUJITSU LTD
  • US9892078B2 patent drawing
  • US9892078B2 patent drawing
  • US9892078B2 patent drawing

AI summary

A core, PCIe devices, and a PCIe switch are provided. A PCIe bridge includes a device tree data that indicates the location of each of the PCIe devices with respect to the core via the PCIe switch and an action list in which a process causing one of the PCIe devices to perform when an event occurs in the one of the PCIe devices. If an event occurs in a specific PCIe device, the PCIe bridge acquires an event occurrence notification; specifies the location of the specific PCIe device from the device tree data on the basis of an event occurrence notification; extracts the process causing the specific PCIe device to perform from the action list; and sends an execution instruction of the extracted process to the specific PCIe device on the basis of the specified location.