CNN Accelerator Processing Elements for Multi-Type Convolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computing systems face challenges in efficiently performing convolution operations for convolutional neural networks (CNNs) due to limitations in processing power, particularly in supporting multiple types of convolution layers such as convolution, deconvolution, and convolution backpropagation, which requires significant hardware resources and bandwidth.

Innovation Solution

A method and apparatus for designing and implementing a CNN accelerator using an electronic design automation (EDA) tool that assigns resources and generates a sequencer unit to coordinate data transmission, allowing the same processing elements to perform various convolution operations by converting deconvolution and backpropagation layers into convolution layers, thereby reducing hardware costs and optimizing resource utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If separate processing elements are used for different types of convolution operations (convolution, deconvolution, convolution backpropagation), then the computational capability for each operation type is improved, but the hardware complexity and resource requirements increase significantly

Engineering Contradiction:
Improvecomputational capabilityVSAvoidhardware complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a universal processing element that can perform multiple types of convolution operations (standard convolution, deconvolution, and convolution backpropagation) through a single unified architecture. The processing element uses configurable parameters and a single set of computational units to handle different operation types, eliminating the need for separate dedicated hardware for each convolution type while maintaining full computational capability for all operations

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

2Speed

If dedicated hardware resources are allocated for each convolution operation type, then the processing speed and efficiency for each operation is improved, but the overall hardware resource requirements and bandwidth increase

Engineering Contradiction:
Improveprocessing speedVSAvoidhardware resources
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent merges the computational resources for different convolution operation types into a single shared processing element. The same computational units, memory interfaces, and data pathways are used for standard convolution, deconvolution, and convolution backpropagation operations, significantly reducing the total quantity of hardware resources and bandwidth requirements while maintaining high processing speed through efficient resource utilization

Inventive Principle:
Principle #5Merging (Combining)

3Adaptability or versatility

If multiple types of convolution layers are supported with separate processing elements, then the versatility and adaptability of the system is improved, but the hardware costs and resource utilization efficiency deteriorate

Engineering Contradiction:
Improvesupport for multiple CNN algorithmsVSAvoidhardware resource utilization
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The processing element is designed with universal functionality to support multiple CNN algorithms including but not limited to standard convolution, deconvolution, and convolution backpropagation. Through configurable parameters and a unified computational architecture, the system achieves high versatility in supporting different CNN algorithms while maintaining efficient hardware resource utilization, as the same physical resources are dynamically allocated based on the specific operation type required

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

Data Source

PatentUS11074492B2Method and apparatus for performing different types of convolution operations with the same processing elements
Publication Date: 2021.07.27 ALTERA CORP
  • US11074492B2 patent drawing
  • US11074492B2 patent drawing
  • US11074492B2 patent drawing

AI summary

A method for implementing a convolutional neural network (CNN) accelerator on a target includes utilizing one or more processing elements to perform convolution. A configuration of the CNN accelerator is modified to change filters implemented by the CNN accelerator and to change formatting of output data. The one or more processing elements are utilized to perform one of deconvolution and backpropagation convolution in response to the change in the filters and formatting of the output data.