Claims
- 1. A method of communicating data formed into multiple-packet messages through a network to an output port comprising:
communicating requests for sending the data to the output port via unscheduled or unmanaged transmission; and delivering data to the output port in response to the requests via scheduled or managed transmission.
- 2. The method according to claim 1 further comprising:
communicating the multiple packets of the message in an uninterrupted sequence.
- 3. The method according to claim 1 further comprising:
communicating the multiple packets of the message in an uninterrupted sequence.
- 4. A communication apparatus comprising:
a controlled switch capable of communicating scheduled messages and interfacing to a plurality of devices; and an uncontrolled switch capable of communicating unscheduled messages and interfacing to the plurality of devices, the uncontrolled switch generating signals that schedule the messages in the controlled switch.
- 5. The apparatus according to claim 4 further comprising:
a device multiply-connected to switches including the controlled switch and the uncontrolled switch.
- 6. The apparatus according to claim 4 further comprising:
a device comprising a plurality of input/output ports coupled to the controlled switch and the uncontrolled switch, the controlled switch and uncontrolled switch being capable of targeting a message to a specific port of the plurality of ports.
- 7. The apparatus according to claim 4 further comprising:
a device comprising a plurality of input/output ports coupled to the controlled switch and the uncontrolled switch, the controlled switch and uncontrolled switch being capable of targeting and time multiplexing messages from a plurality of sources to a specific port of the plurality of ports.
- 8. The apparatus according to claim 4 further comprising:
a device comprising a plurality of input/output ports coupled to the controlled switch and the uncontrolled switch, the controlled switch and uncontrolled switch being capable of communicating messages just-in-time to the specific targeted port.
- 9. The apparatus according to claim 4 further comprising:
a device coupled to the controlled switch and the uncontrolled switch and having a logic that enforces quality-of-service priority of messages.
- 10. The apparatus according to claim 4 further comprising:
a plurality of devices coupled to the controlled switch and the uncontrolled switch including:
a requesting device having a plurality of input ports including a selected first input port and a selected second input port; a first sending device specified by the requesting device and requested to send a plurality of message packets to the first input port when the transfer is possible; and a second sending device specified by the requesting device and requested to send a plurality of message packets to the second input port when the transfer is possible, the requesting device holding open the first and second input ports until the transfer is complete.
- 11. The apparatus according to claim 4 further comprising:
a plurality of devices coupled to the controlled switch and the uncontrolled switch including:
a requesting device having a plurality of input ports including a selected input port; a first sending device specified by the requesting device and requested to send a plurality of message packets to the input port; and a second sending device specified by the requesting device and requested to send a plurality of message packets to the input port, the requesting device controlling timing of sending of message packets from the first and second sending devices whereby the message packets are interleaved.
- 12. The apparatus according to claim 4 further comprising:
a plurality of devices coupled to the controlled switch and the uncontrolled switch including:
a requesting device having a plurality of input ports including a selected first input port and a selected second input port; a first sending device specified by the requesting device and requested to send a plurality of message packets to the first input port; a second sending device specified by the requesting device and requested to send a plurality of message packets to the second input port; and a receiving device specified by the requesting device, the requesting device synchronizing transmission of first and second packet streams by the first and second sending devices respectively to the first and second input ports, performing a function, packet by packet, on packets from the first and second packet streams, and transferring a function result stream to the receiving device.
- 13. The apparatus according to claim 4 further comprising:
a plurality of devices coupled to the controlled switch and the uncontrolled switch including:
a requesting device; a plurality of processing devices; a plurality of sending devices specified by the requesting device and requested to send a plurality of message packets to processing devices specified by the requesting device; a receiving device specified by the requesting device, the requesting device synchronizing transmission of multiple packet streams by the specified sending devices respectively to the specified processing devices for performance of a packet-by-packet function on the multiple packet streams, and transferring a function result stream to the receiving device.
- 14. The apparatus according to claim 4 further comprising:
a plurality of devices coupled to the controlled switch and the uncontrolled switch including:
a requesting device having a plurality of input ports; and a plurality of sending devices specified by the requesting device and requested to send multiple message packets to specified ones of the plurality of input ports, the requesting device synchronizing transmission of a plurality of packet streams by the specified sending devices respectively to the specified input ports by sending request packets identifying available times to begin transmission, receiving an acknowledgement from the specified sending devices identifying transmission times acceptable to the sending devices, and sending a confirmation packet identifying a scheduled transmission time.
- 15. The apparatus according to claim 4 further comprising:
a plurality of devices coupled to the controlled switch and the uncontrolled switch, the plurality of devices including at least one device type in a group consisting of computation devices, data storage devices, combined computation and storage devices, interface devices, routers, bridges, communication gateways, Internet Protocol (IP) portals, local area networks, wide area networks, other networks, and interconnect devices.
- 16. The apparatus according to claim 4 wherein:
the controlled switch and the uncontrolled switch are capable of operating in combination to simultaneously stream messages into first specified input ports of a first selected device from second specified output ports of a second selected device.
- 17. The apparatus according to claim 4 wherein:
the controlled switch and the uncontrolled switch are capable of operating in combination to continuously stream multiple message packets into specified input port until an entire communication request is complete.
- 18. The apparatus according to claim 4 further comprising:
a processing-in-memory module coupled to the controlled switch and the uncontrolled switch that manages data delivery through a plurality of data paths.
- 19. The apparatus according to claim 4 wherein:
the uncontrolled switch is a flat latency switch and the controlled switch is a stair-step configuration flat latency switch.
- 20. The apparatus according to claim 4 wherein:
a device coupled to the uncontrolled switch can send a message packet into the uncontrolled switch at any message sending time; and a device coupled to the controlled switch can insert messages into the controlled switch only at scheduled times.
- 21. A system comprising:
a plurality of devices; a controlled switch interfaced to the plurality of devices and capable of communicating scheduled messages to selected ones of the devices; and an uncontrolled switch interfaced to the plurality of devices and capable of communicating unscheduled messages to selected ones of the devices, the uncontrolled switch generating signals that schedule the messages in the controlled switch.
- 22. The system according to claim 21 wherein:
the plurality of devices include at least one device type in a group consisting of computation devices, data storage devices, combined computation and storage devices, interface devices, routers, bridges, communication gateways, Internet Protocol (IP) portals, local area networks, wide area networks, other networks, and interconnect devices.
- 23. The system according to claim 21 further comprising:
an auxiliary switch coupled between the controlled switch and the plurality of devices.
- 24. The system according to claim 21 further comprising:
at least one control line coupled from a device of the device plurality to the uncontrolled switch, the at least one control line for carrying a signal that can block a message from entering the uncontrolled switch in a message conflict condition.
- 25. The system according to claim 21 further comprising:
at least one control line coupled from the uncontrolled switch to a device of the device plurality, the at least one control line for carrying a signal that can control information flow to the device.
- 26. The system according to claim 21 wherein:
a device of the device plurality controls message traffic through the controlled switch by sending request packets through the uncontrolled switch.
- 27. The system according to claim 21 further comprising:
a compiler coupled to the controlled switch capable of scheduling message traffic through the controlled switch.
- 28. The system according to claim 21 further comprising:
a device of the device plurality that controls message traffic through a first portion of the controlled switch by sending request packets through the uncontrolled switch; and a compiler coupled to the controlled switch capable of scheduling message traffic through a second portion of the controlled switch.
- 29. The system according to claim 21 wherein the auxiliary switch further comprises:
at least one cross-bar switch; a plurality of logic elements coupled to ones of the at least one cross-bar switch and capable of setting cross points; and a plurality of delay first-in-first-out (FIFO) buffers coupled between the logic elements and cross-bar switches, the FIFO buffers being capable of synchronizing timing of message segments to the cross-bar switches.
- 30. The system according to claim 21 wherein:
the auxiliary switch further comprises:
at least one cross-bar switch; a plurality of output lines from ones of the at least one cross-bar switch to at least one device; a plurality of logic elements coupled to ones of the at least one cross-bar switch and capable of setting cross points; a plurality of input lines from the controlled switch to the corresponding plurality of logic elements; and a plurality of delay first-in-first-out (FIFO) buffers coupled between the logic elements and cross-bar switches, the FIFO buffers being capable of synchronizing timing of message segments to the cross-bar switches; and the number of input lines is greater than the number of output lines.
- 31. The system according to claim 21 further comprising:
an auxiliary switch coupled between the controlled switch and the device plurality; and a plurality of controlled switches interfaced between the device plurality and the auxiliary switch.
- 32. The system according to claim 21 further comprising:
an auxiliary switch coupled between the controlled switch and the plurality of devices; a plurality of controlled switches interfaced between the device plurality and the auxiliary switch; a requesting device of the device plurality having a plurality of input ports; and a sending device of the device plurality, the requesting device specifying an input port of the input port plurality to receive a message packet and the sending device specifying the controlled switch of the controlled switch plurality for carrying the message packet.
- 33. The system according to claim 21 further comprising:
a plurality of uncontrolled switches interfaced to the device plurality.
- 34. The system according to claim 21 wherein the plurality of devices include:
a requesting device having a plurality of input ports; and at least one sending device specified by the requesting device and requested to send multiple message packets to the requesting device, the requesting device sending a request packet through the uncontrolled switch to the at least one sending device, the request packet initiating scheduling of data transmission from the at least one sending device to the requesting device through the controlled switch.
- 35. The system according to claim 34 wherein:
the requesting device and the at least one specified sending device arrange a time interval when the at least one sending device can transmit the data and the requesting device can receive the data, the time interval accommodating sufficient bandwidth through the controlled switch to transmit the data.
- 36. The system according to claim 34 wherein:
the requesting device sends a request packet to the at least one sending device identifying data to be transmitted and time intervals during which the requesting device can receive the data.
- 37. The system according to claim 21 wherein the uncontrolled switch comprises:
a plurality of input switches coupled to a plurality of input lines from the plurality of devices; a plurality of output switches coupled to a plurality of output lines to the plurality of devices; and a plurality of logic units selectively coupled between ones of the plurality of input switches and ones of the plurality of output switches.
- 38. The system according to claim 37 wherein:
a logic unit of the logic unit plurality tracks future availability of all data lines in the uncontrolled switch that pass through the logic unit, enabling selection among zero or more intervals during which the data lines are available and devices are available for sending and receiving data; the logic unit optionally modifies timing selection packets according to the selected intervals; and the logic unit communicates the optionally modified timing selection packets between the devices available for sending and receiving data, or alternatively communicates a rejection packet in a condition that no timing interval is available.
- 39. The system according to claim 38 wherein:
the logic unit can selectively transmit the data to an alternative device in a condition that no timing interval is available.
RELATED PATENT AND PATENT APPLICATIONS
[0001] The disclosed system and operating method are related to subject matter disclosed in the following patents and patent applications that are incorporated by reference herein in their entirety:
[0002] 1. U.S. Pat. No. 5,996,020 entitled, “A Multiple Level Minimum Logic Network”, naming Coke S. Reed as inventor;
[0003] 2. U.S. Pat. No. 6,289,021 entitled, “A Scaleable Low Latency Switch for Usage in an Interconnect Structure”, naming John Hesse as inventor;
[0004] 3. U.S. patent application Ser. No. 09/693,359 entitled, “Multiple Path Wormhole Interconnect”, naming John Hesse as inventor;
[0005] 4. U.S. patent application Ser. No. 09/693,357 entitled, “Scalable Wormhole-Routing Concentrator”, naming John Hesse and Coke Reed as inventors;
[0006] 5. U.S. patent application Ser. No. 09/693,603 entitled, “Scaleable Interconnect Structure for Parallel Computing and Parallel Memory Access”, naming John Hesse and Coke Reed as inventors;
[0007] 6. U.S. patent application Ser. No. 09/693,358 entitled, “Scalable Interconnect Structure Utilizing Quality-Of-Service Handling”, naming Coke Reed and John Hesse as inventors;
[0008] 7. U.S. patent application Ser. No. 09/692,073 entitled, “Scalable Method and Apparatus for Increasing Throughput in Multiple Level Minimum Logic Networks Using a Plurality of Control Lines”, naming Coke Reed and John Hesse as inventors;
[0009] 8. U.S. patent application Ser. No. 09/919,462 entitled, “Means and Apparatus for a Scaleable Congestion Free Switching System with Intelligent Control”, naming John Hesse and Coke Reed as inventors;
[0010] 9. U.S. patent application Ser. No. 10/123,382 entitled, “A Controlled Shared Memory Smart Switch System”, naming Coke S. Reed and David Murphy as inventors.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60454172 |
Mar 2003 |
US |
|
60461548 |
Apr 2003 |
US |