Controlling memory access devices in a data driven architecture mesh array
First Claim
1. A data driven processing method, comprising:
- providing, by an external host controller, a first set of instructions to a first processing unit, of a data driven processor having a plurality of processing units, the first processing unit to operate upon incoming data in accordance with the first set of instructions;
configuring, by the external host controller, a data path through a mesh arrangement of data ports for transferring data between a second processing unit of the data driven processor and external memory, wherein the data path couples the second processing unit to the external memory through a memory access unit of the data driven processor, wherein the coupling of each pair of data ports of adjacent processing units is a point-to-point connection, and wherein the mesh arrangement of data ports allows data flow (a) from any one of the processing units directly to another without accessing memory and (b) from any one of the processing units to the memory access unit; and
the first processing unit, in response to recognizing that the first set of instructions will require one of reading from and writing to external memory based on having processed the first set of instructions, provides addressing information to the memory access unit of the processor through a control port of the first processing unit to enable the transfer of additional data between the external memory and the second processing unit via said data path.
1 Assignment
0 Petitions
Accused Products
Abstract
A first set of instructions and incoming data are provided to a first processing unit of a data driven processor, to operate upon the incoming data. The first processing unit, in response to recognizing that the first set of instructions will require either reading from or writing to external memory, sets up a logical channel between a second processing unit of the processor and the external memory, to transfer additional data between the external memory and the second processing unit. This capability may be implemented by the addition of a control port, separate from data ports, to the first processing unit, where the control port allows the first processing unit to write addressing information and mode information (including the location of the additional data) for reading or writing the additional data via a memory access unit data channel of the processor.
13 Citations
20 Claims
-
1. A data driven processing method, comprising:
-
providing, by an external host controller, a first set of instructions to a first processing unit, of a data driven processor having a plurality of processing units, the first processing unit to operate upon incoming data in accordance with the first set of instructions; configuring, by the external host controller, a data path through a mesh arrangement of data ports for transferring data between a second processing unit of the data driven processor and external memory, wherein the data path couples the second processing unit to the external memory through a memory access unit of the data driven processor, wherein the coupling of each pair of data ports of adjacent processing units is a point-to-point connection, and wherein the mesh arrangement of data ports allows data flow (a) from any one of the processing units directly to another without accessing memory and (b) from any one of the processing units to the memory access unit; and the first processing unit, in response to recognizing that the first set of instructions will require one of reading from and writing to external memory based on having processed the first set of instructions, provides addressing information to the memory access unit of the processor through a control port of the first processing unit to enable the transfer of additional data between the external memory and the second processing unit via said data path. - View Dependent Claims (2, 3, 4)
-
-
5. A data processor comprising:
-
a first direct memory access (DMA) unit; a plurality of processing units each having a plurality of data ports, the data ports of adjacent processing units being coupled to each other in a mesh arrangement by point-to-point connections and programmable to allow data flow (a) from any one of the processing units directly to another without accessing memory and (b) from any one of the processing units to the DMA unit, wherein one of the processing units has a control port from which it is to send information to the DMA unit about setting up a DMA channel through which one of data to be consumed and result data by one of the processing units is transferred; and a host interface unit to receive instructions, from an external host controller, that configure the data flow between the data ports of adjacent processing units and between the data ports and the DMA unit to create a data path from one of the processing units to external memory. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A system comprising:
-
an external host controller; external memory; a data driven processor having a memory access unit to interface the external memory, a plurality of processing units each having a plurality of data ports, the data ports of adjacent processing units being coupled to each other in a mesh arrangement by point-to-point connections and programmable to allow data flow (a) from any one of the processing units directly to another without accessing memory and (b) from any one of the processing units to the memory access unit, and a host interface unit to receive instructions from the external host controller that configure the data flow between the data ports of adjacent processing units and between the data ports and the memory access unit to create a data path from one of the processing units through the mesh arrangement of data ports to the external memory, wherein one of the processing units has a control port which it uses to write data location information to the memory access unit; and one of a rechargeable battery and a fuel cell coupled to power the external memory, the external host controller, and the data driven processor. - View Dependent Claims (17, 18, 19, 20)
-
Specification