Unified Code Generation for Parallel Network Hardware

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing approaches to developing parallel networks, such as neural networks, often require separate specifications for general-purpose programming languages and hardware-specific implementations, leading to inefficiencies and errors due to the need for distinct syntactic descriptions, which complicates the integration of general-purpose language code with network elements.

Innovation Solution

The method involves generating machine executable instructions for parallel networks using a combination of general-purpose language code and network description code, where an evaluation of code elements determines the generation of instructions, allowing for unified execution of network operations through a computerized processing apparatus, enabling sensory data processing with cooperative processing elements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If separate specifications are used for general-purpose programming languages and hardware-specific implementations, then flexibility and ease of programming are improved, but integration complexity and error rates increase

Engineering Contradiction:
Improveease of programmingVSAvoidintegration complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent merges general-purpose language code with network description code into a unified code structure. The evaluation module analyzes code elements and determines whether they correspond to general-purpose language portions or network description portions, then generates appropriate machine executable instructions for each type. This unification eliminates the need for separate specifications and reduces integration complexity while maintaining programming flexibility.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system creates a universal code generation approach where a single unified code can serve multiple purposes: it can be processed as general-purpose language code for conventional computation and as network description code for parallel network configuration. The evaluation module dynamically determines the appropriate processing path for each code element, enabling one code base to control both conventional and parallel processing without requiring separate specification languages.

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

2Ease of manufacture

If unified code generation is used for parallel networks, then development simplicity is improved, but processing overhead increases

Engineering Contradiction:
Improvedevelopment simplicityVSAvoidprocessing overhead
Core Design Contradiction:
Ease of manufactureVSLoss of time

Solution Approach 1:

The unified code is segmented into distinct code elements during evaluation. The evaluation module identifies whether each code element corresponds to general-purpose language portions or network description portions. This segmentation allows the system to process only the necessary portions through the evaluation and code generation pipeline, reducing overall processing overhead while maintaining development simplicity through unified code structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system applies partial action by selectively processing only those code elements that require evaluation and transformation into machine executable instructions. General-purpose language portions that can be directly compiled or interpreted are processed through standard pathways, while only the network description portions undergo the additional evaluation and code generation steps, minimizing processing overhead.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9652713B2Apparatus and methods for developing parallel networks using a general purpose programming language
Publication Date: 2017.05.16 QUALCOMM INC
  • US9652713B2 patent drawing
  • US9652713B2 patent drawing
  • US9652713B2 patent drawing

AI summary

Apparatus and methods for developing parallel networks. Parallel network design may comprise a general purpose language (GPC) code portion and a network description (ND) portion. GPL tools may be utilized in designing the network. The GPL tools may be configured to produce network specification language (NSL) engine adapted to generate hardware optimized machine executable code corresponding to the network description. The developer may be enabled to describe a parameter of the network. The GPC portion may be automatically updated consistent with the network parameter value. The GPC byte code may be introspected by the NSL engine to provide the underlying source code that may be automatically reinterpreted to produce the hardware optimized machine code. The optimized machine code may be executed in parallel.