Configurable Pooling Unit for Neural Network Accelerator Pipelines

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Neural network accelerators face inefficiencies in processing diverse neural network structures due to fixed pipeline configurations, which limit their ability to handle non-classical neural networks effectively, especially when dealing with operations like depth-wise convolutions and pooling operations that require flexible pipeline formations.

Innovation Solution

A neural network accelerator with a crossbar that dynamically forms pipelines from hardware processing units, including a convolution processing unit and a configurable pooling processing unit capable of performing depth-wise convolution and pooling operations, allowing for flexible ordering and combination of operations in each hardware pass.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a fixed pipeline configuration is used in neural network accelerators, then the device complexity is reduced and manufacturing is easier, but the adaptability to handle diverse neural network structures (especially non-classical networks with depth-wise convolutions and pooling operations) deteriorates

Engineering Contradiction:
Improveability to handle diverse neural network structuresVSAvoidpipeline configuration complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic pipeline configuration where the crossbar can be reconfigured at runtime to form different pipeline topologies. The pooling processing unit can be dynamically connected to either the convolution processing unit or the activation processing unit based on the operation type, enabling the system to adapt to diverse neural network structures including depth-wise convolutions and pooling operations without requiring multiple fixed dedicated pipelines

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The pooling processing unit is designed with multi-functionality to handle both pooling operations and depth-wise convolution operations. By configuring the crossbar to connect the pooling processing unit with appropriate neighboring units based on operation type, a single processing unit serves multiple functions, reducing the need for separate dedicated hardware for each operation type while maintaining high adaptability

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

2Productivity

If multiple dedicated processing units are provided for different operations (convolution, pooling, activation), then the productivity for specific operations is improved, but the device complexity increases

Engineering Contradiction:
Improveprocessing throughputVSAvoidnumber of processing units
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The pooling processing unit is designed to perform multiple functions including both pooling operations and depth-wise convolution operations. This multi-functional design allows the system to maintain high processing throughput for diverse operations while reducing the total number of dedicated processing units required, thereby balancing productivity with device complexity

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

3Adaptability or versatility

If a flexible dynamic pipeline configuration is implemented, then the adaptability to diverse operations is improved, but the use of energy for crossbar switching and configuration increases

Engineering Contradiction:
Improveoperation flexibilityVSAvoidpower consumption for configuration
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The system performs preliminary configuration of the crossbar based on operation type before executing the actual neural network operations. By pre-configuring the pipeline topology to match the incoming operation (e.g., connecting pooling unit to convolution unit for depth-wise convolution, or to activation unit for pooling), the system minimizes runtime reconfiguration overhead and energy consumption while maintaining high adaptability

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20230259743A1Neural network accelerator with configurable pooling processing unit
Publication Date: 2023.08.17 IMAGINATION TECH LTD
  • US20230259743A1 patent drawing
  • US20230259743A1 patent drawing
  • US20230259743A1 patent drawing

AI summary

A neural network accelerator includes a plurality of hardware processing units, each hardware processing unit comprising hardware to accelerate performing one or more neural network operations on data; and a crossbar coupled to each hardware processing unit of the plurality of hardware processing units and configured to selectively form, from a plurality of selectable pipelines, a pipeline from one or more of the hardware processing units of the plurality of hardware processing units to process input data to the neural network accelerator. The plurality of hardware processing units comprising (i) a convolution processing unit configured to accelerate performing convolution operations on data, and (ii) a configurable pooling processing unit configured to selectively perform an operation of a plurality of selectable operations on data, the plurality of selectable operations comprising a depth-wise convolution operation and one or more pooling operations.