Signal Processing Device for Neural Network Multiply-Accumulate Operations
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In deep neural network image recognition processing, especially in convolutional neural networks, the multiply-accumulate operations often involve many zero values and low bit-length data, leading to inefficient memory usage and calculation efficiency due to the need to process non-zero values, which existing techniques like storing only non-zero values in memory do not effectively address.
Innovation Solution
A signal processing device with a multiply-accumulate operation unit, a threshold determination unit, and an avoidance processing unit that determines if input data is below a threshold, avoiding unnecessary multiply-accumulate operations for zero or near-zero values, thereby optimizing memory usage and calculation efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If indexes including memory address positions are generated and stored in memory for non-zero values, then memory usage efficiency is improved for sparse data, but device complexity and calculation overhead increase
Solution Approach 1:
The patent extracts only the necessary information (non-zero data values and their positions) from the complete data set, storing them in a compressed format with indexes that record memory addresses. This extraction approach improves memory efficiency by eliminating redundant zero-value storage while maintaining the ability to retrieve needed data through the index structure.
Solution Approach 2:
The patent performs preliminary organization of data by generating indexes that record memory address positions of non-zero values before actual processing occurs. This preliminary action allows the system to quickly identify and access only the necessary data during multiply-accumulate operations, avoiding the need to process all data including zeros.
2Reliability
If multiply-accumulate operations are performed on all input data including zero values, then calculation completeness is maintained, but calculation efficiency and power consumption deteriorate
Solution Approach 1:
The patent implements a skipping mechanism where the system identifies zero values through threshold determination and bypasses multiply-accumulate operations for these values entirely. By using indexes to directly access only non-zero data positions, the system rushes through the processing of relevant data while skipping unnecessary operations on zero values, thereby maintaining calculation completeness for non-zero elements while dramatically improving efficiency.
Solution Approach 2:
The patent applies partial action by performing multiply-accumulate operations only on the subset of data that actually contributes to the result (non-zero values), rather than applying the operation to all data including zeros. This selective partial processing maintains the mathematical correctness of the computation while reducing the total number of operations required.
3Quantity of substance
If data compression techniques are applied to store only non-zero values, then memory capacity utilization is improved, but access time and processing complexity increase
Solution Approach 1:
The patent performs preliminary organization by creating an index structure that records the memory addresses of non-zero values before processing. This preliminary action transforms the data storage layout into a format that, while compressed, allows for efficient access through the pre-computed index, thereby reducing the actual access time during processing operations.
Solution Approach 2:
The patent introduces an index structure as an intermediary between the compressed data storage and the processing operations. This intermediary layer translates logical data positions into physical memory addresses, allowing the system to efficiently access compressed data without directly searching through the entire data set, thus reducing access time despite the compressed format.
Data Source
AI summary
A signal processing device includes a multiply-accumulate operation unit arranged in a one-dimensional or two-dimensional array and capable of performing a multiply-accumulate operation in a neural network, a threshold determination processing unit that determines whether or not the input data used for operation by the multiply-accumulate operation unit is less than a predetermined threshold, and an avoidance processing unit that avoids multiply-accumulate operation processing for the input data in a case where the input data is less than the predetermined threshold.


