Vector computation unit in a neural network processor
First Claim
Patent Images
1. A system for performing neural network computations for a neural network having a plurality of neural network layers, the system comprising:
- normalization circuitry comprising;
M sets of normalization registers, wherein M is a positive integer greater than one, and wherein each set of normalization registers comprises multiple normalization registers, each normalization register configured to;
receive, in a staggered manner over multiple clock cycles, a set of activated values for a neural network layer; and
store subsets of the activated values in the normalization register; and
multiple normalization units, each normalization unit communicatively coupled to multiple sets of normalization registers and each normalization unit configured to;
obtain, from two or more sets of the normalization registers, the subsets of activated values stored in the normalization registers; and
normalize the subsets of activated values obtained from the two or more sets of normalization registers to generate a normalized value for determining an activation input for a subsequent neural network layer of the neural network.
2 Assignments
0 Petitions
Accused Products
Abstract
A circuit for performing neural network computations for a neural network comprising a plurality of layers, the circuit comprising: activation circuitry configured to receive a vector of accumulated values and configured to apply a function to each accumulated value to generate a vector of activation values; and normalization circuitry coupled to the activation circuitry and configured to generate a respective normalized value from each activation value.
31 Citations
20 Claims
-
1. A system for performing neural network computations for a neural network having a plurality of neural network layers, the system comprising:
normalization circuitry comprising; M sets of normalization registers, wherein M is a positive integer greater than one, and wherein each set of normalization registers comprises multiple normalization registers, each normalization register configured to; receive, in a staggered manner over multiple clock cycles, a set of activated values for a neural network layer; and store subsets of the activated values in the normalization register; and multiple normalization units, each normalization unit communicatively coupled to multiple sets of normalization registers and each normalization unit configured to; obtain, from two or more sets of the normalization registers, the subsets of activated values stored in the normalization registers; and normalize the subsets of activated values obtained from the two or more sets of normalization registers to generate a normalized value for determining an activation input for a subsequent neural network layer of the neural network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
14. A method for performing neural network computations for a neural network having a plurality of neural network layers using normalization circuitry that includes M sets of normalization registers and multiple normalization units, each normalization unit communicatively coupled to multiple sets of normalization registers, wherein M is a positive integer greater than one, and wherein each set of normalization registers include multiple normalization registers, the method comprising:
-
receiving, by each set of the normalization registers in a staggered manner over multiple clock cycles, a set of activated values for a neural network layer; and storing, by each set of the normalization registers, subsets of the activated values in the normalization registers of the set; and obtaining, by each normalization unit of the multiple normalization units and from two or more sets of the normalization registers, the subsets of activated values stored in the normalization registers; and normalizing, by each normalization unit of the multiple normalization units, the subsets of activated values obtained from the two or more sets of normalization registers to generate a normalized value for determining an activation input for a subsequent neural network layer of the neural network. - View Dependent Claims (15, 16, 17)
-
-
18. A normalization circuitry comprising:
-
M sets of normalization registers, wherein M is a positive integer greater than one, and wherein each set of normalization registers comprises multiple normalization registers, each normalization register configured to; receive, in a staggered manner over multiple clock cycles, a set of activated values for a neural network layer; and store subsets of the activated values in the normalization register; and multiple normalization units, each normalization unit communicatively coupled to multiple sets of normalization registers and each normalization unit configured to; obtain, from two or more sets of the normalization registers, the subsets of activated values stored in the normalization registers; and normalize the subsets of activated values obtained from the two or more sets of normalization registers to generate a normalized value for determining an activation input for a subsequent neural network layer of the neural network. - View Dependent Claims (19, 20)
-
Specification