Dense Algorithm IC for Sensor Data Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current integrated circuit architectures, particularly GPUs, lack the necessary robust processing capabilities to handle complex machine learning algorithms and real-time sensor data processing for autonomous robotics and vehicles, leading to inefficiencies in sensor signal processing and computation tasks.
Innovation Solution
A dense algorithm processing integrated circuit architecture with a mesh design featuring array cores, border cores, and a hierarchical memory structure, enabling efficient data propagation and computation through coarse and granular data paths, and eliminating the need for explicit memory addressing, allowing for real-time and high-performance processing of perception data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional GPU architectures are used for sensor data processing, then general-purpose computing capability is provided, but processing speed and efficiency for machine learning algorithms are insufficient
Solution Approach 1:
The GPU architecture is segmented into multiple streaming multiprocessors (SMs), each capable of independent execution of machine learning algorithms. This segmentation allows parallel processing of sensor data subsets, significantly improving processing speed while maintaining manageable complexity through modular design
Solution Approach 2:
The patent introduces a hierarchical memory structure with multiple levels (L1, L2, L3 caches) and introduces the dimension of data flow optimization through specialized data movement units. This adds dimensional complexity to the architecture that enables faster data access and processing throughput
2Adaptability or versatility
If additional circuitry is assembled to handle path planning and sensor fusion, then perception processing capabilities are enhanced, but system complexity and inefficiency increase
Solution Approach 1:
The GPU architecture is designed with universal computing units that can execute diverse machine learning algorithms for multiple perception tasks including object detection, path planning, and sensor fusion. This multi-functionality enhances adaptability without requiring separate dedicated circuitry for each function
Solution Approach 2:
The patent introduces unified memory and data movement units as intermediaries between different processing functions. These intermediaries efficiently transfer data between memory and processing units, enabling complex perception processing without proportionally increasing overall system complexity
3Power
If general purpose CPUs are used for computation, then system simplicity is maintained, but processing power for complex algorithms is insufficient
Solution Approach 1:
The patent employs multiple copies of streaming multiprocessors arranged in parallel within the GPU architecture. Each SM can independently execute machine learning algorithms on different data subsets, collectively providing immense computing power while maintaining a regular, manageable architectural pattern through replication
4Loss of time
If data movement is not optimized in the processing architecture, then architecture simplicity is maintained, but processing latency increases
Solution Approach 1:
The patent implements continuous data flow through the architecture using double-buffering techniques and pipelined data movement units. Data is continuously transferred from memory to processing units and between processing stages without idle gaps, minimizing latency while the added complexity is confined to the data movement infrastructure
Data Source
AI summary
Systems and methods of propagating data within an integrated circuit includes: identifying a coarse data propagation path for distinct subsets of data of an input dataset that includes: setting inter-core data movements for the distinct subsets of data, the inter-core data movements defining a predetermined propagation of a given subset of data between two or more of a plurality of cores of an integrated circuit array of the integrated circuit; identifying a granular data propagation path for each distinct subset of data that includes: setting intra-core data movements for each distinct subset of data, the intra-core data movements defining a predetermined propagation of the given subset of data within one or more of the plurality of cores of the integrated circuit array of the integrated circuit; enabling a flow of the input dataset within the integrated circuit based on the coarse data propagation path and the granular propagation path.


