Claims
- 1. A system for performing transfers of data packets between pairs of data processing units connected by parallel busses in a non-serial communications network comprising an origin unit and a target unit selected among N data processing units (8), each data processing unit comprising a set of outbound queues with one outbound queue associated with each one of the data processing units to which it may send data packets, for storing the data packets to be sent by the data processing unit to the data processing unit associated with said one outbound queue, said system characterized in that it comprises:
- clocking means (44) providing timing signals for defining burst times Ti, of fixed durations;
- centralized selecting means (4) active during each burst time Ti for selecting different pairs of units as a function of transfer requests received from the N data processing units, with each unit being selected as an origin unit and a target unit only once during said each burst time Ti;
- said centralized selecting means comprising sending means (56, 14) for sending the address of the selected target unit of each pair to the origin unit of the pair;
- a receive data bus (20) and a transmit data bus (18) connected in parallel to each origin unit and each target unit; and
- data switching means (6) connected to each one of the N data processing units by the receive data bus (20) and the transmit data bus (18); said data switching means responsive to the addresses of the selected target units received from the selected origin unit to connect, during the next burst time Ti+k, k being an integer number higher than or equal to 1, the transmit data bus of the origin unit to the receive data bus of the target unit of each pair selected during the burst time Ti, whereby data packets are simultaneously transferred from the outbound queues in the selected origin units to the selected target units.
- 2. A system according to claim 1 characterized in that the burst times Ti comprises at least N cycles and, the centralized selecting means (4) are active during the N first cycles of each burst time Ti for conditionally selecting a pair of units during each cycle 1 to N,
- firstly, as a function of the transfer requests received from the N data processing units, with units selected as origin and target units during a given cycle of a predetermined burst time not being selected as origin and target units during the other cycles of the same predetermined burst time,
- secondly, during the first cycle, as a function of the pair of units selected during the first cycle of the previous burst time Ti-N, the pair of units selected during said last named first cycle not being selected during said first named first cycle unless no other pair may be selected,
- thirdly, during the second to Nth cycles, as a function of the pairs of units selected during the third to Nth and first cycles of the next preceding burst time, respectively, the pairs of units selected during the third to Nth and first cycles of the next preceding burst time not being selected during the second to Nth cycles of the current burst time Ti, respectively, unless no other pair of units may be selected.
- 3. A system according to claim 2, characterized in that the centralized selecting means comprise:
- first storing means (36) receiving the transfer requests in the form of an information indicative of empty to not empty status changes of the outbound queues from the N data processing units (8) and comprising N sets (rows 1 to 4) of N storing positions, each one of said storing positions being assigned to a given data processing unit, the information indicative of the empty or not empty status, as the case may be, of the outbound queues associated with a given unit in the N units being stored in one set of storing positions,
- second storing means (50) for storing the addresses of the units of the pairs which are selected during each cycle of the burst times,
- addressing means (70) responsive to the timing signals from the clocking means (44) for successively addressing a set of the storing positions in the first storing means during the successive cycles 1 to N of a current burst time Ti and addressing the second storing means so as to get the addresses of the pairs selected in the cycles 1 of the burst time Ti-4 and in the cycles 3 to N and 1 of the next preceding burst time Ti-1,
- selection processing means (46, 52, 54) which are responsive to the information read from the first and second storing means when addressed by the addressing means for determining the addresses of the origin and target units of the pair which may be conditionally selected during each cycle 1 to N of the current burst time Ti and for providing these addresses to the sending means (56).
- 4. A system according to claim 3, characterized in that the first storing means (36) comprise a first matrix (36) having N rows and N columns, the N rows of the matrix constituting the N sets of N storing positions, so that at each cycle 1 to N one row of the first matrix is addressed by the addressing means and the content of the addressed row is read and provided to the selection processing means, the address of the row being indicative of the target unit of the pair, the origin unit of which will be conditionally selected by the selection processing means.
- 5. A system according to claim 3, characterized in that each burst time Ti comprises at least N+1 cycles and the addressing means comprises modulo-N counting means (74) responsive to the timing signals for providing at each cycle 1 of a current burst time Ti, the address of a first row (Row i), said address being then incremented by one at each following cycles 2 to N to generate successive row addresses, the content of the rows having the addresses provided by the counting means at cycles 1 to N being read and provided to the selection processing means during the cycles 1 to N, and the last address generated at cycle N being incremented at cycle N+1 in such a way that the first address provided by the counting means (74) at cycle 1 of the following burst time Ti+1 be equal to the address of the first row provided at cycle 1 of the burst time Ti plus one.
- 6. A system according to claim 5, characterized in that the second storing means comprise a second matrix (70) and a third matrix (72), each one having N rows,
- one row of the second matrix being addressed during the first cycle of each current burst time Ti by the address generated by the counting means during this cycle, to provide the address of a unit selected as origin unit during the first cycle of the burst time Ti-4 to the selection processing means, the address of the origin unit, if any, which is selected during the first cycle of the current burst time Ti being written in the so addressed row of the second matrix,
- one row of the third matrix being addressed during each cycle 1 to N of each current burst time Ti by the address generated by the counting means, to provide during each cycle 2 to N of the current burst time Ti, the address of the origin unit selected during each cycle 3 to N and 1 of the previous burst time Ti-1, the address of the origin unit, if any, which is selected during each cycle 1 to N of the current burst time being written into the so addressed row of the third matrix.
- 7. A system according to claim 3 characterized in that the selection processing means further comprises:
- masking means (82, 83 and 84) having an output bus (88), said masking means receiving at each cycle 1 to N of a current burst time Ti, the information read from the N storing positions of the addressed row of the first storing means and a masking pattern for generating a masked row pattern on the output bus (88), at each cycle 1 to N,
- selection means (90) receiving the masked row pattern at each cycle 1 to N, the unit address contained in the second matrix row addressed at cycle 1 and the unit address contained in the second third matrix row addressed at cycles 2 to N, to conditionally select a pair of units during each cycle 1 to N and update the masking pattern as a function of the selected origin unit to prevent a unit from being selected as origin unit more than one time during the current burst time.
- 8. A system according to any one of claims 3 to 7 characterized in that the selection processing means comprise a first and a second register means, (52 and 54) each one having N positions, with one position being associated to a corresponding one data processing unit, the selection means providing at each cycle 1 to N of a current burst time Ti, in the position of the first register means corresponding to the origin unit of the selected pair, the address of the target unit of the pair and in the position of the second register means corresponding to the target unit of the selected pair, the address of the origin unit, the content of the positions of the first and second register means corresponding to the same units being provided to the sending means.
- 9. A system according to claim 8 characterized in that the sending means (56,14) comprise serializing means (56) which receive the address information provided by the first and second register means, and send them in series to the respective units.
- 10. A system according to claim characterized in that each data processing unit (8) comprises:
- a plurality of N inbound queues, each one of said inbound queue being associated to each one of said data processing unit and
- means (32) which are responsive to the origin addresses received from the second register means to cause the data received by the unit to be stored into the corresponding inbound queue.
- 11. A system for performing transfers of data packets between pairs of data processing units connected by parallel bus systems in a non-serial communications network comprising an origin unit and a target unit selected among N data processing units (8), each data processing unit comprising a set of outbound queues with one outbound queue associated with each of the data processing units to which it may send data packets, for storing the data packets to be sent by the data processing unit to the data processing unit associated with said one outbound queue, said system being characterized in that it comprises:
- clocking means (44) providing timing signals for defining burst times Ti;
- centralized selecting means (4) active during each burst time Ti for selecting different pairs of units as a function of transfer requests received from the N data processing units with each unit being selected as an origin unit and a target unit, only once during said each burst time Ti and for sending the address of the selected target unit of each pair to the origin unit of the pair;
- a transmit data bus and a receive data bus arranged in parallel for connecting to each of the data processing units; and
- data switching means (6) connected to each one of the transmit data bus and the receive data bus; said data switching means responsive to the address of the selected target unit received from the selected origin unit to connect the transmit data bus of the origin unit to receive data bus of the target unit of each pair selected during the burst time Ti, so that data packets are simultaneously transferred from the outbound queues in the selected origin unit to the selected target unit.
- 12. A system according to claim 11 characterized in that the burst times Ti comprises at least N cycles and,
- the centralized selecting means (4) is active during the N first cycles of each burst time Ti for conditionally selecting a pair of units during each cycle 1 to N,
- firstly, as a function of the transfer requests received from the N data processing units, with units selected as target units during a given cycle of a predetermined burst time not being selected as target units during the other cycles of the same predetermined burst time,
- secondly, during the first cycle, as a function of the target unit selected during the first cycle of the previous burst time Ti-N, the target unit selected during said last named first cycle not being selected during said first named first cycle unless no other target unit may be selected,
- thirdly, during the second to Nth cycles, as a function of the target unit selected during the third to Nth and first cycles of the next preceding burst time, respectively, the target unit selected during the third to Nth and first cycles of the next preceding burst time not being selected during the second to Nth cycles of the current burst time Ti, respectively, unless no other target unit may be selected.
Priority Claims (1)
Number |
Date |
Country |
Kind |
89480047 |
Mar 1989 |
EPX |
|
Parent Case Info
This is a continuation of application Ser. No. 07/479,139, filed Feb. 13, 1990, now abandoned.
US Referenced Citations (9)
Non-Patent Literature Citations (1)
Entry |
Quatember, "Protocol Issues of the Configurational Management and the Resolution of the Contention Problem in a Large-Scale Crossbar Switch", May 1983, pp. 1-2. |
Continuations (1)
|
Number |
Date |
Country |
Parent |
479139 |
Feb 1990 |
|