Nothing Special   »   [go: up one dir, main page]

WO2001019037A1 - Contention resolution element for a device for transmitting a plurality of packet-oriented signals - Google Patents

Contention resolution element for a device for transmitting a plurality of packet-oriented signals Download PDF

Info

Publication number
WO2001019037A1
WO2001019037A1 PCT/EP2000/008598 EP0008598W WO0119037A1 WO 2001019037 A1 WO2001019037 A1 WO 2001019037A1 EP 0008598 W EP0008598 W EP 0008598W WO 0119037 A1 WO0119037 A1 WO 0119037A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
port
comparator
vector
cell
Prior art date
Application number
PCT/EP2000/008598
Other languages
German (de)
French (fr)
Inventor
Andreas KIRSTÄDTER
Matthias Hellwig
Original Assignee
Infineon Technologies Ag
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Infineon Technologies Ag filed Critical Infineon Technologies Ag
Priority to JP2001522729A priority Critical patent/JP3657558B2/en
Priority to DE50010357T priority patent/DE50010357D1/en
Priority to EP00960591A priority patent/EP1208678B1/en
Publication of WO2001019037A1 publication Critical patent/WO2001019037A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3081ATM peripheral units, e.g. policing, insertion or extraction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/50Overload detection or protection within a single switching element
    • H04L49/505Corrective measures
    • H04L49/508Head of Line Blocking Avoidance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5679Arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5681Buffer or queue management
    • H04L2012/5683Buffer or queue management for avoiding head of line blocking

Definitions

  • Cell conflict resolution unit for a device for switching a plurality of packet-oriented signals
  • the invention relates to a cell conflict resolution unit for a device for switching a plurality of packet-oriented signals.
  • Switching devices for these high transmission speeds are implemented as an active backplane using a crossbar architecture.
  • Crossbar switching architectures work completely in parallel, so that the throughput of such devices is only limited by the number of individual ports and the internally used coordination method.
  • Crossbar architectures usually work with several port chips that are connected to a central crossbar chip via interfaces.
  • Known crossbar chips usually contain buffer memories in order to buffer packets or cells in the event of collisions.
  • the cells result from the segmentation of a packet into cells of a certain length, which is usually carried out, in particular in the case of packets of variable length, which are then further processed within the switching device. This results in the possibility of rationally processing isochronous to realize the cells.
  • an external contention resolution unit (cell conflict resolution unit) is connected to the crossbar chip, which uses certain algorithms to determine a fair selection of the competing ports.
  • DE 195 40 160 A1 discloses a method for coordinating serial lines of input-buffered ATM switching devices to avoid output blockings, in which ATM cells competing for an output are already buffered at the input of the corresponding switching device.
  • this switching device consists of several port chips, each with several ports, the “output ports” of which are connected to one another via a crossbar chip.
  • the freedom from blocking of the device is achieved by using an assignment vector, the individual bits of which are assigned to a (target).
  • the assignment vector is passed from port chip to port chip one after the other before the transmission of a cell, with each port chip having the option of a bit of the assignment vector in the order in which the assignment vector is passed on If a bit is occupied, this means that the relevant (source) port chip would like to transmit a cell to the (destination) port chip that corresponds to the respective position of the occupied bit of the occupancy vector.
  • the occupancy vector is processed in the port chips, the occupancy vector being transmitted on a serial connecting line between the port chips.
  • the occupancy vector is clocked and passed on serially from port chip to port chip, the occupancy vector being shifted by only one bit in each clock cycle.
  • each port unit that already has a bit of the occupancy vector available can only process one bit at a time, preferably the bit that has just been transferred in the respective cycle.
  • N port chips If there are N port chips, a total of 2N clock cycles are required to completely process the occupancy vector. With a large number of port chips, this leads to timing problems, since only a very limited period of time is available for this test, which is shorter than the total cycle for the transmission of a cell (timeslot). Thus, either the number of port chips is limited or extremely high clock rates have to be used when processing the occupancy vector.
  • This device has a cell conflict resolution unit with a decentralized structure, which has the disadvantages mentioned.
  • a fairness compensation with respect to competing transmissions to different (target) port chips can take place in the device according to DE 195 40 160 AI by the sequence of access to the buffer memories assigned to each other port chip of the individual port chips at the beginning of an entire cycle is changed. In principle, this results in a changed assignment of the bit positions of the assignment vector to the port chips, so that the fact that the assignment has been changed makes it possible to compensate for risks.
  • a method for fast and fair, hardware-based random selection of signals is known from DE 195 44 920 C2, the total number of all signals being checked for activity in a pseudo-randomly generated sequence and corresponding to a desired number k of signals to be selected, the k signals first found as active in the test sequence are selected. This procedure enables a very good fairness compensation in a simple way.
  • the object of the invention is to create a cell conflict resolution unit for a device for switching a plurality of packet-oriented signals, with which a switching device can be implemented in a simple manner and with little external hardware expenditure, and which one characterized by a high processing speed when determining a sufficiently fair non-blocking combination of simultaneously possible transmission authorizations between a plurality of ports of a switching device for packet-oriented signals.
  • the invention is based on the knowledge that by providing a cascade of N comparator units, an extremely high speed can be achieved in determining a non-blocking combination of simultaneously permissible transmission paths between the N ports of a central switching device while ensuring sufficient fairness that an occupancy vector is passed in parallel in the cascade of the comparator units, the processing of the occupancy vectors and thus the generation of the authorization information in the comparator units being carried out in parallel or semi-parallel.
  • the assignment vector is processed in and the transfer of the assignment vector is clocked between the comparator units, whereby the signaling vector and switching times of the hardware involved can also be processed in one or more clock cycles in one or more comparator units. This enables an extreme increase in processing speed.
  • each availability vector that is transferred from a specific port unit to a specific comparator unit has N bits, the position of a bit in the availability vector containing the assignment of the information contained in this bit to a specific port unit and wherein the one logical state of the bit signals whether a packet or a cell is available in the port unit supplying the availability vector and is to be transmitted to the port unit which corresponds to the position of the respective bit in the availability vector, and wherein each other logical state signals the lack of availability of a packet or a cell.
  • the occupancy vector in the preferred embodiment also comprises N bits, the position of a bit in the occupancy vector making the assignment of the information contained in this bit to a specific port unit. tet and wherein the one logical state of the bit signals the occupancy of the relevant port unit for receiving a packet or a cell from another port unit, and the other logical state indicates the readiness of the relevant port unit.
  • the control unit transfers an initial occupancy vector to the first comparator unit at the beginning of a processing cycle. This can already have assignments, e.g. if a port unit is not assigned to each port of the cell conflict resolution unit or if the transmission to a port unit is to be deliberately prevented for certain reasons.
  • the authorization information which is to be transmitted to the port unit connected to the comparator unit, is determined in compliance with a predetermined sequence with respect to the port units or the individual bits of the occupancy vector.
  • the order at the beginning of a cycle of the determination of the authorization information by the N comparator units can be selected from a predetermined number of pseudo-randomly generated sequences.
  • each comparator unit can always determine the authorization information for the port unit in question in the order of the bits of the occupancy vector.
  • Each comparator unit can then be preceded by a permutation unit, to which the availability vector can be supplied and which re-arranges the bits of the availability vector in accordance with a predetermined rule.
  • Each comparator unit can then also have a metric permu- tationse unit which, taking into account the permutation of the sequence of the bits of the availability vector from the information supplied to the comparator unit, whether and which position of the occupancy vector was occupied, determine which authorization information to transmit to the port unit connected to the respective comparator unit is.
  • the selection authorization for the transmission of the respective packet or the respective cell to a different port unit in each comparator unit can be given by Nl quota numbers provided for each of the other N1 port units or by N quota numbers provided for each bit of the occupancy vector - be trolled.
  • the payer status (quote) of a quote payer is incremented or decremented after each selection of the assigned port unit or after each assignment of the associated bit of the assignment vector. After a predetermined number of payer has been reached, the selection authorization for the port unit concerned or the assignment authorization for the relevant bit of the assignment vector is blocked.
  • N numbers again represents the more easily realizable option if the bits of the availability vector are permuted at the same time, since otherwise the information had to be additionally passed to the respective comparator unit, which of the N bits must not be used anyway, because this would mean sending the packet or cell back to the respective sending port unit. This would be theoretically possible, but the
  • the odds numbers (21) of a comparator unit (13) can each be assigned to a specific bit of the occupancy vector (CRres).
  • the control unit (11) can set all quota numbers (21) of all the comparator units (13) which are assigned to a specific bit of the occupancy vector (CRres) to an initial value (initial quota) if no comparator unit (13) there is more in which the relevant quota payer (21) still has a quota and at the same time the relevant bit of the permuted availability vector (CRreq * ) indicates a packet to be transmitted or a cell to be transmitted.
  • the quota counters (21) of a comparator unit (13) can each be assigned to a specific port unit (3).
  • the control unit (11) can set all quota counters (21) of all comparator units (13) which are assigned to a specific port unit (3) to an initial value (initial quota) if there is no longer a comparator unit (13) in which the relevant quota counter (21) still has a quota and at the same time a packet or a cell is to be transmitted from the port unit connected to the comparator unit (13) to the relevant port unit.
  • the permutation information can be fed to the comparator units (13), the comparator units (13) permuting the quota counters in their order and the information whether a cell is available for transmission from the permuted availability vectors CRreq *.
  • control unit assigns one or more quota payers a higher initial quota than others Quoteniereer, this way a P ⁇ o ⁇ stechnik certain transmission paths or nodes of the switching device can be realized.
  • the comparator units can each be implemented using an N-stage P ⁇ o ⁇ ty encoder, each of the N inputs of the Prio ⁇ ty encoder being connected to the output of an AND gate, and a first input of the AND gate speaking bit of the possibly permuted availability vector is supplied, a second input of the AND gate the relevant bit of the occupancy vector which is present at the output of the preceding comparator unit and a third input of the AND gate the information of the associated quota number, which is logical ONE is when there is still a selection right and logically ZERO when there is no longer a selection right.
  • the cell conflict resolution unit according to the invention can be designed as a separate integrated circuit. However, such a unit can also be integrated into a central switching device (a crossbar chip) which has N ports for connecting a maximum of N port units.
  • a central switching device a crossbar chip
  • FIG. 1 shows the schematic architecture of a switching device with a simultaneous schematic representation of the data flow with a cell conflict resolution unit integrated in the crossbar chip according to the invention
  • FIG. 2 shows the schematic representation of the central switching unit and a port unit in FIG. 1, with simultaneous representation of the information flow in the collision resolution;
  • FIG. 3 shows the schematic structure of the data blocks transmitted from the port units to the central switching unit (FIG. 3a) and from the central switching unit to the portals (FIG. 3b);
  • FIGS. 1 and 2 shows the schematic structure of the central switching unit in FIGS. 1 and 2;
  • Fig. 5 shows the schematic structure of the cell conflict resolution unit according to the invention.
  • FIG. 6 shows the schematic structure of the core piece of a comparator unit in FIG. 5.
  • Fig. 1 shows the architecture schematically shows a switching device 1 according to the invention, which standardize a total of N port units 3 ⁇ to 3 N, and a central Varsem- 5 consists.
  • Each of the N port units 3 ⁇ 3 N has n ports 7 X to 7 n, to each of which a signal S 1D can be supplied, where: l ⁇ i ⁇ n and l ⁇ j ⁇ N.
  • the port units are usually designed so that bidirectional communication is possible at each port.
  • the principle of the present invention can, however, also be applied to systems in which certain or all ports are designed for unidirectional communication only. In practice, however, this will rarely be the case.
  • the port units 3 shown in FIG. 1 are preferably designed as integrated port modules or separate modules. The same applies to the central mediation effort 5. This achieves a modular structure, which in turn enables simple scaling, ie adaptation of the switching device to the number of data lines to be switched, which is required in each case.
  • the port units 3 and the central switching unit 5 are connected via interface units.
  • the interface units provided in port units 3 are referred to as "CB-IF" (crossbar interface) and the interface units provided in central switching unit 5 are referred to as "port IF" (port interface).
  • CB-IF crossbar interface
  • port IF port interface
  • a separate interface unit Port IF is provided in the central switching unit 5 for each port unit 3.
  • Each interface unit Port IF and CB-IF can, as from F g. 4 for the central switching unit, can be connected to the transmission lines between the port units 3 and the central switching unit 5 via a low-voltage differential signaling unit (LVDS).
  • LVDS low-voltage differential signaling unit
  • the central switching unit 5 takes on the function of a crossbar switch, so that a completely temporally parallel internal data transmission of a maximum of N (crossbar internal) signals is possible (when realizing full duplex transmission via LVDS units).
  • the data inputs / outputs of the interface units Port IF are connected to the actual Switchmg-Mat ⁇ x (matrix).
  • a port IF can switch through the switching matrix in the manner communicated to it, so that the desired path from one port IF to another port IF is available within the central switching unit for data transmission. is available.
  • a collision resolution unit 8 is provided, which is also referred to below as a contention resolution.
  • Resolution unit is called.
  • the CR unit 8 is preferably provided within the central switching unit and is designed together with the latter as an integrated circuit. Since the CR unit 8, as can be seen from the following description, has to exchange data very quickly between it and the interface units port IF, the integration of the CR unit results in the advantage of very short high-speed transmission lines.
  • the ports 7 X to 7 n of the port units 3 1 to 3 N are each supplied with a signal S 1;
  • the signals are each a stream of data packets, which can have different lengths.
  • the data packets of the individual signals S 13 are segmented by the port units 3, that is to say divided into individual cells of constant length.
  • the cells are stored in a buffer memory 9, which can be integrated in the port units 3 or designed as an external memory.
  • the segmentation is carried out by a control unit (not shown in detail) in each port unit 3, which organizes the buffer memory 9 in such a way that for each of the other port units 3 a separate virtual buffer memory (9a) is created, which contains the cells to be transferred to the other port unit in question are.
  • each port unit 3 or its control unit evaluates the ad address information of each received packet, and uses this information to determine whether the packet or the corresponding cells have to be transmitted to another port unit 3 or not and assigns the corresponding cells to the respective virtual (9a) memory.
  • the assignment of the cells of a data packet to one another can be maintained by providing pomters. Of course, a separate memory can also be provided for each of the other port units.
  • the separate or virtual memories (9a) are of the FIFO type because the sequence of the cells should be preserved when the cells are read in and out.
  • the port unit determines that no transfer to another port unit is required, the port unit takes over the port-internal switching process.
  • buffering of the data packets will usually also be necessary for this, but not necessarily segmenting them. Since this port-internal switching function of the switching device 1 is not relevant to the present invention, a more detailed explanation can be dispensed with.
  • Such a buffer memory 9 per port unit 3 is necessary in any case, since only one cell can be transferred internally from one port unit to the central switching unit.
  • buffering is required in order to intercept transmission peaks. This is the case, for example, in ATM and Ethernet systems, since different services and different ports work with different data transmission rates and the header evaluation time is very scattered, particularly in the case of IP traffic.
  • segmentation of the packets for internal transmission and transmission are also not necessary of the data packets within the switching device 1 as a whole.
  • segmentation has the advantage that clock-synchronous transmission can take place within the switching device regardless of the respective length of the packets.
  • fair treatment of the individual (exits of) port units becomes easier.
  • the cells within the switching device 1 are transmitted isochronously, i.e. In a timeslot, one or more cells are transmitted from the port units 3 to the central switching unit 5 and vice versa.
  • a timeslot can have a duration of 280 ns, for example.
  • each port unit 3 first transmits availability information to the central switching unit 5.
  • the availability information contains for which other port units there are currently cells for transmission in the respective port unit.
  • the availability information thus includes whether the individual virtual buffer stores contain no or at least one cell.
  • the availability information can, as shown in FIG. 3a, be transmitted in the header of the cells transmitted from the port units 3 to the central switching unit 5 in order to avoid a separate transmission step and the associated higher protocol effort.
  • the availability formations can be summarized as a contention request vector (CRreq), the vector consisting of N bits corresponding to the number of port units. The position of each bit within the CRreq vector indicates the number j (l ⁇ j ⁇ N) of port unit 3, and the assignment of the bit concerned, whether in the respective port unit for port unit 3, a cell for transmission is available stands.
  • CRreq contention request vector
  • the CRreq vector does not necessarily have to be linked to the cell that is actually to be transmitted in the next timeslot, but can be directed to one or more timeslots in the future. That is, the respective availability information relates to cells that are only in two or more timeslots may be transmitted in the future, this time shift having to be constant for all port units 3.
  • the central switching unit 5 or the interface units port IF read out the availability information contained therein after receiving the possibly several cells transmitted simultaneously by the port units and transmit this together with the information from which port unit the availability information was transmitted to CR-Emheit 8.
  • the CR-Emheit 8 determines a possible combination of admissible, ie., According to a given contention-resolution algorithm collision-free transmission options from corresponding send port units to corresponding receive port units.
  • the combination determined in this way is transmitted in the form of authorization information CRgnt at least to those port units 3 which are to be given transmission authorization for the relevant timeslot.
  • This authorization information is preferably transmitted again in the header of cells.
  • the respective interface unit Port IF can write the coded chip ID of the port unit to which transmission from the port unit connected to the respective interface unit Port IF has been released into the header of a cell to be transmitted if the one with the respective port IF connected port unit for the relevant timeslot a transfer authorization (for the relevant cell) is to be granted. If no authorization is to be granted to the port unit in question, the header in the area reserved for the authorization information can contain a defined assignment which is interpreted by the port units as "no authorization granted".
  • the central switching unit 5 or the interface units Port IF After receiving a cell, not only read out the availability vector CRreq, but also at least the address information (in FIG. 3 labeled “destination”) that is required for the port unit to determine to which the cell in question is to be transferred.
  • each interface unit Port IF can also use the authorization information supplied to it by the CR unit to switch the Switchmg matrix in the relevant timeslot in such a way that the respective cell still transmits to the correct port unit in the same timeslot becomes.
  • this space in the header can be used for the transmission of other information, for example for status information of the portals 3.
  • the authorization information CRgnt is read out in the port units 3 and it is determined whether an authorization (corresponding to the availability information previously sent to the central switching unit 5) has been issued for the relevant timeslot
  • the port unit or the corresponding control unit which, after receiving a cell, determines that authorization information is available, makes the relevant cell, for which availability information was previously transmitted to the central switching unit, available for transmission in the relevant timeslot.
  • the cell in question is read from the memory 9 and transferred to the interface unit CB-IF.
  • the control unit of the port unit After receipt of a cell by a port unit 3, the control unit of the port unit reads the address information in the header of the cell and assigns the cell to the respective output port or the respective media access control (MAC) (not shown).
  • the individual cells are reassembled into the original data packets in the port unit or the respective MAC of the individual ports and transmitted to the respective addressees.
  • a new availability information CRreq After receiving a cell by the interface unit CB-IF of a port unit and reading and evaluating the authorization information, a new availability information CRreq must be determined immediately and inserted into the next cell to be transmitted to the central switching unit 5. This process is extremely time-critical.
  • each comparator unit 13 is preceded by a permutation unit 15 (15 ⁇ to 15 N ), each of which is connected to the interface lenemorten PORT IF of the central switching unit 5 are connected.
  • the permutation units 15 are acted upon by a payer 16.
  • the comparators are connected within the cascade via parallel connection lines 17, via which the occupancy vector CRres (see below) can be transferred from one comparator unit to the next comparator unit within the cascade.
  • Each comparator unit 13 is followed by an inverse permutation unit 19 (19 1 to 19 N ) in the Contenction Resolution unit shown in FIG.
  • the control unit 11 controls the counter 16 and is also connected to each of the comparators 13.
  • the control unit 11 is connected via connection lines 17 to the first comparator 13 ⁇ of the cascade.
  • the contention resolution unit shown in FIG. 5 operates as follows:
  • the contention resolution unit runs through an entire cycle, within which the authorization information CRgnt for each port unit is determined, which are then transmitted to the respective port units via the interface units PORT IF.
  • the authorization information CRgnt is ascertained in a clocked manner, the clock in the contention resolution unit 8 preferably being the same as the clock in the other central switching unit.
  • the permission request vectors CRreq that is to say the availability vectors of the individual port units, are transmitted to the permutation units 15.
  • a certain number of pseudo-randomly generated sequences are stored in the permutation units 15, of which the same sequence is active in all permutation units.
  • the permutation units 15 By applying the permutation units 15 through the output of the payer 16 is in each case activated a certain one of the orders.
  • the sequence of the sequences can also be defined in the permutation units, so that the next sequence can be activated by simply supplying a "step-by-step pulse".
  • the order can be changed after a certain number of total cycles. In practice, however, one will preferably switch to a different order after each overall cycle.
  • the permutation unit uses the active sequence in each case to reorder the bits of the CRreq vector accordingly. This ensures that none of the port units 3 (as receiving port units) are positioned within the
  • Occupancy vector is preferred.
  • the rearranged CRreq vectors are transferred to the comparator units 13.
  • the control unit 11 transfers an initial occupancy vector CRres to the first comparator unit 13 ⁇ .
  • a quota number 21 (FIG. 6) is also provided in each comparator unit 13 for each bit of the occupancy vector.
  • Each quota counter determines how often the relevant bit of the occupancy vector has already been selected by the relevant comparator unit 13. If a predetermined maximum number is exceeded, the authorization to re-select this bit is blocked in the comparator unit.
  • the odds counter 21 can be designed, for example, as a backward counter that can be reset by the control unit (by resetting the counter is set to a predefined fixed value). If a prioritization of a port unit (as a sending port unit) is to be deliberately generated, the quota payer can be designed as payer that can be loaded by the control unit with predefined values.
  • the odds counters preferably have a binary output, a logic state (for example logic ONE) signaling selection authorization and the other state (for example logic ZERO) the absence of the selection authorization.
  • the first comparator 13arat based on the initial occupancy vector, the rearranged CRreq vector and the outputs of the quotas for each bit of the occupancy vector, it is checked whether it is already occupied or still free.
  • the initial occupancy vector can also have bits already occupied.
  • the control unit can pre-assign corresponding bits if not all interface units PORT IF of the central switching unit 5 are connected to port units 3.
  • this check is preferably carried out in the order of the bits of the CRres vector.
  • each reverse permutation unit 19 receives from the relevant comparator unit 13 the information as to whether and which bit of the occupancy vector has been occupied.
  • the inverse permutation unit knows the reordering applied by the permutation units and determines the original bit position from the bit position that was occupied again.
  • inverse sequences can be stored in the mvers permutation units 19, by using which the rearrangement carried out in the permutation units 15 is reversed.
  • the inverse permutation units 19 can also be selected or switched through the inverse sequences by the output of the payer 13 supplied to them.
  • each inverse permutation unit 19 can, after swapping back the respective occupancy vector CRres and the known assignment of the port units 3 to the positions of the CRreq vector, as authorization information CRgnt, the ID number of that port unit 3 to that with the respective one Communicator unit connected port unit to which the latter can transmit a cell.
  • the control unit 11 determines whether at least one quota number 21 of a comparator unit 13 is still one for a specific bit within the CRres vector Quote and at the same time the relevant bit of the permuted CRreq vector supplied to this comparator unit (designated CRreq *) indicates a cell to be transmitted to the relevant port unit 3. If this is not the case, the control unit 11 causes all the quota numbers 21 of the comparator units 13 responsible for the relevant bit of the CRres vector to be reset to the initial quota.
  • the quota numbers 21 were assigned in a simple manner to a specific bit of the CRres vector, in another embodiment the quota numbers 21 can be assigned to the outputs of the central switching unit 5 or to the port units.
  • the permutation information must also be communicated to the comparator units 13. This information can then be used to check whether certain payers have to be set to an initial quota, either to rearrange the order of the quota payers or to reverse the assignment of the bits of the CRreq * vectors.
  • the quota numbers 21 assigned to the port units 2 can thus immediately determine whether there is still a cell to be transferred to the relevant port unit 3. If a prioritization of the respective sending port units 3 is dispensed with, then in the simplest case the quota one can be used, in which case the quota numbers can be implemented by a bit, in terms of hardware, for example by a flip-flop.
  • the quota counters can then also be combined to form a vector with N bits and implemented, for example, by a register of length N. A set bit can then indicate an existing quota, for example, and a bit that is not set can indicate a missing quota.
  • FIG. 6 shows the basic structure of the core of an embodiment for a comparator unit 13.
  • This comprises an N-stage priority encoder 23, the behavior of which can be described as follows:
  • Each output 0 ⁇ (l ⁇ i ⁇ N) is set to logic ONE , if all previous inputs I ⁇ - 1 are at logic ZERO and the associated input I x is at logic ONE.
  • only that output is set to logical ONE whose associated input is the first to be logical ONE in the order of the N stages of the priority encoder.
  • FIG. 6 shows only the first four stages A, B, C, D, of the priority encoder 23 with the input states a, b, c, d and logic connections which generate the corresponding output states.
  • the inputs I x of the individual stages of the priority encoder 23 are each connected to the output of an AND gate 25, which logically AND-links three signals, namely the respective bit CRreq [i] of the CRreq vector, the respective bit CRres [i] of the occupancy vector Crres supplied to the comparator unit 13 and the output of the respective quota counter 21.
  • the desired goal is achieved that the respective bit of the occupancy vector is only occupied if it was still empty and if a corresponding cell closed is transferred and at the same time an assignment authorization is given.
  • the control unit 11 can receive a start pulse CR 3ta rt for starting a contention resolution cycle.
  • the checking of the occupancy authorization, including the generation of the authorization information CRgnt, if necessary, can be carried out cyclically for security reasons. In this case, for example, only the actions required in one comparator unit 13 are carried out in one clock cycle.
  • the processed CRres vector can then be transferred to the next comparator unit of the cascade using an output register (not shown).
  • comparator units 13 can also be combined.
  • the outputs of the priority encoder 23 of a comparator unit 13 are each connected directly to the inputs, for example the relevant inputs of the AND gates 25.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

