Local Memory Disambiguation for Compute-Slice Data Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As modern computing technologies increase in complexity and parallelism, maintaining memory semantics across multiple processor cores becomes a significant challenge, leading to potential data corruption and reduced performance due to processor stalling.

Innovation Solution

A parallel architecture with compute slices and local memory disambiguation units (LMDUs) is implemented, where each compute slice is coupled to a local memory disambiguation unit (LMDU) and a global memory disambiguation unit (GMDU) to ensure that each core has access to the most updated data by detecting and resolving address aliasing through memory operation tables (MOTs) and GMDUs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If parallelism is increased by adding more processor cores, then processing performance is improved, but memory system complexity and data consistency challenges worsen

Engineering Contradiction:
Improveprocessing performanceVSAvoidmemory system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the memory disambiguation function into separate dedicated units (LDUs) that are integrated with each compute slice. Each LDU independently handles address aliasing detection and resolution for its associated compute slice, segmenting the global memory management task into localized units that operate autonomously.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces load-store units (LDUs) as intermediary components between compute slices and the memory system. These LDUs act as mediators that detect address aliasing, resolve data dependencies, and manage memory access timing, thereby simplifying the overall memory system complexity while supporting parallel processing.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If parallel processing is increased, then compute power is improved, but processor stalling due to memory access conflicts increases

Engineering Contradiction:
Improvecompute powerVSAvoidprocessor stalling
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent performs address aliasing detection and data dependency analysis in advance during the instruction issue stage, before actual memory access occurs. The LDU predicts potential conflicts and prepares resolution strategies proactively, preventing processor stalling by ensuring data availability before compute operations require it.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback mechanisms where the LDU continuously monitors memory access patterns, detects address aliasing conditions, and adjusts instruction scheduling and data forwarding dynamically. This feedback loop enables the system to respond to memory conflicts in real-time, minimizing processor stalling while maintaining high compute throughput.

Inventive Principle:
Principle #23Feedback

3Productivity

If more parallel compute slices are added, then processing capability is improved, but ensuring data consistency across cores becomes more difficult

Engineering Contradiction:
Improveprocessing capabilityVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The LDU acts as an intermediary that ensures data consistency by detecting address aliasing between different compute slices and resolving dependencies before executing memory operations. This mediation prevents data inconsistency issues that would otherwise arise from parallel access to shared memory locations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

Each compute slice with its integrated LDU autonomously manages its own memory access consistency checks and dependency resolutions. The system achieves global data consistency through the cumulative effect of local self-service operations at each compute slice, eliminating the need for complex centralized coordination.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS20250306930A1Local memory disambiguation for a parallel architecture with compute slices
Publication Date: 2025.10.02 ASCENIUM INC
  • US20250306930A1 patent drawing
  • US20250306930A1 patent drawing
  • US20250306930A1 patent drawing

AI summary

A processing unit is accessed, comprising compute slices, a control unit, local memory disambiguation units (LMDUs), and memory system. Each slice includes an execution unit and is coupled to successor and predecessor slices. Each slice is coupled to an LMDU. The control unit distributes a first slice task to a first slice coupled to a first LMDU. The first slice executes the first task. The task includes a load instruction including a load address. The first slice issues the load instruction to the first LMDU. The issuing saves load information in a memory operation table (MOT) within the LMDU. The LMDU detects, based on the MOT, address aliasing between the load address and a store address of a previous store instruction. The MOT forwards store information from the previous store instruction. The store information satisfies one or more bytes of data required for the load instruction.