Fixed-Point ML Computing Architecture for Faster Parallel Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

General purpose processors are inefficient in processing large loads, leading to delays in machine learning tasks such as training artificial intelligence models, due to their limited operating speed.

Innovation Solution

A computation device and method that includes a controller unit, operation unit, and conversion unit, utilizing a primary processing circuit and secondary processing circuits to perform machine learning computations by converting input data into fixed-point data and executing operations efficiently, with a DMA unit and storage unit for data management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a general purpose processor is used to process information, then the processor can handle various types of computations, but the processing speed becomes limited and efficiency decreases when there is a large load

Engineering Contradiction:
Improveprocessor versatilityVSAvoidprocessing speed
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The processor is divided into a control unit and multiple operation units with different data types (first operation unit for first data type, second operation unit for second data type). This segmentation allows parallel processing of different data types simultaneously, improving overall processing speed while maintaining versatility through the ability to handle multiple data types through different specialized units.

Inventive Principle:
Principle #1Segmentation

2Productivity

If a general purpose processor operates at high speed, then processing efficiency improves, but the processor structure becomes complex and power consumption increases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidprocessor structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Different operation units are designed with local quality optimization - each unit is specialized for a specific data type with corresponding data storage and processing structures. The first operation unit handles first data type with its associated first data storage, while the second operation unit handles second data type with its second data storage. This local specialization improves processing efficiency for each data type without requiring the entire processor to be overly complex.

Inventive Principle:
Principle #3Local quality

3Productivity

If more processing units are added to increase processing capacity, then productivity improves, but device complexity and power consumption increase

Engineering Contradiction:
Improveprocessing capacityVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by stationary object

Solution Approach 1:

The processor dynamically selects which operation unit to use based on the data type being processed. The control unit receives input data, determines its type, and routes it to the appropriate operation unit (first or second). This dynamic routing allows the system to achieve high processing capacity through parallel capability while consuming power only in the actively used units, rather than continuously powering all units.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11720357B2Computing device and method
Publication Date: 2023.08.08 SHANGHAI CAMBRICON INFORMATION TECH CO LTD
  • US11720357B2 patent drawing
  • US11720357B2 patent drawing
  • US11720357B2 patent drawing

AI summary

The present disclosure provides a computation device. The computation device is configured to perform a machine learning computation, and includes an operation unit, a controller unit, and a conversion unit. The storage unit is configured to obtain input data and a computation instruction. The controller unit is configured to extract and parse the computation instruction from the storage unit to obtain one or more operation instructions, and to send the one or more operation instructions and the input data to the operation unit. The operation unit is configured to perform operations on the input data according to one or more operation instructions to obtain a computation result of the computation instruction. In the examples of the present disclosure, the input data involved in machine learning computations is represented by fixed-point data, thereby improving the processing speed and efficiency of training operations.