Convolution Operation Device Segmentation and Buffering
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Convolution operations in convolutional neural networks consume significant performance and power, especially during continuous parallel operations, making them inefficient for processing data streams.
Innovation Solution
A convolution operation device comprising a convolution calculation module with multiple units performing convolution operations using filters and new data retrieved from memory, along with a buffer device and interleaving sum unit, which allows for low-scale or high-scale convolution modes and pooling operations to enhance performance and reduce power consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If convolution operations are performed using traditional processors, then convolution results can be obtained, but performance is consumed significantly and power consumption is high
Solution Approach 1:
The processor is divided into multiple convolution units (first convolution unit, second convolution unit, etc.), each capable of performing convolution operations independently. This segmentation allows parallel processing of data streams, improving overall convolution operation performance while distributing power consumption across multiple smaller units rather than concentrating it in a single processor.
Solution Approach 2:
The buffer device pre-loads and stores data from the memory before the convolution units need to process it. By having data ready in the buffer device before convolution operations begin, the system avoids repeated memory access during processing, thereby improving performance and reducing the energy required for data retrieval operations.
2Productivity
If convolution operations are performed continuously on data streams, then processing capability is improved, but resource utilization increases and efficiency decreases
Solution Approach 1:
The data stream processing is divided into multiple parallel convolution units that can process different portions of the data simultaneously. This segmentation enables continuous processing without requiring sequential resource allocation, maintaining high productivity while improving resource utilization efficiency through parallel operation.
Solution Approach 2:
The buffer device continuously supplies data to the convolution units without interruption, and the convolution units continuously process data streams in parallel. This continuous operation eliminates idle time and resource allocation overhead, maintaining high processing capability while improving overall system efficiency.
3Ease of operation
If traditional convolution operations are used, then basic processing can be performed, but operation performance is limited and power consumption is high
Solution Approach 1:
The convolution processing is segmented into multiple specialized convolution units, each optimized for specific convolution operations. This segmentation improves operation performance by allowing parallel execution and reducing bottlenecks, while the distributed architecture reduces the power consumption burden on any single stationary component.
Solution Approach 2:
The buffer device acts as an intermediary between the memory and the convolution units, pre-loading and managing data flow. This intermediary role improves operation performance by ensuring data is readily available to convolution units, while reducing power consumption by minimizing repeated memory access operations.
Data Source
AI summary
A convolution operation device includes a convolution calculation module, a memory and a buffer device. The convolution calculation module has a plurality of convolution units, and each convolution unit performs a convolution operation according to a filter and a plurality of current data, and leaves a part of the current data after the convolution operation. The buffer device is coupled to the memory and the convolution calculation module for retrieving a plurality of new data from the memory and inputting the new data to each of the convolution units. The new data are not a duplicate of the current data. A convolution operation method is also disclosed.


