Sparse Matrix Instruction Sequencing for Systolic Arrays

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data processing devices face challenges in efficiently performing matrix multiplication, particularly with sparse matrices, leading to malfunctions such as RAW hazards in systolic array structures due to irregular non-zero components and indices.

Innovation Solution

A data processing device and method that includes a storage module, data load module, and processing unit to generate an instruction sequence based on entry validity masks, determining non-zero entries and generating operations accordingly, optimizing matrix multiplication in systolic arrays.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a systolic array structure is used for matrix multiplication, then processing speed is improved, but malfunctions such as RAW hazards occur when processing sparse matrices with irregular non-zero components

Engineering Contradiction:
Improveprocessing speedVSAvoidoperation correctness
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent applies preliminary action by pre-processing the sparse matrix to generate a compressed representation that includes only non-zero elements and their positions before feeding data to the systolic array. This preparation step prevents RAW hazards by ensuring the data format is optimized for the hardware architecture, allowing the systolic array to operate correctly on sparse matrices without encountering irregularity-induced malfunctions.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts only the essential information from the sparse matrix (non-zero elements and their positions) while discarding zero elements and unnecessary structural data. This extraction creates a streamlined data representation that maintains the mathematical integrity of the matrix while reducing complexity, enabling the systolic array to process sparse matrices efficiently without encountering RAW hazards.

Inventive Principle:
Principle #2Taking out (Extraction)

2Productivity

If all matrix entries are processed in a systolic array, then computational completeness is maintained, but resource utilization efficiency decreases due to processing zero entries

Engineering Contradiction:
Improvecomputational throughputVSAvoidenergy consumption
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent extracts and removes zero entries from the matrix representation before processing, retaining only non-zero elements and their positional information. This extraction significantly reduces the number of computational operations required, allowing the systolic array to process only meaningful data and thereby improving resource utilization efficiency while reducing energy consumption compared to processing all entries including zeros.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies partial action by processing only the necessary subset of matrix entries (non-zero elements) rather than all entries. This partial processing approach maintains computational completeness for the essential operations while avoiding wasted resources on zero entries, thus improving productivity and reducing energy loss simultaneously.

Inventive Principle:
Principle #16Partial or excessive action

3Ease of manufacture

If standard matrix multiplication is performed without optimization, then implementation simplicity is maintained, but processing time increases for sparse matrices

Engineering Contradiction:
Improveimplementation simplicityVSAvoidprocessing time
Core Design Contradiction:
Ease of manufactureVSLoss of time

Solution Approach 1:

The patent applies preliminary action by implementing a pre-processing stage that compresses the sparse matrix into an optimized format before it enters the systolic array. This preliminary compression step, while adding some implementation complexity, dramatically reduces processing time by ensuring the data is already formatted for efficient hardware operation, avoiding the need for complex runtime optimizations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary data representation format that serves as a bridge between the standard matrix input and the systolic array processing. This intermediary compressed format translates standard matrix entries into an optimized representation that the hardware can process efficiently, reducing processing time while maintaining implementation feasibility through a systematic conversion approach.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20260064807A1Device and method for operation of data
Publication Date: 2026.03.05 REBELLIONS INC
  • US20260064807A1 patent drawing
  • US20260064807A1 patent drawing
  • US20260064807A1 patent drawing

AI summary

The present disclosure relates to a data processing device. The data processing device includes: a storage module configured to store a plurality of entries included in a first matrix and position information associated with each of the plurality of entries; a data load module configured to receive the plurality of entries and position information from the storage module, generate a determination result as to whether each of the received entries is zero, and generate an instruction sequence based on the determination result and the position information; and a processing unit configured to generate an operation result by using some of the plurality of entries in accordance with the instruction sequence.