For contention resolution an allocation vector is passed through a cascade of comparator elements in a contention resolution element. Every comparator unit evaluates a contention request vector supplied to it and allocates only the first possible bit of the allocation vector. A minimum fairness balance is established by following a quota rule. The parallel or semi-parallel processing of the allocation vector in the cascade allows for an extremely high processing speed.

Description

Beschreibungdescription
Zellkonfliktauflosungseinheit für eine Einrichtung zur Vermittlung einer Mehrzahl von paket-orientierten SignalenCell conflict resolution unit for a device for switching a plurality of packet-oriented signals
Die Erfindung betrifft eine Zellkonfliktauflosungseinheit für eine Einrichtung zur Vermittlung einer Mehrzahl von paketorientierten Signalen.The invention relates to a cell conflict resolution unit for a device for switching a plurality of packet-oriented signals.
In den letzten Jahren ist die Übertragungskapazität bzw. die Datenübertragungsrate in Netzwerken stark angestiegen. Dies führte zur Notwendigkeit, Vermittlungseinrichtungen, insbesondere Switches und Router, zu entwickeln, die einen Daten- durchsatz im Multi-Gigabit- bzw. sogar Terabit-Bereich aufweisen. Bei derart hohen Ubertragungsgeschwindigkeiten lassen sich die erforderlichen Netzwerkprotokolle nur noch als Hardware realisieren.In recent years, the transmission capacity or the data transmission rate in networks has increased significantly. This led to the necessity to develop switching devices, in particular switches and routers, which have a data throughput in the multi-gigabit or even terabit range. With such high transmission speeds, the required network protocols can only be implemented as hardware.
Vermittlungseinrichtungen für diese hohen Ubertragungsgeschwindigkeiten werden nach einer Möglichkeit als aktive Backplane unter Verwendung einer Crossbar Architektur realisiert. Crossbar-Vermittlungsarchitekturen arbeiten vollständig parallel, so dass der Durchsatz derartiger Einrichtungen nur durch die Anzahl der einzelnen Ports und das intern verwendete Koordinationsverfahren begrenzt ist.Switching devices for these high transmission speeds are implemented as an active backplane using a crossbar architecture. Crossbar switching architectures work completely in parallel, so that the throughput of such devices is only limited by the number of individual ports and the internally used coordination method.
Crossbar-Architekturen arbeiten üblicherweise mit mehreren Port-Chips, die über Interfaces mit einem zentralen Crossbar- Chip verbunden sind. Bekannte Crossbar-Chips beinhalten üblicherweise Pufferspeicher, um bei auftretenden Kollisionen Pakete oder Zellen zwischenzuspeichern. Die Zellen entstehen durch die üblicherweise - insbesondere bei Paketen variabler Lange - vorgenommene Segmentierung eines Pakets in Zellen mit bestimmter Lange, die dann innerhalb der Vermittlungseinrichtung weiterverarbeitet werden. Hierdurch ergibt sich die Möglichkeit, auf rationelle Weise eine taktsynchrone Verarbei- tung der Zellen zu realisieren. Zudem wird bei auftretenden Kollisionen, d.h. wenn mehrere Ports der Port-Chips versuchen auf denselben Port eines anderen Port-Chips zu übertragen, eine „faire" Übertragung der an den konkurrierenden Ports anliegenden Signale bzw. Pakete erleichtert. Hierzu ist bei einigen bekannten Einrichtungen mit dem Crossbar-Chip eine externe Contention-Resolution-Einheit ( Zellkonflikt- Auflosungseinheit ) verbunden, die unter Verwendung bestimmter Algorithmen eine faire Auswahl der konkurrierenden Ports er- mittelt.Crossbar architectures usually work with several port chips that are connected to a central crossbar chip via interfaces. Known crossbar chips usually contain buffer memories in order to buffer packets or cells in the event of collisions. The cells result from the segmentation of a packet into cells of a certain length, which is usually carried out, in particular in the case of packets of variable length, which are then further processed within the switching device. This results in the possibility of rationally processing isochronous to realize the cells. In addition, in the event of collisions, ie if several ports of the port chips attempt to transmit to the same port of another port chip, a “fair” transmission of the signals or packets present at the competing ports is facilitated an external contention resolution unit (cell conflict resolution unit) is connected to the crossbar chip, which uses certain algorithms to determine a fair selection of the competing ports.
Beispielsweise ist aus der DE 195 40 160 AI ein Verfahren zur Koordinierung über serielle Leitungen von eingangsgepufferten ATM Vermittlungseinrichtungen zur Vermeidung von Ausgangsblo- ckierungen bekannt, bei der bezüglich eines Ausgangs konkurrierende ATM-Zellen bereits am Eingang der entsprechenden Vermittlungseinrichtung gepuffert werden. Diese Vermittlungseinrichtung besteht im Prinzip aus mehreren Portchips mit jeweils mehreren Ports, deren „Ausgangs-Ports" über einen Crossbar-Chip miteinander verbunden sind. Die Blockierungs- freiheit der Einrichtung wird durch die Verwendung eines Belegungsvektors erreicht, dessen einzelne Bits jeweils einem (Ziel-) Port-Chip entsprechen. Der Belegungsvektor wird vor der Übertragung einer Zelle nacheinander von Port-Chip zu Port-Chip weitergereicht, wobei jeder Port-Chip in der Reihenfolge, in der das Weiterreichen des Belegungsvektors erfolgt, die Möglichkeit hat, ein Bit des Belegungsvektors zu belegen. Wird ein Bit belegt, so bedeutet dies, dass der betreffende (Quell-) Port-Chip an denjenigen (Ziel-) Port- Chip, welcher der jeweiligen Position des belegten Bit des Belegungsvektors entspricht, eine Zelle übertragen mochte. Dieser (Ziel-) Port-Chip, bzw. dieser Ausgang des Crossbar- Chips und das jeweils belegte Bit des Belegungsvektors steht dann dem nächsten Port-Chip, an den der Belegungsvektor wei- tergereicht wird, nicht mehr zur Uoertragung einer Zelle m dem jeweiligen Time-Slot zur Verfugung. Bei dieser bekannten Einrichtung erfolgt die Verarbeitung des Belegungsvektors in den Port-Chips, wobei der Belegungsvektor auf einer seriellen Verbindungsleitung zwischen den Port- Chips übertragen wird.For example, DE 195 40 160 A1 discloses a method for coordinating serial lines of input-buffered ATM switching devices to avoid output blockings, in which ATM cells competing for an output are already buffered at the input of the corresponding switching device. In principle, this switching device consists of several port chips, each with several ports, the “output ports” of which are connected to one another via a crossbar chip. The freedom from blocking of the device is achieved by using an assignment vector, the individual bits of which are assigned to a (target The assignment vector is passed from port chip to port chip one after the other before the transmission of a cell, with each port chip having the option of a bit of the assignment vector in the order in which the assignment vector is passed on If a bit is occupied, this means that the relevant (source) port chip would like to transmit a cell to the (destination) port chip that corresponds to the respective position of the occupied bit of the occupancy vector. Target) port chip, or this output of the crossbar chip and the respective occupied bit of the occupancy vector is then available to the next port chip which the occupancy vector is passed on, is no longer available for the transmission of a cell in the respective time slot. In this known device, the occupancy vector is processed in the port chips, the occupancy vector being transmitted on a serial connecting line between the port chips.
Hierdurch werden bei der Hardware-Realisierung einer derartigen Vermittlungseinheit externe Hochgeschwmdigkeits- Ubertragungsleitungen zwischen den Port-Chips erforderlich, was einen entsprechenden Designaufwand und Hardware-Aufwand erfordert. Zudem wird der Belegungsvektor getaktet und seriell von Port-Chip zu Port-Chip weitergereicht, wobei in jedem Taktzyklus der Belegungsvektor jeweils nur um ein Bit weitergeschoben wird. Auf diese Weise kann jede Porteinheit, der bereits ein Bit des Belegungsvektors zur Verfugung steht, jeweils nur ein Bit, vorzugsweise das im jeweiligen Takt gerade ubergebene Bit bearbeiten. Sind N Port-Chips vorhanden, so sind also insgesamt 2N Taktzyklen erforderlich, um den Belegungsvektor komplett zu verarbeiten. Dies bringt bei einer größeren Anzahl von Port-Chips Timing-Probleme mit sich, da für diese Prüfung nur eine sehr begrenzte Zeitspanne zur Verfugung steht, die kleiner ist, als der Gesamtzyklus zur Übertragung einer Zelle (Timeslot). Somit ist entweder die Anzahl der Port-Chips begrenzt oder es müssen extrem hohe Taktraten bei der Verarbeitung des Belegungsvektors verwendet werden. Diese Vorrichtung weist eine Zellkonfliktauflosungseinheit mit dezentraler Struktur auf, die die genannten Nachteile mit sich bringt.As a result, external high-speed transmission lines between the port chips are required in the hardware implementation of such a switching unit, which requires a corresponding design effort and hardware effort. In addition, the occupancy vector is clocked and passed on serially from port chip to port chip, the occupancy vector being shifted by only one bit in each clock cycle. In this way, each port unit that already has a bit of the occupancy vector available can only process one bit at a time, preferably the bit that has just been transferred in the respective cycle. If there are N port chips, a total of 2N clock cycles are required to completely process the occupancy vector. With a large number of port chips, this leads to timing problems, since only a very limited period of time is available for this test, which is shorter than the total cycle for the transmission of a cell (timeslot). Thus, either the number of port chips is limited or extremely high clock rates have to be used when processing the occupancy vector. This device has a cell conflict resolution unit with a decentralized structure, which has the disadvantages mentioned.
Ein Fairnessausgleich bezüglich konkurrierender Übertragungen zu verschiedenen (Ziel-) Port-Chips kann bei der Vorrichtung gemäß der DE 195 40 160 AI dadurch erfolgen, dass die Reihenfolge des Zugriffs auf die jedem anderen Port-Chip zugeordneten Pufferspeicher der einzelnen Port-Chips jeweils am Beginn eines Gesamtzyklus geändert wird. Hierdurch ergibt sich im Prinzip eine geänderte Zuordnung der Bitpositionen des Belegungsvektors zu den Port-Chips, so dass durch die geänderte Reihenfolge der Belegung ein Fa rnessausgleich möglich ist. Hierzu ist aus der DE 195 44 920 C2 ein Verfahren zur schnellen und fairen, Hardware-basierten Zufallsauswahl von Signalen bekannt, wobei in einer pseudo-zufallig generierten Rei- henfolge stets die Gesamtzahl aller Signale auf Aktivität geprüft wird und entsprechen einer gewünschten Anzahl k von auszuwählenden Signalen jeweils die in der Prüfreihenfolge zuerst als aktiv angetroffenen k Signale ausgewählt werden. Dieses Verfahren ermöglicht auf einfache Weise einen sehr guten Fairnessausgleich.A fairness compensation with respect to competing transmissions to different (target) port chips can take place in the device according to DE 195 40 160 AI by the sequence of access to the buffer memories assigned to each other port chip of the individual port chips at the beginning of an entire cycle is changed. In principle, this results in a changed assignment of the bit positions of the assignment vector to the port chips, so that the fact that the assignment has been changed makes it possible to compensate for risks. For this purpose, a method for fast and fair, hardware-based random selection of signals is known from DE 195 44 920 C2, the total number of all signals being checked for activity in a pseudo-randomly generated sequence and corresponding to a desired number k of signals to be selected, the k signals first found as active in the test sequence are selected. This procedure enables a very good fairness compensation in a simple way.
Ausgehend von diesem Stand der Technik liegt der Erfindung die Aufgabe zugrunde, eine Zellkonfliktauflosungseinheit für eine Einrichtung zur Vermittlung einer Mehrzahl von paket- orientierten Signalen zu schaffen, mit der auf einfache Weise und mit geringem externen Hardware-Aufwand eine Vermittlungseinrichtung realisierbar ist, und welche sich durch eine hohe Verarbeitungsgeschwindigkeit bei der Ermittlung einer ausreichend fairen blockierungsfreien Kombination von gleichzeitig möglichen Ubertragungsberechtigungen zwischen einer Mehrzahl von Ports einer Vermittlungseinrichtung für paket-orientierte Signale auszeichnet.On the basis of this prior art, the object of the invention is to create a cell conflict resolution unit for a device for switching a plurality of packet-oriented signals, with which a switching device can be implemented in a simple manner and with little external hardware expenditure, and which one characterized by a high processing speed when determining a sufficiently fair non-blocking combination of simultaneously possible transmission authorizations between a plurality of ports of a switching device for packet-oriented signals.
Die Erfindung lost diese Aufgabe mit den Merkmalen des Pa- tentanspruchs 1.The invention achieves this object with the features of patent claim 1.
Die Erfindung geht von der Erkenntnis aus, dass durch das Vorsehen einer Kaskade von N Komparatoremheiten eine extrem hohe Geschwindigkeit bei der Ermittlung einer blockierungs- freien Kombination von gleichzeitig zulassigen Ubertragungs- wegen zwischen den N Ports einer zentralen Vermittlungseinrichtung unter Gewahrleistung einer ausreichenden Fairness dadurch erreichbar ist, dass ein Belegungsvektor parallel in der Kaskade der Komparatoremheiten durchgereicht wird, wobei die Verarbeitung der Belegungsvektoren und damit die Erzeugung der Berechtigungsinformation in den Komparatoremheiten parallel oder semi-parallel erfolgt. Nach der bevorzugten Ausfuhrungsform der Erfindung erfolgt die Verarbeitung des Belegungsvektors in und die Weitergabe des Belegungsvektors zwischen den Komparatoremheiten getak- tet, wobei unter Berücksichtigung von Signallaufzelten und Schaltzeiten der beteiligten Hardware m einem Taktzyklus auch die Verarbeitung des Belegungsvektors in mehreren oder allen Komparatoremheiten erfolgen kann. Hierdurch lasst sich eine extreme Steigerung der Verarbeitungsgeschwindigkeit er- reichen.The invention is based on the knowledge that by providing a cascade of N comparator units, an extremely high speed can be achieved in determining a non-blocking combination of simultaneously permissible transmission paths between the N ports of a central switching device while ensuring sufficient fairness that an occupancy vector is passed in parallel in the cascade of the comparator units, the processing of the occupancy vectors and thus the generation of the authorization information in the comparator units being carried out in parallel or semi-parallel. According to the preferred embodiment of the invention, the assignment vector is processed in and the transfer of the assignment vector is clocked between the comparator units, whereby the signaling vector and switching times of the hardware involved can also be processed in one or more clock cycles in one or more comparator units. This enables an extreme increase in processing speed.
In der bevorzugten Ausfuhrungsform weist jeder Verfugbar- keitsvektor, der von jeweils einer bestimmten Porteinheit an jeweils eine bestimmte Komparatoremheit übergeben wird, N Bits auf, wobei die Position eines Bit im Verfugbarkeitsvek- tor die Zuordnung der in diesem Bit enthaltenen Information zu einer bestimmten Porteinheit beinhaltet und wobei der eine logische Zustand des Bit signalisiert, ob in der den Verfug- barkeitsvektor liefernden Porteinheit ein Pakekt oder eine Zelle verfugbar ist, die an diejenige Porteinheit übertragen werden soll, welche der Position des jeweiligen Bit im Ver- fugbarkeitsvektor entspricht, und wobei der jeweils andere logische Zustand das Fehlen der Verfügbarkeit eines Pakets oder einer Zelle signalisiert. Hierdurch wird eine einfache Auswahl von gleichzeitig blockierungsfrei übertragbaren Paketen oder Zellen ermöglicht.In the preferred embodiment, each availability vector that is transferred from a specific port unit to a specific comparator unit has N bits, the position of a bit in the availability vector containing the assignment of the information contained in this bit to a specific port unit and wherein the one logical state of the bit signals whether a packet or a cell is available in the port unit supplying the availability vector and is to be transmitted to the port unit which corresponds to the position of the respective bit in the availability vector, and wherein each other logical state signals the lack of availability of a packet or a cell. This enables simple selection of packets or cells that can be transmitted without blocking at the same time.
Zwar waren für jede Porteinheit nur N-l Bits als Verfugbar- keitsvektor erforderlich, jedoch hatte dies zur Folge, dass eine Verarbeitung durch die jeweils unterschiedliche Zuordnung der Bits zu den (empfangenden) Porteinheiten erschwert wurde .Although only N-1 bits were required as an availability vector for each port unit, this had the consequence that processing was made more difficult by the different assignment of the bits to the (receiving) port units.
In gleicher Weise umfasst auch der Belegungsvektor bei der bevorzugten Ausfuhrungsform N Bits, wobei die Position eines Bit im Belegungsvektor die Zuordnung der m diesem Bit enthaltenen Information zu einer bestimmten Porteinheit bemhal- tet und wobei der eine logischer Zustand des Bits die bereits erfolgte Belegung der betreffenden Porteinheit für den Empfang eines Pakets oder einer Zelle von einer anderen Porteinheit signalisiert und der jeweils andere logische Zustand die Bereitschaft der betreffenden Porteinheit.In the same way, the occupancy vector in the preferred embodiment also comprises N bits, the position of a bit in the occupancy vector making the assignment of the information contained in this bit to a specific port unit. tet and wherein the one logical state of the bit signals the occupancy of the relevant port unit for receiving a packet or a cell from another port unit, and the other logical state indicates the readiness of the relevant port unit.
Die Steuereinheit übergibt zu Beginn eines Bearbeitungszyklus einen Anfangs-Belegungsvektor an die jeweils erste Kompara- toreinheit. Dieser kann bereits Belegungen aufweisen, wenn z.B. nicht jedem Port der Zellkonfliktauflosungseinheit eine Porteinheit zugeordnet ist oder wenn bewusst die Übertragung zu einer Porteinheit aus bestimmten Gründen verhindert werden soll.The control unit transfers an initial occupancy vector to the first comparator unit at the beginning of a processing cycle. This can already have assignments, e.g. if a port unit is not assigned to each port of the cell conflict resolution unit or if the transmission to a port unit is to be deliberately prevented for certain reasons.
Innerhalb einer Komparatoremheit erfolgt die Ermittlung der Berechtigunginformation, die an die jeweils mit der Komparatoremheit verbundene Porteinheit zu übermitteln ist, unter Einhaltung einer vorgegebenen Reihenfolge in Bezug auf die Porteinheiten oder die einzelnen Bits des Belegungsvektors.Within a comparator unit, the authorization information, which is to be transmitted to the port unit connected to the comparator unit, is determined in compliance with a predetermined sequence with respect to the port units or the individual bits of the occupancy vector.
Um einen Fairnessausgleich hinsichtlich der empfangenden Porteinheiten zu schaffen, kann die Reihenfolge zu Beginn eines Zyklus der Bestimmung der Berechtigungsinformationen durch die N Komparatoremheiten aus einer vorgegebenen Anzahl von pseudo-zufallig generierten Reihenfolgen ausgewählt werden.In order to create a fairness compensation with regard to the receiving port units, the order at the beginning of a cycle of the determination of the authorization information by the N comparator units can be selected from a predetermined number of pseudo-randomly generated sequences.
Anstatt nach jedem oder nach einer bestimmten Anzahl von Zyklen die Bearbeitungsreihenfolge innerhalb der Komparatorem- heiten zu andern, kann jede Komparatoremheit die Berechtigungsinformation für die betreffende Porteinheit immer in der Reihenfolge der Bits des Belegungsvektors ermitteln. Jeder Komparatoreinheit kann dann eine Permutationseinheit vorgeschaltet sein, welcher der Verfugbarkeitsvektor zufuhrbar ist und welche die Bits des Verfugbarkeitsvektors entsprechend einer vorgegebenen Vorschrift in ihrer Reihenfolge umordnet. Jeder Komparatoremheit kann dann ebenso eine mverse Permu- tationse heit nachgeschaltet sein, welche unter Berücksichtigung der erfolgten Permutation der Reihenfolge der Bits des Verfugbarkeitsvektors aus der ihr zugefuhrten Information der Komparatoremheit, ob und welche Position des Belegungsvek- tors belegt wurde, ermitteln, welche Berechtigungsmformation an die mit der jeweiligen Komparatoremheit verbundene Porteinheit zu übermitteln ist.Instead of changing the processing sequence within the comparator units after each or after a certain number of cycles, each comparator unit can always determine the authorization information for the port unit in question in the order of the bits of the occupancy vector. Each comparator unit can then be preceded by a permutation unit, to which the availability vector can be supplied and which re-arranges the bits of the availability vector in accordance with a predetermined rule. Each comparator unit can then also have a metric permu- tationse unit which, taking into account the permutation of the sequence of the bits of the availability vector from the information supplied to the comparator unit, whether and which position of the occupancy vector was occupied, determine which authorization information to transmit to the port unit connected to the respective comparator unit is.
Nach einer Ausfuhrungsform der Erfindung kann die Auswahlbe- rechtigung für die Übertragung des jeweiligen Pakets oder der jeweiligen Zelle zu einer jeweils anderen Porteinheit in jeder Komparatoremheit durch N-l für jede der jeweils anderen N-l Porteinheiten vorgesehene Quotenzahler oder durch N für jedes Bit des Belegungsvektors vorgesehene Quotenzahler kon- trolliert werden. Der Zahlerstand (Quote) eines Quotenzahlers wird nach jeder erfolgten Auswahl der zugeordneten Porteinheit oder nach jeder Belegung des zugehörigen Bits des Belegungsvektors mkrementiert oder dekrementiert . Nach Erreichen eines vorbestimmten Zahlerstands wird die Auswahlberechtigung für die betreffende Porteinheit oder die Belegungsberechtigung für das betreffende Bit des Belegungsvektors gesperrt.According to one embodiment of the invention, the selection authorization for the transmission of the respective packet or the respective cell to a different port unit in each comparator unit can be given by Nl quota numbers provided for each of the other N1 port units or by N quota numbers provided for each bit of the occupancy vector - be trolled. The payer status (quote) of a quote payer is incremented or decremented after each selection of the assigned port unit or after each assignment of the associated bit of the assignment vector. After a predetermined number of payer has been reached, the selection authorization for the port unit concerned or the assignment authorization for the relevant bit of the assignment vector is blocked.
Dabei stellt das Vorsehen von N Zahlern wieder die einfacher realisierbare Möglichkeit dar, wenn gleichzeitig eine Permu- tation der Bits des Verfugbarkeitsvektors erfolgt, da sonst zusatzlich die Information an die jeweilige Komparatoremheit übergeben werden musste, welches der N Bits ohnehin nicht belegt werden darf, weil dies ein Zurücksenden des Pakets oder der Zelle an die jeweils sendende Porteinheit bedeuten wurde. Dies wäre zwar theoretisch möglich, jedoch wird dieThe provision of N numbers again represents the more easily realizable option if the bits of the availability vector are permuted at the same time, since otherwise the information had to be additionally passed to the respective comparator unit, which of the N bits must not be used anyway, because this would mean sending the packet or cell back to the respective sending port unit. This would be theoretically possible, but the
Vermittlung von Signalen zwischen verschiedenen Ports ein und derselben Porteinheit vorzugsweise innerhalb der jeweiligen Porteinheit gereglt .Mediation of signals between different ports of one and the same port unit preferably regulated within the respective port unit.
Lediglich N-l Quotenzahler innerhalb einer Komparatoremheit vorzusehen, wäre jedoch ohne weiteres möglich, wenn die Bear- beitungsreihenfolge der Bits des Belegungsvektors innerhalb einer Komparatoreinheit konstant bleibt, da dann immer ein und dasselbe Bit nicht belegt werden muss bzw. darf.However, it would be readily possible to provide only Nl quota numbers within a comparator unit if the processing sequence of the bits of the occupancy vector were within of a comparator unit remains constant, since then one and the same bit must not or must not be used.
Nach einer Ausführungsform der Erfindung können die Quoten- zahler (21) einer Komparatoreinheit (13) jeweils einem bestimmten Bit des Belegungsvektors (CRres) zugeordnet sein. Die Steuereinheit (11) kann in diesem Fall alle Quotenzahler (21) aller Komparatoreinheiten (13), die einem bestimmten Bit des Belegungsvektors (CRres) zugeordnet sind, auf einen An- fangswert (Anfangs-Quote) setzen, wenn keine Komparatoreinheit (13) mehr existiert, in welcher der betreffende Quotenzahler (21) noch eine Quote besitzt und zugleich das betreffende Bit des permutierten Verfugbarkeitsvektors (CRreq*) ein zu übertragendes Paket oder eine zu übertragende Zelle an- zeigt.According to one embodiment of the invention, the odds numbers (21) of a comparator unit (13) can each be assigned to a specific bit of the occupancy vector (CRres). In this case, the control unit (11) can set all quota numbers (21) of all the comparator units (13) which are assigned to a specific bit of the occupancy vector (CRres) to an initial value (initial quota) if no comparator unit (13) there is more in which the relevant quota payer (21) still has a quota and at the same time the relevant bit of the permuted availability vector (CRreq * ) indicates a packet to be transmitted or a cell to be transmitted.
Nach einer anderen Ausführungsform der Erfindung können die Quotenzähler (21) einer Komparatoreinheit (13) jeweils einer bestimmten Porteinheit (3) zugeordnet sein. In diesem Fall kann die Steuereinheit (11) alle Quotenzahler (21) aller Komparatoreinheiten (13), die einer bestimmten Porteinheit (3) zugeordnet sind, auf einen Anfangswert (Anfangs-Quote) setzen, wenn keine Komparatoreinheit (13) mehr existiert, in welcher der betreffende Quotenzähler (21) noch eine Quote besitzt und zugleich ein Paket oder eine Zelle von der mit der Komparatoreinheit (13) verbundenen Porteinheit an die betreffende Porteinheit zu übertragen ist.According to another embodiment of the invention, the quota counters (21) of a comparator unit (13) can each be assigned to a specific port unit (3). In this case, the control unit (11) can set all quota counters (21) of all comparator units (13) which are assigned to a specific port unit (3) to an initial value (initial quota) if there is no longer a comparator unit (13) in which the relevant quota counter (21) still has a quota and at the same time a packet or a cell is to be transmitted from the port unit connected to the comparator unit (13) to the relevant port unit.
Hierbei kann den Komparatoreinheiten (13) die Permutationsin- formation zugeführt sein, wobei die Komparatoreinheiten (13) die Quotenzähler in ihrer Reihenfolge permutieren und die Information ob eine Zelle zur Übertragung zur Verfugung steht, den permutierten Verfugbarkeitsvektoren CRreq* entnehmen.The permutation information can be fed to the comparator units (13), the comparator units (13) permuting the quota counters in their order and the information whether a cell is available for transmission from the permuted availability vectors CRreq *.
Werden von der Steuereinheit einem oder mehreren Quotenzahlern eine höhere Anfangs-Quote zugeordnet wird als anderen Quotenzahlern, so lasst sich hierdurch eine Pπoπsierung bestimmter Ubertragungswege bzw. Knoten der Vermittlungseinrichtung realisieren.If the control unit assigns one or more quota payers a higher initial quota than others Quotenzahler, this way a Pπoπsierung certain transmission paths or nodes of the switching device can be realized.
Nach einer Ausfuhrungsform der Erfindung lassen sich die Komparatoremheiten jeweils unter Verwendung eines N-stufigen Pπoπty-Encoders realisieren, wobei jeder der N Eingänge des Prioπty-Encoders mit dem Ausgang eines UND-Glieds verbunden ist und wobei einem ersten Eingang des UND-Glieds das ent- sprechende Bit des ggf. permutierten Verfugbarkeitsvektors zugeführt ist, einem zweiten Eingang des UND-Glieds das betreffende Bit des Belegungsvektors, der am Ausgang der jeweils vorghergehenden Komparatoremheit anliegt und einem dritten Eingang des UND-Glieds die Information des zugehori- gen Quotenzahlers, die logisch EINS ist, wenn noch eine Auswahlberechtigung gegeben ist, und logisch NULL, wenn keine Auswahlberechtigung mehr gegeben ist.According to one embodiment of the invention, the comparator units can each be implemented using an N-stage Pπoπty encoder, each of the N inputs of the Prioπty encoder being connected to the output of an AND gate, and a first input of the AND gate speaking bit of the possibly permuted availability vector is supplied, a second input of the AND gate the relevant bit of the occupancy vector which is present at the output of the preceding comparator unit and a third input of the AND gate the information of the associated quota number, which is logical ONE is when there is still a selection right and logically ZERO when there is no longer a selection right.
Die Zellkonfliktauflosungseinheit nach der Erfindung kann als separater integrierter Schaltkreis ausgebildet sein. Ebenso ist eine derartige Einheit jedoch auch in eine zentrale Vermittlungseinrichtung (einen Crossbar-Chip) integrierbar, welcher N Ports zum Anschluss von maximal N Porteinheiten aufweist .The cell conflict resolution unit according to the invention can be designed as a separate integrated circuit. However, such a unit can also be integrated into a central switching device (a crossbar chip) which has N ports for connecting a maximum of N port units.
Weitere Ausfuhrungsformen der Erfindung ergeben sich aus den Unteranspruchen.Further embodiments of the invention result from the subclaims.
Die Erfindung wird nachfolgend anhand eines in der Zeichnung dargestellten Ausfuhrungsbeispiels naher erläutert. In der Zeichnung zeigen:The invention is explained in more detail below with reference to an exemplary embodiment shown in the drawing. The drawing shows:
Fig. 1 die schematische Architektur einer Vermittlungsvorrichtung bei gleichzeitiger schematischer Darstellung des Datenflusses mit einer in den Crossbar-Chip integrierten Zellkonfliktauflosungseinheit nach der Erfindung; Fig. 2 die schematische Darstellung der zentralen Vermitt- lungseinheit und einer Porteinheit in Fig. 1 unter gleichzeitiger Darstellung des Informationsflusses bei der Kollisionsauflosung;1 shows the schematic architecture of a switching device with a simultaneous schematic representation of the data flow with a cell conflict resolution unit integrated in the crossbar chip according to the invention; FIG. 2 shows the schematic representation of the central switching unit and a port unit in FIG. 1, with simultaneous representation of the information flow in the collision resolution;
Fig. 3 den schematischen Aufbau der von den Porteinheiten zur zentralen Vermittlungseinheit (Fig. 3a) und von der zentralen Vermittlungseinheit zu den Portemhei- ten (Fig. 3b) übertragenen Datenblocke;3 shows the schematic structure of the data blocks transmitted from the port units to the central switching unit (FIG. 3a) and from the central switching unit to the portals (FIG. 3b);
Fig. 4 den schematischen Aufbau der zentralen Vermittlungseinheit in den Fig. 1 und 2;4 shows the schematic structure of the central switching unit in FIGS. 1 and 2;
Fig. 5 den schematischen Aufbau der Zellkonfliktauflosungseinheit nach der Erfindung undFig. 5 shows the schematic structure of the cell conflict resolution unit according to the invention and
Fig. 6 den schematischen Aufbau des Kernstucks einer Komparatoremheit in Fig. 5.FIG. 6 shows the schematic structure of the core piece of a comparator unit in FIG. 5.
Fig. 1 zeigt schematisch die Architektur einer Vermittlungsvorrichtung 1 nach der Erfindung, welche aus insgesamt N Porteinheiten 3ι bis 3N und einer zentralen Vermittlungsem- heit 5 besteht. Jede der N Porteinheiten 3ι 3N weist n Ports 7X bis 7n auf, denen jeweils ein Signal S1D zugeführt werden kann, wobei gilt: l≤i≤n und l≤j≤N. Die Porteinheiten sind üblicherweise so ausgebildet, dass an jedem Port eine bidirektionale Kommunikation möglich ist. Selbstverständlich kann das Prinzip der vorliegenden Erfindung jedoch auch auf Systeme angewandt werden, bei denen bestimmte oder alle Ports nur für eine unidirektionale Kommunikation ausgebildet sind. Dies wird jedoch in der Praxis eher selten der Fall sein.Fig. 1 shows the architecture schematically shows a switching device 1 according to the invention, which standardize a total of N port units 3ι to 3 N, and a central Vermittlungsem- 5 consists. Each of the N port units 3ι 3 N has n ports 7 X to 7 n, to each of which a signal S 1D can be supplied, where: l≤i≤n and l≤j≤N. The port units are usually designed so that bidirectional communication is possible at each port. Of course, the principle of the present invention can, however, also be applied to systems in which certain or all ports are designed for unidirectional communication only. In practice, however, this will rarely be the case.
Die m Fig. 1 dargestellten Porteinheiten 3 sind vorzugsweise als integrierte Portbausteine oder separate Baueinheiten ausgeführt. Gleiches gilt für die zentrale Vermittlungsemhe t 5. Hierdurch wird ein modularer Aufbau erreicht, der wiederum eine einfache Skalierung, d.h. Anpassung der Vermittlungsvorrichtung an die jeweils erforderliche Anzahl von zu vermittelnden Datenleitungen ermöglicht.The port units 3 shown in FIG. 1 are preferably designed as integrated port modules or separate modules. The same applies to the central mediation effort 5. This achieves a modular structure, which in turn enables simple scaling, ie adaptation of the switching device to the number of data lines to be switched, which is required in each case.
Wie in Fig. 1 dargestellt, sind die Porteinheiten 3 und die zentrale Vermittlungsemheit 5 über Schnittstelleneinheiten verbunden. Die in den Porteinheiten 3 vorgesehenen Schnitt- stellenemheiten sind dabei mit „CB-IF" (Crossbar Interface) bezeichnet und die in der zentralen Vermittlungsemheit 5 vorgesehenen Schnittstellenemheiten mit „Port IF" (Port Interface) . Dabei ist in der zentralen Vermittlungsemheit 5 f r ede Porteinheit 3 eine separate Schnittstelleneinheit Port IF vorgesehen. Jede Schnittstelleneinheit Port IF und CB-IF kann, wie aus F g. 4 für die zentrale Vermittlungseinheit ersichtlich, über eine Low-Voltage-Differential- Signalmg-Emheit (LVDS) mit den Ubertragungsleitungen zwischen den Porteinheiten 3 und der zentralen Vermittlungsemheit 5 verbunden sein. Hierdurch ist eine Reduktion der An- zahl der Verbindungsleitungen möglich, wobei beispielsweise zwischen den Schnittstelleneinheiten Port IF bzw. CB-IF und den LVDS-Emheiten 16 Bit breite Datenleitungen vorgesehen sein können und zwischen den LVDS-Emheiten 4 Bit breite Datenleitungen (jeweils differentielle Signale auf insgesamt 8 physikalischen Leitungen) .As shown in Fig. 1, the port units 3 and the central switching unit 5 are connected via interface units. The interface units provided in port units 3 are referred to as "CB-IF" (crossbar interface) and the interface units provided in central switching unit 5 are referred to as "port IF" (port interface). In this case, a separate interface unit Port IF is provided in the central switching unit 5 for each port unit 3. Each interface unit Port IF and CB-IF can, as from F g. 4 for the central switching unit, can be connected to the transmission lines between the port units 3 and the central switching unit 5 via a low-voltage differential signaling unit (LVDS). This enables the number of connecting lines to be reduced, for example 16-bit data lines between the interface units Port IF or CB-IF and the LVDS units and 4-bit data lines (each with differential signals) between the LVDS units on a total of 8 physical lines).
Die zentrale Vermittlungsemheit 5 übernimmt die Funktion eines Crossbar-Schalters, so dass eine vollständig zeitlich parallele interne Datenübertragung von maximal N (Crossbar- internen) Signalen möglich ist (bei Realisierung einer Voll- duplexubertragung über LVDS-Emheiten) . Die Datenem- /ausgange der Schnittstellenemheiten Port IF sind mit der eigentlichen Switchmg-Matπx (Matrix) verbunden. Des Weiteren kann ein Port IF die Switching-Matπx m der ihr mitge- teilten Weise durchschalten, so dass der gewünschte Pfad von einem Port IF zu einem anderen Port IF innerhalb der zentralen Vermittlungsemheit für die Datenübertragung zur Verfu- gung steht. Um zu verhindern, dass mehrere Ports 7 verschiedener Porteinheiten 3 gleichzeitig auf einen Port 7 einer anderen Porteinheit zugreifen - dies wurde einen Zellverlust bzw. eine interne Blockierung bedeuten -, ist eine Einheit 8 zur Auflosung von Kollisionen vorgesehen, die im Folgenden auch als Contention-Resolution-Einheit (CR) bezeichnet wird. Die CR-Emheit 8 ist vorzugsweise innerhalb der zentralen Vermittlungseinheit vorgesehen und zusammen mit dieser als integrierter Schaltkreis ausgebildet. Da die CR-Emheit 8, wie aus der folgenden Beschreibung ersichtlich, sehr schnell Daten zwischen ihr und den Schnittstellenemheiten Port IF austauschen muss, ergibt sich durch die Integration der CR- Einheit der Vorteil sehr kurzer Hochgeschwmdigkeitsubertra- gungsleitungen.The central switching unit 5 takes on the function of a crossbar switch, so that a completely temporally parallel internal data transmission of a maximum of N (crossbar internal) signals is possible (when realizing full duplex transmission via LVDS units). The data inputs / outputs of the interface units Port IF are connected to the actual Switchmg-Matπx (matrix). Furthermore, a port IF can switch through the switching matrix in the manner communicated to it, so that the desired path from one port IF to another port IF is available within the central switching unit for data transmission. is available. In order to prevent several ports 7 of different port units 3 from simultaneously accessing a port 7 of another port unit - this would mean cell loss or internal blocking - a collision resolution unit 8 is provided, which is also referred to below as a contention resolution. Resolution unit (CR) is called. The CR unit 8 is preferably provided within the central switching unit and is designed together with the latter as an integrated circuit. Since the CR unit 8, as can be seen from the following description, has to exchange data very quickly between it and the interface units port IF, the integration of the CR unit results in the advantage of very short high-speed transmission lines.
Im Folgenden wird anhand der Figuren das erfmdungsgemaße Verfahren bzw. die Funktion der Vermittlungsvorrichtung nach der Erfindung naher erläutert:The method and the function of the switching device according to the invention are explained in more detail below with reference to the figures:
Entsprechend der Darstellung m Fig. 1 sind den Ports 7X bis 7n der Porteinheiten 3ι bis 3N jeweils ein Signal S1;ι zugeführt. Bei den Signalen handelt es sich um jeweils einen Strom von Datenpaketen, die eine unterschiedliche Lange aufweisen können.1, the ports 7 X to 7 n of the port units 3 1 to 3 N are each supplied with a signal S 1; The signals are each a stream of data packets, which can have different lengths.
Zunächst werden die Datenpakete der einzelnen Signale S13 von den Porteinheiten 3 segmentiert, d.h. in einzelne Zellen konstanter Lange aufgeteilt. Die Zellen werden m einem Pufferspeicher 9 abgelegt, der in den Porteinheiten 3 integriert oder als externer Speicher ausgebildet sein kann. Die Segmentierung übernimmt eine in jeder Porteinheit 3 vorgesehene, nicht naher dargestellte Steuereinheit, die den Pufferspeicher 9 so organisiert, dass für jede der jeweils anderen Porteinheiten 3 ein separater virtueller Pufferspeicher (9a) entsteht, welchem die an die betreffende andere Porteinheit zu übertragenden Zellen enthalten sind. Zu diesem Zweck wertet jede Porteinheit 3 bzw. deren Steuereinheit die Ad- ressinformation jedes empfangenen Pakets aus, und stellt anhand dieser Information fest, ob das Paket bzw. die entsprechenden Zellen an eine andere Porteinheit 3 übertragen werden müssen oder nicht und ordnet die entsprechenden Zellen dem jeweiligen virtuellen (9a) Speicher zu. Die Zuordnung der Zellen eines Datenpakets untereinander kann durch das Vorsehen von Pomtern aufrechterhalten werden kann. Selbstverständlich kann auch jeweils em separater Speicher für jede der anderen Porteinheiten vorgesehen sein.First, the data packets of the individual signals S 13 are segmented by the port units 3, that is to say divided into individual cells of constant length. The cells are stored in a buffer memory 9, which can be integrated in the port units 3 or designed as an external memory. The segmentation is carried out by a control unit (not shown in detail) in each port unit 3, which organizes the buffer memory 9 in such a way that for each of the other port units 3 a separate virtual buffer memory (9a) is created, which contains the cells to be transferred to the other port unit in question are. For this purpose, each port unit 3 or its control unit evaluates the ad address information of each received packet, and uses this information to determine whether the packet or the corresponding cells have to be transmitted to another port unit 3 or not and assigns the corresponding cells to the respective virtual (9a) memory. The assignment of the cells of a data packet to one another can be maintained by providing pomters. Of course, a separate memory can also be provided for each of the other port units.
Bei den separaten oder virtuellen Speichern (9a) handelt es sich dem Typ nach um FIFO-Speicher, da beim Em- und Auslesen der Zellen deren Reihenfolge erhalten bleiben soll.The separate or virtual memories (9a) are of the FIFO type because the sequence of the cells should be preserved when the cells are read in and out.
Stellt die Porteinheit fest, dass keine Übertragung an eine andere Porteinheit erforderlich ist, so übernimmt die Porteinheit den Porte heit-mternen Vermittlungsprozess . Selbstverständlich wird m der Regel auch hierfür eine Pufferung der Datenpakete notwendig sein, nicht jedoch zwingend deren Segmentierung. Da diese Portemheit-mterne Vermittlungsfunk- tion der Vermittlungsvorrichtung 1 für die vorliegende Erfindung nicht relevant ist, kann auf eine detailliertere Erläuterung verzichtet werden.If the port unit determines that no transfer to another port unit is required, the port unit takes over the port-internal switching process. Of course, buffering of the data packets will usually also be necessary for this, but not necessarily segmenting them. Since this port-internal switching function of the switching device 1 is not relevant to the present invention, a more detailed explanation can be dispensed with.
Em derartiger Pufferspeicher 9 pro Porteinheit 3 ist in jedem Fall erforderlich, da intern jeweils nur eine Zelle von einer Porteinheit zur zentralen Vermittlungsemheit übertragen werden kann. Zudem wird bei einer asynchronen Übertragung der Signale S13 eine Pufferung erforderlich, um Ubertragungs- spitzen abzufangen. Dies ist beispielsweise in ATM- und E- thernet-Systemen der Fall, da unterschiedliche Dienste und unterschiedliche Ports mit unterschiedlichen Datenübertragungsraten arbeiten und insbesondere bei IP-Verkehr die Hea- der-Auswertezeit sehr stark streut.Such a buffer memory 9 per port unit 3 is necessary in any case, since only one cell can be transferred internally from one port unit to the central switching unit. In addition, in the case of asynchronous transmission of the signals S 13, buffering is required in order to intercept transmission peaks. This is the case, for example, in ATM and Ethernet systems, since different services and different ports work with different data transmission rates and the header evaluation time is very scattered, particularly in the case of IP traffic.
Grundsätzlich kann auch auf eine Segmentierung der Pakete zur internen Übertragung verzichtet werden und eine Übertragung der Datenpakete innerhalb der Vermittlungsvorrichtung 1 im Ganzen erfolgen. Durch eine Segmentierung ergibt sich jedoch der Vorteil, dass innerhalb der Vermittlungsvorrichtung unabhängig von der jeweiligen Lange der Pakete eine taktsynchrone Übertragung erfolgen kann. Zudem wird eine faire Behandlung der einzelnen (Ausgange der) Porteinheiten einfacher.In principle, segmentation of the packets for internal transmission and transmission are also not necessary of the data packets within the switching device 1 as a whole. However, segmentation has the advantage that clock-synchronous transmission can take place within the switching device regardless of the respective length of the packets. In addition, fair treatment of the individual (exits of) port units becomes easier.
Die Übertragung der Zellen innerhalb der Vermittlungsvorrichtung 1 erfolgt taktsynchron, d.h. in einem Timeslot werden jeweils em oder mehrere Zellen von den Porteinheiten 3 zur zentralen Vermittlungsemheit 5 und umgekehrt übertragen. Em Timeslot kann bei einer internen Ubertragungsgeschwmdigkeit von 2 Gbit/s (auf jeder Verbindung zwischen den Porteinheiten und der zentralen Vermittlungseinheit und innerhalb der zent- ralen Vermittlungsemheit) und einer Zellenlange oder -große von 70 Bit beispielsweise eine Zeitdauer von 280 ns aufweisen.The cells within the switching device 1 are transmitted isochronously, i.e. In a timeslot, one or more cells are transmitted from the port units 3 to the central switching unit 5 and vice versa. With an internal transmission speed of 2 Gbit / s (on each connection between the port units and the central switching unit and within the central switching unit) and a cell length or size of 70 bits, an timeslot can have a duration of 280 ns, for example.
Um eine Blockierung innerhalb der Vermittlungsvorrichtung zu vermeiden, übermittelt jede Porteinheit 3 zunächst Verfugbar- keitsmformationen an die zentrale Vermittlungseinheit 5. Die Verfugbarkeitsmformationen beinhalten, für welche anderen Porteinheiten momentan in der jeweiligen Porteinheit Zellen zur Übertragung vorhanden sind. Im oben angegebenen Modell der in den Porteinheiten für die jeweils anderen Porteinheiten vorgesehenen virtuellen separaten Pufferspeicher (9a) ausgedruckt, beinhalten die Verfugbarkeitsmformationen also, ob in den einzelnen virtuellen Pufferspeichern jeweils keine oder wenigstens eine Zelle enthalten ist.In order to avoid blocking within the switching device, each port unit 3 first transmits availability information to the central switching unit 5. The availability information contains for which other port units there are currently cells for transmission in the respective port unit. In the above-mentioned model of the virtual separate buffer stores (9a) provided in the port units for the respective other port units, the availability information thus includes whether the individual virtual buffer stores contain no or at least one cell.
Die Verfugbarkeitsmformationen können, wie in Fig. 3a dargestellt, im Header der jeweils von den Porteinheiten 3 zur zentralen Vermittlungsemheit 5 übertragenen Zellen übertragen werden, um einen separaten Ubertragungsschπtt und den damit verbundenen höheren Protokollaufwand zu vermeiden. Die Verfugbarkeits formationen können dabei als Contention- Request-Vektor (CRreq) zusammengefasst werden, wobei der Vektor entsprechend der Anzahl der Porteinheiten aus N Bit besteht. Die Position jedes Bit innerhalb des CRreq-Vektors gibt die Nummer j (l≤j≤N) der Porteinheit 3-, an und die Belegung des betreffenden Bit, ob in der jeweiligen Porteinheit für die Porteinheit 3-, eine Zelle zur Übertragung zur Verfugung steht.The availability information can, as shown in FIG. 3a, be transmitted in the header of the cells transmitted from the port units 3 to the central switching unit 5 in order to avoid a separate transmission step and the associated higher protocol effort. The availability formations can be summarized as a contention request vector (CRreq), the vector consisting of N bits corresponding to the number of port units. The position of each bit within the CRreq vector indicates the number j (l≤j≤N) of port unit 3, and the assignment of the bit concerned, whether in the respective port unit for port unit 3, a cell for transmission is available stands.
Der CRreq-Vektor muss nicht zwingend mit der tatsachlich im nächsten Timeslot zu übertragenden Zelle verknüpft sein, sondern kann ein oder mehrere Timeslots in die Zukunft gerichtet sein., D.h., die jeweilige Verfugbarkeitsmformation bezieht sich auf Zellen, die erst m zwei oder mehreren Timeslots in der Zukunft möglicherweise übertragen werden, wobei diese Zeitverschiebung bei allen Porteinheiten 3 konstant sein muss .The CRreq vector does not necessarily have to be linked to the cell that is actually to be transmitted in the next timeslot, but can be directed to one or more timeslots in the future. That is, the respective availability information relates to cells that are only in two or more timeslots may be transmitted in the future, this time shift having to be constant for all port units 3.
Die zentrale Vermittlungsemheit 5 bzw. die Schnittstellen- emheiten Port IF lesen nach dem Empfang der ggf. mehreren gleichzeitig von den Porteinheiten übertragenen Zellen jeweils die darin enthaltenen Verfugbarkeitsmformationen aus und übermitteln diese zusammen mit der Information, von welcher Porteinheit die Verfugbarkeitsmformation übertragen wurden, an die CR-Emheit 8. Die CR-Emheit 8 ermittelt nach einem vorgegebenen Contention-Resolution-Alonthmus jeweils eine mögliche Kombination von zulassigen, d.h. kollisions- freien Ubertragungsmoglichkeiten von entsprechenden Sende- Portemheiten zu entsprechenden Empfangs-Portemheiten.The central switching unit 5 or the interface units port IF read out the availability information contained therein after receiving the possibly several cells transmitted simultaneously by the port units and transmit this together with the information from which port unit the availability information was transmitted to CR-Emheit 8. The CR-Emheit 8 determines a possible combination of admissible, ie., According to a given contention-resolution algorithm collision-free transmission options from corresponding send port units to corresponding receive port units.
Die so ermittelte Kombination wird in Form von Berechtigungsinformation CRgnt zumindest an diejenigen Porteinheiten 3 übermittelt, die für den betreffenden Timeslot eine Ubertra- gungsberechtigung erhalten sollen.The combination determined in this way is transmitted in the form of authorization information CRgnt at least to those port units 3 which are to be given transmission authorization for the relevant timeslot.
Vorzugsweise werden diese Berechtigungsmformationen, wie aus Fig. 3b ersichtlich, wiederum im Header von Zellen ubertra- gen. Beispielsweise kann die jeweilige Schnittstelleneinheit Port IF die kodierte Chip-ID der Porteinheit, zu der eine Übertragung von der mit der jeweiligen Schnittstelleneinheit Port IF verbundenen Porteinheit freigegeben wurde, in den Header einer zu übertragenden Zelle schreiben, wenn der mit der jeweiligen Port IF verbundenen Porteinheit für den betreffenden Timeslot eine Ubertragungsberechtigung (für die betreffende Zelle) erteilt werden soll. Soll der betreffenden Porteinheit keine Berechtigung erteilt werden, so kann der Header im Bereich, der für die Berechtigungsinformation reserviert ist, eine definierte Belegung enthalten, die von den Porteinheiten als „keine Berechtigung erteilt" interpretiert wird.This authorization information, as can be seen in FIG. 3b, is preferably transmitted again in the header of cells. For example, the respective interface unit Port IF can write the coded chip ID of the port unit to which transmission from the port unit connected to the respective interface unit Port IF has been released into the header of a cell to be transmitted if the one with the respective port IF connected port unit for the relevant timeslot a transfer authorization (for the relevant cell) is to be granted. If no authorization is to be granted to the port unit in question, the header in the area reserved for the authorization information can contain a defined assignment which is interpreted by the port units as "no authorization granted".
Die zentrale Vermittlungsemheit 5 bzw. die Schnittstellenemheiten Port IF lesen nach dem Empfang einer Zelle nicht nur die den Verfugbarkeitsvektor CRreq aus, sondern auch zumindest diejenigen Adressinformationen (m Fig. 3 mit „desti- nation" bezeichnet) , die benotigt werden, um die Porteinheit zu ermitteln, an die die betreffende Zelle übertragen werden soll.After receiving a cell, the central switching unit 5 or the interface units Port IF not only read out the availability vector CRreq, but also at least the address information (in FIG. 3 labeled “destination”) that is required for the port unit to determine to which the cell in question is to be transferred.
Anstelle einer derartigen Adressauswertung kann jede Schnittstelleneinheit Port IF auch die Berechtigungsinformationen, die ihr von der CR-Emheit zugeführt werden, dazu verwenden, um im betreffenden Timeslot die Switchmg-Matrix so durchzuschalten, dass die jeweilige Zelle noch im selben Timeslot an die richtige Porteinheit übertragen wird.Instead of such an address evaluation, each interface unit Port IF can also use the authorization information supplied to it by the CR unit to switch the Switchmg matrix in the relevant timeslot in such a way that the respective cell still transmits to the correct port unit in the same timeslot becomes.
Da im Header der Zellen, die von der zentralen Vermittlungsemheit 5 an die jeweiligen Porteinheiten 3 übertragen werden, kein CRreq-Vektor enthalten sein muss, kann dieser Platz im Header zur Übertragung anderer Informationen genutzt werden, beispielsweise für Zustandsinformationen der Portemhei- ten 3. In den Porteinheiten 3 werden nach dem Empfang einer Zelle die Berechtigungsinformationen CRgnt ausgelesen und festgestellt, ob für den betreffenden Timeslot eine Berechtigung (entsprechend den zuvor an die zentrale Vermittlungseinheit 5 übersandten Verfugbarkeitsmformationen) erteilt wurdeSince no CRreq vector has to be contained in the header of the cells which are transmitted from the central switching unit 5 to the respective port units 3, this space in the header can be used for the transmission of other information, for example for status information of the portals 3. After receiving a cell, the authorization information CRgnt is read out in the port units 3 and it is determined whether an authorization (corresponding to the availability information previously sent to the central switching unit 5) has been issued for the relevant timeslot
Die Porteinheit bzw. die entsprechende Steuereinheit, die nach dem Empfang einer Zelle feststellt, dass eine Berechtigungsinformation vorliegt, stellt die betreffende Zelle, für die zuvor eine Verfugbarkeitsmformation an die zentrale Vermittlungsemheit übermittelt wurde, zur Übertragung in dem betreffenden Timeslot bereit. Hierzu wird die betreffende Zelle aus dem Speicher 9 ausgelesen und an die Schnittstelleneinheit CB-IF übergeben.The port unit or the corresponding control unit which, after receiving a cell, determines that authorization information is available, makes the relevant cell, for which availability information was previously transmitted to the central switching unit, available for transmission in the relevant timeslot. For this purpose, the cell in question is read from the memory 9 and transferred to the interface unit CB-IF.
Nach dem Empfang einer Zelle durch eine Porteinheit 3 liest die Steuereinheit der Porteinheit die Adressinformation im Header der Zelle und ordnet die Zelle dem jeweilige Ausgangsport bzw. der jeweiligen Media Access Control (MAC) (nicht dargestellt) zu. Zudem werden in der Porteinheit bzw. der jeweiligen MAC der einzelnen Ports die einzelnen Zellen wieder zu den ursprünglichen Datenpaketen zusammengesetzt und an den jeweiligen Adressaten übermittelt.After receipt of a cell by a port unit 3, the control unit of the port unit reads the address information in the header of the cell and assigns the cell to the respective output port or the respective media access control (MAC) (not shown). In addition, the individual cells are reassembled into the original data packets in the port unit or the respective MAC of the individual ports and transmitted to the respective addressees.
Nach dem Empfang einer Zelle durch die Schnittstelleneinheit CB-IF einer Porteinheit und dem Auslesen und Auswerten der Berechtigungsinformation muss sofort eine neue Verfugbarkeitsmformation CRreq ermittelt und m der nächsten zur zentralen Vermittlungsemheit 5 zu übertragenden Zelle einge- fugt werden. Dieser Vorgang ist extrem zeitkritisch.After receiving a cell by the interface unit CB-IF of a port unit and reading and evaluating the authorization information, a new availability information CRreq must be determined immediately and inserted into the next cell to be transmitted to the central switching unit 5. This process is extremely time-critical.
Fig. 5 zeigt den schematischen internen Aufbau der Contenti- on-Resolution-Emheit 8, welche eine Steuereinheit 11 und eine Kaskade von N Komparatore heiten 13 (13ι bis 13N) auf- weist. Jeder Komparatoremheit 13 ist bei der in Fig. 5 dargestellten Ausfuhrungsform eine Permutationsemheit 15 (15x bis 15N) vorgeschaltet, welche jeweils mit den Schnittstel- lenemheiten PORT IF der zentralen Vermittlungseinheit 5 verbunden sind. Die Permutationsemheiten 15 werden von einem Zahler 16 beaufschlagt. Die Komparatoren sind innerhalb der Kaskade über parallele Verbmdungsleitungen 17 verbunden, über die der Belegungsvektor CRres (vgl. unten) jeweils von einer Komparatoremheit an die jeweils nächste Komparatoremheit innerhalb der Kaskade übergeben werden kann. Jeder Komparatore heit 13 ist bei der in Fig.5 dargestellten Conten- tion-Resolution-Emheit eine inverse Permutationsemheit 19 (19ι bis 19N) nachgeschaltet. Die Steuereinheit 11 steuert den Zahler 16 an und ist zudem mit jeder der Komparatore heiten 13 verbunden. Darüber hinaus ist die Steuereinheit 11 über Verbmdungsleitungen 17 mit dem ersten Komparator 13ι der Kaskade verbunden.5 shows the schematic internal structure of the content resolution unit 8, which has a control unit 11 and a cascade of N comparators 13 (13 1 to 13 N ). In the embodiment shown in FIG. 5, each comparator unit 13 is preceded by a permutation unit 15 (15 × to 15 N ), each of which is connected to the interface lenemorten PORT IF of the central switching unit 5 are connected. The permutation units 15 are acted upon by a payer 16. The comparators are connected within the cascade via parallel connection lines 17, via which the occupancy vector CRres (see below) can be transferred from one comparator unit to the next comparator unit within the cascade. Each comparator unit 13 is followed by an inverse permutation unit 19 (19 1 to 19 N ) in the Contenction Resolution unit shown in FIG. The control unit 11 controls the counter 16 and is also connected to each of the comparators 13. In addition, the control unit 11 is connected via connection lines 17 to the first comparator 13ι of the cascade.
Die in Fig. 5 dargestellte Contention-Resolution-Emheit arbeitet wie folgt:The contention resolution unit shown in FIG. 5 operates as follows:
In jedem Timeslot wird von der Contention-Resolution-Emheit 8 em Gesamtzyklus durchlaufen, innerhalb dessen jeweils die Berechtigungsinformationen CRgnt für alle Porteinheiten ermittelt werden, die dann über die Schnittstellenemheiten PORT IF an die jeweiligen Porteinheiten übertragen werden.In each timeslot, the contention resolution unit runs through an entire cycle, within which the authorization information CRgnt for each port unit is determined, which are then transmitted to the respective port units via the interface units PORT IF.
Das Ermitteln der Berechtigungsinformationen CRgnt erfolgt dabei getaktet, wobei der Takt in der Contention-Resolution- Emheit 8 vorzugsweise gleich dem Takt in der übrigen zentralen Vermittlungsemheit ist.The authorization information CRgnt is ascertained in a clocked manner, the clock in the contention resolution unit 8 preferably being the same as the clock in the other central switching unit.
Zu Beginn eines Gesamtzyklus werden den Permutationsemheiten 15 die Contention-Request-Vektoren CRreq, d.h. die Verfugbar- keitsvektoren der einzelnen Porteinheiten übermittelt. In den Permutationsemheiten 15 ist jeweils eine bestimmte Anzahl von pseudo-zufallig generierten Reihenfolgen abgelegt, von denen jeweils in allen Permutationsemheiten dieselbe Reihenfolge aktiv ist. Durch die Beaufschlagung der Permutationsemheiten 15 durch den Ausgang des Zahlers 16 wird jeweils eine bestimmte der Reihenfolgen aktiviert. Selbstverständlich kann auch die Abfolge der Reihenfolgen in den Permutationseinheiten festgelegt sein, so dass durch das einfache Zuführen eines „Weiterschalt-Impulses" jeweils die nächste Reihen- folge aktiviert werden kann.At the beginning of an overall cycle, the permission request vectors CRreq, that is to say the availability vectors of the individual port units, are transmitted to the permutation units 15. A certain number of pseudo-randomly generated sequences are stored in the permutation units 15, of which the same sequence is active in all permutation units. By applying the permutation units 15 through the output of the payer 16 is in each case activated a certain one of the orders. Of course, the sequence of the sequences can also be defined in the permutation units, so that the next sequence can be activated by simply supplying a "step-by-step pulse".
Das Verandern der Reihenfolge kann jeweils nach einer bestimmten Anzahl von Gesamtzyklen erfolgen. In der Praxis wird man jedoch vorzugsweise nach jedem Gesamtzyklus auf eine an- dere Reihenfolge umschalten.The order can be changed after a certain number of total cycles. In practice, however, one will preferably switch to a different order after each overall cycle.
Die Permutationseinheit verwendet die jeweils aktive Reihenfolge, um die Bits des CRreq Vektors entsprechend umzuordnen. Hierdurch wird erreicht, dass keine der Porteinheiten 3 (als Empfangs-Porteinheiten) durch ihre Position innerhalb desThe permutation unit uses the active sequence in each case to reorder the bits of the CRreq vector accordingly. This ensures that none of the port units 3 (as receiving port units) are positioned within the
Belegungsvektors bevorzugt ist. Die umgeordneten CRreq Vektoren werden den Komparatoreinheien 13 übergeben.Occupancy vector is preferred. The rearranged CRreq vectors are transferred to the comparator units 13.
Die Steuereinheit 11 übergibt einen Anfangs-Belegungsvektor CRres an die erste Komparatoreinheit 13χ. In jeder Komparatoreinheit 13 ist zudem für jedes Bit des Belegungsvektors ein Quotenzahler 21 (Fig. 6) vorgesehen. Jeder Quotenzähler stellt fest, wie oft das betreffende Bit des Belegungsvektors bereits von der betreffenden Komparatoreinheit 13 ausgewählt wurde. Wird eine vorgegeben maximale Anzahl überschritten, so wird in der Komparatoreinheit die Berechtigung zur erneuten Auswahl dieses Bits gesperrt.The control unit 11 transfers an initial occupancy vector CRres to the first comparator unit 13χ. A quota number 21 (FIG. 6) is also provided in each comparator unit 13 for each bit of the occupancy vector. Each quota counter determines how often the relevant bit of the occupancy vector has already been selected by the relevant comparator unit 13. If a predetermined maximum number is exceeded, the authorization to re-select this bit is blocked in the comparator unit.
Hierzu können die Quotenzahler 21 beispielsweise als von der Steuereinheit rücksetzbarer Ruckwartszahler ausgebildet sein (durch das Rücksetzen wird der Zähler auf einen vordefinierten festen Wert gesetzt). Soll bewusst eine Priorisierung einer Porteinheit (als sendende Porteinheit) erzeugt werden, so können die Quotenzahler als von der Steuereinheit mit vor- gegebenen Werten ladbare Zahler ausgebildet sein. Die Quotenzahler weisen vorzugsweise einen binaren Ausgang auf, wobei em logisch Zustand (beispielsweise logisch EINS) eine Auswahlberechtigung signalisiert und der jeweils andere Zustand (beispielsweise logisch NULL) das Fehlen der Auswahl- berechtigung.For this purpose, the odds counter 21 can be designed, for example, as a backward counter that can be reset by the control unit (by resetting the counter is set to a predefined fixed value). If a prioritization of a port unit (as a sending port unit) is to be deliberately generated, the quota payer can be designed as payer that can be loaded by the control unit with predefined values. The odds counters preferably have a binary output, a logic state (for example logic ONE) signaling selection authorization and the other state (for example logic ZERO) the absence of the selection authorization.
Zunächst wird in der ersten Komparatore heit 13χ anhand des Anfangs-Belegungsvektors , des umgeordneten CRreq Vektors und der Ausgange der Quotenzahler für jedes Bit des Belegungsvek- tors geprüft, ob dieses bereits belegt oder noch frei ist. Dabei kann auch der Anfangs-Belegungsvektor bereits belegt Bits aufweisen. Beispielsweise kann die Steuereinheit entsprechende Bits vorbelegen, wenn nicht alle Schnittstellenemheiten PORT IF der zentralen Vermittlungsemheit 5 mit Porteinheiten 3 verbunden sind.First, in the first comparator 13arat, based on the initial occupancy vector, the rearranged CRreq vector and the outputs of the quotas for each bit of the occupancy vector, it is checked whether it is already occupied or still free. The initial occupancy vector can also have bits already occupied. For example, the control unit can pre-assign corresponding bits if not all interface units PORT IF of the central switching unit 5 are connected to port units 3.
Wird em Bit als belegt festgestellt, so erübrigt sich jede weitere Prüfung. Wird em Bit dagegen als frei erkannt, so wird geprüft, ob das betreffende Bit (mit derselben Position) des umgeordneten CRreq Vektors das Vorhandensein einer zu übertragenden Zelle signalisiert. Ist dies der Fall und wird anhand des Ausgangs des betreffenden Quotenzahlers eine Auswahlberechtigung erkannt, so belegt die Komparatoremheit 13ι das betreffende Bit des Belegungsvektors. Der Prüf organg ist damit abgeschlossen, da jeweils nur eine Zelle an die entsprechende Porteinheit übertragen werden kann. Wird für dieses Bit des Belegungsvektors CRres eine fehlende Auswahlberechtigung erkannt oder zeigt der CRreq Vektor keine zu übertragende Zelle an, so wird der Prufvorgang fortgesetzt. Die- ses Prüfverfahrens wird solange durchgeführt, bis em Bit des CRres Vektors von der Komparatoremheit 13ι belegt wurde oder bis alle Bits des Vektors geprüft wurden.If an em bit is found to be occupied, no further testing is necessary. If, on the other hand, a bit is recognized as free, it is checked whether the relevant bit (with the same position) of the rearranged CRreq vector signals the presence of a cell to be transmitted. If this is the case and a selection authorization is recognized on the basis of the output of the relevant quota number, the comparator unit 13ι occupies the relevant bit of the occupancy vector. This completes the test process, since only one cell can be transferred to the corresponding port unit at a time. If a missing selection authorization is recognized for this bit of the occupancy vector CRres or if the CRreq vector does not indicate a cell to be transmitted, the checking process is continued. This test method is carried out until a bit of the CRres vector has been occupied by the comparator unit 13ι or until all bits of the vector have been checked.
Diese Prüfung wird bei der Fig. 5 dargestellten Ausfuh- rungsform vorzugsweise in der Reihenfolge der Bits des CRres Vektors vorgenommen. Grundsatzlich wäre es jedoch auch möglich, anstelle der Um- ordnung der CRreq Vektoren in den Permutationseinheiten 15 die Prüfreihenfolge der Bits des CRres Vektors in den Komparatoremheiten zu andern.In the embodiment shown in FIG. 5, this check is preferably carried out in the order of the bits of the CRres vector. In principle, however, it would also be possible to change the check sequence of the bits of the CRres vector in the comparator units instead of rearranging the CRreq vectors in the permutation units 15.
Nach der Prüfung des CRres Vektors in der Komparatoremheit 13ι wird dieser an die Komparatoremheit 132 übergeben. In dieser lauft dann erneut em Prufvorgang nach dem oben erläuterten Schema ab. Diese Schritte werden solange wiederholt, bis der Belegungsvektor von samtlichen Komparatoreinheiten geprüft und ggf. entsprechende freie Bits belegt wurden. Der Gesamtzyklus ist damit abgeschlossen.After the CRres vector has been checked in the comparator unit 13ι, it is transferred to the comparator unit 13 2 . In this test procedure is then carried out again according to the scheme explained above. These steps are repeated until the assignment vector has been checked by all comparator units and, if appropriate, corresponding free bits have been assigned. The entire cycle is now complete.
Am Ende jedes Gesamtzyklus wird die am Ausgang jeder mversen Permutationsemheit 19 anliegende Berechtigungsinformation über die jeweilige Schnittstelleneinheit PORT IF an die betreffende Porteinheit 3 übermittelt. Jede mverse Permutationsemheit 19 erhalt von der betreffenden Komparatoreinheit 13 die Information, ob und welches Bit des Belegungsvektors belegt wurde. Die inverse Permutationsemheit kennt die von den Permutationsemheiten angewandte Umordnungsvorschπft und ermittelt aus der Bitposition, die belegt wurde wieder die ursprungliche Bitposition.At the end of each overall cycle, the authorization information present at the output of each reverse permutation unit 19 is transmitted to the relevant port unit 3 via the respective interface unit PORT IF. Each inverse permutation unit 19 receives from the relevant comparator unit 13 the information as to whether and which bit of the occupancy vector has been occupied. The inverse permutation unit knows the reordering applied by the permutation units and determines the original bit position from the bit position that was occupied again.
Hierzu können m den mversen Permutationsemheiten 19 inverse Reihenfolgen abgelegt sein, durch deren Anwenden die in den Permutationseinheiten 15 vorgenommene Umordnung rückgängig gemacht wird. Wie im Fall der Permutationseinheiten 15 kann auch bei den inversen Permutationseinheien 19 durch den diesen zugefuhrten Ausgang des Zahlers 13 eine Auswahl bzw. ein Weiterschalten der inversen Reihenfolgen bewirkt werden.For this purpose, inverse sequences can be stored in the mvers permutation units 19, by using which the rearrangement carried out in the permutation units 15 is reversed. As in the case of permutation units 15, the inverse permutation units 19 can also be selected or switched through the inverse sequences by the output of the payer 13 supplied to them.
Zusatzlich kann jede inverse Permutationseinheit 19 nach dem Ruckvertauschen des jeweiligen Belegungsvektors CRres und der ihr bekannten Zuordnung der Porteinheiten 3 zu den Positionen des CRreq Vektors als Berechtigungsinformation CRgnt die ID- Nummer derjenigen Porteinheit 3 an die mit der jeweiligen Komparatoreinheit verbundene Porteinheit übermitteln, an welche die letztgenannte eine Zelle übertragen kann.In addition, each inverse permutation unit 19 can, after swapping back the respective occupancy vector CRres and the known assignment of the port units 3 to the positions of the CRreq vector, as authorization information CRgnt, the ID number of that port unit 3 to that with the respective one Communicator unit connected port unit to which the latter can transmit a cell.
Vor Beginn der Prüfung des CRres Vektors in der Kaskade der Komparatoreinheiten 13 (oder nach Beendigung der Prüfung des CRres Vektors im vorhergehenden Gesamtzyklus) stellt die Steuereinheit 11 fest, ob zumindest ein Quotenzahler 21 einer Komparatoreinheit 13 für ein bestimmtes Bit innerhalb des CRres Vektors noch eine Quote aufweist und gleichzeitig noch das betreffende Bit des dieser Komparatoreinheit zugeführten permutierten CRreq Vektors (mit CRreq* bezeichnet) eine zur betreffenden Porteinheit 3 zu übertragende Zelle anzeigt. Ist dies nicht der Fall, so veranlasst die Steuereinheit 11 ein Zurücksetzen aller für das betreffende Bit des CRres Vektors zustandigen Quotenzahler 21 der Komparatoreinheiten 13 auf die Ausgangsquote.Before the start of the test of the CRres vector in the cascade of the comparator units 13 (or after the end of the test of the CRres vector in the previous overall cycle), the control unit 11 determines whether at least one quota number 21 of a comparator unit 13 is still one for a specific bit within the CRres vector Quote and at the same time the relevant bit of the permuted CRreq vector supplied to this comparator unit (designated CRreq *) indicates a cell to be transmitted to the relevant port unit 3. If this is not the case, the control unit 11 causes all the quota numbers 21 of the comparator units 13 responsible for the relevant bit of the CRres vector to be reset to the initial quota.
Wahrend bei der oben geschilderten Möglichkeit die Quotenzahler 21 in einfacher Weise einem bestimmten Bit des CRres Vek- tors zugeordnet waren, kann in einer anderen Ausfuhrungsform eine Zuordnung der Quotenzahler 21 zu den Ausgangen der zentralen Vermittlungseinheit 5 bzw. zu den Porteinheiten erfolgen. Da jedoch den Komparatoren 13 in jedem Fall die permutierte Vektor CRreq* zugeführt werden, muss in diesem Fall den Komparatoreinheiten 13 auch noch die Permutationsinformation mitgeteilt werden. Mit dieser Information kann dann zur für die Prüfung, ob bestimmte Zahler auf eine Ausgangsquote gesetzt werden müssen, entweder eine Umordnung auch der Reihenfolge der Quotenzahler vorgenommen v/erden oder die ümord- nung der Bits der CRreq* Vektoren rückgängig gemacht werden.While with the possibility described above, the quota numbers 21 were assigned in a simple manner to a specific bit of the CRres vector, in another embodiment the quota numbers 21 can be assigned to the outputs of the central switching unit 5 or to the port units. However, since the permuted vector CRreq * is always supplied to the comparators 13, in this case the permutation information must also be communicated to the comparator units 13. This information can then be used to check whether certain payers have to be set to an initial quota, either to rearrange the order of the quota payers or to reverse the assignment of the bits of the CRreq * vectors.
Nach einer anderen Ausfuhrungsform ist es auch möglich, zusatzlich zu den CRreq* Vektoren die nicht permutierten CRreq Vektoren an die Komparatoreinheiten 13 zu übergeben. Damit können die den Porteinheiten 2 zugeordneten Quotenzahler 21 unmittelbar feststellen, ob zu der betreffenden Porteinheit 3 noch eine Zelle zu übertragen ist. Wird auf eine Priorisierung der jeweils sendenden Porteinheiten 3 verzichtet, so kann im einfachsten Fall die Quote Eins verwendet werden, wobei hier die Quotenzahler durch ein Bit, hardware-technisch z.B. durch ein Flipflop realisiert werden können. Die Quotenzahler können dann auch zu einem Vektor mit N Bits zusammengefasst und beispielsweise durch ein Register der Lange N realisiert werden. Ein gesetztes Bit kann dann z.B. eine vorhandene Quote und ein nicht gesetztes Bit eine fehlende Quote anzeigen.According to another embodiment, it is also possible to pass the non-permuted CRreq vectors to the comparator units 13 in addition to the CRreq * vectors. The quota numbers 21 assigned to the port units 2 can thus immediately determine whether there is still a cell to be transferred to the relevant port unit 3. If a prioritization of the respective sending port units 3 is dispensed with, then in the simplest case the quota one can be used, in which case the quota numbers can be implemented by a bit, in terms of hardware, for example by a flip-flop. The quota counters can then also be combined to form a vector with N bits and implemented, for example, by a register of length N. A set bit can then indicate an existing quota, for example, and a bit that is not set can indicate a missing quota.
Fig. 6 zeigt den prinzipiellen Aufbau des Kerns einer Ausführungsform für eine Komparatoreinheit 13. Diese umfasst einen N-stufigen Priority-Encoder 23 dessen Verhalten sich wie folgt beschreiben lasst: Jeder Ausgang 0± (l≤i≤N) wird auf logisch EINS gesetzt, wenn alle vorherigen Eingange Iχ-1 auf logisch NULL liegen und der zugehörige Eingang Ix auf logisch EINS liegt. Mit anderen Worten, nur derjenige Ausgang wird auf logisch EINS gesetzt, dessen zugehöriger Eingang in der Reihenfolge der N Stufen des Priority-Encoders der erste ist, der auf logisch EINS liegt.6 shows the basic structure of the core of an embodiment for a comparator unit 13. This comprises an N-stage priority encoder 23, the behavior of which can be described as follows: Each output 0 ± (l≤i≤N) is set to logic ONE , if all previous inputs Iχ- 1 are at logic ZERO and the associated input I x is at logic ONE. In other words, only that output is set to logical ONE whose associated input is the first to be logical ONE in the order of the N stages of the priority encoder.
Fig. 6 zeigt hierzu lediglich die ersten vier Stufen A, B, C, D, des Priority-Encoders 23 mit den Eingangszustanden a, b, c, d und Logikverknupfungen, welche die entsprechenden Ausgangszustande erzeugen.6 shows only the first four stages A, B, C, D, of the priority encoder 23 with the input states a, b, c, d and logic connections which generate the corresponding output states.
Die Eingange Ix der einzelnen Stufen des Priority-Encoders 23 sind jeweils mit dem Ausgang eines UND-Gatter 25 verbunden, welches jeweils drei Signale logisch UND-verknupft , nämlich das jeweilige Bit CRreq [i] des CRreq-Vektors, das jeweilige Bit CRres [i] des der Komparatoreinheit 13 zugefuhrten Belegungsvektors Crres und den Ausgang des jeweiligen Quotenzählers 21. Somit wird das gewünschte Ziel erreicht, dass das jeweilige Bit des Belegungsvektors nur dann belegt wird, wenn dieses noch unbelegt war und wenn eine entsprechende Zelle zu übertragen ist und gleichzeitig noch eine Belegungsberechtigung gegeben ist.The inputs I x of the individual stages of the priority encoder 23 are each connected to the output of an AND gate 25, which logically AND-links three signals, namely the respective bit CRreq [i] of the CRreq vector, the respective bit CRres [i] of the occupancy vector Crres supplied to the comparator unit 13 and the output of the respective quota counter 21. Thus, the desired goal is achieved that the respective bit of the occupancy vector is only occupied if it was still empty and if a corresponding cell closed is transferred and at the same time an assignment authorization is given.
Für das starten eines Contention-Resolution-Zyklus kann die Steuereinheit 11 einen Startimpuls CR3tart erhalten. Das Prüfen der Belegungsberechtigung ggf. einschließlich der Erzeugung der Berechtungsinformation CRgnt kann aus Sicherheitsgründen getaktet erfolgen. Dabei werden in einem Taktzyklus beispielsweise nur die in jeweils einer Komparatoreinheit 13erforderlichen Aktionen durchgeführt. Der jeweils bearbeitete CRres Vektor kann dann mittels eines Ausgangsregisters (nicht dargestellt) der jeweils nächsten Komparatoreinheit der Kaskade übergeben werden.The control unit 11 can receive a start pulse CR 3ta rt for starting a contention resolution cycle. The checking of the occupancy authorization, including the generation of the authorization information CRgnt, if necessary, can be carried out cyclically for security reasons. In this case, for example, only the actions required in one comparator unit 13 are carried out in one clock cycle. The processed CRres vector can then be transferred to the next comparator unit of the cascade using an output register (not shown).
Lassen es die Schaltzeiten der einzelnen Bauelemente, dieLet there be the switching times of the individual components
Signallaufzeiten etc. zu, so können auch mehrere Komparatoreinheiten 13 zusammengefasst werden. Hierzu werden in der Ausfuhrungsform nach Fig. 6 die Ausgange des Priority- Encoders 23 einer Komparatoreinheit 13 jeweils direkt mit den Eingangen, z.B. den betreffenden Eingangen der UND-Gatter 25 verbunden. Durch diese Maßnahme können innerhalb eines Taktzyklus die Aktionen mehrerer oder sogar aller Komparatoreinheiten abgearbeitet werden, wodurch sich eine enorme Steigerung der Verarbeitungsgeschwindig erzielen lasst. Signal propagation times etc., several comparator units 13 can also be combined. For this purpose, in the embodiment according to FIG. 6, the outputs of the priority encoder 23 of a comparator unit 13 are each connected directly to the inputs, for example the relevant inputs of the AND gates 25. With this measure, the actions of several or even all of the comparator units can be processed within one clock cycle, as a result of which an enormous increase in processing speed can be achieved.
BezugszeichenlisteLIST OF REFERENCE NUMBERS
I Vermittlungsvorrichtung 3 Porteinheit (3xbist 3N)I switching device 3 port unit (3 x 3 N )
5 zentrale Vermittlungseinheit5 central switching unit
7 Ports der Porteinheiten (7X bis 7n)7 ports of the port units (7 X to 7 n )
8 Einheit zur Auflösung von Kollisionen (Contention- Resolution-Einheit)8 Collision resolution unit (contention resolution unit)
9 Pufferspeicher9 buffer memory
9a virtueller Pufferspeicher9a virtual buffer memory
II SteuereinheitII control unit
13 Komparatoreinheit (13ι bis 13N)13 comparator unit (13ι to 13 N )
15 Permutationseinheit (15ι bis 15N)15 permutation unit (15ι to 15 N )
16 Zähler16 counters
17 Verbindungsleitungen17 connecting lines
19 inverse Permutationseinheit (19χ bis 19N)19 inverse permutation unit (19χ to 19 N )
21 Quotenzähler21 odds counter
23 Priority-Encoder23 priority encoder
25 UND-Gatter25 AND gates
a,b,c,d logische Zuständea, b, c, d logic states
A,B,C,D Stufen 1 bis 4 des Priority-EncodersA, B, C, D Levels 1 to 4 of the priority encoder
Ix , Oi Ein- und Ausgänge des Priority-EncodersI x , Oi inputs and outputs of the priority encoder
(l≤i≤N)(L≤i≤N)
CRgnt BerechtigungsinformationenCRgnt authorization information
CRreq Contention-Request-Vektor,CRreq contention request vector,
VerfügbarkeitsinformationenAvailability information
CRres BelegungsvektorCRres occupancy vector
CRsart Startsignal für Contention-Resolution-ZyklusCRsart start signal for contention resolution cycle
N Anzahl der PorteinheitenN number of port units
Port IF Schnittstelleneinheiten in 5Port IF interface units in 5
CB-IF Schnittstelleineinhet in 3CB-IF interface unit in 3
LVDS Low Voltage Differential SignalingLVDS low voltage differential signaling
S1:J Signale an den Ports 7 (Indizes i,j) S 1: J signals at ports 7 (indices i, j)

Claims

Patentansprüche claims
1. Zellkonfliktauflosungseinheit für eine Einrichtung zur Vermittlung einer Mehrzahl von paket-orientierten Signa- len,1. cell conflict resolution unit for a device for switching a plurality of packet-oriented signals,
a) wobei die Vermittlungseinrichtung (1) aus einer zentralen Vermittlungseinheit (5) und maximal N mit dieser verbundenen Porteinheiten (3) mit jeweils n Ports (7) besteht, welchen jeweils ein Signal zufuhrbar ist,a) wherein the switching device (1) consists of a central switching unit (5) and a maximum of N port units (3) connected to it, each with n ports (7), to each of which a signal can be fed,
b) wobei die Zellkonfliktauflosungseinheit (8) N Eingange aufweist, welchen jeweils von einer der N Portein- heiten (3) ein Verfugbarkeitsvektor (CRreq) mit Verfugbarkeitsmformationen zufuhrbar ist, die beinhalten, ob und an welche weitere Porteinheiten (3) ein Paket eines Signals oder eine Zelle eines segmentier- ten Pakets eines Signals zu übertragen ist,b) the cell conflict resolution unit (8) has N inputs, each of which can be supplied with an availability vector (CRreq) with availability information from one of the N port units (3), which contain whether and to which other port units (3) a packet of a signal or a cell of a segmented packet of a signal is to be transmitted,
wobei jeder Verfugbarkeitsvektor (CRreq) jeweils einer Komparatoreinheit (13) einer Kaskade von N Komparatoreinheiten (13ι bis 13N) zufuhrbar ist, welche mit einer Steuereinheit (11) verbunden sind, undeach Verfugbarkeitsvektor (CRreq) each have a comparator unit (13) of a cascade of N comparator units (13ι to 13 N) can be fed to, which are connected to a control unit (11), and
d) wobei jede Komparatoreinheit (13) unter Verwendung des jeweiligen Verfugbarkeitsvektors (CRreq), einer von dem jeweils vorhergehenden Komparator (13) oder der Steuereinheit (11) erzeugten Belegungsinformation (CRres) in Bezug auf die Übertragung des jeweiligend) wherein each comparator unit (13) using the respective availability vector (CRreq), an occupancy information (CRres) generated by the respective previous comparator (13) or the control unit (11) in relation to the transmission of the respective
Pakets oder der jeweiligen Zelle zu den Porteinheiten und unter Verwendung einer Auswahlberechtigungsinformation für die Übertragung des jeweiligen Pakets oder der jeweiligen Zelle zu den Porteinheiten (3) eine Berechtigungsinformation (CRgnt) ermittelt und an die mit ihr verbunden Porteinheit (3) übertragt, welche beinhaltet, an welche andere Porteinheit (3) die mit der jeweiligen Komparatoremheit (13) verbunden Porteinheit (3) zur Übertragung eines entsprechenden Pakets oder einer entsprechenden Zelle berechtigt ist, wodurch insgesamt eine blockierungsfreie Kombination von zwischen den Porteinheiten (3) gleichzeitig übertragbaren Paketen oder Zellen ermittelt wird,Packet or the respective cell to the port units and using a selection authorization information for the transmission of the respective packet or the respective cell to the port units (3) an authorization information (CRgnt) is determined and transmitted to the port unit (3) connected to it, which contains, to which other port unit (3) the with the respective comparator unit (13) connected port unit (3) is authorized to transmit a corresponding packet or a corresponding cell, as a result of which a non-blocking combination of packets or cells which can be transmitted simultaneously between the port units (3) is determined,
e) wobei die von einer Komparatoremheit (13) erzeugte Belegungsmformation (CRres) jeweils parallel in Form eines Belegungsvektors (CRres) an die jeweils nächstee) the occupancy information (CRres) generated by a comparator unit (13) in each case parallel to the next in the form of an occupancy vector (CRres)
Komparatoremheit (13) übergeben und in den Komparatore heiten parallel oder semi-parallel verarbeitet wird.Comparator unit (13) and processed in the comparator units in parallel or semi-parallel.
2. Zellkonfliktauflosungseinheit nach Anspruch 1, bei der die Verarbeitung des Belegungsvektors (CRres) in und die Übergabe des Belegungsvektors (CRres) zwischen den Komparatoremheiten (13) getaktet erfolgt, wobei in jedem Taktzyklus der Belegungsvektor (CRres) in zumindest einer Komparatoremheit (13) verarbeitet und zur Übergabe an die jeweils folgende Komparatoremheit (13) bereitgestellt wird.2. Cell conflict resolution unit according to claim 1, wherein the processing of the occupancy vector (CRres) and the transfer of the occupancy vector (CRres) between the comparator units (13) is carried out in a clocked manner, the occupancy vector (CRres) in at least one comparator unit (13) in each clock cycle. processed and made available for transfer to the following comparator unit (13).
3. Zellkonfliktauflosungseinheit nach Anspruch 2, bei der in jedem Taktzyklus der Belegungsvektor (CRres) in mehreren oder allen Komparatoremheiten (13) verarbeitet wird.3. Cell conflict resolution unit according to claim 2, in which the occupancy vector (CRres) is processed in several or all comparator units (13) in each clock cycle.
4. Zellkonfliktauflosungseinheit nach einem der vorhergehenden Ansprüche, bei der jeder Verfugbarkeitsvektor (CRreq) N Bits aufweist, wobei die Position eines Bit im Verfug- barkeitsvektor (CRreq) die Zuordnung der in diesem Bit enthaltenen Information zu einer bestimmten Porteinheit (3) beinhaltet und wobei der eine logische Zustand des Bit die Verfügbarkeit eines für die betreffende Portein- heit (3) bestimmten Pakets oder einer Zelle signalisiert und der jeweils andere logische Zustand das Fehlen der Verfügbarkeit eines Pakets oder einer Zelle. 4. Cell conflict resolution unit according to one of the preceding claims, in which each availability vector (CRreq) has N bits, the position of a bit in the availability vector (CRreq) including the assignment of the information contained in this bit to a specific port unit (3) and wherein the one logical state of the bit signals the availability of a packet or a cell intended for the relevant port unit (3) and the other logical state indicates the lack of availability of a packet or a cell.
5. Zellkonfliktauflosungseinheit nach einem der vorhergehenden Ansprüche, bei der der Belegungsvektor (CRres) N Bits aufweist, wobei die Position eines Bit im Belegungsvektor (CRres) die Zuordnung der in diesem Bit enthaltenen Information zu einer bestimmten empfangenden Porteinheit (3) beinhaltet und wobei der eine logische Zustand des Bits die bereits erfolgte Belegung der betreffenden Porteinheit (3) für den Empfang eines Pakets oder einer Zelle von einer anderen Porteinheit (3) signalisiert und der jeweils andere logische Zustand die Bereitschaft der betreffenden Porteinheit.5. Cell conflict resolution unit according to one of the preceding claims, in which the occupancy vector (CRres) has N bits, the position of a bit in the occupancy vector (CRres) including the assignment of the information contained in this bit to a specific receiving port unit (3), and wherein the a logical state of the bit signals the occupancy of the relevant port unit (3) for receiving a packet or a cell from another port unit (3) and the other logical state indicates the readiness of the relevant port unit.
6. Zellkonfliktauflosungseinheit nach Anspruch 5, bei der die Steuereinheit (11) der ersten Komparatoremheit (13x) der Kaskade von N Komparatoremheiten (13) einen Anfangs- Belegungsvektor (CRres) übergibt.6. Cell conflict resolution unit according to claim 5, in which the control unit (11) transfers an initial occupancy vector (CRres) to the first comparator unit (13 x ) of the cascade of N comparator units (13).
7. Zellkonfliktauflosungseinheit nach Anspruch 6, bei der der diejenigen Bits des Belegungsvektors (CRres), die solchen Porteinheiten (3) entsprechen, die nicht für einen Empfang zur Verfugung stehen oder nicht vorhanden sind, mit dem entsprechenden logischen Zustand vorbelegt sind.7. The cell conflict resolution unit as claimed in claim 6, in which those bits of the occupancy vector (CRres) which correspond to those port units (3) which are not available for reception or are not available are preset with the corresponding logic state.
8. Zellkonfliktauflosungseinheit nach einem der vorhergehenden Ansprüche, bei der jede Komparatoremheit (13) die Berechtigungsinformation für die betreffende Porteinheit8. Cell conflict resolution unit according to one of the preceding claims, in which each comparator unit (13) contains the authorization information for the relevant port unit
(3) in einer vorgegebenen Reihenfolge in Bezug auf die Porteinheiten (3) oder die einzelnen Bits des Belegungsvektors (CRres) ermittelt.(3) determined in a predetermined order with respect to the port units (3) or the individual bits of the occupancy vector (CRres).
9. Zellkonfliktauflosungseinheit nach Anspruch 8, bei der die Reihenfolge zu Beginn eines Zyklus der Bestimmung der Berechtigungsinformationen (CRgnt) durch die N Komparatoremheiten (13) aus einer vorgegebenen Anzahl von pseu- do-zufallig generierten Reihenfolgen ausgewählt wird. 9. Cell conflict resolution unit according to claim 8, in which the sequence at the beginning of a cycle of determining the authorization information (CRgnt) is selected by the N comparator units (13) from a predetermined number of pseudo-randomly generated sequences.
10. Zellkonfliktauflosungseinheit nach einem der Ansprüche 1 bis 8, bei der jede Komparatore heit (13) eine mögliche Belegung von Bits des Belegungsvektors (CRres) in der Reihenfolge der Bits des Belegungsvektors (CRres) ermittelt, bei der jeder Komparatoremheit (13) eine Permutationsemheit (15) vorgeschaltet ist, welcher der Verfug- barkeitsvektor (CRreq) zufuhrbar ist und welche die Bits des Verfugbarkeitsvektors (CRreq) entsprechend einer vor- gegebenen Vorschrift in ihrer Reihenfolge umordnet und bei der jeder Komparatoremheit (13) eine inverse Permutationsemheit (19) nachgeschaltet ist, welche unter Berücksichtigung der erfolgten Permutation der Reihenfolge der Bits des Verfugbarkeitsvektors (CRreq) aus der ihr zugefuhrten Information der Komparatoremheit (13), ob und welche Position des Belegungsvektors (CRres) belegt wurde, ermittelt, welche Berechtigungsinformation (CRgnt) an die mit der betreffenden Komparatoremheit (13) verbundene Porteinheit (3) zu übermitteln ist.10. Cell conflict resolution unit according to one of claims 1 to 8, in which each comparator unit (13) determines a possible assignment of bits of the assignment vector (CRres) in the order of the bits of the assignment vector (CRres), in which each comparator unit (13) has a permutation unit (15) is connected upstream, to which the availability vector (CRreq) can be supplied and which rearranges the order of the bits of the availability vector (CRreq) in accordance with a specified regulation and in which each comparator unit (13) is followed by an inverse permutation unit (19) is which, taking into account the permutation of the sequence of the bits of the availability vector (CRreq) from the information supplied to it by the comparator unit (13), whether and which position of the occupancy vector (CRres) was occupied, which authorization information (CRgnt) is assigned to the the relevant comparator unit (13) connected port unit (3) is to be transmitted.
11. Zellkonfliktauflosungseinheit nach einem der vorhergehenden Ansprüche, bei der die Auswahlberechtigung für die ü- bertragung des jeweiligen Pakets oder der jeweiligen Zelle zu einer jeweils anderen Porteinheit (3) in jeder Kom- paratoremheit (13) durch N-l für jede der jeweils anderen N-l Porteinheiten (3) oder durch N für jedes Bit des Belegungsvektors (CRres) vorgesehene Quotenzahler (21) realisiert ist, wobei der Zahlerstand (Quote) eines Quotenzahlers (21) nach jeder erfolgten Auswahl der zugeord- neten Porteinheit (3) oder nach jeder Belegung des zugehörigen Bits des Belegungsvektors (CRres) mkrementiert oder dekrementiert wird und bei Erreichen eines vorbestimmten Zahlerstands die Auswahlberechtigung für die betreffende Porteinheit (3) oder die Belegungsberechti- gung für das betreffende Bit des Belegungsvektors (CRres) gesperrt wird. 11. Cell conflict resolution unit according to one of the preceding claims, in which the selection authorization for the transmission of the respective packet or the respective cell to a different port unit (3) in each comparator unit (13) by N1 for each of the other N1 port units (3) or by N provided for each bit of the occupancy vector (CRres) quota payer (21), the payer status (quota) of a quota payer (21) after each selection of the assigned port unit (3) or after each occupancy of the associated bits of the occupancy vector (CRres) is incremented or decremented and when a predetermined number of payer is reached, the selection authorization for the relevant port unit (3) or the occupancy authorization for the relevant bit of the occupancy vector (CRres) is blocked.
12. Zellkonfliktauflosungseinheit nach Anspruch 11, bei der die Quotenzahler (21) einer Komparatoremheit (13) jeweils einem bestimmten Bit des Belegungsvektors (CRres) zugeordnet sind und bei der die Steuereinheit (11) alle Quotenzahler (21) aller Komparatoremheiten (13), die einem bestimmten Bit des Belegungsvektors (CRres) zugeordnet sind, auf einen Anfangswert (Anfangs-Quote) setzt, wenn keine Komparatoremheit (13) mehr existiert, in welcher der betreffende Quotenzahler (21) noch eine Quote besitzt und zugleich das betreffende Bit des permutierten Verfugbarkeitsvektors (CRreq*) e zu übertragendes Paket oder eine zu übertragende Zelle anzeigt.12. Cell conflict resolution unit according to claim 11, in which the quota numbers (21) of a comparator unit (13) are each assigned to a specific bit of the occupancy vector (CRres) and in which the control unit (11) all quota numbers (21) of all comparator units (13) are assigned to a specific bit of the occupancy vector (CRres), sets to an initial value (initial quota) if there is no longer a comparator unit (13) in which the relevant quota payer (21) still has a quota and at the same time the relevant bit of the permuted availability vector (CRreq * ) e indicates the packet or cell to be transferred.
13. Zellkonfliktauflosungseinheit nach Anspruch 11, bei der die Quotenzahler (21) einer Komparatoreinheit (13) jeweils einer bestimmten Porteinheit (3) zugeordnet sind und bei der die Steuereinheit (11) alle Quotenzahler (21) aller Komparatoremheiten (13), die einer bestimmten Porteinheit (3) zugeordnet sind, auf einen Anfangswert (Anfangs-Quote) setzt, wenn keine Komparatoremheit (13) mehr existiert, welcher der betreffende Quotenzahler (21) noch eine Quote besitzt und zugleich em Paket oder eine Zelle von der mit der Komparatoremheit (13) verbundenen Porteinheit an die betreffende Porteinheit zu uber- tragen ist.13. Cell conflict resolution unit according to claim 11, in which the quota counters (21) of a comparator unit (13) are each assigned to a specific port unit (3) and in which the control unit (11) all quota counters (21) of all comparator units (13) that a specific one Port unit (3) are assigned an initial value (initial quota) if there is no longer a comparator unit (13), which quota payer in question (21) still has a quota and at the same time has a packet or a cell from which the comparator unit ( 13) connected port unit is to be transferred to the relevant port unit.
14. Zellkonfliktauflosungseinheit nach Anspruch 13, bei der den Komparatoremheiten (13) die Permutationsinformation zugeführt ist, bei der die Komparatoremheiten (13) die Quotenzahler permutieren und die Information ob eine Zelle zur Übertragung zur Verfugung steht, den permutierten Verfugbarkeitsvektoren CRreq* entnehmen.14. The cell conflict resolution unit according to claim 13, in which the comparator units (13) are supplied with the permutation information, in which the comparator units (13) permute the quota numbers and the information as to whether a cell is available for transmission is taken from the permuted availability vectors CRreq *.
15. Zellkonfliktauflosungseinheit nach einem der Ansprüche 12 bis 14, bei der einem oder mehreren Quotenzahlern (21) eine höhere Anfangs-Quote zugeordnet wird als anderen Quotenzahlern (21). 15. The cell conflict resolution unit as claimed in one of claims 12 to 14, in which one or more quota payers (21) are assigned a higher initial quota than other quota payers (21).
16. Zellkonfliktauflosungseinheit nach einem der vorhergehenden Ansprüche, bei der die Komparatoremheiten (13) jeweils einen N-stufigen Pπority-Encoder (23) aufweisen, wobei jeder der N Eingänge (Ii bis IN) des Priority- Encoders (23) mit dem Ausgang eines UND-Glieds (25) verbunden ist und wobei einem ersten Eingang des UND-Glieds das entsprechende Bit (CRreq[ι]) des Verfugbarkeitsvek- tors oder des permutierten Verfugbarkeitsvektors (CRreq* [ι]) zugeführt ist, einem zweiten Eingang des UND- Glieds (25) das betreffende Bit des Belegungsvektors (CRres [l] ) , der am Ausgang der jeweils vorghergehenden Komparatoremheit (13) anliegt und einem dritten Eingang des UND-Glieds (25) die Information des zugehörigen Quo- tenzahlers (21) , die logisch EINS ist, wenn noch eine16. Cell conflict resolution unit according to one of the preceding claims, in which the comparator units (13) each have an N-stage Pπority encoder (23), each of the N inputs (Ii to I N ) of the priority encoder (23) with the output an AND gate (25) is connected and a corresponding input (CRreq [ι]) of the availability vector or the permuted availability vector (CRreq * [ι]) is fed to a first input of the AND gate, a second input of the AND Gates (25) the relevant bit of the occupancy vector (CRres [l]), which is present at the output of the preceding comparator unit (13) and a third input of the AND gate (25) the information of the associated quota number (21), which is logically ONE if there is another
Auswahlberechtigung gegeben ist, und logisch NULL, wenn keine Auswahlberechtigung mehr gegeben ist.Authorization to select is given, and logically NULL if there is no longer an authorization to select.
17. Zellkonfliktauflosungseinheit nach einem der vorhergehen- den Ansprüche, welche als integrierter Schaltkreis ausgebildet ist.17. Cell conflict resolution unit according to one of the preceding claims, which is designed as an integrated circuit.
18. Zentrale Vermittlungseinrichtung mit N Ports zum An- schluss von maximal N Porteinheiten (3), welche als m- tegπerter Schaltkreis ausgebildet ist, der eine Zellkon- fliktauflosungseinheit (8) nach einem der Ansprüche 1 bis 14 beinhaltet. 18. Central switching device with N ports for connecting a maximum of N port units (3), which is designed as an integrated circuit that contains a cell conflict resolution unit (8) according to one of Claims 1 to 14.
PCT/EP2000/008598 1999-09-02 2000-09-01 Contention resolution element for a device for transmitting a plurality of packet-oriented signals WO2001019037A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2001522729A JP3657558B2 (en) 1999-09-02 2000-09-01 Contention resolution element for multiple packet signal transmission devices
DE50010357T DE50010357D1 (en) 1999-09-02 2000-09-01 CELL CONFLICT RESOLUTION UNIT FOR A DEVICE FOR COMMUNICATING A MULTIPLE OF PACKET-ORIENTED SIGNALS
EP00960591A EP1208678B1 (en) 1999-09-02 2000-09-01 Contention resolution element for a device for transmitting a plurality of packet-oriented signals

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE19941851.9 1999-09-02
DE19941851A DE19941851C2 (en) 1999-09-02 1999-09-02 Cell conflict resolution unit for a device for switching a plurality of packet-oriented signals

