Compute Slice Semantic Ordering for Parallel Architecture

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As computers evolve, the challenge of maintaining efficient memory access and preventing stale data across multiple processing cores in parallel architectures has become increasingly complex, limiting the potential for further increases in processor clock rates.

Innovation Solution

A parallel architecture with compute slices and semantic ordering is introduced, where compute slices are coupled and each includes a load-store unit (LSU). The control unit distributes slice tasks, including load instructions, to compute slices for execution, and checks for address aliasing between load and store addresses to ensure data integrity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If parallelism is increased to improve processing performance, then productivity increases, but device complexity and difficulty of detecting and measuring data integrity worsen

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

Solution Approach 1:

The system segments memory access operations into distinct load-store units (LSUs) organized in a chain, where each LSU handles specific memory operations independently. This segmentation allows parallel processing while maintaining individual accountability for data integrity at each stage, reducing overall system complexity through modular design.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces intermediary structures including a load address buffer (LAB) and alias detection logic that act as mediators between LSUs. These intermediaries detect and resolve address aliasing conditions before data corruption can occur, enabling parallel operation while maintaining data integrity without requiring complex centralized control.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If parallelism is increased to improve processing performance, then productivity increases, but reliability of data integrity worsens due to potential stale data and address aliasing

Engineering Contradiction:
Improveprocessing performanceVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary alias detection by comparing load addresses against previously executed store addresses in the LAB before memory access operations complete. This preliminary action identifies potential address aliasing conditions early, allowing the system to prevent data corruption before it occurs while maintaining parallel execution flow.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback mechanisms where alias detection logic continuously monitors memory access patterns and provides feedback signals to control LSU operations. When address aliasing is detected, the feedback triggers appropriate responses such as flushing buffers or reordering operations, ensuring data integrity while allowing parallel processing to continue where safe.

Inventive Principle:
Principle #23Feedback

3Speed

If processor clock rates are increased to improve speed, then speed increases, but power dissipation increases limiting further increases

Engineering Contradiction:
Improveprocessor clock rateVSAvoidpower dissipation
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The system dynamically adjusts the level of alias detection and memory operation ordering based on runtime conditions. The control logic can optimize the balance between thoroughness of integrity checking and processing speed, allowing higher clock rates when conditions permit while maintaining reliability when needed, thereby reducing unnecessary power consumption.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20250085970A1Semantic ordering for parallel architecture with compute slices
Publication Date: 2025.03.13 ASCENIUM INC
  • US20250085970A1 patent drawing
  • US20250085970A1 patent drawing
  • US20250085970A1 patent drawing

AI summary

Techniques for managing compute slice tasks are disclosed. A processing unit comprising compute slices, load-store units (LSUs), a control unit, and a memory system is accessed. The compute slices are coupled. Each compute slice includes an LSU which is coupled to a predecessor LSU and a successor LSU. A compiled program is executed as the control unit distributes slice tasks to the compute slices for execution. A slice task, which includes a load instruction, is distributed to a current compute slice. The current compute slice can execute the slice task speculatively. A previously executed store instruction is committed to memory by a predecessor LSU. Address aliasing is checked between an address associated with the previously executed store instruction and the load address associated with the load instruction. The slice task running on the current compute slice can be cancelled when aliasing is detected.