Configurable Tensor Pipeline for Custom Data Format Acceleration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing hardware accelerators for AI applications, such as tensor processing units, require specific input and output data formats defined by the manufacturer, limiting user flexibility and leading to sub-optimal performance when user-specific data formats are used, and they either require time-consuming data conversion or are slower when using fully programmable hardware.
Innovation Solution
A hardware accelerator with a configurable pipeline processing element array that includes fixed tensor operation logic units, allowing flexible configuration to support various data types and operation flows, enabling efficient processing of tensor operations through a software-defined tensor operation pipeline.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If hardware accelerator uses manufacturer-specified data formats, then processing throughput is maximized, but user flexibility and adaptability to custom data formats is lost
Solution Approach 1:
The hardware accelerator implements dynamically configurable data format support through runtime pipeline configuration. The processing pipeline can be reconfigured via software to handle different data formats (e.g., different precision levels, quantization schemes) without requiring hardware redesign, thus maintaining high throughput while adapting to user-specific format requirements.
Solution Approach 2:
The system allows changing operational parameters such as data precision, quantization bit-width, and pipeline staging configurations through software control. This enables the same hardware to operate at peak performance across multiple data format specifications by adjusting these parameters rather than requiring dedicated hardware for each format.
2Productivity
If hardware accelerator uses fixed data format requirements, then hardware performance is optimized, but additional computation overhead for data conversion is required
Solution Approach 1:
The system performs preliminary configuration of the processing pipeline to match the incoming data format before processing begins. By pre-configuring the pipeline stages and data format parameters based on software-defined requirements, the system eliminates the need for time-consuming runtime data conversion, as the hardware is already prepared to process the specific format directly.
3Adaptability or versatility
If hardware accelerator uses fully programmable architecture, then user flexibility is improved, but processing speed decreases due to additional computation overhead
Solution Approach 1:
The processing architecture is segmented into fixed-function tensor operation units (for high-speed computation) and configurable pipeline control logic (for flexibility). This segmentation allows the bulk of computation to occur in optimized fixed-function units while the configurable portion handles only the necessary format-specific operations, maintaining high speed while providing user flexibility.
Solution Approach 2:
The hardware accelerator implements a universal tensor processing core that can handle multiple operation types (e.g., different tensor operations, quantization schemes, dequantization) through a single configurable pipeline. This multi-functional design provides user flexibility without requiring separate dedicated hardware for each operation, avoiding the speed penalty of fully programmable architectures.
Data Source
AI summary
A hardware accelerator is disclosed that can flexibly be configured to support differing data types and differing operation flows. The hardware accelerator includes a plurality of fixed tensor operation logic units, tensor operation pipeline logic configured to receive from the processor a pipeline command including a software-defined tensor operation pipeline definition defining a plurality of tensor operation stages in a tensor operation pipeline and associated predetermined tensor operations to be performed at each of the defined tensor operation stages. The hardware accelerator is further configured to receive tensor data to be computed by the tensor operation pipeline, and implement the tensor operation pipeline to perform the tensor operations in each of the tensor operation stages on the tensor data, to thereby produce a tensor operation pipeline result for the tensor data, and output the tensor operation pipeline result to the processor.


