CA2040380A1 - Data element switch - Google Patents
Data element switchInfo
- Publication number
- CA2040380A1 CA2040380A1 CA002040380A CA2040380A CA2040380A1 CA 2040380 A1 CA2040380 A1 CA 2040380A1 CA 002040380 A CA002040380 A CA 002040380A CA 2040380 A CA2040380 A CA 2040380A CA 2040380 A1 CA2040380 A1 CA 2040380A1
- Authority
- CA
- Canada
- Prior art keywords
- cell
- switch
- central
- data
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K17/00—Electronic switching or gating, i.e. not by contact-making and –breaking
-
- G—PHYSICS
- G02—OPTICS
- G02F—OPTICAL DEVICES OR ARRANGEMENTS FOR THE CONTROL OF LIGHT BY MODIFICATION OF THE OPTICAL PROPERTIES OF THE MEDIA OF THE ELEMENTS INVOLVED THEREIN; NON-LINEAR OPTICS; FREQUENCY-CHANGING OF LIGHT; OPTICAL LOGIC ELEMENTS; OPTICAL ANALOGUE/DIGITAL CONVERTERS
- G02F1/00—Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics
- G02F1/29—Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics for the control of the position or the direction of light beams, i.e. deflection
- G02F1/295—Analog deflection from or in an optical waveguide structure]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/15—Interconnection of switching modules
- H04L49/1515—Non-blocking multistage, e.g. Clos
- H04L49/153—ATM switching fabrics having parallel switch planes
- H04L49/1538—Cell slicing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/15—Interconnection of switching modules
- H04L49/1553—Interconnection of ATM switching modules, e.g. ATM switching fabrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/253—Routing or path finding in a switch fabric using establishment or release of connections between ports
- H04L49/255—Control mechanisms for ATM switching fabrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5638—Services, e.g. multimedia, GOS, QOS
- H04L2012/5646—Cell characteristics, e.g. loss, delay, jitter, sequence integrity
- H04L2012/5647—Cell loss
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5638—Services, e.g. multimedia, GOS, QOS
- H04L2012/5646—Cell characteristics, e.g. loss, delay, jitter, sequence integrity
- H04L2012/565—Sequence integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5672—Multiplexing, e.g. coding, scrambling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5681—Buffer or queue management
Abstract
ABSTRACT
DATA ELEMENT SWITCH
The invention concerns an Asynchronous Transfer Mode Switch having a plurality of input stages (ISl ... ISN) each for receiving a digital data transmission stream (DSl ...256) consisting of a series of cells and wherein each input stage of the switch includes a circuit (52) for determining the destination of the cells of that data stream, and a circuit (63) for disassembling each cell into cell elements and for allocating to each cell element routing data to enable it to be routed across the central stages.
DATA ELEMENT SWITCH
The invention concerns an Asynchronous Transfer Mode Switch having a plurality of input stages (ISl ... ISN) each for receiving a digital data transmission stream (DSl ...256) consisting of a series of cells and wherein each input stage of the switch includes a circuit (52) for determining the destination of the cells of that data stream, and a circuit (63) for disassembling each cell into cell elements and for allocating to each cell element routing data to enable it to be routed across the central stages.
Description
~0403~30 GPT/3909 c~
DATA LEMENT SWITCH
The present invention concerns Switches for switching digital data and is particularly, though not exclusively, concerned with Asynchronous Transfer Mode Switches. Such switches will hereinafter be referred to as ATM switches.
ATM switches are used in digital data transmission systems to receive multiplexed data streams and to distribute the incoming data streams to requisite output ports. Frequently ATM switches are used for carrying out packet switching. In a packet switching system each incoming data stream consists of a sequence of what are known as cells, each cell for example consisting of 48 bytes of data and a header containing control data from which the destination of the cell can be determined. Typically for a 48 byte cell the headers will be 5 bytes long. However, neither the cell nor the header length are of fundamental importance to the basic principles of the operation of ATM switches.
As the rate of data transmission and the volume of digital traffic to be handled by digital transmission systems is continually increasing the problems of switching data streams becomes increasingly complex.
The basic functions of known ATM switches can be broken down into three main components:
Firstly the switch comprises a header decoder unit on each port which translates the incoming circuit indentity into an outgoing circuit indentity and port number. This unit is also able to police the utilisation of a particular circuit against its negotiated traffic level limits and where necessary discard cells in order to avoid overloading the switch which could impact on other traffice being carried.
The second function is to transfer data elements from the incoming ports to the outgoing ports according to the physical port routing information derived by the header decoder unit. This is essentially a spatial routing function.
The third function is to statistically multiplex the data elements transferred across the routing function onto the designated outgoing port traffic stream. Due to the peaks in traffic which exceed the capacity of the outgoing stream it will be necessary to queue some of the data elements. This outgoing multiplexing and queuing function may be likened to the operation of a time switch in synchronous circuit switching but does not obey a predefined cyclic allocation of virtual circuits in the time domain.
Existing designs of switches implement the routing and queuing functions in a number of different ways. Thus the routing function may either be implemented by a spatial routing network similar to that of circuit switch network, or use may be made of the time domain on buses or rings. However for large switches the single point interchange media of a time multiplexed bus soon exceeds practical bandwith limits.
The queuing function may also be implemented in several ways. The most direct method is to have a dedicated FIFO type store for each output port. In practice the spatia1 routing function and the output queuing element cannot cope with simultaneous transfers from a large number of input ports and the output queue is reflected back onto the input ports. It is also possible to queue within the spatial routing function, particularly where it is making use of the time domain to achieve its switching operation.
20~0380 Unless the routing function is able to simultaneously carry the full load of the switch to one output, then some form of contention resolving mechanism is required or intermediate gueues have to be provided. Generally ATM switches only permit virtual circuits to be routed one way internally in order to maintain sequence integrity of the cells. Similarly at the network level there is a fixed routing of cells.
The present invention is concerned with providing a data switch which is capable of handling a substantial number of input data streams and yet which uses currently available technology.
Accordingly the present invention comprises an Asynchronous Transfer Mode Switch having a plurality of input stages each for receiving a digital data transmission stream consisting of a series of cells, a cell comprising data and a header containing control data from which the destination of the cell can be determined, a plurality of central stages connected to the input stages to receive the data from the input stages to be switched across the switch, and a plurality of output stages each connected to the central stages, and wherein for every input stage there is a route to every central stage for the transmission of data, and from every central stage there is a route to every output stage, and wherein each input stage includes a circuit for determining the destination of the cells of that data stream, a circuit for disassembling each cell into cell elements and for allocating to each cell element routing data to enable it to be routed across the central stages, means for storing the cell elements in series, means for requesting from a central stage permission to transmit a cell element in the series and after a predetermined delay a further request for the same destination point provided that the stored cell elements are derived from the same cell, means for receiv~ng a response from the central stage as to the availability of the requested destination between the sending of requests so that the sequence of sending a request ~or one cell element is interleaved with the response to the request for the preceding cell element, and means for transmitting each cell element to the central stage after a second predetermined delay from the receipt of a positive request.
Z0403~30 In order that the present invention may be more readily understood an embodiment will now be described by way of example and with reference to the accompanying drawings, in which:-Figure 1 is a schematic diagram of a general embodiment ofa switch according to the present invention, Figure 2 is a block diagram sho~ ng a very simplified ATM
switch according to the present invention, Figure 3 is a diagram shohnng a sequence of flow control and data transfer in the switch of Figure 2, Figure 4 is a block diagram of the receive and transmit outer stages of the switch, and Figure 5 is a timing diagram showing timing sequences in the operation of the ATM shntch.
Figure 6 is a timing diagram showing how routing data within the switch can be derived, Figure 7 is a block diagram of a central stage, Figure 8 is a figure illustrating the operation of the central stage cyclic timing operation, and Figure 9 is an elaboration of Figure 7.
Referring now to Figure 1 of the drawings this shows a single input port and associated switch 10 of an ATM switch constructed in accordance with the present invention. The port 10 is connectable to a set of central switches 20 in turn connectable to an output port 30. The input port is part of a set of similar input ports. Each input port receives a data stream which consists of a sequence of multi-byte cells, each cell having a header from which the destination of the cell can be derived. The cells are typically 48 octets of information plus 5 octets of header. When a cell and its header is received by an input port the switch associated with that port distributes elements of the cells sequentially over a number of outputs. Each output of each input port 10 is connected to a DMR circuit. These circuits are not shown in this figure.
Basically DMR stands for Demultiplex - Mix - Remultiplex and a DMR circuit is a fixed space switching device which has N
inputs, N time intervals and N outputs and operates cyclically so that each input goes to each output for l/Nth of the time. As the DMR stages have a simple space switching function for serial streams they do not add-any delay to the switching time.
Each of the input DMR circuit in turn has its N outputs connected to an equivalent number of different central switches 20 which forms the central stage of the ATM switch. Each central switch has the same number of inputs as each outer switch and DMR
circuit has outputs. It also has the same number of outputs each of which is connected to a DMR circuit similar to the input DMR
circuits. In fact the complete ATM switch is effectively symmetrical about the central stage 20 as the output DMR circuits are each in turn connected to N output switches and associated ports.
In the format being described there are equal numbers of input switches, input DMR circuits, central switches, output DMR
circuits and output switches. Thus in a symmetrical ATM of the kind being described there will be X input switches, X central switches, 2X DMR circuits and X output switches with X being an integer multiple of N.
The result of this sy~metrical arrangement is that each input port 10 has access to all of the central switches 20 for a period or window depending on the internal parameters of the complete ATM switch. Furthermore for any cell arriving at an input port and subsequently disassembled into the cell elements there are a possible X routes across the switch to its intended output port.
In the present embodiment there are 256 input ports and 256 output ports with N = 16. The incoming data streams are at 155 M-bits per second and the internal circuitry of the switch such that the DMR stages and central shntches run at a logical rate of 40 M bits per second. In the described embodiment this is achieved by two parallel 20 megabits per second streams. As the DMR stages have a 16 unit cycle this gives an internal frame cycle of 16 so that over every 16 internal frame cycles each of the 256 input ports 10 is connected to each of the 256 central switches for a period sufficient for it to pass a single data element of an incoming data stream. For example each data element can consist of 5 bytes of data plus control data.
20403~30 The central switches 20 each have 16 outputs which are connected to 16 individual DMR output circuits. These output DMR
circuits are identical in structure and operation to the input DMR
circuits and each DMR output circuit is connected to 16 output ports 30. Thus any cell in any data stream input at an input port has a possibility of 256 routes to its possible destination. Also there are no problems of sequencing the data elements as they will always arrive at the output side of the switch in the same order as they arrived at the input side.
This sequencing is one result of the constant central stage delay for a data element transmitted across the switch and is an important factor.
The embodiment shown in Figure 2 is a more detailed view of an ATM switch of the kind shown in Figure 1.
In Figure 2 the input data streams are shown at 40 and as already described there are 256 streams of which two, DSl and DS256 are shown. Each stream is supplied to an appropriate input stage ISl to IS256. From these stages the data streams are fanned out to a central stage 41. The central stage comprises 16 Central Super planes SPl.. SP16 of which three are shown. All the central stage super planes operate in the same fashion. At the input parts of the input stages each incoming data cell is divided into 11 sub cells or cell elements each containing 40 bits of information plus a four bit identifier. Since only 53 octets are required for an individual cell there are two spare octets which can be used for internal checking information. To permit the passing of flow control information between stages 20 bits of data is added to the 44 bit cell elements making a total length of 64 bits for each packet.
The reception of the data streams and their disassembly into cell elements will be described in greater detail hereinafter.
As can be seen from Figure 2 each Input Stage ISl ...
IS256 is connected to each of the central super planes SPl ... SP16 so that each super p1ane itself receives 256 inputs. These inputs are distributed over a first array of 16-by-16 rotator or DMR circuits 43 with each DMR circuit 43 being connected to one of 16 centra1 elements 44. The central elements 44 in turn each give one output to an individual one of 16 output or DMR circuits 45.
20403~
The output DMR circuits 44 each give one of their 16 inputs to one of 256 output stages OSl ... OS256. As can be seen from Figure 2 the incoming and outgoing data streams are at 155 Mbit/s and the internal connections run at a logical rate of 40 Mbit/s.
Referring now to Figure 3 of the drawings this summarises the sequence of flow control and data transfer between the three stages of the ATM switch described in Figure 2. For each cell element, a request is made to a central switch. If this responds positively, the data is sent. Some time later the data is sent on to the output stage. If the response is negative, then the input stage will try another central stage.
From the foregoing it will be appreciated that the cell elements form a particular cell which will arrive at the outer stage of the switch in their correct sequence. However there will be no specific pattern as to the element receivers at which they are received nor in relation to cells from any other input port.
From the preceding description of the input, central switch and output stages it might also appear that cell sequence integrity would be lost when different central stage elements are used to transfer the cells on one virtual circuit. This is prevented by rotating the input and output central stage access times in step so that for any cell input into the switch there is a constant storage delay in the central stage. Different input to output port connection combinations will have different fixed delays across the routing function over the range of zero to the full central stage access time.
Figure 4 of the drawings shows an individual input stage.
An input data stream consisting of sequential data cells as defined each having an associated header is received at 50 with a suitable line termination 51. The received signal is passed to a header translation circuit 52 which under the control of a suitable processor translates the cell headers so that their destinations can be determined.
The header translation circuit takes the cell header and derives in a known manner, for example by appropriate look-up tables, the routing information for the cell. The header translation circuit 52 also generates the new header for onward transmission in the network. The output from the header ~40380 translation circuit 52 is supplied to a cell disassembly circuit 63 which divides the 53 octets originally received into 11 data elements each of 5 octets, there thus being 2 octets spare, as already described. This division is carried out in such a manner that each data element contains a portion of the original cell and information which enables the data elements to be reassembled as a cell after transmission across the switch. As soon as the header has been translated the transfer of the cell elements, and thus the cell, across the switch can be started before the entire cell has been received at the line termination.
As already mentioned each cell element has a multiplicity of potential routes available to it across the switch. However when the switch is actually handling a load some of the routes will inevitably be occupied by cell elements of data from other input stages. In order to be able to determine a route through the switch the data elements generated by the cell disassembly circuit 63 are sent to a data or cell element queue 54. This element queue 54 stores in parallel successive cell elements and is connected to 16 parallel element sender circuits 55. The element senders 55 operate in parallel and each has an operational cycle of 64 bits. The operational cycles are staggered in 4 bit steps as will be described hereinafter.
The element senders 55 operate under the control of a path finder control circuit 56 which examines the routing information carried by each cell element and sends requests to the central switch for a number of data elements stored in each cell element queue. In this embodiment the number in two and because of the previous "fanning out" of the incoming data streams any two adjacent cell elements in a cell element queue will almost certainly be from different data cells. It will be appreciated that the data elements of a single cell will be sequential but there is no specifis order for cell elements for different destinations.
The operation of the path finder control circuit can best be appreciated by referring to Figures 5 and 6. Figure 5 shows the basic concept of the operation of the path finder contro1 circuit.
Thus the path finder control circuit 56 sends a series of spaced requests to the central stage, each request being for a z~o~
window for a cell element in the element queue. These requests are shown at 101, 102 and 103. 101 is for a request for a window which has been labelled 2. At 104 the path finder control circuit 56 sends the cell element for a previously requested and accepted address which has been labelled window 1.. If it happens that the element queue no longer has the data it will send a no-data indication to the control stage. The requests 101, 102, 103 are split to provide time for data to be received from the central stage validating a previous request. Thus the sequence of request and response for a particular window is interleaved with similar sequences for other windows.
Figures 6A and B show requests in greater detail. In Figure SA the section headed "requests" contains two 8-bit addresses ADl, AD2 for window 2 shown in Figure 5 plus some control information ST (4 bits). In the subsequent 64 bit gap the data for the previously requested window is sent and the request for window 3. This is followed by the port number and a cell element which will be sent to either address ADl or AD2 in response to the data from the central stage received in the gap indicating availability of one of the requested addresses.
Figure 6B shows the response of the central stage. Thus "ANS" is the answer to a request, "ADR" is where the part comes from, "part" is the part number of the cel1 element. The area marked 118 corresponds to the cell element originally formed by the cell disassembly circuit and area 111 contains 10 spare bits.
Associated with the input stages are an equal number of output stages. One such output stage is also shown in Figure 4.
Thus each output stage has 16 element receivers 200 each corresponding to one of the element senders of the input stages.
Each element receiver is connected to a circuit 201 which checks the received elements, extracts their addresses and generates the relevant control information to re-assemble the cell element in a cell re-assembly circuit 203. The re-assembled cells are supplied first to a Cell FIFO circuit 204 and then to a line transmission circuit 205 for onward transmission.
The centre stage through which the cell elements are sorted is shown in Figure 7. This centre stage comprises an input DMR circuit 300 and 16 receiver circuits 301~ 16 sender circuits 20403~30 302, a buffer 303 for storing one sub cell or cell element per outer stage, a circuit 304 for answering space questions sent by the input stages and an output DMR circuit 305.
In the switsh structure just described it would be possible to operate all the super planes in phase with one another.
However this would require an input queue to be able to simultaneously launch flow control interrogation messages to all 16 super planes. Staggering the timing progressively by 4 bit periods at the logical rate of 40 Mbit/s between the super planes evens out the operation. Within the super planes a similar timing clash could occur at the central elements. This is avoided by having a 4 bit stagger in timing between the DMR circuits. Each DMR device has alignment on its 16 inputs and outputs. Because the central elements each terminate one line from each DMR, they will have a 4 bit stagger on the inputs. There will be a mirror imaging reflection of this staggering in the DMR's on the output side.
The timing principles of the central stage buffering are shown in Figure 8 which is not a physical representation but rather a logical one. Figure 8 can be interpreted in the following way:-For one output port for example OP 241 its designatedstorage in the central stages appears like a large rotating buffer constantly feeding it cell elements. When a cell element arrives at an input port for example lP 197 it will be fitted into the next central buffer space available as the notional wheel rotates. When the buffer goes past the output, the cell is taken out and it joins the ouput queue for that port. The central buffers rotate faster than necessary, so that peaks in capacity get routed across to the output keeping the input queues small. The central stage buffering for a particular output port is referred to as a "water wheel"
model. It is simple to see why a cell takes a fixed time to go from an input to an output, as the "wheel" rotates.
Figure 8 attempts to illustrate the complete central stage cyclic timing operation on a "turbine" model diagram. Each layer of the "turbine" represents the access to the central elements on a super plane, which may be considered as a mini "water wheel" in its own right, as shown in Figure 9. Successive layers show the 4 bit stagger by d small rotation of the "water wheels".
Referring again to Figure 4, it has already been described 2040;~'30 that when a cell is received the header is translated and then dis-assembled cell elements placed in an input queue. Every 4 clock cycles or 0.1 microseconds a 64 bit communication window with a central switch element will start. The as discussed controller sends up to two addresses and some status information to a central stage element, in the 20 bit control field. The addresses indicate to the controller in the central elements the output port destinations for which there are sub-cells queued. transfer. The central stage as shown in Figure 7, will indicate which of the requested addresses it has space for. The output port buffer will be automatically reserved as part of the process of returning a positive acknowledgement to the input controller. When a positive response is received by the input stage, it sends the next sub-cell queued for the requested address, along with information identifying which part of the cell it is. When the sub-cell reaches the central stage it is stored until it can be transferred to the appropriate output stage. At this point the central element controller will be able to release the output port buffer for further use.
To allow for the real delays in passing information from one stage to the next and to permit suitable processing to be performed, the input stage requests have to be sent in advance of sending the sub-cell data. In order to avoid wasting inter-stage data transfer capacity, the request information is sent one window period in advance as shown in Figures 5 and 6. This results in the 64 bit response time for sending data. However, the input stage controller is able to operate on a shorter turn round time for determining requests to other central stage elements, because the response is returned within about 16 bit periods.
As there is no need for flow contro1 messages from the central stage to the output stage, there is spare bandwidth available which is used for returning the responses to the input stage request messages. This requires an association to be established between input and output stage elements, which naturally occurs on a switch handling duplex connections.
In principle an input stage could have cells queued for many output ports and ideally would need to send mnre than two addresses to the central elements. Sending more addresses would 20403~0 occupy more of the bandwith available for transfer to the central stages and can reduce the overall efficiency of the system.
Simulation modelling has shown that two addresses per transfer window gives the best overall performance. With fully random traffic at moderate loads one address would give a marginal improvement, but performs badly with some forms of bursty traffic.
The design just described has a number of advantages over prior proposals. The disassembly of the incoming data cells into cell elements allows minimal delay variation and all loss, and in fact delay variation approaches the ideal. The switch operates as a theoretically ideal switch but with a small added delay which is nevertheless fixed. Additionally the switch does not require internal pre-assigned routing of cells.
The only real delay variability experienced by this switch, as described, is that inherent in usng ATM as a multiplex structure. Furthermore the delay performance of this switch is very good when compared with many other designs. Although they often have less delay at low loads; at high loads, their internal queuing between switch stages results in greater delays.
Cell losses are only encountered when the output queue overflows, this queue can be dimensioned to meet the required performance for delay and loss characteristics. Although it is technically possible for losses to occur at the input queue, these are extremely unlikely.
Perhaps the greatest merit of the switch is its operation during overload of an output port. Traffic destined for other output ports which are not overloaded can still get carried through the switch with minimal impact on delay.
The synchronous internal operation makes maintenance of the switch easy, since it removes uncertainty in the time domain.
The delay variation and cell loss caused by the design approaches the theoretical minimum. In this respect, the sysnchronous ATM switch behaves as a single stage switch.
DATA LEMENT SWITCH
The present invention concerns Switches for switching digital data and is particularly, though not exclusively, concerned with Asynchronous Transfer Mode Switches. Such switches will hereinafter be referred to as ATM switches.
ATM switches are used in digital data transmission systems to receive multiplexed data streams and to distribute the incoming data streams to requisite output ports. Frequently ATM switches are used for carrying out packet switching. In a packet switching system each incoming data stream consists of a sequence of what are known as cells, each cell for example consisting of 48 bytes of data and a header containing control data from which the destination of the cell can be determined. Typically for a 48 byte cell the headers will be 5 bytes long. However, neither the cell nor the header length are of fundamental importance to the basic principles of the operation of ATM switches.
As the rate of data transmission and the volume of digital traffic to be handled by digital transmission systems is continually increasing the problems of switching data streams becomes increasingly complex.
The basic functions of known ATM switches can be broken down into three main components:
Firstly the switch comprises a header decoder unit on each port which translates the incoming circuit indentity into an outgoing circuit indentity and port number. This unit is also able to police the utilisation of a particular circuit against its negotiated traffic level limits and where necessary discard cells in order to avoid overloading the switch which could impact on other traffice being carried.
The second function is to transfer data elements from the incoming ports to the outgoing ports according to the physical port routing information derived by the header decoder unit. This is essentially a spatial routing function.
The third function is to statistically multiplex the data elements transferred across the routing function onto the designated outgoing port traffic stream. Due to the peaks in traffic which exceed the capacity of the outgoing stream it will be necessary to queue some of the data elements. This outgoing multiplexing and queuing function may be likened to the operation of a time switch in synchronous circuit switching but does not obey a predefined cyclic allocation of virtual circuits in the time domain.
Existing designs of switches implement the routing and queuing functions in a number of different ways. Thus the routing function may either be implemented by a spatial routing network similar to that of circuit switch network, or use may be made of the time domain on buses or rings. However for large switches the single point interchange media of a time multiplexed bus soon exceeds practical bandwith limits.
The queuing function may also be implemented in several ways. The most direct method is to have a dedicated FIFO type store for each output port. In practice the spatia1 routing function and the output queuing element cannot cope with simultaneous transfers from a large number of input ports and the output queue is reflected back onto the input ports. It is also possible to queue within the spatial routing function, particularly where it is making use of the time domain to achieve its switching operation.
20~0380 Unless the routing function is able to simultaneously carry the full load of the switch to one output, then some form of contention resolving mechanism is required or intermediate gueues have to be provided. Generally ATM switches only permit virtual circuits to be routed one way internally in order to maintain sequence integrity of the cells. Similarly at the network level there is a fixed routing of cells.
The present invention is concerned with providing a data switch which is capable of handling a substantial number of input data streams and yet which uses currently available technology.
Accordingly the present invention comprises an Asynchronous Transfer Mode Switch having a plurality of input stages each for receiving a digital data transmission stream consisting of a series of cells, a cell comprising data and a header containing control data from which the destination of the cell can be determined, a plurality of central stages connected to the input stages to receive the data from the input stages to be switched across the switch, and a plurality of output stages each connected to the central stages, and wherein for every input stage there is a route to every central stage for the transmission of data, and from every central stage there is a route to every output stage, and wherein each input stage includes a circuit for determining the destination of the cells of that data stream, a circuit for disassembling each cell into cell elements and for allocating to each cell element routing data to enable it to be routed across the central stages, means for storing the cell elements in series, means for requesting from a central stage permission to transmit a cell element in the series and after a predetermined delay a further request for the same destination point provided that the stored cell elements are derived from the same cell, means for receiv~ng a response from the central stage as to the availability of the requested destination between the sending of requests so that the sequence of sending a request ~or one cell element is interleaved with the response to the request for the preceding cell element, and means for transmitting each cell element to the central stage after a second predetermined delay from the receipt of a positive request.
Z0403~30 In order that the present invention may be more readily understood an embodiment will now be described by way of example and with reference to the accompanying drawings, in which:-Figure 1 is a schematic diagram of a general embodiment ofa switch according to the present invention, Figure 2 is a block diagram sho~ ng a very simplified ATM
switch according to the present invention, Figure 3 is a diagram shohnng a sequence of flow control and data transfer in the switch of Figure 2, Figure 4 is a block diagram of the receive and transmit outer stages of the switch, and Figure 5 is a timing diagram showing timing sequences in the operation of the ATM shntch.
Figure 6 is a timing diagram showing how routing data within the switch can be derived, Figure 7 is a block diagram of a central stage, Figure 8 is a figure illustrating the operation of the central stage cyclic timing operation, and Figure 9 is an elaboration of Figure 7.
Referring now to Figure 1 of the drawings this shows a single input port and associated switch 10 of an ATM switch constructed in accordance with the present invention. The port 10 is connectable to a set of central switches 20 in turn connectable to an output port 30. The input port is part of a set of similar input ports. Each input port receives a data stream which consists of a sequence of multi-byte cells, each cell having a header from which the destination of the cell can be derived. The cells are typically 48 octets of information plus 5 octets of header. When a cell and its header is received by an input port the switch associated with that port distributes elements of the cells sequentially over a number of outputs. Each output of each input port 10 is connected to a DMR circuit. These circuits are not shown in this figure.
Basically DMR stands for Demultiplex - Mix - Remultiplex and a DMR circuit is a fixed space switching device which has N
inputs, N time intervals and N outputs and operates cyclically so that each input goes to each output for l/Nth of the time. As the DMR stages have a simple space switching function for serial streams they do not add-any delay to the switching time.
Each of the input DMR circuit in turn has its N outputs connected to an equivalent number of different central switches 20 which forms the central stage of the ATM switch. Each central switch has the same number of inputs as each outer switch and DMR
circuit has outputs. It also has the same number of outputs each of which is connected to a DMR circuit similar to the input DMR
circuits. In fact the complete ATM switch is effectively symmetrical about the central stage 20 as the output DMR circuits are each in turn connected to N output switches and associated ports.
In the format being described there are equal numbers of input switches, input DMR circuits, central switches, output DMR
circuits and output switches. Thus in a symmetrical ATM of the kind being described there will be X input switches, X central switches, 2X DMR circuits and X output switches with X being an integer multiple of N.
The result of this sy~metrical arrangement is that each input port 10 has access to all of the central switches 20 for a period or window depending on the internal parameters of the complete ATM switch. Furthermore for any cell arriving at an input port and subsequently disassembled into the cell elements there are a possible X routes across the switch to its intended output port.
In the present embodiment there are 256 input ports and 256 output ports with N = 16. The incoming data streams are at 155 M-bits per second and the internal circuitry of the switch such that the DMR stages and central shntches run at a logical rate of 40 M bits per second. In the described embodiment this is achieved by two parallel 20 megabits per second streams. As the DMR stages have a 16 unit cycle this gives an internal frame cycle of 16 so that over every 16 internal frame cycles each of the 256 input ports 10 is connected to each of the 256 central switches for a period sufficient for it to pass a single data element of an incoming data stream. For example each data element can consist of 5 bytes of data plus control data.
20403~30 The central switches 20 each have 16 outputs which are connected to 16 individual DMR output circuits. These output DMR
circuits are identical in structure and operation to the input DMR
circuits and each DMR output circuit is connected to 16 output ports 30. Thus any cell in any data stream input at an input port has a possibility of 256 routes to its possible destination. Also there are no problems of sequencing the data elements as they will always arrive at the output side of the switch in the same order as they arrived at the input side.
This sequencing is one result of the constant central stage delay for a data element transmitted across the switch and is an important factor.
The embodiment shown in Figure 2 is a more detailed view of an ATM switch of the kind shown in Figure 1.
In Figure 2 the input data streams are shown at 40 and as already described there are 256 streams of which two, DSl and DS256 are shown. Each stream is supplied to an appropriate input stage ISl to IS256. From these stages the data streams are fanned out to a central stage 41. The central stage comprises 16 Central Super planes SPl.. SP16 of which three are shown. All the central stage super planes operate in the same fashion. At the input parts of the input stages each incoming data cell is divided into 11 sub cells or cell elements each containing 40 bits of information plus a four bit identifier. Since only 53 octets are required for an individual cell there are two spare octets which can be used for internal checking information. To permit the passing of flow control information between stages 20 bits of data is added to the 44 bit cell elements making a total length of 64 bits for each packet.
The reception of the data streams and their disassembly into cell elements will be described in greater detail hereinafter.
As can be seen from Figure 2 each Input Stage ISl ...
IS256 is connected to each of the central super planes SPl ... SP16 so that each super p1ane itself receives 256 inputs. These inputs are distributed over a first array of 16-by-16 rotator or DMR circuits 43 with each DMR circuit 43 being connected to one of 16 centra1 elements 44. The central elements 44 in turn each give one output to an individual one of 16 output or DMR circuits 45.
20403~
The output DMR circuits 44 each give one of their 16 inputs to one of 256 output stages OSl ... OS256. As can be seen from Figure 2 the incoming and outgoing data streams are at 155 Mbit/s and the internal connections run at a logical rate of 40 Mbit/s.
Referring now to Figure 3 of the drawings this summarises the sequence of flow control and data transfer between the three stages of the ATM switch described in Figure 2. For each cell element, a request is made to a central switch. If this responds positively, the data is sent. Some time later the data is sent on to the output stage. If the response is negative, then the input stage will try another central stage.
From the foregoing it will be appreciated that the cell elements form a particular cell which will arrive at the outer stage of the switch in their correct sequence. However there will be no specific pattern as to the element receivers at which they are received nor in relation to cells from any other input port.
From the preceding description of the input, central switch and output stages it might also appear that cell sequence integrity would be lost when different central stage elements are used to transfer the cells on one virtual circuit. This is prevented by rotating the input and output central stage access times in step so that for any cell input into the switch there is a constant storage delay in the central stage. Different input to output port connection combinations will have different fixed delays across the routing function over the range of zero to the full central stage access time.
Figure 4 of the drawings shows an individual input stage.
An input data stream consisting of sequential data cells as defined each having an associated header is received at 50 with a suitable line termination 51. The received signal is passed to a header translation circuit 52 which under the control of a suitable processor translates the cell headers so that their destinations can be determined.
The header translation circuit takes the cell header and derives in a known manner, for example by appropriate look-up tables, the routing information for the cell. The header translation circuit 52 also generates the new header for onward transmission in the network. The output from the header ~40380 translation circuit 52 is supplied to a cell disassembly circuit 63 which divides the 53 octets originally received into 11 data elements each of 5 octets, there thus being 2 octets spare, as already described. This division is carried out in such a manner that each data element contains a portion of the original cell and information which enables the data elements to be reassembled as a cell after transmission across the switch. As soon as the header has been translated the transfer of the cell elements, and thus the cell, across the switch can be started before the entire cell has been received at the line termination.
As already mentioned each cell element has a multiplicity of potential routes available to it across the switch. However when the switch is actually handling a load some of the routes will inevitably be occupied by cell elements of data from other input stages. In order to be able to determine a route through the switch the data elements generated by the cell disassembly circuit 63 are sent to a data or cell element queue 54. This element queue 54 stores in parallel successive cell elements and is connected to 16 parallel element sender circuits 55. The element senders 55 operate in parallel and each has an operational cycle of 64 bits. The operational cycles are staggered in 4 bit steps as will be described hereinafter.
The element senders 55 operate under the control of a path finder control circuit 56 which examines the routing information carried by each cell element and sends requests to the central switch for a number of data elements stored in each cell element queue. In this embodiment the number in two and because of the previous "fanning out" of the incoming data streams any two adjacent cell elements in a cell element queue will almost certainly be from different data cells. It will be appreciated that the data elements of a single cell will be sequential but there is no specifis order for cell elements for different destinations.
The operation of the path finder control circuit can best be appreciated by referring to Figures 5 and 6. Figure 5 shows the basic concept of the operation of the path finder contro1 circuit.
Thus the path finder control circuit 56 sends a series of spaced requests to the central stage, each request being for a z~o~
window for a cell element in the element queue. These requests are shown at 101, 102 and 103. 101 is for a request for a window which has been labelled 2. At 104 the path finder control circuit 56 sends the cell element for a previously requested and accepted address which has been labelled window 1.. If it happens that the element queue no longer has the data it will send a no-data indication to the control stage. The requests 101, 102, 103 are split to provide time for data to be received from the central stage validating a previous request. Thus the sequence of request and response for a particular window is interleaved with similar sequences for other windows.
Figures 6A and B show requests in greater detail. In Figure SA the section headed "requests" contains two 8-bit addresses ADl, AD2 for window 2 shown in Figure 5 plus some control information ST (4 bits). In the subsequent 64 bit gap the data for the previously requested window is sent and the request for window 3. This is followed by the port number and a cell element which will be sent to either address ADl or AD2 in response to the data from the central stage received in the gap indicating availability of one of the requested addresses.
Figure 6B shows the response of the central stage. Thus "ANS" is the answer to a request, "ADR" is where the part comes from, "part" is the part number of the cel1 element. The area marked 118 corresponds to the cell element originally formed by the cell disassembly circuit and area 111 contains 10 spare bits.
Associated with the input stages are an equal number of output stages. One such output stage is also shown in Figure 4.
Thus each output stage has 16 element receivers 200 each corresponding to one of the element senders of the input stages.
Each element receiver is connected to a circuit 201 which checks the received elements, extracts their addresses and generates the relevant control information to re-assemble the cell element in a cell re-assembly circuit 203. The re-assembled cells are supplied first to a Cell FIFO circuit 204 and then to a line transmission circuit 205 for onward transmission.
The centre stage through which the cell elements are sorted is shown in Figure 7. This centre stage comprises an input DMR circuit 300 and 16 receiver circuits 301~ 16 sender circuits 20403~30 302, a buffer 303 for storing one sub cell or cell element per outer stage, a circuit 304 for answering space questions sent by the input stages and an output DMR circuit 305.
In the switsh structure just described it would be possible to operate all the super planes in phase with one another.
However this would require an input queue to be able to simultaneously launch flow control interrogation messages to all 16 super planes. Staggering the timing progressively by 4 bit periods at the logical rate of 40 Mbit/s between the super planes evens out the operation. Within the super planes a similar timing clash could occur at the central elements. This is avoided by having a 4 bit stagger in timing between the DMR circuits. Each DMR device has alignment on its 16 inputs and outputs. Because the central elements each terminate one line from each DMR, they will have a 4 bit stagger on the inputs. There will be a mirror imaging reflection of this staggering in the DMR's on the output side.
The timing principles of the central stage buffering are shown in Figure 8 which is not a physical representation but rather a logical one. Figure 8 can be interpreted in the following way:-For one output port for example OP 241 its designatedstorage in the central stages appears like a large rotating buffer constantly feeding it cell elements. When a cell element arrives at an input port for example lP 197 it will be fitted into the next central buffer space available as the notional wheel rotates. When the buffer goes past the output, the cell is taken out and it joins the ouput queue for that port. The central buffers rotate faster than necessary, so that peaks in capacity get routed across to the output keeping the input queues small. The central stage buffering for a particular output port is referred to as a "water wheel"
model. It is simple to see why a cell takes a fixed time to go from an input to an output, as the "wheel" rotates.
Figure 8 attempts to illustrate the complete central stage cyclic timing operation on a "turbine" model diagram. Each layer of the "turbine" represents the access to the central elements on a super plane, which may be considered as a mini "water wheel" in its own right, as shown in Figure 9. Successive layers show the 4 bit stagger by d small rotation of the "water wheels".
Referring again to Figure 4, it has already been described 2040;~'30 that when a cell is received the header is translated and then dis-assembled cell elements placed in an input queue. Every 4 clock cycles or 0.1 microseconds a 64 bit communication window with a central switch element will start. The as discussed controller sends up to two addresses and some status information to a central stage element, in the 20 bit control field. The addresses indicate to the controller in the central elements the output port destinations for which there are sub-cells queued. transfer. The central stage as shown in Figure 7, will indicate which of the requested addresses it has space for. The output port buffer will be automatically reserved as part of the process of returning a positive acknowledgement to the input controller. When a positive response is received by the input stage, it sends the next sub-cell queued for the requested address, along with information identifying which part of the cell it is. When the sub-cell reaches the central stage it is stored until it can be transferred to the appropriate output stage. At this point the central element controller will be able to release the output port buffer for further use.
To allow for the real delays in passing information from one stage to the next and to permit suitable processing to be performed, the input stage requests have to be sent in advance of sending the sub-cell data. In order to avoid wasting inter-stage data transfer capacity, the request information is sent one window period in advance as shown in Figures 5 and 6. This results in the 64 bit response time for sending data. However, the input stage controller is able to operate on a shorter turn round time for determining requests to other central stage elements, because the response is returned within about 16 bit periods.
As there is no need for flow contro1 messages from the central stage to the output stage, there is spare bandwidth available which is used for returning the responses to the input stage request messages. This requires an association to be established between input and output stage elements, which naturally occurs on a switch handling duplex connections.
In principle an input stage could have cells queued for many output ports and ideally would need to send mnre than two addresses to the central elements. Sending more addresses would 20403~0 occupy more of the bandwith available for transfer to the central stages and can reduce the overall efficiency of the system.
Simulation modelling has shown that two addresses per transfer window gives the best overall performance. With fully random traffic at moderate loads one address would give a marginal improvement, but performs badly with some forms of bursty traffic.
The design just described has a number of advantages over prior proposals. The disassembly of the incoming data cells into cell elements allows minimal delay variation and all loss, and in fact delay variation approaches the ideal. The switch operates as a theoretically ideal switch but with a small added delay which is nevertheless fixed. Additionally the switch does not require internal pre-assigned routing of cells.
The only real delay variability experienced by this switch, as described, is that inherent in usng ATM as a multiplex structure. Furthermore the delay performance of this switch is very good when compared with many other designs. Although they often have less delay at low loads; at high loads, their internal queuing between switch stages results in greater delays.
Cell losses are only encountered when the output queue overflows, this queue can be dimensioned to meet the required performance for delay and loss characteristics. Although it is technically possible for losses to occur at the input queue, these are extremely unlikely.
Perhaps the greatest merit of the switch is its operation during overload of an output port. Traffic destined for other output ports which are not overloaded can still get carried through the switch with minimal impact on delay.
The synchronous internal operation makes maintenance of the switch easy, since it removes uncertainty in the time domain.
The delay variation and cell loss caused by the design approaches the theoretical minimum. In this respect, the sysnchronous ATM switch behaves as a single stage switch.
Claims (4)
1. An Asynchronous Transfer Mode Switch having a plurality of input stages each for receiving a digital data transmission stream consisting of a series of cells, a cell comprising data and a header containing control data from which the destination of the cell can be determined, a plurality of central stages connected to the input stages to receive the data from the input stages to be switched across the switch, and a plurality of output stages each connected to the central stages, and wherein for every input stage there is a route to every central stage for the transmission of data, and from every central stage there is a route to every output stage, and wherein each input stage includes a circuit for determining the destination of the cells of that data stream, a circuit for disassembling each cell into cell elements and for allocating to each cell element routing data to enable it to be routed across the central stages, means for storing the cell elements in series, means for requesting from a central stage permission to transmit a cell element in the series and after a predetermined delay a further request for the same destination point provided that the stored cell elements are derived from the same cell, means for receiving a response from the central stage as to the availability of the requested destination between the sending of requests so that the sequence of sending a request for one cell element is interleaved with the response to the request for the preceding cell element, and means for transmitting each cell element to the central stage after a second predetermined delay from the receipt of a positive request.
2. A switch as claimed in Claim 1 and further comprising a plurality of element queues operative to store in parallel successive cell elements, said element queue being connected to a plurality of parallel element sender circuits, the element sender circuits operating under the control of a pathfinder control circuit which examines the routing information carried by each cell element and sends requests to the central switch for a number of data elements stored in each cell element queue.
3. A switch as claimed in Claim 2 wherein each pathfinder control circuit sends a series of spaced requests to the central stage, each request being for a window for a cell element in the element queue.
4. A switch as claimed in Claim 3 in which to maintain cell sequence integrity across the switch the input and output central stage access times are rotated in steps so that for any cell input to the switch there is a constant storage delay in the central stage.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9011743.3 | 1990-05-25 | ||
GB909011743A GB9011743D0 (en) | 1990-05-25 | 1990-05-25 | Data element switch |
Publications (1)
Publication Number | Publication Date |
---|---|
CA2040380A1 true CA2040380A1 (en) | 1991-11-26 |
Family
ID=10676566
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002040380A Abandoned CA2040380A1 (en) | 1990-05-25 | 1991-04-12 | Data element switch |
Country Status (11)
Country | Link |
---|---|
US (1) | US5303232A (en) |
EP (1) | EP0458438A3 (en) |
JP (1) | JPH04230144A (en) |
KR (1) | KR910021023A (en) |
CN (1) | CN1056968A (en) |
AU (1) | AU7414291A (en) |
CA (1) | CA2040380A1 (en) |
FI (1) | FI912526A (en) |
GB (2) | GB9011743D0 (en) |
IE (1) | IE911112A1 (en) |
PT (1) | PT97315A (en) |
Families Citing this family (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9025600D0 (en) * | 1990-11-24 | 1991-01-09 | Kidd James C | Arrangement of a multiprocessor computer |
EP0593609A1 (en) * | 1991-07-01 | 1994-04-27 | Telstra Corporation Limited | High speed switching architecture |
GB2258582B (en) * | 1991-08-02 | 1995-03-29 | Plessey Telecomm | An ATM switching arrangement |
US5703879A (en) * | 1991-08-02 | 1997-12-30 | Gpt Limited | ATM switching arrangement |
US5528406A (en) * | 1991-08-02 | 1996-06-18 | Gpt Limited | Telecommunications switching device |
US5544168A (en) * | 1991-08-02 | 1996-08-06 | Gpt Limited | ATM switching arrangement |
GB2258581B (en) * | 1991-08-02 | 1995-03-29 | Plessey Telecomm | An ATM switching arrangement |
GB2258366B (en) * | 1991-08-02 | 1995-03-29 | Plessey Telecomm | An ATM switching arrangement |
GB9117172D0 (en) * | 1991-08-08 | 1991-09-25 | British Telecomm | Communication system |
EP0597205B1 (en) * | 1992-09-07 | 2003-04-09 | Hitachi, Ltd. | Multiprocessor system and method of communication among processors |
US5694547A (en) * | 1992-10-13 | 1997-12-02 | Bay Networks, Inc. | System for registration of clients in an ATM network providing for communication of client registration messages to a central manager |
JP2629568B2 (en) * | 1993-07-30 | 1997-07-09 | 日本電気株式会社 | ATM cell switching system |
JP2546526B2 (en) * | 1993-08-17 | 1996-10-23 | 日本電気株式会社 | Exchange system |
US5475682A (en) * | 1994-06-10 | 1995-12-12 | At&T Corp. | Method of regulating backpressure traffic in a packet switched network |
AU3412295A (en) * | 1994-09-01 | 1996-03-22 | Gary L. Mcalpine | A multi-port memory system including read and write buffer interfaces |
US5537403A (en) * | 1994-12-30 | 1996-07-16 | At&T Corp. | Terabit per second packet switch having distributed out-of-band control of circuit and packet switching communications |
SE504985C2 (en) * | 1995-05-09 | 1997-06-09 | Ericsson Telefon Ab L M | ATM switching center |
US5835024A (en) * | 1995-06-07 | 1998-11-10 | International Business Machines Corporation | Multi-stage interconnection network with selectable function switching apparatus |
JPH11510331A (en) * | 1995-07-19 | 1999-09-07 | フジツウ ネットワーク コミュニケーションズ,インコーポレイテッド | Method and apparatus for sequentially arranging data in a communication device |
JPH11510004A (en) | 1995-07-19 | 1999-08-31 | フジツウ ネットワーク コミュニケーションズ,インコーポレイテッド | Point-to-multipoint transmission using subqueues |
WO1997010656A1 (en) | 1995-09-14 | 1997-03-20 | Fujitsu Network Communications, Inc. | Transmitter controlled flow control for buffer allocation in wide area atm networks |
US5745486A (en) * | 1995-10-26 | 1998-04-28 | Northern Telecom Limited | High capacity ATM switch |
AU1697697A (en) | 1996-01-16 | 1997-08-11 | Fujitsu Limited | A reliable and flexible multicast mechanism for atm networks |
US5822321A (en) * | 1996-04-10 | 1998-10-13 | Telefonaktiebolaget Lm Ericsson | Minicell segmentation and reassembly |
GB2315178A (en) * | 1996-07-10 | 1998-01-21 | Plessey Telecomm | Telecommunication network |
US5748905A (en) * | 1996-08-30 | 1998-05-05 | Fujitsu Network Communications, Inc. | Frame classification using classification keys |
US6044080A (en) * | 1996-11-19 | 2000-03-28 | Pluris, Inc. | Scalable parallel packet router |
US6307852B1 (en) * | 1998-04-09 | 2001-10-23 | Nortel Networks Limited | Rotator switch data path structures |
GB2337405A (en) * | 1998-05-11 | 1999-11-17 | Gen Datacomm Adv Res | ATM switch |
US6584121B1 (en) * | 1998-11-13 | 2003-06-24 | Lucent Technologies | Switch architecture for digital multiplexed signals |
US6396811B1 (en) | 1998-12-17 | 2002-05-28 | Telefonaktiebolaget Lm Ericsson | Segmented performance monitoring of multi-stage ATM node |
US6449275B1 (en) | 1998-12-17 | 2002-09-10 | Telefonaktiebolaget Lm Ericsson (Publ) | Internal routing through multi-staged ATM node |
CN1135800C (en) * | 1998-12-18 | 2004-01-21 | 艾利森电话股份有限公司 | Internet protocol handler for telecommunications platform with processor cluster |
US7016365B1 (en) * | 2000-03-31 | 2006-03-21 | Intel Corporation | Switching fabric including a plurality of crossbar sections |
US6629147B1 (en) | 2000-03-31 | 2003-09-30 | Intel Corporation | Segmentation and reassembly of data frames |
ATE305689T1 (en) | 2000-07-05 | 2005-10-15 | Roke Manor Research | IMPROVEMENTS TO EXCHANGE FACILITIES |
US20030039256A1 (en) * | 2001-08-24 | 2003-02-27 | Klas Carlberg | Distribution of connection handling in a processor cluster |
US7123581B2 (en) * | 2001-10-09 | 2006-10-17 | Tellabs Operations, Inc. | Method and apparatus to switch data flows using parallel switch fabrics |
KR100459036B1 (en) * | 2001-12-18 | 2004-12-03 | 엘지전자 주식회사 | Method for Train Packet Generating in ATM Switch System |
GB2388755B (en) * | 2002-05-17 | 2005-04-20 | Phyworks Ltd | Switching circuit for decoder |
CA2457971A1 (en) * | 2003-02-20 | 2004-08-20 | Nortel Networks Limited | Circulating switch |
ITMI20031309A1 (en) * | 2003-06-26 | 2004-12-27 | Marconi Comm Spa | SWITCHING NETWORK. |
US7602771B1 (en) | 2004-12-30 | 2009-10-13 | Nortel Networks Limited | Two-dimensional circulating switch |
US8144149B2 (en) | 2005-10-14 | 2012-03-27 | Via Technologies, Inc. | System and method for dynamically load balancing multiple shader stages in a shared pool of processing units |
JP4164771B2 (en) * | 2006-07-10 | 2008-10-15 | 日本電気株式会社 | Load balance type switch device and load balance type switch method |
CN101325063B (en) | 2007-06-12 | 2011-02-16 | 建兴电子科技股份有限公司 | Method for searching locating point position in holography storage system |
US8174534B2 (en) | 2007-12-06 | 2012-05-08 | Via Technologies, Inc. | Shader processing systems and methods |
US8963930B2 (en) | 2007-12-12 | 2015-02-24 | Via Technologies, Inc. | Triangle setup and attribute setup integration with programmable execution unit |
US9214007B2 (en) | 2008-01-25 | 2015-12-15 | Via Technologies, Inc. | Graphics processor having unified cache system |
US8514235B2 (en) * | 2010-04-21 | 2013-08-20 | Via Technologies, Inc. | System and method for managing the computation of graphics shading operations |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4864558A (en) * | 1986-11-29 | 1989-09-05 | Nippon Telegraph And Telephone Corporation | Self-routing switch |
CA1309519C (en) * | 1987-03-17 | 1992-10-27 | Antonio Cantoni | Transfer of messages in a multiplexed system |
DE3788649T2 (en) * | 1987-10-20 | 1994-06-23 | Ibm | Fast modular switching facility for through-traffic and packet-switched traffic. |
GB2212364B (en) * | 1987-11-13 | 1992-02-12 | Plessey Co Plc | Telecommunications digital switch |
GB8824972D0 (en) * | 1988-10-25 | 1988-11-30 | Plessey Telecomm | Time division switch |
EP0405042B1 (en) * | 1989-06-29 | 1994-09-14 | International Business Machines Corporation | High speed digital packet switching system |
-
1990
- 1990-05-25 GB GB909011743A patent/GB9011743D0/en active Pending
-
1991
- 1991-02-22 EP EP91301449A patent/EP0458438A3/en not_active Withdrawn
- 1991-02-22 GB GB9103759A patent/GB2244408B/en not_active Expired - Lifetime
- 1991-04-03 IE IE111291A patent/IE911112A1/en unknown
- 1991-04-03 US US07/679,768 patent/US5303232A/en not_active Expired - Lifetime
- 1991-04-05 AU AU74142/91A patent/AU7414291A/en not_active Abandoned
- 1991-04-10 PT PT97315A patent/PT97315A/en not_active Application Discontinuation
- 1991-04-12 CA CA002040380A patent/CA2040380A1/en not_active Abandoned
- 1991-05-15 JP JP3138599A patent/JPH04230144A/en active Pending
- 1991-05-24 FI FI912526A patent/FI912526A/en not_active Application Discontinuation
- 1991-05-24 KR KR1019910008508A patent/KR910021023A/en not_active Application Discontinuation
- 1991-05-25 CN CN91103467A patent/CN1056968A/en active Pending
Also Published As
Publication number | Publication date |
---|---|
GB9011743D0 (en) | 1990-07-18 |
GB2244408B (en) | 1994-03-02 |
EP0458438A3 (en) | 1995-10-25 |
US5303232A (en) | 1994-04-12 |
JPH04230144A (en) | 1992-08-19 |
PT97315A (en) | 1993-05-31 |
IE911112A1 (en) | 1991-12-04 |
CN1056968A (en) | 1991-12-11 |
AU7414291A (en) | 1991-11-28 |
EP0458438A2 (en) | 1991-11-27 |
FI912526A0 (en) | 1991-05-24 |
KR910021023A (en) | 1991-12-20 |
GB2244408A (en) | 1991-11-27 |
GB9103759D0 (en) | 1991-04-10 |
FI912526A (en) | 1991-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5303232A (en) | High performance asynchronous transfer mode switch | |
US5991295A (en) | Digital switch | |
US7852829B2 (en) | Packet reassembly and deadlock avoidance for use in a packet switch | |
US6259698B1 (en) | Input buffer controller using back-pressure signals in ATM switches and a method for determining the logical queue size | |
US5109378A (en) | Asynchronous time division switch with increased traffic handling capability | |
US5923656A (en) | Scalable broad band input-queued ATM switch including weight driven cell scheduler | |
JP3074353B2 (en) | Large capacity ATM switch | |
JP2837651B2 (en) | Communications system | |
US5870396A (en) | Output queueing in a broadband multi-media satellite and terrestrial communications network | |
US6611527B1 (en) | Packet switching apparatus with a common buffer | |
US6388993B1 (en) | ATM switch and a method for determining buffer threshold | |
US5724349A (en) | Terabit per second ATM packet switch having out-of-band control with multi casting | |
US6144662A (en) | Fast routing and non-blocking switch which accomodates multicasting and variable length packets | |
EP0323835A2 (en) | Packet concentrator and switch including a controller for assigning priorities to space switch input terminals for control of buffers | |
JP3115813B2 (en) | Communication method | |
US6046982A (en) | Method and apparatus for reducing data loss in data transfer devices | |
US6769043B1 (en) | Ensuring fair access to upstream trunk bandwidth in ATM subtended configurations | |
US20060104281A1 (en) | Packet routing | |
EP0870415B1 (en) | Switching apparatus | |
US6956851B1 (en) | Crossbar subsystem and method | |
JPH10285173A (en) | Atm cell processor | |
Obara et al. | High speed transport processor for broad-band burst transport system | |
EP1198098B1 (en) | Switching arrangement and method with separated output buffers | |
Guo et al. | Packet switch with internally buffered crossbars | |
JP3075187B2 (en) | ATM switch |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FZDE | Discontinued |