Parallel Convolution Processor Architecture for Neural Network Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current machine learning techniques, particularly in neural networks for tasks like text, image, and voice recognition, face inefficiencies in parallel data processing, especially in convolutional neural networks, which can lead to increased computational resources and memory requirements.

Innovation Solution

A processor architecture is introduced that includes an input buffer, a data extractor, a multiplier, and an adder, allowing for parallel extraction and multiplication of kernel data with convolution coefficients, and simultaneous calculation of convolution results, optimized to reduce memory requirements and processing cycles.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If convolutional filtering is performed using traditional sequential processing, then computational accuracy is maintained, but processing time and computational resources increase

Engineering Contradiction:
Improveprocessing speedVSAvoidprocessing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The input buffer is divided into multiple segments (first buffer, second buffer, third buffer) that can be processed simultaneously. Each buffer segment handles a portion of the kernel data extraction and multiplication operations, allowing parallel processing of convolution operations across multiple data segments to reduce overall processing time

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from sequential single-threaded processing to parallel multi-threaded processing by organizing the computation across multiple buffer segments and processing threads. This dimensional change in processing architecture enables simultaneous execution of multiple convolution operations that would otherwise be performed sequentially

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If more memory is allocated for data storage and intermediate results, then processing capacity increases, but memory requirements and device complexity increase

Engineering Contradiction:
Improveprocessing capacityVSAvoidmemory usage
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent combines multiple buffer operations and computation steps into an integrated processing pipeline. The first, second, and third buffers work together in a coordinated manner to perform extraction, multiplication, and accumulation operations simultaneously, reducing the need for separate intermediate storage areas and minimizing overall memory requirements

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

Data is pre-organized into buffer segments before processing begins. The input buffer is structured with specific segments prepared in advance for parallel access, allowing the processing units to immediately begin parallel operations without requiring additional intermediate storage for data reorganization during computation

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10025755B2Device and method to process data in parallel
Publication Date: 2018.07.17 SAMSUNG ELECTRONICS CO LTD
  • US10025755B2 patent drawing
  • US10025755B2 patent drawing
  • US10025755B2 patent drawing

AI summary

A method and apparatus for processing data are provided. The processor includes an input buffer, a data extractor, a multiplier, and an adder. The input buffer receives data and stores the data. The data extractor extracts kernel data corresponding to a kernel in the data from the input buffer. The multiplier multiplies the extracted kernel data by a convolution coefficient. The adder calculates a sum of multiplication results from the multiplier.