IP Library Granted Patent US 11,301,340
Granted Patent B2
US 11,301,340 · App. 17/112,817 · Granted Apr 12, 2022

Memory-based distributed processor architecture

Inventors: Elad Sity (Kfar Saba, IL); Eliad Hillel (Kfar Saba, IL)
Assignee: NeuroBlade Ltd.
G06F11/1658G06F9/3001G06F9/3885G06F9/3889G06F9/3895G06F11/102G06F11/1016G06F11/16G06F11/1616G06F13/1657G06F15/8038G06N3/04G11C7/1072G11C11/1655G11C11/1657G11C11/1675G11C11/408G11C11/4076G11C11/4093G06F2015/765
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 11,301,340
App. No.
17/112,817
Granted
Apr 12, 2022
Kind
B2
Abstract

Distributed processors and methods for compiling code for execution by distributed processors are disclosed. In one implementation, a distributed processor may include a substrate; a memory array disposed on the substrate; and a processing array disposed on the substrate. The memory array may include a plurality of discrete memory banks, and the processing array may include a plurality of processor subunits, each one of the processor subunits being associated with a corresponding, dedicated one of the plurality of discrete memory banks. The distributed processor may further include a first plurality of buses, each connecting one of the plurality of processor subunits to its corresponding, dedicated memory bank, and a second plurality of buses, each connecting one of the plurality of processor subunits to another of the plurality of processor subunits.

Claims (13)

1. A non-transitory computer-readable medium storing instructions for compiling a series of instructions for execution on a memory chip comprising a plurality of processor subunits and a plurality of memory banks, wherein each processor subunit from among the plurality of processor subunits is connected to at least one corresponding, dedicated memory bank from among the plurality of memory banks, the instructions causing at least one processor to:

divide the series of instructions into a plurality of groups of sub-series instructions, the division comprising:

assigning tasks associated with the series of instructions to different ones of the processor subunits, wherein the processor subunits are spatially distributed among the plurality of memory banks disposed on the memory chip;

generating tasks to transfer data between pairs of the processor subunits of the memory chip, each pair of processor subunits being connected by a bus, and

grouping the assigned and generated tasks into the plurality of groups of sub-series instructions, wherein each of the plurality of groups of sub-series instructions corresponds to a different one of the plurality of processor sub-units;

generate machine code corresponding to each of the plurality of groups of subs-series instructions; and

assign the generated machine code corresponding to each of the plurality of groups of subs-series instructions to a corresponding one of the plurality of processor subunits in accordance with the division.

2. The non-transitory computer-readable medium of claim 1 , wherein the assigning of tasks associated with the series of instructions to the different ones of the processor subunits depends on a spatial proximity between two or more of the processor subunits on the memory chip.

3. The non-transitory computer-readable medium of claim 1 , wherein the instructions further cause the at least one processor to:

group data associated with the series of instructions based on the division; and

assign the data to the memory banks in accordance with the grouping.

4. The non-transitory computer-readable medium of claim 3 , wherein grouping the data comprises determining at least a portion of the data to duplicate in two or more of the memory banks.

5. A memory chip comprising a plurality of processor subunits and a corresponding plurality of memory banks, each processor subunit being connected to at least one memory bank dedicated to the processor subunit, the processor subunits of the memory chip being configured to execute the machine code generated according to claim 1 .

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 4, 2020
From: SITY, ELAD; HILLEL, ELIAD
To: NEUROBLADE, LTD.
Reel/Frame 054553/0110 →
Continuity (6)
Division 16512562 · Jul 16, 2019
Continuation PCTIB2018000995 · Jul 30, 2018
Provisional Application 62548990 · Aug 23, 2017
Provisional Application 62538724 · Jul 30, 2017
Provisional Application 62538722 · Jul 30, 2017
Related Publication 20210090617A1 · Mar 25, 2021