IP Library Granted Patent US 11,062,201
Granted Patent B2
US 11,062,201 · App. 17/084,936 · Granted Jul 13, 2021

Chip and chip-based data processing method

Inventors: Guozhen Pan (Hangzhou, CN); Jianguo Xu (Hangzhou, CN); Yongchao Liu (Hangzhou, CN); Haitao Zhang (Hangzhou, CN); Qiyin Huang (Hangzhou, CN); Guanyin Zhu (Hangzhou, CN)
Assignee: Advanced New Technologies Co., Ltd.
G06N3/063G06F9/30149G06F9/3871G06F13/28G06F2213/0026
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,062,201
App. No.
17/084,936
Granted
Jul 13, 2021
Kind
B2
Abstract

Embodiments of the present specification provide chips and chip-based data processing methods. In an embodiment, a method comprises: obtaining data associated with one or more neural networks transmitted from a server; for each layer of a neural network of the one or more neural networks, configuring, based on the data, a plurality of operator units based on a type of computation each operator unit performs; and invoking the plurality of operator units to perform computations, based on neurons of a layer of the neural network immediately above, of the data for each neuron to produce a value of the neuron.

Claims (53)

1. A data processing method performed by a chip based on neural networks, the method comprising:

obtaining data associated with one or more neural networks transmitted from a server;

for each layer of a neural network of the one or more neural networks,

configuring, based on the data, a plurality of operator units based on a type of computation each operator unit performs; and

invoking the plurality of operator units, to perform computations of the data for each neuron, based on neurons of a layer of the neural network immediately above, to produce a value of the neuron;

wherein the neural network comprises at least one inner layer, at least one intermediate layer, and at least one output layer;

wherein the computations are performed based on a program cycled in an inner loop and an outer loop;

wherein in the outer loop, the program is cycled n times to perform computations at each layer of the at least one intermediate layer and the at least one output layer, where n is a quantity of layers of the at least one intermediate layer and the at least one output layer; and

wherein in the inner loop, the program is cycled m times to perform computations at each neuron in a corresponding layer of the neural network, where m is a quantity of neurons in the corresponding layer.

2. The data processing method according to claim 1 , wherein the computations are performed based on program-based assembly instructions received from the server.

3. The data processing method according to claim 1 , wherein the plurality of operator units are invoked by using a function call in a C language program.

4. The data processing method according to claim 1 , wherein the chip comprises a direct memory access (DMA) module, and the method further comprises controlling the DMA module to send the value of the neuron to be stored by the server.

5. The data processing method according to claim 1 , wherein the plurality of operator units are invoked asynchronously.

6. The data processing method according to claim 1 , wherein the configuring the plurality of operator units comprises:

determining a length of the data; and

obtaining a parameter to be sent to each of the plurality of operator units based on the length.

7. The data processing method according to claim 1 , wherein the data transmitted from the server comprises a neural network type corresponding to each of the one or more neural networks, and the computations are performed further based on the neural network type.

8. A non-transitory, computer-readable medium storing one or more instructions executable by a chip to perform operations comprising:

obtaining data associated with one or more neural networks transmitted from a server;

for each layer of a neural network of the one or more neural networks,

configuring, based on the data, a plurality of operator units based on a type of computation each operator unit performs; and

invoking the plurality of operator units, to perform computations of the data for each neuron, based on neurons of a layer of the neural network immediately above, to produce a value of the neuron

wherein the neural network comprises at least one inner layer, at least one intermediate layer, and at least one output layer;

wherein the computations are performed based on a program cycled in an inner loop and an outer loop;

wherein in the outer loop, the program is cycled n times to perform computations at each layer of the at least one intermediate layer and the at least one output layer, where n is a quantity of layers of the at least one intermediate layer and the at least one output layer; and

wherein in the inner loop, the program is cycled m times to perform computations at each neuron in a corresponding layer of the neural network, where m is a quantity of neurons in the corresponding layer.

9. The non-transitory, computer-readable medium according to claim 8 , wherein the computations are performed based on program-based assembly instructions received from the server.

10. The non-transitory, computer-readable medium according to claim 8 , wherein the plurality of operator units are invoked by using a function call in a C language program.

11. The non-transitory, computer-readable medium according to claim 8 , wherein the chip comprises a direct memory access (DMA) module, and the operations further comprise controlling the DMA module to send the value of the neuron to be stored by the server.

12. The non-transitory, computer-readable medium according to claim 8 , wherein the plurality of operator units are invoked asynchronously.

13. The non-transitory, computer-readable medium according to claim 8 , wherein the configuring the plurality of operator units comprises:

determining a length of the data; and

obtaining a parameter to be sent to each of the plurality of operator units based on the length.

14. The non-transitory, computer-readable medium according to claim 8 , wherein the data transmitted from the server comprises a neural network type corresponding to each of the one or more neural networks, and the computations are performed further based on the neural network type.

15. A computer-implemented system, comprising:

one or more computers; and

one or more computer memory devices interoperably coupled with the one or more computers and having tangible, non-transitory, machine-readable media storing one or more instructions that, when executed by the one or more computers, perform one or more operations comprising:

obtaining data associated with one or more neural networks transmitted from a server;

for each layer of a neural network of the one or more neural networks,

configuring, based on the data, a plurality of operator units based on a type of computation each operator unit performs; and

invoking the plurality of operator units, to perform computations of the data for each neuron, based on neurons of a layer of the neural network immediately above, to produce a value of the neuron

wherein the neural network comprises at least one inner layer, at least one intermediate layer, and at least one output layer;

wherein the computations are performed based on a program cycled in an inner loop and an outer loop;

wherein in the outer loop, the program is cycled n times to perform computations at each layer of the at least one intermediate layer and the at least one output layer, where n is a quantity of layers of the at least one intermediate layer and the at least one output layer; and

wherein in the inner loop, the program is cycled m times to perform computations at each neuron in a corresponding layer of the neural network, where m is a quantity of neurons in the corresponding layer.

16. The computer-implemented system according to claim 15 , wherein the computations are performed based on program-based assembly instructions received from the server.

17. The computer-implemented system according to claim 15 , wherein the plurality of operator units are invoked by using a function call in a C language program.

18. The computer-implemented system according to claim 15 , wherein the one or more computers comprise a direct memory access (DMA) module, and the operations further comprise controlling the DMA module to send the value of the neuron to be stored by the server.

19. The computer-implemented system according to claim 15 , wherein the plurality of operator units are invoked asynchronously.

20. The computer-implemented system according to claim 15 , wherein the configuring the plurality of operator units comprises:

determining a length of the data; and

obtaining a parameter to be sent to each of the plurality of operator units based on the length.

21. The computer-implemented system according to claim 15 , wherein the data transmitted from the server comprises a neural network type corresponding to each of the one or more neural networks, and the computations are performed further based on the neural network type.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 15, 2021
From: PAN, GUOZHEN; XU, JIANGUO; LIU, YONGCHAO; ZHANG, HAITAO; HUANG, QIYIN; ZHU, GUANYIN
To: ADVANCED NEW TECHNOLOGIES CO., LTD.
Reel/Frame 055927/0291 →
Priority Claims (1)
CN 201811156129.6 · Sep 30, 2018 · national
Continuity (2)
Continuation PCTCN2019101069 · Aug 16, 2019
Related Publication 20210049453A1 · Feb 18, 2021
Cited By (1)
US 12,292,841