US 12,067,406 B2
Multiple overlays for use with a data processing array
Baris Ozgul, Stoney Road (IE); David Clarke, Dublin (IE); Peter McColgan, North Dublin (IE); Stephan Münz, Dublin (IE); Dylan Stuart, Kildare (IE); Pedro Miguel Parola Duarte, Dublin (IE); and Juan J. Noguera Serra, San Jose, CA (US)
Assigned to Xilinx, Inc., San Jose, CA (US)
Filed by Xilinx, Inc., San Jose, CA (US)
Filed on Aug. 15, 2022, as Appl. No. 17/819,879.
Claims priority of provisional application 63/235,319, filed on Aug. 20, 2021.
Claims priority of provisional application 63/235,532, filed on Aug. 20, 2021.
Prior Publication US 2023/0053537 A1, Feb. 23, 2023
Int. Cl. G06F 9/445 (2018.01); G06F 9/50 (2006.01); G06F 13/16 (2006.01); G06F 13/28 (2006.01); G06F 17/16 (2006.01); G06N 3/063 (2023.01)
CPC G06F 9/44505 (2013.01) [G06F 9/5083 (2013.01); G06F 13/1673 (2013.01); G06F 13/28 (2013.01); G06F 17/16 (2013.01); G06N 3/063 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method, comprising:
loading an application in a data processing array;
wherein the data processing array includes a plurality of compute tiles each having a processor;
wherein the application specifies kernels executable by the processors of the plurality of compute tiles and implements a plurality of stream channels that convey data to the plurality of compute tiles;
during runtime of the application, sequentially implementing a plurality of overlays in the data processing array, wherein each overlay implements a different mode of data movement in the data processing array via the stream channels; and
for each overlay implemented, performing a workload by moving data to the plurality of compute tiles based on the respective mode of data movement;
wherein the plurality of stream channels convey the data including feature maps and weights to the plurality of compute tiles executing the kernels, and wherein each overlay specifies a different allocation of the feature maps and the weights to the plurality of stream channels.