Stream Processor with Multi-Unit Computing for Flexible Network Models
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing computing modules are inflexible and require significant area when supporting multiple network models, with specialized modules lacking general performance and GPGPUs occupying large areas.
Innovation Solution
A stream processor with multiple computing units (multiplication, addition, lookup table, and data transportation) controlled by a main unit, allowing simultaneous processing of diverse computing tasks and reducing redundant instruction distribution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a specialized computing module is designed for a certain network model, then computing performance for that specific network is optimized, but flexibility to compute other network models is reduced
Solution Approach 1:
The computing module is designed with multiple types of computing units (first type for multiplication, second type for addition, third type for lookup table operations) that can be selectively activated based on the network model being processed. This multi-functional design allows a single module to handle different network models (CNN, RNN, Transformer) without requiring separate specialized modules for each, thereby achieving both optimized performance and flexibility.
2Adaptability or versatility
If multiple specialized computing modules are merged to support multiple network models, then versatility is improved, but occupied area increases significantly
Solution Approach 1:
The patent merges multiple specialized computing functions into a single integrated computing module. Instead of having separate modules for multiplication, addition, and lookup table operations, the invention combines these into one module with multiple computing units that can be selectively activated. This merging approach maintains the ability to support multiple network models while significantly reducing the total occupied area compared to having separate specialized modules for each function.
Solution Approach 2:
The computing module is designed with multiple types of computing units (first type for multiplication, second type for addition, third type for lookup table operations) that can be selectively activated based on the network model being processed. This multi-functional design allows a single module to handle different network models (CNN, RNN, Transformer) without requiring separate specialized modules for each, thereby achieving both optimized performance and flexibility.
3Adaptability or versatility
If a GPGPU is used for general-purpose computing, then flexibility to compute various network models is improved, but occupied area increases
Solution Approach 1:
The computing module is segmented into multiple specialized computing units (first type for multiplication, second type for addition, third type for lookup table operations) that can be selectively activated. This segmentation allows the system to allocate only the necessary computing units for each specific task, reducing the overall area required compared to a full GPGPU that would need to accommodate all possible computing operations regardless of immediate needs.
Solution Approach 2:
The computing module is designed with multiple types of computing units (first type for multiplication, second type for addition, third type for lookup table operations) that can be selectively activated based on the network model being processed. This multi-functional design allows a single module to handle different network models (CNN, RNN, Transformer) without requiring separate specialized modules for each, thereby achieving both optimized performance and flexibility.
Data Source
AI summary
The present disclosure provides a stream processor, computing method, chip and electronic device, and relates to the technical field of electronic circuits. Stream processor includes: at least two types of computing units, and a main control unit, wherein each type of the computing units is configured to perform one computing operation of multiplication operation, addition operation, lookup table operation, and data transportation, and the main control unit is connected to each computing unit, and configured to assign an operation instruction to the computing unit, so as to make the computing unit perform a corresponding computing operation of the computing unit in response to the operation instruction.


