Memory Controller Write Acknowledgment for Cache Write Streaming

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In integrated circuits, particularly in SoCs, write operations are stalled due to the need for write acknowledgments that confirm the completion of memory writes, which can disrupt write streaming and hinder performance due to the latency involved in lower level cache writes.

Innovation Solution

A memory controller is configured to send write acknowledgments contemporaneously with the scheduling of memory write requests, ensuring that write operations are acknowledged immediately upon scheduling, thereby reducing latency and allowing uninterrupted write streaming.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the system waits for write acknowledgments from lower level cache before processing subsequent write requests, then write coherence is maintained, but write streaming is disrupted and performance deteriorates

Engineering Contradiction:
Improvewrite coherenceVSAvoidwrite streaming performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The memory controller sends write acknowledgments to the processor core contemporaneously with scheduling write requests on the memory pipeline, before the actual write completion is confirmed from lower level cache. This preliminary acknowledgment allows the processor core to continue streaming write requests without stalling, while write coherence is still maintained through the ordered processing guarantee of the memory pipeline.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the system sends write acknowledgments only after actual write completion, then write coherence is ensured, but latency increases and write streaming is hindered

Engineering Contradiction:
Improvewrite coherenceVSAvoidwrite acknowledgment latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Write acknowledgments are sent in advance contemporaneously with request scheduling rather than waiting for actual write completion. The memory pipeline's inherent ordered processing guarantees that this preliminary acknowledgment does not compromise write coherence, thereby reducing latency and enabling continuous write streaming.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements a feedback mechanism where the memory controller monitors the ordered processing state of the memory pipeline and sends acknowledgments based on scheduling position rather than completion status. This feedback approach allows the processor core to maintain write streaming while the memory controller ensures coherence through ordered processing tracking.

Inventive Principle:
Principle #23Feedback

3Stability of the object's composition

If the processor core stalls waiting for write acknowledgments, then write order is maintained, but overall system throughput decreases

Engineering Contradiction:
Improvewrite orderVSAvoidsystem throughput
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The memory controller provides preliminary write acknowledgments contemporaneously with scheduling write requests, allowing the processor core to maintain its write streaming without stalling. The memory pipeline's ordered processing ensures write order is preserved even though acknowledgments are sent before actual completion, thereby maintaining both write order and high system throughput.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12517830B2Write streaming with cache write acknowledgment in a processor
Publication Date: 2026.01.06 TEXAS INSTRUMENTS INC
  • US12517830B2 patent drawing
  • US12517830B2 patent drawing
  • US12517830B2 patent drawing

AI summary

In described examples, a processor system includes a processor core that generates memory write requests, a cache memory, and a memory controller. The memory controller has a memory pipeline. The memory controller is coupled to control the cache memory and communicatively coupled to the processor core. The memory controller is configured to receive the memory write requests from the processor core; schedule the memory write requests on the memory pipeline; and contemporaneously with scheduling respective ones of the memory write requests on the memory pipeline, send to the processor core a write acknowledgment confirming that writing of a data payload of the respective memory write request to the cache memory has completed.