Hierarchical Neural Network Processor for Dense Low-Power Computing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing neural network processing engines face inefficiencies in computational unit density and power consumption, and existing weight quantization methods are limited to post-training stages, not fully exploring potential modifications in weights for improved performance.

Innovation Solution

A neural network processing engine with a hierarchical architecture that includes self-contained computational units, lean control logic, and dynamic resource assignment, allowing for efficient computation and reduced power consumption, along with the ability to modify weights during both training and inference stages.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If existing neural network processing engines use traditional computational architectures, then implementation flexibility is maintained, but computational density and power efficiency are insufficient

Engineering Contradiction:
Improvecomputational densityVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The processing engine is divided into multiple computational units (CUs) organized in a hierarchical structure with different levels (e.g., CU level, core level, chip level). Each level performs specific computational aggregations, allowing fine-grained control over computational density and power consumption at different scales of the neural network.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The architecture enables dynamic resource allocation where computational units can be activated or deactivated based on the specific neural network model being executed. The hierarchical structure allows flexible configuration of which computational levels are active, optimizing the balance between computational density and power consumption for different workloads.

Inventive Principle:
Principle #15Dynamics

2Use of energy by stationary object

If computational units are aggregated in hierarchical levels, then power efficiency is improved, but control complexity increases

Engineering Contradiction:
Improvepower efficiencyVSAvoidcontrol complexity
Core Design Contradiction:
Use of energy by stationary objectVSDevice complexity

Solution Approach 1:

Control functions are segmented and distributed across the hierarchical levels. Each level has its own control logic that manages only the computational units at that level, reducing the control burden on higher levels. This distributed control approach simplifies the overall control architecture despite the hierarchical aggregation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Computational units at different hierarchical levels serve multiple functions: they perform local computations, aggregate results from lower levels, and contribute to higher-level computations. This multi-functionality reduces the need for separate dedicated control mechanisms, simplifying the control architecture while maintaining power efficiency.

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

3Productivity

If dedicated memory elements are associated with computational units, then processing efficiency is improved, but memory usage increases

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

Solution Approach 1:

Different hierarchical levels have different memory requirements and characteristics. Lower levels with simpler computational units have smaller associated memory elements, while higher levels with more complex units have larger memory elements. This local differentiation optimizes the balance between processing efficiency and memory usage for each level.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The memory hierarchy is nested within the computational hierarchy, with each level containing memory elements that serve that level's computational units. Higher levels can access memory at lower levels, creating a nested memory structure that reduces overall memory requirements while maintaining efficient access patterns for the neural network computations.

Inventive Principle:
Principle #7Nested doll (Nesting)

Data Source

PatentUS11216717B2Neural network processor incorporating multi-level hierarchical aggregated computing and memory elements
Publication Date: 2022.01.04 HAILO TECH LTD
  • US11216717B2 patent drawing
  • US11216717B2 patent drawing
  • US11216717B2 patent drawing

AI summary

A novel and useful neural network (NN) processing core adapted to implement artificial neural networks (ANNs). The NN processor is constructed from self-contained computational units organized in a hierarchical architecture. The homogeneity enables simpler management and control of similar computational units, aggregated in multiple levels of hierarchy. Computational units are designed with minimal overhead as possible, where additional features and capabilities are aggregated at higher levels in the hierarchy. On-chip memory provides storage for content inherently required for basic operation at a particular hierarchy and is coupled with the computational resources in an optimal ratio. Lean control provides just enough signaling to manage only the operations required at a particular hierarchical level. Dynamic resource assignment agility is provided which can be adjusted as required depending on resource availability and capacity of the device.