Compiler Hardware Abstraction Layer Neural Network Accelerator
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Deep neural network (DNN) systems are computationally complex, making general-purpose CPUs inefficient for executing neural networks due to high latency and memory usage, especially in convolution layers.
Innovation Solution
A method for mapping and porting neural networks to integrated circuits (ICs) involves receiving a network description, generating a framework-independent network graph, and configuring the IC based on an execution sequence vector, utilizing a compiler and hardware abstraction layer to optimize and schedule operations on programmable ICs like FPGAs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a general-purpose CPU is used to execute neural network operations, then the system is easier to operate and more versatile, but latency increases and memory usage increases
Solution Approach 1:
The patent introduces a compiler and hardware abstraction layer as intermediary components between the neural network framework and the IC. The compiler translates framework-independent network graphs into execution sequence vectors, while the HAL manages the interface between software and hardware, enabling efficient execution on specialized ICs without requiring users to directly handle hardware complexity
Solution Approach 2:
The patent replaces the mechanical/general-purpose CPU execution system with a specialized IC execution system. By substituting the general-purpose CPU with a dedicated IC that has hardware optimized for neural network operations, the system achieves lower latency and memory usage while maintaining ease of operation through software abstraction layers
2Ease of operation
If a general-purpose CPU is used to execute neural network operations, then the system is easier to operate, but memory usage increases
Solution Approach 1:
The hardware abstraction layer acts as an intermediary that manages memory resources efficiently. It translates high-level neural network operations into optimized hardware commands that utilize the IC's memory architecture, reducing overall memory usage while maintaining ease of operation through abstraction
Solution Approach 2:
The patent substitutes the CPU's memory management mechanism with an IC-optimized memory system. The specialized IC architecture provides more efficient memory access patterns and reduced memory requirements for neural network operations, achieved through hardware-level optimizations managed by the HAL
3Loss of time
If neural networks are executed on specialized ICs, then latency is reduced and memory usage is reduced, but device complexity increases
Solution Approach 1:
The patent extracts the complexity of IC configuration and optimization into a separate compiler component. The compiler handles the complex tasks of translating network graphs into execution sequences and optimizing for the specific IC architecture, while the runtime system remains simple and ease-to-use
Solution Approach 2:
The hardware abstraction layer serves as an intermediary that shields users from IC complexity. It provides a unified interface that works across different IC architectures, translating high-level operations into IC-specific commands without requiring users to understand the underlying hardware complexity
4Quantity of substance
If neural networks are executed on specialized ICs, then memory usage is reduced, but device complexity increases
Solution Approach 1:
The patent extracts memory management complexity into the compiler and HAL. These components handle the complex tasks of optimizing memory usage for the specific IC architecture, while the runtime system maintains simple and efficient memory access patterns
Solution Approach 2:
The patent replaces general-purpose memory management with IC-optimized memory management. The specialized IC architecture, when paired with the compiler and HAL, provides more efficient memory utilization by leveraging hardware-specific features and optimization techniques
Data Source
AI summary
Examples herein describe a method for a compiler and hardware-abstraction-layer architecture for a programmable integrated circuit (IC). In one embodiment, a method for mapping and porting a neural network to an integrated circuit (IC) is disclosed. The method includes receiving a network description of the neural network; generating a framework independent network graph based on the network description; performing a plurality of back-end operations on the network graph to generate an execution sequence vector; and configuring the IC based on the execution sequence vector.


