Claims
- 1. A packet switch comprising:
- a shared memory queue having M interleaved storage banks having addresses at which respective packets are stored, where M is an integer >3;
- a presentation network having N input ports for receiving packets and providing the respective packets to desired addresses in the shared memory queue, where N is an integer, the shared memory queue in communication with the presentation network for receiving the packets;
- a distribution network having J output ports, for receiving packets from the shared memory queue and providing them to the desired output ports, the distribution network in communication with the shared memory queue;
- means for simultaneously generating addresses for packets received by the presentation network such that packets received on ordered input ports by the presentation network are caused to be provided by the presentation network to consecutively ordered addresses in the shared memory queue; and
- feedback means having F.gtoreq.0 feedback channels in communication with the shared memory and the presentation network for restoring packets blocked from the distribution network.
- 2. A switch as described in claim 1 whereby M=N.
- 3. A switch as described in claim 2 wherein M=N=J.
- 4. A packet switch comprising:
- an N input port x N output port switching network, where N>3 and is an integer;
- N I/O devices, with each I/O device connected to a corresponding input port and a corresponding output port;
- N processors, each processor connected to a correspondence I/O device;
- a shared input memory comprising N interleaved memory banks, each memory bank connected to a corresponding processor and corresponding I/O device; and
- a means for simultaneously generating addresses for packets received on the input ports such that packets received on ordered input ports are caused to be provided to consecutively ordered addresses of the shared input memory.
- 5. An N port memory, where N>3, comprising:
- a global shared memory queue having M interleaved storage banks having addresses in which respective packets are stored, where M>3 and is an integer;
- a presentation network having N input ports for receiving packets and providing the respective packets to desired addresses in the shared memory queue, where N.gtoreq.3 and is an integer, the shared memory queue in communication with the presentation network for receiving the packets; and
- means for simultaneously generating addresses for packets received by the presentation network such that packets received on ordered input ports by the presentation network are caused to be provided by the presentation network to consecutively ordered addresses in the shared memory queue.
- 6. An architecture for switching packets comprising:
- A. an input queue for storing received packets at ordered addresses of a shared memory, comprising:
- i. N.gtoreq.3 input ports for receiving packets,
- ii. means for simultaneously generating unique sequentially ordered addresses for each of the received packets,
- iii. a shared memory having K interleaved banks for consecutively storing addressed packets,
- iv. a switching network for connecting the input ports to the shared memory;
- B. an output switching network for transmitting packets to their specified output port comprising:
- i. M.gtoreq.3 output ports for transmitting packets,
- ii. a switching network for connecting the output of the shared memory to the output ports,
- iii. means for directing a packet from the shared memory to its proper output port; and
- C. a feedback network for restoring at sequential addresses in the shared memory of the input queue packets blocked from the output switching network, comprising:
- i. F>0 feedback channels,
- ii. a switching network for connecting the output of the shared memory and said input,
- iii. means for simultaneously generating unique sequentially ordered addresses for each of the feedback packets, such that no null spaces exist between consecutively stored packets, where N, K, M, and F are integers.
- 7. The architecture as set forth in claim 6 wherein K.gtoreq.N.
- 8. The architecture as set forth in claim 6 wherein M.gtoreq.N.
- 9. The architecture as set forth in claim 6 wherein F.ltoreq.N.
- 10. The N port memory of claim 5 further comprising a distribution Network having N input ports for receiving packets from consecutively ordered addresses in the shared memory queue, and providing the packets to desired output ports, the shared memory queue being in communication with the distribution network for receiving the packets.
- 11. An architecture for switching packets comprising:
- A. an input queue for storing received packets at ordered addresses of a shared memory, comprising:
- i. N.gtoreq.3 input ports for receiving packets,
- ii. means for generating unique sequentially ordered addresses for each of said received packets,
- iii. a shared memory having K interleaved banks for consecutively storing addressed packets,
- iv. a switching network for connecting said input ports to said shared memory, said switching network for connecting said input ports to said shared memory being an omega network;
- B. an output switching network for transmitting packets to their specified output port comprising:
- M.gtoreq.3 output ports for transmitting packets,
- ii. a switching network for connecting the output of said shared memory to said output ports, said switching network for connecting the output of said shared memory to said output ports being an omega network,
- iii. means for directing a packet from said shared memory to its proper output port; and
- C. a feedback network for restoring at sequential addresses in said shared memory of said input queue packets blocked from said output switching network, comprising:
- i. F.gtoreq.0 feedback channels,
- ii. a switching network for connecting said output of said shared memory and said input, said switching network for connecting said output of said shared memory and said input being an omega network,
- iii. means for generating unique sequentially ordered addresses for each of the feedback packets, such that no null spaces exist between consecutively stored packets, where N, K, M, and F are integers.
- 12. An architecture for switching packets comprising:
- A. an input queue for storing received packets at ordered addresses of a shared memory, said input queue being a first-in, first-out queue, said input queue comprising:
- i. N.gtoreq.3 input ports for receiving packets,
- ii. means for generating unique sequentially ordered addresses for each of said received packets,
- iii. a shared memory having K interleaved banks for consecutively storing addressed packets,
- iv. a switching network for connecting said input ports to said shared memory;
- B. an output switching network for transmitting packets to their specified output port comprising:
- i. M.gtoreq.3 output ports for transmitting packets,
- ii. a switching network for connecting the output of said shared memory to said output ports,
- iii. means for directing a packet from said shared memory to its proper output port; and
- C. a feedback network for restoring at sequential addresses in said shared memory of said input queue packets blocked from said output switching network, comprising:
- i. F.gtoreq.0 feedback channels,
- ii. a switching network for connecting said output of said shared memory and said input,
- iii. means for generating unique sequentially ordered addresses for each of the feedback packets, such that no null spaces exist between consecutively stored packets,
- where N, K, M, and F are integers.
- 13. An architecture for switching packets comprising:
- A. an input queue for storing received packets at ordered addresses of a shared memory, comprising:
- i. N.gtoreq.3 input ports for receiving packets,
- ii. means for generating unique sequentially ordered addresses for each of said received packets, said means for generating unique sequentially ordered addresses for each received packet comprising a combining fetch-and-add circuit
- iii. a shared memory having K interleaved banks for consecutively storing addressed packets,
- iv. a switching network for connecting said input ports to said shared memory;
- B. an output switching network for transmitting packets to their specified output port comprising:
- i. M.gtoreq.3 output ports for transmitting packets,
- ii. a switching network for connecting the output of said shared memory to said output ports,
- iii. means for directing a packet from said shared memory to its proper output port; and
- C. a feedback network for restoring at sequential addresses in said shared memory of said input queue packets blocked from said output switching network, comprising:
- i. F.gtoreq.0 feedback channels,
- ii. a switching network for connecting said output of said shared memory and said input,
- iii. means for simultaneously generating unique sequentially ordered addresses for each of the feedback packets, such that no null spaces exist between consecutively stored packets,
- where N, K, M, and F are integers.
- 14. An N port memory, where N.gtoreq.3, comprising:
- a global shared memory queue having M interleaved storage banks having addresses in which respective packets are stored, wherein M.gtoreq.3 and is an integer, and wherein the shared memory queue is a first-in, first-out queue;
- a presentation network having N input ports for receiving packets and providing the respective packets to desired addresses in the shared memory queue, where N>3 and is an integer, the shared memory queue in communication with the presentation network for receiving the packets; and
- means for generating addresses for packets received by the presentation network such that packets received on ordered input ports by the presentation network are caused to be provided by the presentation network to consecutively ordered addresses in the shared memory queue.
- 15. The N port memory of claim 5 wherein the global shared memory queue is a first-in, first-out queue.
Parent Case Info
This is a continuation of copending application(s) Ser. No. 07/777,737 filed on Oct. 16, 1991, now U.S. Pat. No. 5,287,346.
US Referenced Citations (5)
Continuations (1)
|
Number |
Date |
Country |
Parent |
777737 |
Oct 1991 |
|