IP Library › Granted Patent US 10,866,753
Granted Patent B2
US 10,866,753 · App. 15/944,160 · Granted Dec 15, 2020

Data processing engine arrangement in a device

Inventors: Juan J. Noguera Serra (San Jose, CA); Goran H K Bilski (Molndal, SE); Jan Langer (Chemnitz, DE); Baris Ozgul (Dublin, IE); Tim Tuan (San Jose, CA); Richard L. Walke (Edinburgh, GB); Ralph D. Wittig (Menlo Park, CA); Kornelis A. Vissers (Sunnyvale, CA); David Clarke (Dublin, IE)
Assignee: Xilinx, Inc.
G06F3/0647G06F3/061G06F3/0683G06F15/17331G06F15/7807
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,866,753
App. No.
15/944,160
Granted
Dec 15, 2020
Kind
B2
Abstract

A device may include a plurality of data processing engines. Each of the data processing engines may include a core and a memory module. The plurality of data processing engines may be organized in a plurality of rows. Each core may be configured to communicate with other neighboring data processing engines of the plurality of data processing engines by shared access to the memory modules of the neighboring data processing engines.

Claims (25)

1. A device, comprising:

a plurality of data processing engines;

wherein each data processing engine includes a core and a memory module;

wherein the plurality of data processing engines are organized in a plurality of rows, and wherein the cores and the memory modules within each respective row of the plurality of rows are aligned in a direction parallel to the row;

wherein each core is configured to communicate with other neighboring data processing engines of the plurality of data processing engines by shared access to the memory modules of the neighboring data processing engines; and

wherein the cores of the plurality of data processing engines lack input interrupts to provide deterministic and uninterrupted operation.

2. The device of claim 1 , wherein the memory module of each data processing engine includes a random access memory and a plurality of memory interfaces to the random access memory, wherein a first of the plurality of memory interfaces is directly connected to the core within the same data processing engine and each other one of the plurality of memory interfaces is directly connected to a core of a different one of the plurality of data processing engines.

3. The device of claim 2 , wherein the plurality of data processing engines are further organized in a plurality of columns, wherein the plurality of columns are perpendicular to the plurality of rows, and wherein the cores of the plurality of data processing engines in the columns are aligned and the memory modules of the plurality of data processing engines in the columns are aligned.

4. The device of claim 3 , wherein a memory module of a selected data processing engine of the plurality of data processing engines includes:

a first memory interface coupled to a core of a data processing engine of the plurality of data processing engines immediately above the selected data processing engine;

a second memory interface coupled to a core within the selected data processing engine;

a third memory interface coupled to a core of a data processing engine of the plurality of data processing engines immediately adjacent the selected data processing engine; and

a fourth memory interface coupled to a core of a data processing engine of the plurality of data processing engines immediately below the selected data processing engine.

5. The device of claim 3 , wherein a selected data processing engine of the plurality of data processing engines is configured to communicate, via shared access to memory modules, with a group of at least ten of the plurality of data processing engines.

6. The device of claim 5 , wherein at least two data processing engines of the group are configured to access more than one memory module of the group of at least ten of the plurality of data processing engines.

7. The device of claim 1 , wherein the plurality of rows of data processing engines comprise:

a first row having a first subset of the plurality of data processing engines, wherein each data processing engine of the first subset has the memory module located on a first side of the core; and

a second row having a second subset of the plurality of data processing engines, wherein each data processing engine of the second subset has the memory module located on a second side of the core, wherein the first side and the second side are opposing.

8. The device of claim 7 , wherein a memory module of a first selected data processing engine of the plurality of data processing engines of the first row and a second selected data processing engine of the plurality of data processing engines of the second row each include:

a first memory interface coupled to a core of a data processing engine of the plurality of data processing engines immediately above the selected data processing engine;

a second memory interface coupled to a core within the selected data processing engine;

a third memory interface coupled to a core of a data processing engine of the plurality of data processing engines immediately adjacent the selected data processing engine; and

a fourth memory interface coupled to a core of a data processing engine of the plurality of data processing engines immediately below the selected data processing engine.

9. The device of claim 7 , wherein a selected data processing engine of the plurality of data processing engines is configured to communicate, via shared access to memory modules, with a group of at least eight of the plurality of data processing engines.

10. The device of claim 9 , wherein at least four data processing engines of the group are configured to access more than one memory module of the group of at least eight of the plurality of data processing engines.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 4, 2020
From: CLARKE, DAVID
To: XILINX, INC.
Reel/Frame 054276/0319 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 27, 2019
From: XILINX GMBH
To: XILINX, INC.
Reel/Frame 048719/0864 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 5, 2018
From: LANGER, JAN
To: XILINX GMBH
Reel/Frame 045445/0764 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 5, 2018
From: NOGUERA SERRA, JUAN J.; BILSKI, GORAN H.K.; OZGUL, BARIS; TUAN, TIM; WALKE, RICHARD L.; WITTIG, RALPH D.; VISSERS, KORNELIS A.; DICK, CHRISTOPHER H.
To: XILINX, INC.
Reel/Frame 045446/0005 →
Continuity (1)
Related Publication 20190303033A1 · Oct 3, 2019
Cited By (6)
US 12,248,786 US 12,401,364 US 12,619,371 US 12,625,725 US 12,656,970 US 12,724,618