Back to results
US 12,079,592 B2Granted
Deep neural network accelerator including lookup table based bit-serial processing elements
AssigneeSamsung Electronics Co., Ltd.
InventorsHoi-Jun Yoo, Jin Mook Lee
Life of this patent
Estimating the term…
Abstract
A deep neural network accelerator includes a feature loader that stores input features, a weight memory that stores a weight, and a processing element. The processing element applies 1-bit weight values to the input features to generate results according to the 1-bit weight values, receives a target weight corresponding to the input features from the weight memory, and selects a target result corresponding to the received target weight from among the results to generate output features.
Claims17
A deep neural network accelerator comprising:
- a feature loader configured to store input features;
- a weight memory configured to store a weight;
- and
- a processing element comprising at least one lookup table bundle and an accumulator, wherein the processing element is configured to, in a current operation:
- obtain the input features from the feature loader, the input features comprising at least one input feature utilized in a previous operation prior to the current operation;
- obtain weight values;
- generate results according to the weight values by applying the weight values to the input features including the at least one input feature utilized in the previous operation;
- receive, by the at least one lookup table bundle, at least one target weight corresponding to the input features;
- and
- generate output features by:
- selecting a target result corresponding to the received at least one target weight from among the results;
- and
- accumulating, by the accumulator, the target result,
- wherein, based on the obtained weight values having a 1-bit precision, each of the at least one input feature utilized in the previous operation are utilized in the current operation,
- wherein, based on the obtained weight values having a precision that is greater than 1-bit precision, fewer than each of the at least one input feature utilized in the previous operation are utilized in the current operation, and
- wherein the processing element further comprises:
- file registers configured to store the results;
- multiplexers configured to receive the at least one target weight and to select the target result from the file registers;
- and
- a weight input circuit configured to receive weight values as much as the number of bits identical to a product of the number of the input features and the number of the multiplexers, at the at least one target weight, and to transfer the received weight values to the multiplexers.
17 more elements
A deep neural network accelerator comprising:
- deep neural network cores each configured to generate an output feature map based on an input feature map and a weight;
- and
- an aggregation core configured to receive the output feature map from each of the deep neural network cores and to accumulate the received output feature map to generate a final output feature map,
- wherein each of the deep neural network cores includes:
- a weight memory configured to store the weight;
- feature loaders each configured to store input features being a portion of the input feature map;
- and
- processing elements each configured to, in a current operation:
- receive the input features from one of the feature loaders, the input features comprising at least one input feature utilized in a previous operation prior to the current operation;
- obtain weight values;
- generate results according to the weight values by applying the weight values to the input features including the at least one input feature utilized in the previous operation;
- receive, by at least one lookup table bundle, at least one target weight corresponding to the input features;
- and
- generate output features by:
- selecting a target result corresponding to the received at least one target weight from among the results;
- and
- accumulating the target result,
- wherein, based on the obtained weight values having a 1-bit precision, each of the at least one input feature utilized in the previous operation are utilized in the current operation,
- wherein, based on the obtained weight values having a precision that is greater than 1-bit precision, fewer than each of the at least one input feature utilized in the previous operation are utilized in the current operation, and
- wherein each of the processing elements includes:
- a first lookup table bundle configured to generate first results corresponding to first features of the input features, to receive a first target weight corresponding to the first features from the weight memory, and to output a first target result corresponding to the first target weight from among the first results;
- a second lookup table bundle configured to generate second results corresponding to second features of the input features, to receive a second target weight corresponding to the second features from the weight memory, and to output a second target result corresponding to the second target weight from among the second results;
- and
- an accumulator configured to accumulate the first target result and the second target result to generate the output features.
21 more elements
Dependencies are inferred from the claim text.