Method and apparatus for routing message packets
First Claim
1. A parallel processing array comprising a plurality of nodes interconnected by communications links, each node comprising:
- A. at least one processor for processing data and for generating messages for transfer to other processors in response to commands, each processor in said array being identified by an address and each message including an address portion which contains the address of the processor to receive the address; and
B. a communications node including;
i. a message injector for receiving messages from the processor for transfer to other processors;
ii. a message switch connected to said message injector and said communications links for selectively coupling messages from said message injector onto communications links connected thereto in accordance with the address to facilitate the transfer of messages with said processors in accordance with the address in the address portion of said respective messages, said message switch also receiving messages from communications links connected thereto;
iii. a message combining circuit connected to said message switch, said message combining circuit comparing addresses in address portions of messages contemporaneously received by said switch and selectively performing a combining operation in response to a positive comparison; and
iv. a message ejector for receiving messages from the switch and determining whether the address in the address portion of each message identifies the processor and coupling the message to the processor in response to a positive determination.
5 Assignments
0 Petitions
Accused Products
Abstract
A message packet router is describes that performs the functions of determining if a message packet is addressed to circuitry associated with the router, of routing message packets to their destination if possible and of storing message packets that cannot be routed on because of circuit conflicts. The router also provides additional functions of merging message packets addressed to the same destination, of saving the state of the router at each significant point in the message routing cycle, and of running the entire routing cycle backwards. This later feature makes it possible to broadcast message packets selectively to certain processors in the array.
58 Citations
5 Claims
-
1. A parallel processing array comprising a plurality of nodes interconnected by communications links, each node comprising:
-
A. at least one processor for processing data and for generating messages for transfer to other processors in response to commands, each processor in said array being identified by an address and each message including an address portion which contains the address of the processor to receive the address; and B. a communications node including; i. a message injector for receiving messages from the processor for transfer to other processors; ii. a message switch connected to said message injector and said communications links for selectively coupling messages from said message injector onto communications links connected thereto in accordance with the address to facilitate the transfer of messages with said processors in accordance with the address in the address portion of said respective messages, said message switch also receiving messages from communications links connected thereto; iii. a message combining circuit connected to said message switch, said message combining circuit comparing addresses in address portions of messages contemporaneously received by said switch and selectively performing a combining operation in response to a positive comparison; and iv. a message ejector for receiving messages from the switch and determining whether the address in the address portion of each message identifies the processor and coupling the message to the processor in response to a positive determination. - View Dependent Claims (2, 3, 4)
-
-
5. A parallel processing array comprising a plurality of nodes interconnected by communications links, each node comprising:
-
A. at least one processor for processing data and for generating messages for transfer to other processors in response to commands, each processor in said array being identified by an address and each message including an address portion which contains the address of the processor to receive the address; and B. a communications node including; i. a message switch for selectively transmitting and receiving messages over said communications links in accordance with the respective address in the address portion of said respective messages to facilitate the transfer of messages among said processors; and ii. a message combining circuit connected to said message switch, said message combining circuit comparing addresses in address portions of messages contemporaneously received by said message switch and selectively performing a combining operation in response to a positive comparison.
-
Specification