Publications (1)

Publication Number Publication Date
WO2001019037A1 true WO2001019037A1 (en) 2001-03-15

Family

ID=7920568

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2000/008598 WO2001019037A1 (en) 1999-09-02 2000-09-01 Contention resolution element for a device for transmitting a plurality of packet-oriented signals

Country Status (5)

Country Link
EP (1) EP1208678B1 (en)
JP (1) JP3657558B2 (en)
CN (1) CN1130055C (en)
DE (2) DE19941851C2 (en)
WO (1) WO2001019037A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1280303A2 (en) * 2001-06-26 2003-01-29 Philips Corporate Intellectual Property GmbH Packet switching device with a feedback method for its access unit

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10140811A1 (en) * 2001-08-20 2003-03-20 Infineon Technologies Ag Packet-based data switching coordination method incorporates priority encoding step for preventing data collisions
KR101566950B1 (en) 2014-06-11 2015-11-06 한국전자통신연구원 Apparatus and method for multilateral one-way communication

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5455825A (en) * 1994-04-28 1995-10-03 Mitsubishi Electric Research Laboratories Tag-based scheduling system for digital communication switch
US5541916A (en) * 1993-08-20 1996-07-30 International Business Machines Corporation Arbitration mechanism for an ATM switch
EP0868054A2 (en) * 1997-03-28 1998-09-30 Xerox Corporation Self-arbitrating crossbar switch

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5157654A (en) * 1990-12-18 1992-10-20 Bell Communications Research, Inc. Technique for resolving output port contention in a high speed packet switch
DE19540160C2 (en) * 1995-10-27 2000-05-31 Andreas Kirstaedter Method for coordination via serial lines of input-buffered ATM switching devices to avoid output blockages
DE19544920C2 (en) * 1995-12-01 1998-10-01 Andreas Kirstaedter Process for fast and fair, hardware-based random selection of signals

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5541916A (en) * 1993-08-20 1996-07-30 International Business Machines Corporation Arbitration mechanism for an ATM switch
US5455825A (en) * 1994-04-28 1995-10-03 Mitsubishi Electric Research Laboratories Tag-based scheduling system for digital communication switch
EP0868054A2 (en) * 1997-03-28 1998-09-30 Xerox Corporation Self-arbitrating crossbar switch

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1280303A2 (en) * 2001-06-26 2003-01-29 Philips Corporate Intellectual Property GmbH Packet switching device with a feedback method for its access unit
EP1280303A3 (en) * 2001-06-26 2003-12-17 Philips Intellectual Property & Standards GmbH Packet switching device with a feedback method for its access unit
US7680045B2 (en) 2001-06-26 2010-03-16 Nxp B.V. Packet switching device with a feedback method of the arbiter

