IP Library Granted Patent US 10,936,941
Granted Patent B2
US 10,936,941 · App. 15/390,573 · Granted Mar 2, 2021

Efficient data access control device for neural network hardware acceleration system

Inventors: Yubin Li (Beijing, CN); Song Han (Beijing, CN); Yi Shan (Beijing, CN)
Assignee: XILINX, INC.
G06N3/063G06N3/0454G06F7/501G06F7/523G06F7/5443G06F2207/4824G06N3/0445
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 10,936,941
App. No.
15/390,573
Granted
Mar 2, 2021
Kind
B2
Abstract

The technical disclosure relates to artificial neural network. In particular, the technical disclosure relates to how to implement efficient data access control in the neural network hardware acceleration system. Specifically, it proposes an overall design of a device that can process data receiving, bit-width transformation and data storing. By employing the technical disclosure, neural network hardware acceleration system can avoid the data access process becomes the bottleneck in neural network computation.

Claims (41)

1. A data access control device used for a neural network acceleration system, comprising:

a parameter access control circuit, configured to read parameters required by a plurality of processing elements (PEs) from a memory, and perform bit-width transformation operation on said parameters and output the transformed parameters to said PEs;

a vector access control circuit, configured to read vectors required by PEs from the memory, perform bit-width transformation operation on said vectors and output the transformed vectors to said PEs; and

a computation result access control circuit, configured to read computation results from said PEs, perform bit-width transformation operation on said computation results and output the transformed computation results to the memory,

wherein the bit-width transformation operation on data comprises, if the data is the parameters or the vectors, splitting data into a plurality of smaller bit width data, and

wherein the bit-width transformation operation on data comprises, if the data is the computation results, assembling a plurality of small bit-width data into a single large bit-width data.

2. The device of claim 1 , wherein said parameter access control circuit further comprises:

at least one parameter buffer, configured to store received parameters; and

at least one bit-width converter, configured to perform bit-width transformation operation on said parameters.

3. The device of claim 1 , wherein said vector access control circuit further comprises:

at least one vector buffer, configured to store received vectors; and

at least one bit-width converter, configured to perform bit-width transformation operation on said vectors.

4. The device of claim 1 , wherein said computation result access control circuit further comprises:

at least one result buffer, configured to store received computation results; and

at least one bit-width converter, configured to perform bit-width transformation operation on said computation results.

5. The device of any of claims 2 - 4 , wherein the number of bit-width converters is no less than m×n÷d, wherein m is the number of said PEs, n is the number of data to be processed or to be output by one PE per computation cycle, and d is the computation delay.

6. The device of any of claims 2 - 4 , wherein said bit-width converter operation is implemented by two cascaded asynchronous FIFOs, one is a 512 bit-to-64 bit converter and the other is 64 bit-to-16 bit converter.

7. The device of claim 1 , wherein said parameters comprises at least weight, bias, diagonal matrix data of said neural network.

8. The data access control device of claim 1 ,

wherein the parameter access control circuit is configured to output the transformed parameters to each PE of said PEs,

wherein the vector access control circuit is configured to output the transformed vectors to each PE of said PEs, and

wherein the computation result access control circuit is configured to read computation results from each PE of said PEs.

9. The data access control device of claim 8 ,

wherein the parameter access control circuit is not a part of said PEs, and

wherein the vector access control circuit is not a part of said PEs.

10. The data access control device of claim 1 ,

wherein the parameter access control circuit is not a part of said PEs, and

wherein the vector access control circuit is not a part of said PEs.

11. A data access control device used for a neural network acceleration system, comprising:

first memory configured for storing weight data of the neural network;

second memory configured for storing input vectors, bias data of the neural network;

first memory controller configured for reading the weight data from the first memory into the first memory controller and outputting said weight data from the first memory controller to a plurality of processing elements (PEs);

second memory controller configured for reading the input vectors and bias data from the second memory into the second memory controller, conducting bit-width transformation operation on the input vectors and bias data, and outputting said transformed input vectors and bias data from the second memory controller to the processing elements.

12. The data access control device of claim 11 , wherein the second memory controller further comprising:

at least one bit-width converter, configured to perform bit-width transformation operation.

13. The device of claim 12 , wherein said bit-width converter operation is implemented by two cascaded asynchronous FIFOs, one is a 512 bit-to-64 bit converter and the other is 64 bit-to-16 bit converter.

14. The device of claim 12 , wherein the number of bit-width converters is no less than m×n÷d, wherein m is the number of said PEs, n is the number of data to be processed or to be output by one PE per computation cycle, and d is the computation delay.

15. The device of claim 11 , wherein the second memory controller further comprising:

a computation result access control circuit, configured to read computation results from said PEs, perform bit-width transformation operation on said computation results and output the transformed computation results to the first memory.

16. The data access control device of claim 15 , wherein the bit-width transformation operation on data comprises, if the data is the computation results, assembling a plurality of small bit-width data into a single large bit-width data.

17. The data access control device of claim 11 , wherein the bit-width transformation operation on data comprises, if the data is the input vectors or the bias data, splitting data into a plurality of smaller bit width data.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 16, 2019
From: BEIJING DEEPHI INTELLIGENT TECHNOLOGY CO., LTD.
To: XILINX, INC.
Reel/Frame 050377/0436 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME PREVIOUSLY RECORDED AT REEL: 040777 FRAME: 0435. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 8, 2018
From: LI, YUBIN; HAN, SONG
To: BEIJING DEEPHI INTELLIGENT TECHNOLOGY CO., LTD.
Reel/Frame 045528/0549 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME PREVIOUSLY RECORDED AT REEL: 042158 FRAME: 0922. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 8, 2018
From: SHAN, YI
To: BEIJING DEEPHI INTELLIGENT TECHNOLOGY CO., LTD.
Reel/Frame 045529/0299 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2017
From: SHAN, YI
To: BEIJING DEEPHI INTELLIGENCE TECHNOLOGY CO., LTD.
Reel/Frame 042158/0922 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 28, 2016
From: LI, YUBIN; HAN, SONG
To: BEIJING DEEPHI INTELLIGENCE TECHNOLOGY CO., LTD.
Reel/Frame 040777/0435 →
Priority Claims (3)
CN 201610663201.9 · Aug 12, 2016 · national
CN 201610663563.8 · Aug 12, 2016 · national
CN 201611105491.1 · Dec 5, 2016 · national
Continuity (3)
Continuation In Part 15242624 · Aug 22, 2016
Continuation In Part 15242622 · Aug 22, 2016
Related Publication 20180046905A1 · Feb 15, 2018