CNN Convolution Architecture With Chained Partial Sums
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Convolutional neural networks face challenges in on-board systems due to high computational complexity and resource constraints, particularly in terms of footprint and power consumption, which are exacerbated by the need for parallelization of MAC operations in convolutional layers.
Innovation Solution
A computing architecture that utilizes MAC operators for convolutional layers, optimized for FPGA and ASIC implementations, minimizing memory access operations and reducing resource requirements by chaining convolution computations and using partial sum computing modules with shift registers and accumulators.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If conventional MAC operators with separate multiplication and addition operators are used, then computation can be performed, but device complexity and footprint increase
Solution Approach 1:
The patent combines multiplication and addition operations into a single MAC operator that performs both operations sequentially. The operator first multiplies an input value by a filter coefficient, then adds a bias value in the same operational unit, eliminating the need for separate multiplication and addition operators. This merging reduces device footprint and complexity while maintaining full computational capability for convolutional layer operations.
2Speed
If parallelism is achieved by carrying out multiplications or partial sums in parallel with additional addition operators, then processing speed improves, but device complexity and power consumption increase
Solution Approach 1:
The patent segments the convolutional layer computation into multiple stages, each handled by a dedicated MAC operator. Instead of using one large parallel processing unit with many addition operators, the computation is divided into sequential stages where each MAC operator processes a portion of the data. This segmentation allows parallel processing across multiple MAC operators while reducing the complexity and power consumption of each individual operator.
3Productivity
If line buffer architecture is used to align input data with convolution filter, then parallel computation is achieved, but memory access complexity increases
Solution Approach 1:
The patent implements preliminary alignment of input data with filter coefficients through the sequential operation structure of the MAC operator. Rather than requiring complex memory alignment mechanisms like line buffers, the data is prepared and aligned through the natural sequential flow of operations within each MAC operator. This approach achieves the necessary data alignment for parallel computation while avoiding the memory access complexity associated with line buffer architectures.
Data Source
AI summary
A computer for computing a convolutional layer of an artificial neural network, includes at least one set of at least two partial sum computing modules connected in series, a storage member for storing the coefficients of at least one convolution filter, each partial sum computing module comprising at least one computing unit configured so as to carry out a multiplication of an item of input data of the computer and a coefficient of a convolution filter, followed by an addition of the output of the preceding partial sum computing module in the series, each set furthermore comprising, for each partial sum computing module except the first in the series, a shift register connected at input for storing the item of input data for the processing duration of the preceding partial sum computing modules in the series.


