DPU PCIe Error Buffering for Bandwidth Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Information Handling Systems (IHSs) face challenges in managing PCIe bandwidth efficiently, particularly in handling errors that can impact data transmission speed and reliability, especially in high-bandwidth applications like artificial intelligence and machine learning systems.

Innovation Solution

Implementing a data processing unit (DPU) with buffers to track and manage errors in PCIe connections, allowing for the detection and classification of errors, and downgrading transmission speed only when error buffers reach capacity, thereby maintaining high-bandwidth operations while tolerating errors in live applications and optimizing for accuracy in offline training.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If error tracking buffers are implemented to monitor PCIe connection errors, then reliability of data transmission is improved, but device complexity increases

Engineering Contradiction:
Improvedata transmission reliabilityVSAvoidbandwidth management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The error tracking system is segmented into multiple specialized buffers, each dedicated to tracking specific types of PCIe errors (e.g., CRC errors, timeout errors, protocol violations). This segmentation allows the system to monitor different error categories independently, improving reliability through comprehensive error tracking while managing complexity by organizing error handling into discrete, manageable units rather than a monolithic error management system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The DPU acts as an intermediary between the PCIe switch and the processors/SSDs, absorbing and managing error tracking responsibilities. The DPU's buffer management system serves as a mediator that monitors error conditions and makes intelligent decisions about bandwidth allocation and speed adjustments, isolating the complexity of error management from the core PCIe communication path while maintaining reliable data transmission.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If transmission speed is downgraded when error buffers reach capacity, then data transmission reliability is improved, but productivity decreases

Engineering Contradiction:
Improvedata transmission reliabilityVSAvoiddata transmission speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The PCIe transmission speed is made dynamic rather than static, allowing the system to adjust speed based on real-time error buffer conditions. When error buffers approach capacity, the system dynamically downgrades transmission speed to allow more time for error processing and buffer clearing. This dynamic adjustment ensures reliability by preventing error overflow while minimizing productivity impact by maintaining high speeds during periods of low error activity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes operational parameters (transmission speed) based on buffer status. By monitoring error buffer fill levels and adjusting PCIe link speed accordingly, the system transforms a static transmission system into one that adapts its parameters to maintain reliability. This parameter change approach allows the system to prioritize reliability when needed while maximizing productivity during normal operating conditions.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If multiple buffers are used to track different error types, then measurement precision of error classification is improved, but device complexity increases

Engineering Contradiction:
Improveerror classification precisionVSAvoidbuffer management complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

Error tracking is segmented into multiple specialized buffers, each dedicated to specific error types such as CRC errors, timeout errors, and protocol violations. This segmentation enables precise classification and measurement of different error categories, allowing the system to identify and address specific error sources. The modular buffer structure manages complexity by creating distinct, well-defined error tracking zones rather than attempting to handle all errors in a single undifferentiated system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements comprehensive error tracking by creating buffers for all possible PCIe error types, even those that may not frequently occur. This excessive action ensures that no error type goes undetected or misclassified, achieving maximum measurement precision. The complexity is managed by having predefined buffer allocation rules that automatically route errors to appropriate buffers, eliminating the need for complex real-time error classification logic.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11977436B2Systems and methods for managing high-speed data links
Publication Date: 2024.05.07 DELL PROD LP
  • US11977436B2 patent drawing
  • US11977436B2 patent drawing
  • US11977436B2 patent drawing

AI summary

Systems and methods are provided for management of PCIe bandwidth within an IHS (Information Handling System). A PCIe connection is detected between a first of the processors of the IHS and a solid-state drive accessed via a DPU (Data Processing Unit). In a processor core of the DPU (e.g., ARM core) buffers are initialized for tracking specific types of errors in the PCIe connection. Upon detecting an error in the PCIe connection, the error is added to one of the designated buffers based on a type of the detected error. If adding of the error in the PCIe connection to the buffer results in a size limit of the buffer being reached, and if the size of the buffer cannot be reduced through retransmission of the errors in the buffer, a transmission speed of the PCIe connection is downgraded, thus extending operations at higher transmission speeds.