Shared Cache Trigger Channels for Multicore Memory Throughput

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-core coherent systems, the heterogeneity of cache structures and memory access types across different processor components leads to increased CPU stall overhead and reduced memory throughput, making it challenging to maintain data consistency and maximize shared memory bandwidth.

Innovation Solution

A multi-core processing system with a shared memory controller (MSMC) that includes trigger control channels configured to receive and store memory management commands, detect triggering events, and arbitrate memory access requests to optimize memory access and reduce latency, using a data routing unit (DRU) for integrated address translation and cache prewarming.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the interconnect handles memory accesses in a serial fashion to guarantee atomicity and data consistency, then data coherency is maintained, but the interconnect becomes the access bottleneck reducing memory throughput

Engineering Contradiction:
Improvedata consistencyVSAvoidmemory throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The memory controller is segmented into multiple independent trigger control channels, each capable of handling memory access requests autonomously. This segmentation allows parallel processing of memory operations across different channels, eliminating the serial bottleneck while maintaining data consistency through individual channel arbitration

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The trigger control channels act as intermediary components between the interconnect and the memory hierarchy. These channels receive, buffer, and process memory management commands, mediating between the interconnect and lower-level memory components to enable parallel command issuance while preserving atomicity guarantees

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of time

If cache components issue cache allocate accesses with critical line first request to reduce CPU stall overhead, then CPU stall overhead is reduced, but other CPU's stall overhead is extended and shared memory throughput is reduced

Engineering Contradiction:
ImproveCPU stall overheadVSAvoidshared memory throughput
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The trigger control channels dynamically adjust memory access prioritization based on system state and multiple CPU needs. Rather than statically prioritizing one CPU's critical line, the system dynamically balances access requests across multiple CPUs, adjusting command issuance timing and priority to minimize overall CPU stall overhead while maintaining high shared memory throughput

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of memory access timing and prioritization from a fixed critical-line-first approach to a dynamic multi-CPU-aware approach. The trigger control channels modify access parameters based on current system state, enabling optimal balance between reducing CPU stalls and maintaining high memory throughput

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If multiple processor components access shared memory resources with different cache structures and access types, then system functionality is enhanced, but CPU stall overhead increases and memory throughput decreases

Engineering Contradiction:
Improvesystem functionalityVSAvoidmemory throughput
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The trigger control channels provide a universal interface that handles diverse memory access types from different processor components with different cache structures. Each channel can process various access types (read, write, allocate, invalidate) for multiple CPUs, providing multi-functional capability that manages heterogeneity while maintaining high throughput through parallel channel operation

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

Data Source

PatentUS11237968B2Multicore shared cache operation engine
Publication Date: 2022.02.01 TEXAS INSTRUMENTS INC
  • US11237968B2 patent drawing
  • US11237968B2 patent drawing
  • US11237968B2 patent drawing

AI summary

Techniques including receiving configuration information for a trigger control channel of the one or more trigger control channels, the configuration information defining a first one or more triggering events, receiving a first memory management command, store the first memory management command, detecting a first one or more triggering events, and triggering the stored first memory management command based on the detected first one or more triggering events.