Also Published As

Publication number Publication date
DE50010357D1 (en) 2005-06-23
JP2003509907A (en) 2003-03-11
JP3657558B2 (en) 2005-06-08
CN1130055C (en) 2003-12-03
DE19941851C2 (en) 2003-04-10
DE19941851A1 (en) 2001-04-12
CN1372741A (en) 2002-10-02
EP1208678A1 (en) 2002-05-29
EP1208678B1 (en) 2005-05-18

Similar Documents

Publication Publication Date Title
DE3752370T2 (en) switching system
DE3786298T2 (en) Method and switch for conveying information.
DE69619843T2 (en) ATM SWITCHING WITH HIGH PERFORMANCE
DE2614086C3 (en) Circuit arrangement for transmitting digital messages via several exchanges
DE3787600T2 (en) Crosspoint circuit for data packet room switching.
DE69033231T2 (en) Extendable packet switching architecture
EP0419959B1 (en) Circuit arrangement for testing the adherence to pre-established bit rates in the transmission of information cells
EP0453607A1 (en) Method and circuit arrangement for reducing the loss of information packets transmitted through a packet switch
DE69631265T2 (en) switching system
DE19757965A1 (en) Distributed buffer system for ATM switch
EP0351014B1 (en) Switching network for a switching system
DE69028580T2 (en) Device for switching cells
DE19709210A1 (en) RAM memory circuit
EP0289087A2 (en) Packet switching system
DE2559119B2 (en) CIRCUIT FOR CONCENTRATING DIGITAL SIGNALS
DE69030349T2 (en) Arrangement for data flow control of virtual connections, transmitted over an asynchronous time-multiplexed transmission link
EP1208678B1 (en) Contention resolution element for a device for transmitting a plurality of packet-oriented signals
EP0322075B1 (en) Switching network and controller for a switching system
EP1037150A2 (en) Method for managing access to a bus and bus system
DE69527678T2 (en) Path finder for ATM cells
DE19935126B4 (en) Method and apparatus for switching a plurality of packet-oriented signals
DE2652920B2 (en) Multi-stage coupling device for time division
DE10142460A1 (en) Distribution of weights between port control and switching units of a packet switching device
DE10105935B4 (en) Multimode scheduler, device with a multimode scheduler and multimode handler
EP0908891B1 (en) Circuit for processing access conflicts

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CN JP KR US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2000960591

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 10070126

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 008124450

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 2000960591

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 2000960591

Country of ref document: EP