RNN Hardware Accelerator With Instruction-Level Resource Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing hardware accelerators for neural networks, particularly Recurrent Neural Networks (RNNs), face challenges in high resource utilization, data splicing inefficiencies, data dependency management, and resource conflicts leading to low computational efficiency.

Innovation Solution

A hardware accelerator designed specifically for RNNs, incorporating a customized instruction set including data flow control, general-type and special-type computing instructions, exponential shift, and data transfer instructions, along with optimized memory and register structures to manage data flow and resource utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If universal hardware accelerators are designed to support both CNNs and RNNs, then adaptability is improved, but computing resource utilization deteriorates

Engineering Contradiction:
ImproveadaptabilityVSAvoidcomputing resource utilization
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The hardware accelerator is segmented into dedicated RNN computing units separate from general-purpose units. The architecture includes specialized RNN core units that handle recurrent neural network computations independently, allowing optimized resource allocation for RNN workloads without compromising overall system adaptability to other neural network types.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different regions of the hardware accelerator are assigned different functional qualities. The RNN computing units are specifically designed with local optimizations for handling sequential data dependencies and recurrent computations, while other regions maintain general-purpose capabilities. This local differentiation enables high utilization for RNNs while preserving versatility.

Inventive Principle:
Principle #3Local quality

2Productivity

If data splicing operations are added to handle RNN data flow, then data processing capability is improved, but device complexity increases

Engineering Contradiction:
Improvedata processing capabilityVSAvoiddevice complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The data splicing function is merged with the existing data transfer and memory management subsystems. By combining splicing operations with standard data handling pathways, the patent avoids creating entirely separate complex data processing pathways, thus improving data processing capability while limiting the increase in overall device complexity.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

An intermediary data buffer structure is introduced between memory and computing units to handle data splicing operations. This buffer acts as a mediator that manages the complexity of data flow manipulation internally, presenting a simplified interface to the rest of the system and reducing the apparent complexity from external perspectives.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If pipeline stopping mechanisms are implemented to manage data dependencies, then data dependency management is improved, but computing resource utilization deteriorates

Engineering Contradiction:
Improvedata dependency managementVSAvoidcomputing resource utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The pipeline control mechanism is made dynamic rather than static. The system can adaptively adjust pipeline behavior based on actual data dependency conditions, allowing flexible control that maintains reliability while maximizing resource utilization. The pipeline can dynamically resume or pause based on computed data availability rather than following fixed stopping rules.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

A feedback mechanism is implemented that monitors data dependency status and automatically adjusts pipeline execution accordingly. This feedback loop allows the system to maintain proper data dependency management while optimizing resource utilization by preventing unnecessary pipeline stops and enabling overlapping operations where data dependencies permit.

Inventive Principle:
Principle #23Feedback

4Reliability

If software scheduling is used to balance resources, then resource conflict management is improved, but computational efficiency deteriorates

Engineering Contradiction:
Improveresource conflict managementVSAvoidcomputational efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent replaces software-based scheduling mechanisms with hardware-level resource management circuits. This substitution eliminates the need for continuous software intervention in resource allocation, reducing overhead and improving computational efficiency while maintaining reliable resource conflict management through dedicated hardware control logic.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS12360766B2Hardware accelerator for execution of instruction set of recurrent neural network, data processing method, system-level chip, and medium thereof
Publication Date: 2025.07.15 DAPUSTOR CORP
  • US12360766B2 patent drawing
  • US12360766B2 patent drawing
  • US12360766B2 patent drawing

AI summary

A hardware accelerator for running an instruction set of a recurrent neural network, a data processing method, a system-level chip, and a medium are provided. The hardware accelerator is configured to process the instruction set. The instruction set includes: a data flow control instruction used for performing data flow control; a general-type computing instruction used for performing general-type computation to implement general-type computation in the recurrent neural network; a special-type computing instruction used for performing special-type computation to implement special-type computation in the recurrent neural network; an exponential shift instruction used for performing exponential shifting to implement data normalization during computation of the recurrent neural network; and a data transfer instruction used for performing data transfer to implement data transfer operations between different registers as well as data transfer operations between registers and memories during computation of the recurrent neural network.