Data processing system, operating method thereof, and computing system using the same
AssigneeSK hynix Inc.
InventorYoung Jae Jin
Life of this patent
Estimating the term…
Abstract
A data processing system includes a controller configured to receive a neural network operation processing request from a host device; and an in-memory computing device including a plurality of processing elements. The in-memory computing device is configured to receive an input feature map and a weight filter from the controller, and perform a neural network operation in the plurality of processing elements based on the weight filter and a plurality of division maps generated from the input feature map, wherein the in-memory computing device performs the neural network operation by not moving a reused element, which is operated at least twice among elements constituting the division maps during the neural network operation, between the processing elements.
Claims27
A data processing system comprising:
- a controller configured to receive a neural network operation processing request from a host device;
- and
- an in-memory computing device including a plurality of processing elements and configured to:
- receive an input feature map and a weight filter from the controller, and
- perform a neural network operation in the plurality of processing elements based on the weight filter and a plurality of division maps generated from the input feature map,
- wherein the in-memory computing device performs the neural network operation by storing a reused element, which is operated at least twice among elements constituting the plurality of division maps during the neural network operation, only in one processing unit that first operates the reused element among the plurality of processing units,
- wherein the reused element includes both elements reused in a row direction and elements reused in a column direction.
A data processing system comprising:
- a global buffer in which an input feature map and a weight filter are stored;
- a computing memory including a plurality of processing elements and configured to perform a plurality of cycles of a neural network operation by receiving the weight filter and a plurality of division maps generated from the input feature map;
- and
- a scheduler configured to:
- select processing elements corresponding to a number of elements of the weight filter among the plurality of processing elements,
- store all elements of the weight filter in the selected processing elements, and
- distribute and store elements of the respective division maps in the selected processing elements,
- wherein the scheduler distributes and stores the elements of the respective division maps by allowing a reused element, which is operated at least twice among the elements of the division maps during the neural network operation, to be retained in a corresponding single processing element, to which the reused element is initially provided among the plurality of processing elements, and
- the scheduler stores the reused element only in one processing unit that first operates the reused element,
- wherein the reused element includes both elements reused in a row direction and elements reused in a column direction.
An operating method of a data processing system comprising:
- receiving, by a controller, a neural network operation processing request from a host device;
- receiving, by an in-memory computing device including a plurality of processing elements, an input feature map and a weight filter from the controller;
- generating, by the in-memory computing device, a plurality of division maps from the input feature map;
- and
- performing, by the in-memory computing device, a neural network operation through at least partial processing elements among the plurality of processing elements based on the plurality of division maps and the weight filter,
- wherein the performing of the neural network operation includes controlling a reused element, which is operated at least twice among elements constituting the division maps during the neural network operation, to be stored only in one processing unit that first operates the reused element among the plurality of processing units between the processing elements,
- wherein the reused element includes both elements reused in a row direction and elements reused in a column direction.
A computing system comprising:
- a host device;
- and
- a data processing system configured to:
- generate a plurality of division maps from an input feature map in response to a neural network operation processing request from the host device, and
- perform a neural network operation in a plurality of processing elements based on a weight filter and the plurality of division maps,
- wherein the data processing system performs the neural network operation by storing a reused element, which is operated at least twice among elements constituting the plurality of division maps during the neural network operation, only in one processing unit that first operates the reused element among the plurality of processing units,
- wherein the reused element includes both elements reused in a row direction and elements reused in a column direction.
An in-memory computing device comprising:
- processing elements (PEs) configured to perform a convolution operation on a filter and a division map at each cycle, each PE being configured to perform the convolution operation on an assigned filter element and an assigned map element;
- and
- a control unit configured to:
- assign filter elements from the filter to the respective PEs,
- divide an input map into division maps such that partial map elements are shared by two of the division maps, and
- assign, at each cycle, map elements from a selected division map to the respective PEs,
- wherein the control unit is further configured to control a selected PE to perform the convolution operation on a re-cycled map element without assigning again the re-cycled map element to the selected PE, at a current cycle, and
- wherein the control unit assigns the re-cycled map element to the selected PE at a previous cycle, and
- the control unit stores the reused element only in one processing unit that first operates the reused element,
- wherein the reused element includes both elements reused in a row direction and elements reused in a column direction.
Dependencies are inferred from the claim text.