Buffer Device Remapping Unit for CNN Data Stream Bottlenecks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Convolution operations in Convolutional Neural Networks (CNNs) consume significant performance resources, leading to bottlenecks in processor performance, especially when handling data streams like multimedia applications.
Innovation Solution
A buffer device coupled with a memory and a remapping unit that buffers and remaps data for convolution operations, allowing for efficient data retrieval and processing across clock cycles, enabling improved performance by buffering and reusing data for subsequent operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If convolution operations are performed using direct memory access, then data processing can proceed, but performance is bottlenecked by memory access speed and data availability
Solution Approach 1:
The buffer device pre-fetches and stores data from memory into its buffer before the convolution operation module needs it. This preliminary action ensures that when the convolution operation module requests data, it is already available in the buffer, eliminating waiting time and preventing the performance bottleneck caused by slow memory access.
Solution Approach 2:
The buffer device acts as an intermediary component between the memory and the convolution operation module. It receives data from memory, processes it through remapping units, and provides data to the convolution operation module at the required rate. This intermediary buffer decouples the slow memory access from the faster convolution operations, allowing the latter to proceed at optimal speed without being bottlenecked by the former.
2Productivity
If data is buffered for reuse in subsequent convolution operations, then processing efficiency improves, but device complexity increases due to additional buffer components
Solution Approach 1:
The buffer device is designed to serve multiple functions: it acts as a data storage buffer, a remapping unit for data reorganization, and a provider of reusable data for subsequent convolution operations. By consolidating these multiple functions into a single integrated device, the patent avoids the need for separate components for each function, thereby reducing overall device complexity while maintaining high processing efficiency.
Solution Approach 2:
The buffer device retains data from previous convolution operations and makes it available for reuse in subsequent operations. Instead of allowing this data to be discarded after each operation, the buffer recovers and preserves it, enabling the convolution operation module to efficiently process multiple operations using the same input data without requiring repeated memory accesses.
Data Source
AI summary
A buffer device includes input lines, an input buffer unit and a remapping unit. The input lines are coupled to a memory and configured to be inputted with data from the memory in a current clock. The input buffer unit is coupled to the input lines and configured to buffer one part of the inputted data and output the part of the inputted data in a later clock. The remapping unit is coupled to the input lines and the input buffer unit, and configured to generate remap data for a convolution operation according to the data on the input lines and the output of the input buffer unit in the current clock. A convolution operation method for a data stream is also disclosed.


