PCIe Flow Control Using Sequence-Range NACK Retransmission

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current PCIe flow control implementations result in unnecessary retransmission of valid TLPs that are out of sequence, leading to reduced throughput and increased power consumption, as they do not efficiently handle out-of-order packets.

Innovation Solution

Implementing a mechanism where a receiver provides a negative acknowledgment (NACK) with starting and ending sequence numbers to request selective retransmission of only out-of-order packets, rather than retransmitting all packets in the replay buffer.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If current PCIe flow control implementation retransmits all packets in replay buffer upon receiving NACK, then reliability is improved, but productivity deteriorates due to unnecessary retransmissions

Engineering Contradiction:
Improveflow control reliabilityVSAvoidthroughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the retransmission process by dividing the replay buffer into two distinct parts: packets that need retransmission (identified by sequence numbers between SSN and ESN) and packets that do not need retransmission (packets with sequence numbers before SSN or after ESN). This segmentation allows selective retransmission of only the necessary packets, improving throughput while maintaining reliability.

Inventive Principle:
Principle #1Segmentation

2Reliability

If current PCIe flow control implementation retransmits all packets in replay buffer upon receiving NACK, then reliability is improved, but use of energy deteriorates due to increased power consumption

Engineering Contradiction:
Improveflow control reliabilityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent segments the retransmission process by dividing the replay buffer into two distinct parts: packets that need retransmission (identified by sequence numbers between SSN and ESN) and packets that do not need retransmission (packets with sequence numbers before SSN or after ESN). This segmentation allows selective retransmission of only the necessary packets, improving throughput while maintaining reliability.

Inventive Principle:
Principle #1Segmentation

3Reliability

If current PCIe flow control implementation retransmits all packets in replay buffer upon receiving NACK, then reliability is improved, but loss of time deteriorates due to reduced throughput

Engineering Contradiction:
Improveflow control reliabilityVSAvoidretransmission time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the retransmission process by dividing the replay buffer into two distinct parts: packets that need retransmission (identified by sequence numbers between SSN and ESN) and packets that do not need retransmission (packets with sequence numbers before SSN or after ESN). This segmentation allows selective retransmission of only the necessary packets, improving throughput while maintaining reliability.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20260010428A1Flow control between peripheral component interconnect express devices
Publication Date: 2026.01.08 QUALCOMM INC
  • US20260010428A1 patent drawing
  • US20260010428A1 patent drawing
  • US20260010428A1 patent drawing

AI summary

Aspects of the disclosure provide techniques for retransmitting transaction layer packets (TLPs) for which a negative acknowledgment (NACK) is received without retransmitting previously transmitted TLPs that are correctly received, yet out-of-sequence, by a receiver. A receiver (e.g., a receiving link partner) can provide a transmitter (e.g., a transmitting link partner) with a NACK that includes a starting sequence number (SSN) and an ending sequence number (ESN), which can notify the transmitter about the packets for retransmission and/or packets that can be purged from a transmit buffer of the transmitter.