Weight-Stationary Matrix Multiply Accelerator With Shared L2 Cache

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional processors struggle to efficiently sustain the data bandwidth required for running large machine learning models, particularly in processing the number of matrix multiplications needed for neural networks, falling short of the computational demands.

Innovation Solution

A weight-stationary systolic array accelerator is tightly coupled with a shared L2 cache, enabling high computational throughput for matrix multiplications by maintaining locality of data within the model, allowing efficient processing of machine learning workloads.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional processors are used for matrix multiplications, then general-purpose computing is maintained, but computational throughput and data bandwidth efficiency deteriorate

Engineering Contradiction:
Improvecomputational throughputVSAvoidprocessor architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system is divided into distinct segments: a general-purpose processor core for control and a specialized accelerator for matrix multiplications. The accelerator is further segmented into multiple systolic array tiles that can process different matrix operations simultaneously. This segmentation allows each component to be optimized for its specific function, achieving high computational throughput while maintaining overall system manageability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A tightly coupled L2 cache is introduced as an intermediary between the processor core and the accelerator. This cache serves as a buffer that stores weight matrices and activation matrices, reducing the computational burden on the processor core while ensuring rapid data access for the accelerator. The cache mediates data transfer, allowing the accelerator to operate at high speeds without overwhelming the processor core.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If data is frequently transferred between processor and memory, then computational flexibility is maintained, but data bandwidth efficiency deteriorates

Engineering Contradiction:
Improvedata bandwidth efficiencyVSAvoiddata transfer time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

Weight matrices are pre-loaded into the tightly coupled L2 cache before inference operations begin. This preliminary action ensures that the accelerator has immediate access to the weight data during matrix multiplications, eliminating the need for frequent data transfers between main memory and the processor during computation. The activation matrices are also managed in the cache to minimize transfer delays.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The L2 cache is tightly coupled with both the processor core and the accelerator, merging these components into a unified data sharing structure. This merged architecture allows both the processor and accelerator to access the same cached data simultaneously, reducing redundant data transfers and improving overall data bandwidth efficiency. The weight matrices reside in this shared cache, serving both components efficiently.

Inventive Principle:
Principle #5Merging (Combining)

3Power

If more compute units are added to increase processing capacity, then computational power improves, but energy consumption increases

Engineering Contradiction:
Improvecomputational powerVSAvoidenergy consumption
Core Design Contradiction:
PowerVSUse of energy by moving object

Solution Approach 1:

The systolic array tiles in the accelerator are designed to perform matrix multiplications using local data from the tightly coupled L2 cache, minimizing the need for additional data movement operations. Each tile processes data locally, reducing the energy associated with data transfer. The architecture allows the compute units to serve themselves by maintaining weight matrices in the cache, reducing the overall energy footprint while maintaining high computational power.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS20260037599A1Weight-stationary matrix multiply accelerator with tightly coupled l2 cache
Publication Date: 2026.02.05 AKEANA INC
  • US20260037599A1 patent drawing
  • US20260037599A1 patent drawing
  • US20260037599A1 patent drawing

AI summary

An accelerator is accessed. The accelerator includes a weight-stationary systolic array of one or more multiply-accumulate units. The accelerator is coupled to a memory hierarchy and a processor core. The processor core sends a work request to the accelerator. The work request is based on execution of a machine learning model and an activation matrix. In response to the work request, the accelerator loads a weight matrix and the activation matrix. The loading uses the memory hierarchy. The accelerator multiplies the weight matrix by the activation matrix. The multiplication results in an answer matrix. The accelerator stores the answer matrix in the memory hierarchy. The processor core obtains the answer matrix that was stored. The machine learning model is trained. The training produces the weight matrix, which is transposed and saved to the memory hierarchy.