Processing System With Interspersed Processors With Multi-Layer Interconnection
US-2017286196-A1 · Oct 5, 2017 · US
US10747709B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10747709-B2 |
| Application number | US-201816178738-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 2, 2018 |
| Priority date | Nov 3, 2017 |
| Publication date | Aug 18, 2020 |
| Grant date | Aug 18, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A multi-processor system with processing elements, interspersed memory, and primary and secondary interconnection networks optimized for high performance and low power dissipation is disclosed. In the secondary network multiple message routing nodes are arranged in an interspersed fashion with multiple processors. A given message routing node may receive messages from other message nodes, and relay the received messages to destination message routing nodes using relative offsets included in the messages. The relative offset may specify a number of message nodes from the message node that originated a message to a destination message node.
Opening claim text (preview).
What is claimed is: 1. An apparatus, comprising: a multi-processor including a plurality of processors; and a plurality of message nodes coupled to the plurality of processors in an interspersed arrangement, wherein a particular message node of the plurality of message nodes is configured to: receive a first message that includes a payload and routing information that includes information indicative of a relative offset from the particular message node to another message node of the plurality of message nodes specified as a destination of the first message; select a different message node of the plurality of message nodes based on the routing information and operational information of the multi-processor; modify, based on the different message node, the routing information of the first message to generate a second message; and forward the second message to the different message node. 2. The apparatus of claim 1 , wherein the routing information includes information indicative of an absolute destination for the first message. 3. The apparatus of claim 1 , wherein the particular message node is further configured to: generate a plurality of third messages based in response to a determination that the first message is a broadcast message; and forward each of the plurality of third messages to a respective one of the plurality of message nodes. 4. The apparatus of claim 1 , wherein the first message includes at least a portion of the operational information. 5. The apparatus of claim 1 , wherein to select the different message node, the particular message node is further configured to retrieve a next destination from a table included in the particular message node using information included in the first message that specifies a destination. 6. A method, comprising: receiving, by a particular message node of a plurality of message nodes included in a multi-processor array, a first message that includes a payload and routing information that includes information indicative of a relative offset from the particular message node to another message node of the plurality of message nodes specified as a destination of the first message; selecting, by the particular message node, a different message node of the plurality of message nodes based on the routing information and operational information of the multi-processor array; generating, by the particular message node, a second message based the different message node; and forwarding, by the particular message node, the second message to the different message node. 7. The method of claim 6 , wherein generating the second message includes modifying the routing information of the first message to generate modified routing information that is included in the second message. 8. The method of claim 6 , wherein the routing information includes information indicative of an absolute destination for the first message. 9. The method of claim 6 , receiving, by the particular message node, a request from a processing element included in the multi-processor array, and generating, by the particular message node, a third message based on the request. 10. The method of claim 6 , further comprising: generating a plurality of third messages based in response to a determination that the first message is a broadcast message; and forwarding each of the plurality of third messages to a respective one of the plurality of message nodes. 11. The method of claim 6 , further comprising, retrieving, from a table, by the particular message node using at least part of the routing information, information indicative of a next destination for the first message. 12. An apparatus, comprising: a router circuit coupled to a message bus, wherein the router circuit is configured to receive a first message that includes a payload and routing information, wherein the routing information includes information indicative of a relative offset to a given message node of the plurality of message nodes specified as a destination of the first message; and a network processor circuit configured to: select a particular message node of a plurality of message nodes based on the routing information and operational information for a multi-processor array, wherein the message nodes included in the plurality of message nodes are coupled together via the message bus; and modify, based on the particular message node, the routing information of the first message to generate a second message; and wherein the router circuit is further configured to forward the second message to the particular message node. 13. The apparatus of claim 12 , wherein the routing information includes information indicative of an absolute destination for the first message. 14. The apparatus of claim 12 , further comprising a configuration circuit configured to store the operational information. 15. The apparatus of claim 12 , wherein the first message includes at least a portion of the operational information. 16. The apparatus of claim 12 , wherein the network processor circuit is configured to receive a request from a processing element included in the multi-processor array, and generate a third message based on the request, and wherein the router circuit is further configured to forward the third message to a different message node of the plurality of message nodes based on information included in the third message. 17. The apparatus of claim 12 , further comprising a table configured to store a plurality of entries, and wherein the network processor circuit is further configured to retrieve a next destination from the table using information included in the first message.
Routing techniques specific to parallel machines, e.g. wormhole, store and forward, shortest path problem congestion (routing on a LAN H04L45/00) · CPC title
wherein the interconnection is dynamically configurable, e.g. having loosely coupled nearest neighbor architecture (reconfigurable processors arrays G06F15/7867) · CPC title
Energy efficient computing, e.g. low power processors, power management or thermal management · CPC title
Buffers; Shared memory; Pipes · CPC title
Event management; Broadcasting; Multicasting; Notifications · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.