Convolutional Layer Acceleration Unit for Embedded Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Convolutional neural networks face significant computational challenges during forward propagation, particularly in embedded systems with limited resources, where the convolutional layer dominates processing time and requires efficient acceleration techniques to optimize performance.

Innovation Solution

A convolutional layer acceleration unit utilizing OpenCL devices for parallel processing, managed by a Lightweight Intelligent Software Framework (LISF), which initializes and configures entities for parallel mathematical operations, allocates device memory, and executes kernels across multiple OpenCL devices to maximize parallelism and performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If convolutional neural network forward propagation is performed using traditional sequential processing, then processing accuracy is maintained, but processing time is excessive and computational efficiency is low

Engineering Contradiction:
Improveprocessing speedVSAvoidforward propagation time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent divides the convolutional layer processing into multiple independent workgroups, where each workgroup processes a specific portion of the convolutional operations. This segmentation enables parallel execution across multiple OpenCL devices, significantly reducing the overall forward propagation time while maintaining processing accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from sequential single-device processing to parallel multi-device processing by utilizing the spatial dimension of multiple OpenCL devices. This dimensional expansion allows simultaneous execution of multiple workgroups across different devices, dramatically improving processing throughput.

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

2Productivity

If parallel processing is implemented across multiple OpenCL devices, then processing efficiency is improved, but system complexity increases

Engineering Contradiction:
Improveparallel processing capabilityVSAvoidsystem configuration complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a Convolutional Layer Parallel Processing Execution Unit as an intermediary layer between the application and the OpenCL devices. This execution unit automatically manages the complexity of parallel processing by handling workgroup distribution, device configuration, and coordinate the processing across multiple devices, thereby shielding users from system complexity while maintaining high productivity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The execution unit implements self-service mechanisms by automatically analyzing convolutional layer information, determining optimal parallel processing configurations, and configuring OpenCL devices without requiring professional knowledge from users. This automation reduces the perceived system complexity while maintaining efficient parallel processing.

Inventive Principle:
Principle #25Self-service

3Ease of operation

If automatic analysis of convolutional layer features is performed, then ease of use is improved, but computational overhead increases

Engineering Contradiction:
Improveuser accessibilityVSAvoidcomputational overhead
Core Design Contradiction:
Ease of operationVSUse of energy by moving object

Solution Approach 1:

The patent performs automatic analysis of convolutional layer features as a preliminary action during the initialization phase, before the actual forward propagation begins. This preliminary analysis enables the system to pre-config optimal parallel processing parameters and workgroup distributions, thereby improving ease of use without adding significant overhead during the actual processing phase.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11580386B2Convolutional layer acceleration unit, embedded system having the same, and method for operating the embedded system
Publication Date: 2023.02.14 ELECTRONICS & TELECOMM RES INST
  • US11580386B2 patent drawing
  • US11580386B2 patent drawing
  • US11580386B2 patent drawing

AI summary

Disclosed herein are a convolutional layer acceleration unit, an embedded system having the convolutional layer acceleration unit, and a method for operating the embedded system. The method for operating an embedded system, the embedded system performing an accelerated processing capability programmed using a Lightweight Intelligent Software Framework (LISF), includes initializing and configuring, by a parallelization managing function entity (FE), entities present in resources for performing mathematical operations in parallel, and processing in parallel, by an acceleration managing FE, the mathematical operations using the configured entities.