CNN Accelerator Processing Elements for Multi-Operation Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing technologies face challenges in efficiently performing different types of convolution operations on a single processing element, which limits the flexibility and cost-effectiveness of convolutional neural network (CNN) accelerators.
Innovation Solution
A method and apparatus for designing and implementing a CNN accelerator using electronic design automation (EDA) tools, which allows for the same processing elements to perform various convolution operations by modifying data flow, filter configurations, and output formatting, enabling the execution of multiple CNN algorithms on a single hardware platform.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If separate processing elements are used for different convolution operations (convolution, deconvolution, backpropagation), then operational reliability is improved, but device complexity and hardware cost increase
Solution Approach 1:
The patent implements a universal processing element that can perform convolution, deconvolution, and backpropagation operations by dynamically reconfiguring its internal parameters. The processing element uses configurable filters and data flow patterns to adapt between different operation types, eliminating the need for separate dedicated hardware for each operation while maintaining operational reliability through software-controlled parameter adjustment.
2Speed
If dedicated hardware is allocated for each convolution operation type, then processing speed is improved, but adaptability deteriorates
Solution Approach 1:
The processing element employs dynamic reconfiguration capabilities where filters, data flow patterns, and computational parameters can be changed at runtime based on the required operation type. This dynamic adaptation allows the same hardware to maintain high processing speed for different operations (convolution, deconvolution, backpropagation) while achieving full algorithm adaptability through parameter adjustment rather than physical reconfiguration.
3Device complexity
If resource sharing is implemented among different convolution operations, then hardware cost is reduced, but manufacturing precision deteriorates
Solution Approach 1:
The patent applies local quality by configuring processing elements with operation-specific parameters and data flow patterns tailored to each convolution type. Each processing element maintains precise computational accuracy for its designated operation through specialized filter configurations and data routing, while resource sharing across different operation types reduces overall hardware cost. The EDA tool automatically generates optimized parameter sets for each operation type to ensure manufacturing precision is maintained despite resource sharing.
Data Source
Figure 1
Figure 2
Figure 3
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.