Per-Function Downstream Port Containment for PCIe Error Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing PCIe error handling methods often result in complete link disablement following non-fatal errors, which can prevent access to operable functions and cause entire sub-fabrics to become inaccessible, especially in multi-function end-point devices and SR-IOV configurations.

Innovation Solution

Per-Function Downstream Port Containment (pF-DPC) selectively filters packets associated with affected functions while maintaining the link, using RID and address forwarding to isolate errors and allow error recovery without disabling the link between the PCIe port and end-point device.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If complete link disablement is performed following non-fatal errors, then error containment is improved, but access to operable functions is lost and entire sub-fabrics become inaccessible

Engineering Contradiction:
Improveerror containmentVSAvoidaccess to operable functions
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent segments the error containment scope from the entire PCIe link to individual PCIe functions. When a non-fatal error occurs in a specific function, only that function is disabled while the link remains active for other functions. This is achieved by tracking errors at the function level (using function-specific identifiers like BDF numbers) and selectively disabling only the affected function's traffic flow, not the entire link.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by making the error containment effect localized to the specific function experiencing the error, rather than applying it globally to the entire link. Each function can be independently disabled/enabled based on its error state, allowing operable functions to continue operating normally while containing errors to their source.

Inventive Principle:
Principle #3Local quality

2Object-affected harmful factors

If the link is completely disabled, then data corruption spread is prevented, but link connectivity is lost and error recovery is hindered

Engineering Contradiction:
Improvedata corruption spreadVSAvoidlink connectivity
Core Design Contradiction:
Object-affected harmful factorsVSReliability

Solution Approach 1:

The patent segments the link into function-specific traffic flows, allowing selective disabling of only the function experiencing data corruption risks while maintaining connectivity for other functions. This prevents data corruption spread to the affected function without disrupting the entire link's connectivity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary mechanism (the downstream port's error handling logic) that mediates between error detection and link disablement. Instead of directly disabling the entire link upon error detection, the intermediary selectively filters traffic for only the affected function while allowing other traffic to continue, thus preventing data corruption spread while preserving link connectivity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If entire sub-fabrics are made inaccessible, then error isolation is improved, but system productivity decreases due to loss of operable functions

Engineering Contradiction:
Improveerror isolationVSAvoidsystem productivity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments error isolation from the entire sub-fabric to individual functions within the sub-fabric. When a non-fatal error occurs, only the affected function is isolated while other functions and their associated sub-fabric resources remain accessible. This maintains system productivity by allowing operable functions to continue operating without being affected by errors in other functions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by making error isolation effects local to the specific function rather than global to the entire sub-fabric. Each function's error state is independently managed, allowing error isolation to be applied only where needed while preserving access to and productivity of operable functions throughout the sub-fabric.

Inventive Principle:
Principle #3Local quality

4Ease of operation

If per-function error containment is implemented, then access to operable functions is maintained, but device complexity increases

Engineering Contradiction:
Improveaccess to operable functionsVSAvoiderror handling complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent implements self-service by enabling downstream ports to automatically perform per-function error containment without requiring external intervention or complex coordination. The downstream port monitors errors at the function level and autonomously disables only the affected function's traffic flow, maintaining ease of operation while managing the complexity within the port's own error handling logic.

Inventive Principle:
Principle #25Self-service

5Object-affected harmful factors

If selective function filtering is performed, then error impact is reduced, but measurement and detection difficulty increases

Engineering Contradiction:
Improveerror impactVSAvoiderror detection complexity
Core Design Contradiction:
Object-affected harmful factorsVSDifficulty of detecting and measuring

Solution Approach 1:

The patent extracts the function identifier information (such as BDF numbers) from the error messages and uses it to selectively filter traffic for only the affected function. This extraction approach allows the system to reduce error impact through selective filtering while managing detection complexity by focusing error detection efforts on extracting and processing function-specific identifiers from error messages.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentEP3611626B1Per-function downstream port containment
Publication Date: 2024.09.11 HUAWEI TECH CO LTD
  • EP3611626B1 patent drawingFigure 1~2
  • EP3611626B1 patent drawingFigure 3A~3B
  • EP3611626B1 patent drawingFigure 4~5

AI summary

Per-Function Downstream Port Containment (pF-DPC) is an extension to Downstream Port Containment (DPC) in the Peripheral Component Interconnect express (PCIe) standard. Pf-DPC confines non-fatal errors to specific functions of an end-point device without disabling the link between a PCIe port and the end-point device. PCIe ports configured for pF-DPC may filter (e.g., drop) packets carrying routing identifiers (RIDs) and/or addresses assigned to a function affected by a non-fatal error, while continuing to forward packets carrying RIDs/addresses associated with remaining operable functions over the corresponding link.