Multicore Instruction Prefetch Pipeline for Coherence-Free SIMD Delivery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing SIMD processing units face challenges in efficiently providing instructions due to the high cost of adding instruction memory to each tile and the complexity of full cache coherent solutions, which are impractical for cross-lane processing units (XPUs).

Innovation Solution

An instruction prefetch pipeline architecture is implemented, comprising a shared instruction memory (TiMem) and independent instruction buffers (iBuf) per core, with a prefetch unit and router, optimizing instruction delivery through prefetching and filtering to reduce redundant requests and enhance bandwidth.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a full cache coherent solution is deployed in CPUs, then instruction delivery efficiency is improved, but device complexity increases significantly

Engineering Contradiction:
Improveinstruction delivery efficiencyVSAvoidcache coherence complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments the instruction memory into multiple task instruction memories (one per data lane) and separates the prefetch function into independent prefetch units for each tile. This segmentation allows each component to operate independently without requiring complex cache coherence protocols across the entire system, thus improving instruction delivery efficiency while reducing device complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The prefetch unit performs preliminary action by fetching instructions from task instruction memories ahead of time and storing them in local instruction buffers before the compute cores need them. This advance preparation eliminates the need for complex cache coherence mechanisms during actual instruction execution, as instructions are already available in the local buffers when needed.

Inventive Principle:
Principle #10Preliminary action

2Speed

If each tile has its own instruction memory, then instruction access speed is improved, but manufacturing cost increases

Engineering Contradiction:
Improveinstruction access speedVSAvoidmanufacturing cost
Core Design Contradiction:
SpeedVSEase of manufacture

Solution Approach 1:

The system merges multiple task instruction memories into a single shared instruction memory resource that serves all data lanes. The instruction router intelligently directs prefetch requests to the appropriate task instruction memory based on the data lane identifier, allowing multiple tiles to share the same physical memory resources while maintaining fast access speeds through parallel prefetch operations.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The shared instruction memory is designed to serve multiple functions: it can be accessed by any data lane through the instruction router, and each task instruction memory within it can service multiple tiles. This multi-functionality reduces the total number of memory components needed, lowering manufacturing costs while maintaining fast instruction access through efficient routing and parallel access paths.

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

3Loss of time

If instructions are prefetched ahead of time, then cold cache misses are reduced, but bandwidth requirements increase

Engineering Contradiction:
Improvecold cache miss penaltyVSAvoidbandwidth consumption
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The prefetch bandwidth is segmented into multiple independent channels, one for each data lane. Each prefetch unit operates independently on its assigned data lane, fetching instructions in parallel. This segmentation distributes the total bandwidth requirement across multiple channels, reducing the peak bandwidth demand on any single channel while effectively prefetching all needed instructions and eliminating cold cache misses.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The prefetch unit implements partial action by fetching only the specific instructions needed for the current and near-future operations of each data lane, rather than prefetching all possible instructions. The prefetch window is limited to a reasonable ahead-of-time horizon, fetching just enough instructions to keep the instruction buffer filled without unnecessarily consuming excessive bandwidth. This selective prefetching reduces bandwidth consumption while still eliminating cold cache misses for the actually executed instructions.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS12468535B2Cooperative instruction prefetch on multicore system
Publication Date: 2025.11.11 GOOGLE LLC
  • US12468535B2 patent drawing
  • US12468535B2 patent drawing
  • US12468535B2 patent drawing

AI summary

Aspects of the disclosure are directed to methods, systems, and apparatuses using an instruction prefetch pipeline architecture that provides good performance without the complexity of a full cache coherent solution deployed in conventional CPUs. The architecture can include components which can be used to construct an instruction prefetch pipeline, including instruction memory (TiMem), instruction buffer (iBuf), a prefetch unit, and an instruction router.