IP Library Granted Patent US 11,205,109
Granted Patent B2
US 11,205,109 · App. 17/097,918 · Granted Dec 21, 2021

On-chip communication system for neural network processors

Inventor: Jian Chen (San Mateo, CA)
Assignee: Alibaba Group Holding Limited
G06N3/04G06F9/38G06N3/0454G06N3/063
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,205,109
App. No.
17/097,918
Granted
Dec 21, 2021
Kind
B2
Abstract

The present disclosure provides an on-chip communication system for neural network processors, a processing device, and a method for operating on an on-chip communication system. The system can include a cluster manager configured to generate a global signal, and a plurality of tile units in a tile array coupled with the cluster manager, each including two connectors and a node connected between the two connectors.

Claims (76)

1. An on-chip communication system for artificial neural network processors, comprising:

a cluster manager configured to:

receive a task,

determine available tile units of a tile array for the task,

generate a global signal according to available tile units of the tile array, and

connect the available tile units into a ring topology based on the global signal;

a bus; and

a plurality of tile units in the tile array, the plurality of tile units are communicatively coupled with the cluster manager via the bus, wherein each tile unit includes a first set of connectors and at least one node that is connected between at least two connectors of the first set of connectors, wherein the at least one node is configured to acquire the global signal.

2. The on-chip communication system of claim 1 , wherein the node further comprises:

a control unit configured to generate at least one of a transmission enable signal, a receiving enable signal, and a mode signal based on the global signal acquired via the bus.

3. The on-chip communication system of claim 2 , wherein the node is communicatively coupled to a first connector of the first set of connectors via a first terminal and to a second connector of the first set of connectors via a second terminal, wherein the node further comprises:

a bypass bus connected between the first terminal and the second terminal and configured to communicate data signals between the first and second terminals;

a buffer bus connected between the first and second terminals and configured to buffer the data signals; and

one or more multiplexers configured to enable one of the bypass bus and the buffer bus according to the mode signal that is based on the configuration of the node.

4. The on-chip communication system of claim 3 , wherein the node further comprises:

an arithmetic logic unit (ALU) configured to perform one or more operations based on the data signals, wherein the ALU is communicatively coupled with the bypass bus and the buffer bus.

5. The on-chip communication system of claim 3 , wherein the node further comprises:

a transmission unit coupled with the bypass bus and configured to transmit data to the bypass bus according to the transmission enable signal; and

a receiving unit coupled with the bypass bus and configured to receive data from the bypass bus according to the receiving enable signal.

6. The on-chip communication system of claim 3 , wherein the receiving unit is further coupled with the buffer bus to receive data from the buffer bus according to the receiving enable signal.

7. The on-chip communication system of claim 2 , wherein the control unit is further configured to generate a selection signal that is based on the global signal, wherein the selection signal configures one or more connectors of the first set of connectors.

8. The on-chip communication system of claim 1 , wherein the one or more connectors of the first set of connectors further comprises:

a first gate communicatively coupled to the node and a connector of a second set of connectors;

a second gate communicatively coupled to the node and a connector of a third set of connectors; and

a third gate communicatively coupled to the connector of the second set of connectors and the connector of the third set of connectors.

9. The on-chip communication system of claim 8 , wherein

the first gate is configured to be enabled when the selection signal is asserted,

the second gate is configured to be enabled when the selection signal is asserted, and

the third gate is configured to be enabled when the selection signal is disasserted.

10. The on-chip communication system of claim 1 , wherein the available tile units are configured to:

generate location information of the available tile units;

generate the selection signal based on the location information; and

establish, by connecting the connectors of the available tile units, the ring topology based on the selection signal.

11. The on-chip communication system of claim 1 , wherein the cluster manager is further configured to:

generate weights for nodes of the ring topology based on a weight matrix;

partition the task into sub-tasks for the nodes; and

determine partial results of the nodes based on the weights and the sub-tasks.

12. The on-chip communication system of claim 1 , wherein the cluster manager is further configured to:

determine, among the nodes of the available tile units, a home node based on the task.

13. The on-chip communication system of claim 12 , wherein the cluster manager is further configured to:

send a reduce command to nodes of the ring topology;

reconfigure the ring topology to generate a plurality of node rings, wherein each node ring includes a first node and a second node;

transmit the partial results from the first node to the second node; and

perform a reduce operation on the second node.

14. The on-chip communication system of claim 13 , wherein the second node is closer to the home node than other nodes in the node ring.

15. The on-chip communication system of claim 12 , wherein two tile units connected with each other form a tile of the tile array, the cluster manager is further configured to:

send a broadcast command to the nodes of the available tile units;

determine location information of the nodes of the available tile units;

connect non-home nodes of a home tile column including the home node to receive data from the home node; and

connect each tile of the home tile column with tiles in a row corresponding to the tile.

16. A method for operating on an on-chip communication system, wherein the on-chip communication system includes a cluster manager and a plurality of tile units in a tile array communicatively coupled with the cluster manager via a bus, the method comprising:

receiving a task;

determining available tile units of the tile array for the task, wherein each tile unit includes a first set of connectors and at least one node that is connected between at least two connectors of the first set of connectors;

generating a global signal according to the available tile units of the tile array; and

connecting the available tile units into a ring topology based on the global signal, wherein the at least one node is configured to acquire the global signal.

17. The method of claim 16 , further comprising:

generating location information of the available tile units;

generating a selection signal based on the location information; and

establishing, by connecting the connectors of the available tile units, the ring topology based on the selection signal.

18. The method of claim 17 , further comprising:

generating weights for nodes of the ring topology based on a weight matrix;

partitioning the task into sub-tasks for the nodes; and

determining partial results of the nodes based on the weights and the sub-tasks.

19. The method of claim 18 , further comprising:

determining, among the nodes of the available tile units, a home node based on the task.

20. The method of claim 19 , further comprising:

sending a reduce command to nodes of the ring topology;

reconfiguring the ring topology to generate a plurality of node rings, wherein each node ring includes a first node and a second node;

transmitting the partial results from the first node to second node; and

performing a reduce operation on the second node.

21. The method of claim 20 , wherein the second node is closer to the home node than other nodes in the node ring.

22. The method of claim 19 , wherein two tile units connected with each other form a tile of the tile array, the method comprising:

sending a broadcast command to the nodes of the available tile units;

determining location information of the nodes of the available tile units;

connecting non-home nodes of a home tile column including the home node to receive data from the home node; and

connecting each tile of the home tile column with tiles in a row corresponding to the tile.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 5, 2024
From: ALIBABA GROUP HOLDING LIMITED
To: T-HEAD (SHANGHAI) SEMICONDUCTOR CO., LTD.
Reel/Frame 066348/0656 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2020
From: CHEN, JIAN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 054365/0374 →
Continuity (3)
Continuation 15980685 · May 15, 2018
Provisional Application 62610127 · Dec 22, 2017
Related Publication 20210064962A1 · Mar 4, 2021