Neural Network Apparatus Zero Skipping Controller

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing neural network processors face inefficiencies in performing parallelized operations, particularly in determining shared operands between pixel values of input feature maps and weight values of kernels, which affects the speed and effectiveness of convolution operations.

Innovation Solution

The neural network apparatus configures processing units to perform parallelized operations based on determining shared operands as either pixel values or weight values of input feature maps and kernels, allowing for efficient parallel processing and zero skipping mechanisms to optimize hardware structure and reduce operation counts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional neural network processors perform parallelized operations between pixel values and weight values, then convolution operations can be executed, but hardware complexity increases and processing efficiency decreases due to inability to skip zero operations

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidhardware structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts and separates zero value detection and skipping logic from the main parallelized operation pipeline. The controller independently identifies zero values in pixel values or weight values before they enter the processing units, allowing the processing units to skip unnecessary operations without requiring complex internal zero-detection circuitry, thus improving efficiency while maintaining hardware simplicity

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The controller performs preliminary identification of zero values in pixel values or weight values before the parallelized operations begin. This preliminary action allows the system to pre-determine which processing units should be activated or deactivated, avoiding wasted computational resources and reducing hardware complexity by eliminating the need for runtime zero-detection in each processing unit

Inventive Principle:
Principle #10Preliminary action

2Speed

If the neural network apparatus uses fixed parallel processing units for all operations, then hardware structure is simplified, but processing speed decreases when zero values are present in input data

Engineering Contradiction:
Improveconvolution operation speedVSAvoidprocessing unit configuration
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent implements dynamic configuration of processing units based on the presence of zero values. The controller dynamically determines which processing units should be activated or deactivated based on zero value identification results, allowing the system to adapt its processing capacity to the actual data characteristics, thereby improving speed without requiring a permanently complex hardware structure

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The processing units are designed with universal functionality to handle both zero and non-zero operations. The same processing units can be dynamically activated or deactivated based on the controller's determination, eliminating the need for separate specialized hardware paths for zero and non-zero operations, thus improving speed while maintaining hardware simplicity

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

3Loss of energy

If the apparatus performs operations on all pixel values and weight values without skipping zeros, then processing is simplified, but energy consumption increases and processing time is wasted

Engineering Contradiction:
Improveenergy consumptionVSAvoidcontrol mechanism
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The controller implements a feedback mechanism where it receives information about zero values from the input data or previous processing stages, and uses this feedback to dynamically configure which processing units should be activated. This feedback loop allows the system to avoid unnecessary energy consumption on zero value operations while maintaining a relatively simple control structure

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system uses the inherent zero value information present in the neural network data itself to guide its own processing configuration. The zero values in the input data or weight values serve as natural signals for the controller to deactivate certain processing units, eliminating the need for external control signals or complex additional circuitry to identify optimization opportunities

Inventive Principle:
Principle #25Self-service

Data Source

PatentEP3690757B1Method and apparatus with convolution neural network processing
Publication Date: 2024.09.11 SAMSUNG ELECTRONICS CO LTD
  • EP3690757B1 patent drawingFigure 1
  • EP3690757B1 patent drawingFigure 2A
  • EP3690757B1 patent drawingFigure 2B

AI summary

A neural network apparatus includes one or more processors comprising: a controller configured to determine a shared operand to be shared in parallelized operations as being either one of a pixel value among pixel values of an input feature map and a weight value among weight values of a kernel, based on either one or both of a feature of the input feature map and a feature of the kernel; and one or more processing units configured to perform the parallelized operations based on the determined shared operand.