Write Request Buffer for PCIe Memory Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing PCIe links face limitations in managing high-bandwidth and low-latency memory access, particularly in environments with large shared memory pools and devices that require efficient coherency and isolated memory management.

Innovation Solution

The implementation of a write request buffer within the link controller of a host device or along the write request path, which stores unique write requests and their data instead of flushing them immediately, allowing for improved memory access performance by bypassing the interconnect for matching read requests.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If write requests are flushed immediately through the PCIe interconnect, then memory access bandwidth is maintained, but read latency increases significantly due to interconnect traversal

Engineering Contradiction:
Improveread latencyVSAvoidbuffer management complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The write request buffer stores write requests and their data before they are needed for read operations. By preliminarily capturing and buffering write requests at the host device side, the system prepares data in advance so that subsequent read requests can be satisfied directly from the buffer without traversing the PCIe interconnect, thereby reducing read latency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The write request buffer acts as an intermediary component between the host device's memory system and the PCIe interconnect. It mediates read requests by providing data directly from the buffer when possible, avoiding the need for data to travel through the interconnect, thus reducing latency while maintaining bandwidth through selective buffering.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If a write request buffer is implemented to reduce read latency, then memory access speed improves, but the device complexity and buffer management overhead increase

Engineering Contradiction:
Improvememory access speedVSAvoidbuffer structure complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The buffer is segmented into multiple entries, each capable of storing a write request and its associated data. This segmentation allows the buffer to handle multiple write requests concurrently and enables efficient matching with read requests by comparing addresses against individual buffer entries, thereby improving memory access speed while maintaining manageable complexity through structured organization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The write request buffer serves multiple functions: it stores write requests, holds write data, and provides direct read fulfillment for matching addresses. This multi-functionality improves memory access speed by handling both write and read operations efficiently within a single component, reducing the need for separate buffering mechanisms and thereby limiting the increase in device complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Loss of time

If write requests are buffered instead of flushed immediately, then read latency decreases, but bandwidth utilization of the interconnect is reduced

Engineering Contradiction:
Improveread latencyVSAvoidinterconnect bandwidth utilization
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The system implements partial buffering by storing only certain write requests in the buffer rather than flushing all write requests immediately through the interconnect. This partial action allows the buffer to satisfy some read requests directly (reducing latency) while still utilizing the interconnect for other operations, thereby balancing read latency improvement with interconnect bandwidth utilization.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The buffering mechanism applies locally to specific write requests that are candidates for read operations, rather than uniformly buffering all write requests. By selectively buffering based on address matching potential and read request patterns, the system reduces read latency for relevant operations while maintaining interconnect bandwidth utilization for other traffic, thus resolving the contradiction between latency improvement and bandwidth utilization.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20250190141A1Write Request Buffer
Publication Date: 2025.06.12 MICRON TECHNOLOGY INC
  • US20250190141A1 patent drawing
  • US20250190141A1 patent drawing
  • US20250190141A1 patent drawing

AI summary

Described apparatuses and methods relate to a write request buffer for a memory system that may support a nondeterministic protocol. A host device and connected memory device may include a controller with a read queue and a write queue. A controller includes a write request buffer to buffer write addresses and write data associated with write requests directed to the memory device. The write request buffer can include a write address buffer that stores unique write addresses and a write data buffer that stores most-recent write data associated with the unique write addresses. Incoming read requests are compared with the write requests stored in the write request buffer. If a match is found, the write request buffer can service the requested data without forwarding the read request downstream to backend memory. Accordingly, the write request buffer can improve the latency and bandwidth in accessing a memory device over an interconnect.