Winograd Convolution Engine with Dynamic MAC Precision

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing electronic devices face challenges in efficiently performing convolution operations in neural networks due to the computational intensity of these operations, particularly in lightweight models, where edge computing technologies struggle to handle the complexity effectively.

Innovation Solution

The electronic device transforms input feature maps and weight kernels into the Winograd domain and utilizes multiple types of low-precision multiply-accumulate (MAC) units, grouped based on statistical characteristics, to perform convolution operations efficiently by mapping feature and weight value groups to appropriate MAC units, and then applies inverse Winograd transforms to generate output feature maps.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If convolution operations are performed using traditional high-precision MAC units, then computation accuracy is maintained, but computational burden and power consumption increase significantly

Engineering Contradiction:
Improvecomputation accuracyVSAvoidpower consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent changes the precision parameter of MAC units dynamically. Different MAC units operate at different precision levels (e.g., 8-bit, 16-bit, 32-bit) based on the statistical characteristics of the data being processed. This allows the system to use lower precision (and thus lower power) when high accuracy is not critical, while maintaining high precision only when necessary.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system dynamically selects and configures MAC units based on real-time data characteristics. The transformation data processor analyzes the statistical properties of transformed feature maps and weight kernels, then dynamically maps appropriate MAC units to handle different data groups, making the precision adaptable to the actual computational requirements.

Inventive Principle:
Principle #15Dynamics

2Use of energy by moving object

If multiple types of MAC units are used with different precision levels, then power efficiency is improved, but device complexity increases

Engineering Contradiction:
Improvepower efficiencyVSAvoidcomputation unit complexity
Core Design Contradiction:
Use of energy by moving objectVSDevice complexity

Solution Approach 1:

The computation unit is segmented into multiple types of MAC units with different precision capabilities. Each MAC unit type is specialized for specific precision requirements, allowing the system to divide and conquer the computational task by assigning appropriate precision levels to different data groups based on their characteristics.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The transformation data processor serves multiple functions: it transforms data to Winograd domain, analyzes statistical characteristics, creates value groups, and maps to appropriate MAC units. This multi-functional approach consolidates control logic and reduces overall system complexity despite having diverse MAC units.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Productivity

If Winograd transform is applied to reduce computational complexity, then convolution operation efficiency is improved, but transformation and inverse transformation overhead is introduced

Engineering Contradiction:
Improveconvolution operation efficiencyVSAvoidtransformation overhead
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The Winograd transform is applied as a preliminary step before the main convolution computation. By transforming the input feature maps and weight kernels to the Winograd domain in advance, the system reduces the number of MAC operations required during the actual convolution, making the computational savings worthwhile despite the initial transformation cost.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20230267313A1Electronic device for performing convolution calculation and operation method therefor
Publication Date: 2023.08.24 SAMSUNG ELECTRONICS CO LTD
  • US20230267313A1 patent drawing
  • US20230267313A1 patent drawing
  • US20230267313A1 patent drawing

AI summary

An electronic device and method thereof. The electronic device includes an input feature map transformer configured to transform an input feature map (IFM) to a Winograd domain, a weight kernel transformer configured to transform a weight kernel to the Winograd domain, a transformation data processor configured to map, a plurality of types of multiply-accumulate (MAC) units included in a computation unit, to a plurality of feature groups grouping feature values in a plurality of channels of the transformed input feature map and a plurality of weight value groups grouping weight values in a plurality of channels of the transformed weight kernel, a computation data processor configured to collect MAC operation results from the computation unit, and an inverse transformer configured to perform an inverse Winograd transform on a result output from the computation data processor to thereby generate an output feature map (OFM) useable for performing a convolution operation.