Convolution Calculation Apparatus Compressing Weighting Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The large data size of convolution kernels in convolution layers leads to increased system resource usage in electronic apparatuses, particularly in machine learning tasks like image identification, where convolutional neural networks are employed.

Innovation Solution

A convolution calculation apparatus and method that includes a decompression circuit and a calculation circuit, which decompresses compressed weighting data of the convolution kernel and combines it with non-compressed data to restore the original data order, reducing system resource usage by storing compressed data in separate memory blocks and performing calculations with decompressed data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If compressed weighting data is used for convolution kernel storage, then storage space and transmission bandwidth are reduced, but decompression processing is required before calculation

Engineering Contradiction:
Improvestorage spaceVSAvoiddecompression processing
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The weighting data is pre-compressed before being stored in memory, so that when the convolution calculation needs to use this data, it can be directly read from memory without requiring additional compression processing, only decompression is needed which is handled by the calculation circuit

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If compressed weighting data is stored in memory, then storage space is reduced, but additional decompression circuit and processing are required

Engineering Contradiction:
Improvestorage spaceVSAvoiddecompression circuit
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The decompression function is merged into the calculation circuit itself, so that the same hardware component performs both calculation operations and decompression operations, eliminating the need for a separate dedicated decompression circuit and reducing overall device complexity

Inventive Principle:
Principle #5Merging (Combining)

3Measurement precision

If full precision weighting data is used for calculation, then calculation accuracy is maintained, but system resources increase

Engineering Contradiction:
Improvecalculation accuracyVSAvoidsystem resources
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The weighting data is stored in a compressed parameter format that uses fewer bits per weight value, reducing the storage space and transmission bandwidth required. The decompression circuit reconstructs the full precision values only when needed for calculation, maintaining calculation accuracy while reducing overall system resource usage

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11907329B2Convolution calculation apparatus and method
Publication Date: 2024.02.20 SIGMASTAR TECH LTD
  • US11907329B2 patent drawing
  • US11907329B2 patent drawing
  • US11907329B2 patent drawing

AI summary

A convolution calculation apparatus applied for convolution calculation of a convolution layer includes a decompression circuit, a data combination circuit and a calculation circuit. The decompression circuit decompresses compressed weighting data of a convolution kernel of the convolution layer to generate decompressed weighting data. The data combination circuit combines the decompressed weighting data and non-compressed data of the convolution kernel to restore a data order of weighting data of the convolution kernel. The calculation circuit performs calculation according to the weighting data of the convolution kernel and input data of the convolution layer. Since the compressed weighting data of the convolution kernel is transmitted to the convolution calculation apparatus in advance, the compressed weighting data is first decompressed and then convolution calculation is performed accordingly, hence reducing the storage amount and transmission bandwidth used by the convolution kernel in an electronic apparatus.