RNN Accelerator Core Weight Reuse via Segmented Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional recurrent neural networks (RNNs) face challenges with weight reusage, leading to high energy consumption and latency due to the serial processing of inputs, which results in repeated loading of weights from memory at each time step.

Innovation Solution

The implementation of RNN accelerator cores that employ data mapping methods to maximize weight reusage by loading weights only once from memory, using a partitioned architecture that separates input and hidden vector weight matrices for efficient matrix multiplication and activation processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If serial processing is used in conventional RNNs, then the network can process inputs progressively at each time step, but weights must be reloaded from memory at each time step resulting in high energy consumption

Engineering Contradiction:
Improveprogressive input processingVSAvoidenergy consumption
Core Design Contradiction:
Ease of operationVSUse of energy by moving object

Solution Approach 1:

The patent segments the RNN computation into distinct phases: a precomputation phase where weight matrices are loaded once and stored in on-chip memory, and an execution phase where inputs are processed progressively using the preloaded weights. This segmentation allows the system to maintain serial processing capability while eliminating repeated weight reloading, thereby resolving the contradiction between progressive processing and energy consumption

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies preliminary action by precomputing and storing weight matrices in on-chip memory before the actual RNN execution. This preliminary loading of weights eliminates the need for repeated memory access during time step processing, allowing progressive input processing to continue while significantly reducing energy consumption associated with weight reloading

Inventive Principle:
Principle #10Preliminary action

2Reliability

If weights are reloaded from memory at each time step, then the RNN can maintain accurate computations, but the latency increases due to repeated memory access

Engineering Contradiction:
Improvecomputation accuracyVSAvoidlatency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments memory access operations from the time step processing operations. Weight matrices are loaded once into on-chip memory during a precomputation phase, then remain available for all subsequent time steps without requiring repeated external memory access. This segmentation maintains computation accuracy while eliminating latency caused by repeated weight reloading

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary loading of weight matrices into on-chip memory before RNN execution begins. This preliminary action ensures that all weights are available locally during processing, maintaining computational accuracy while avoiding the latency penalties of repeated external memory access during time step operations

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If conventional RNN architecture is used, then the network can process sequential data, but the same weights are repeatedly loaded from memory leading to inefficient weight reusage

Engineering Contradiction:
Improvesequential data processingVSAvoidweight reusage efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent segments the weight management process into a one-time loading phase and a reuse phase. Weight matrices are loaded once into on-chip memory and then reused across all time steps and multiple RNN instances. This segmentation maintains the ability to process sequential data while dramatically improving weight reusage efficiency by eliminating repeated loading operations

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent makes the loaded weight matrices universal by having them serve multiple RNN instances and multiple time steps simultaneously. The on-chip memory stores weight matrices that can be shared across different RNN computations, allowing the same weights to be reused efficiently while maintaining the sequential data processing capability of conventional RNNs

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

Data Source

PatentUS20240354548A1Energy-Efficient Recurrent Neural Network Accelerator
Publication Date: 2024.10.24 TAIWAN SEMICONDUCTOR MANUFACTURING CO LTD
  • US20240354548A1 patent drawing
  • US20240354548A1 patent drawing
  • US20240354548A1 patent drawing

AI summary

Systems and methods are provided for a neural network that includes a multiply accumulate (MAC) unit that is configured to receive an input vector weight matrix; multiply the input matrix by the input vector weight matrix, generating input vector partial sums; receive time-delayed hidden vectors and a hidden vector weight matrix; and multiply the time-delayed hidden vectors and the hidden vector weight matrix, which generates hidden vector partial sums. An accumulator may be coupled to the MAC unit and configured to accumulate and add the input vector partial sums and the hidden vector partial sums, generating full sum vectors. The neural network may generate the time-delayed hidden vectors based on the full sum vectors. The neural network may further include a first selection device coupled to the MAC unit that is configured to select between the input matrix and the time-delayed hidden vectors for reception at the MAC unit.