NON-BLOCKING CONCENTRATION

Abstract: The present invention provides a single stage crossbar (10) and means (13) for controlling the crossbar that provides a capacity for "wide-sense non-blocking" connection of input signals to outputs that exceeds the number of outputs to which a given input is connected. Thus, the capacity of the crossbar is increased using a smaller number of crosspoints in a single stage than was available in the prior art. In one aspect, the present invention is an apparatus for connecting a signal on one of a plurality of inputs (11) to a non-busy one of a plurality of outputs (12), comprising a plurality of controllable switches arranged so that each input is connectable to at least an integer q outputs and so that no two inputs share more than an integer c outputs. The invention further comprises a means for controlling the controllable switches to connect the signal to a non-busy output so that no more than an integer f outputs that are connectable to any input become busy, where f is less than q.

Description: This invention relates to the problem of constructing and operating a network, known as a concentrator, in which inputs are connected to outputs by means of controllable switches. Concentrators of various types are in common use in large switching systems like telephone exchanges. In a telephone exchange, typically a large number of input lines must be concentrated into a smaller number of trunks for transmission of the telephone signals. A concentrator consists of a crossbar made up of a number of controllable crosspoint switches that connect a given input to a given output. For very large systems, the cost of the crossbar switch is quite high because of the large number of crosspoints implemented by electromechanical switches. For instance, for a crossbar having 100 inputs and 10 outputs, in order to assure full accessibility in a single stage crossbar by any input to each output, the crossbar would require 1000 crosspoint switches. In order to reduce the cost of crossbar switches, a wide variety of concentrators has been developed that reduce the number of crosspoints required to assure an acceptable level of accessibility by a given input to an available output. Representative systems of the prior art are described in the following sources: M. W. Pinsker, "On the Complexity of a Concentrator", Proc. Internat. Teletraffic Conf., 7 (1973) 318/1-4. (Multistage rather than direct networks; rearrangeable rather than non-blocking operation; probabilistic construction--no reduction to practice.) L. A. Bassalygo and M. S. Pinsker, "Complexity of an Optimum Nonblocking Switching Network without Reconnections", Prob. Info. Transm., 9 (1973) 64-66. (Connector rather than concentrator; multistage rather than direct network; probabilistic construction--no reduction to practice.) G. A. Margulis, "Explicit Constructions of Concentrators", Prob. Info. Transm., 9 (1973) 325-332. (Rearrangeable rather than non-blocking operation.) A. Feiner and W. S. Hayward, "No. 1 ESS Switching Network Plan", Bell Sys. Tech. J., (1964) 2193-2220. (Instance in practice of sparse crossbar; capacity in excess of accessibility not guaranteed.) G. M. Masson, "Binomial Switching Networks for Concentration and Distribution", IEEE Trans. on Comm., 25 (1977) 873-883. (Rearrangeable rather than non-blocking operation.) N. Pippenger, "Telephone Switching Network", Proc. of Symposia in Applied Mathematics, Vol. 26, (1982) 101-133. U.S. Patent 3,935,394, Bulfer, issued January 27, 1976, entitled "Network Routing and Control Arrangement" and U.S. Patent 4,245,214, Beirne, issued January 13, 1981, entitled "Switching Matrix". The cited literature consists of two main groups. The first concerns probabilistic operation of multiple stages of crossbars. These systems reduce the number of crosspoints by using multiple stages and a probabilistic control routine. The second class involves systems which are operated by rearranging busy connections when a new request for connection cannot be made with existing idle outputs. The prior art systems cited above cannot provide a capacity for handling requests for connections that exceeds the accessibility of a given input to a number of outputs in a single stage crossbar without the rearrangement of existing connections. The present invention provides a single stage crossbar and means for controlling the crossbar that provides a capacity for non-blocking connection of input signals to outputs that exceeds the number of outputs to which a given input is connected. Thus, the capacity of the crossbar is increased using a smaller number of crosspoints in a single stage than was available in the prior art. In one aspect, the present invention is an apparatus for connecting a signal on one of a plurality of inputs to a non-busy one of a plurality of outputs, comprising a plurality of controllable switches arranged so that each input is connectable to at least an integer q outputs. The invention further comprises a means for controlling the controllable switches to connect the signal to a non-busy output so that no more than an integer f outputs that are connectable to any input become busy due to connections to other inputs, where f is less than q. In a second aspect, the present invention is a method for controlling a single stage sparse crossbar to connect a signal received on an input to the crossbar to at least one output wherein each input is connectable to at least an integer q outputs and no more than an integer c outputs are shared by any pair of inputs, and c is less than q, comprising the steps of: 1) maintaining for each output o a parameter Bad o indicating the number of inputs i connectable to o for which the number of outputs to which the input i is connectable that are busy due to other inputs equals an integer f and a parameter Busy o indicating whether the output is connected to any input; and 2) connecting, responsive to the parameters Bad o and Busy o , the signal to a non-bad, non-busy output o so that no more than f outputs that are connectable to any input become busy, where f is less than q. The invention which is defined in the attached claims, is described in detail below with reference to the drawings, of which; Figure 1 is a block diagram of an apparatus according to the present invention. Figure 2 is a diagram of a sparse crossbar implemented according to a preferred embodiment of the present invention. Figure 3 is a diagram of the connections of some inputs to some outputs used in the explanation of Figures 4 and 5. Figure 4 is a flow diagram illustrating the operation of a control means to make a connection according to the present invention. Figure 5 is a flow diagram illustrating the operation of a control means to break a connection according to the present invention. With reference to the drawings, a detailed description of the preferred embodiment is provided. Figure 1 is a block diagram of an apparatus according to the present invention. The apparatus includes a single stage crossbar 10 to which a plurality of inputs 11 are connected. The inputs are connected by crosspoints to a plurality of outputs 12. A means for controlling the crossbar 13 in communication with the crossbar for controlling the individual crosspoints is also included. When a signal comes in on one of a plurality of inputs 11, the controlling means 13 controls a crosspoint to connect the signal to a non-busy one of the plurality of outputs 12. A. Theoretical Description This invention relates to the problem of constructing and operating a concentrator. A concentrator is a network in which inputs are connected to outputs by means of switches arranged in a manner specified below. The present invention is operable as a network that has a single stage (each switch joins some input to some output) and partial access (not all pairs of inputs and outputs are joined by switches). The present invention is concerned with the operation of such a network as a "wide-sense non-blocking concentrator". In this mode of operation, requests preferably arrive serially, and each request is satisfied before the next one is examined. Whenever a request arrives, the network is in a state wherein certain inputs (the busy inputs) are connected by certain switches to outputs (the busy outputs). Inputs and outputs that are not busy are called idle. A request for connection designates an idle input; to satisfy it, the designated input must be connected by a switch to an idle output; the input and output thereby become busy. A request for disconnection designates a busy input; to satisfy it, the designated input must be disconnected from the output to which it is currently connected; the input and output involved thereby become idle. The present invention may also be operated in such a way that an input may simultaneously be connected up to an integer b, greater than 1, of outputs, as in a conference call situation. The invention disclosed here is the use of a network constructed in accordance with a combinatorial geometry and operated in accordance with a policy formulated to increase the capacity of the network beyond that provided by undisciplined operation. Let GF(q) denote a field with q elements. The inputs of the concentrator will correspond to ordered triples of elements from GF(q) and the outputs will correspond to ordered pairs of such elements. Input (r,s,t) will be joined by a switch to output (x, y) if and only if rx²+sx+t=y . This concentrator has q³ inputs and q² outputs. Each input has access to q outputs, but any pair of distinct inputs have common access to at most two outputs. The concentrator described above is to be operated in accordance with the following policy, in which f represents an integer parameter: a request for connection of an idle input shall be satisfied, if possible, in such a way that no idle input is joined by switches to more than f busy outputs; if this is not possible, the request for connection is refused. If f is chosen to be 2q/3 (where we assume for simplicity that q is divisible by 3), then it is possible to show that whenever a request is refused, at least q²/12 connections must currently be established. If the policy under which the concentrator of the present invention is operated (described above) is not enforced, a request may have to be refused when only q connections are currently established. Thus the enforcement of the policy increases the capacity of the concentrator by a factor of at least q/12. In the preferred embodiment of the invention any pair of distinct inputs have common access to at most two outputs. The invention can be practiced with any network in which each input has access to at least q outputs, and any pair of distinct inputs have common access to at almost an integer c, less than q outputs. Many variations of the ideas disclosed here are possible. Concentrators or generalized concentrators may be based on affine or projective geometries, on geometries with dimensions other than two, and on curves or varieties with degrees other than two. B. Implementation Figure 2 illustrates the crosspoints in a sparse crossbar corresponding to q equal to 5 and c equal to 2 suitable for implementing a concentrator such as discussed above. The crossbar shown in Figure 2 can be blocked by q equals 5 calls if used naively, but not by fewer than 9 if b equals 1 and f equals 4 and it is operated according to the present invention. Accordingly, there are q³ or 125 inputs, designated 000 through 444 (base 5) in Figure 2. And, q² or 25 outputs designated 00 through 44 (base 5). The crosspoints are indicated by X's. In the preferred embodiment, the controlling means 13 is implemented by a software or microcode controlled processor that detects requests for connection by idle inputs and operates the switches at crosspoints to connect the input to an idle output. The controlling means 13 maintains for each input i a parameter F i indicating the number of outputs to which the input i is connectable that are busy. The controlling means 13 further maintains for each input i a parameter B i indicating the number of outputs to which the input is connected at any given time. The controlling means 13 in the preferred embodiment further includes a means for maintaining for each output o a parameter Bad o indicating the number of inputs i connectable to o for which the parameter F i equals f and a parameter Busy o indicating whether the output is connected to any input. Figure 3 is a schematic diagram of the connections of an input v to an output w showing connections to inputs u and outputs t that are affected in the operation of the controlling means to make the connection v to w or break the connection v from w. The method for making a connection is illustrated in Figure 4. The method for breaking the connection is illustrated in Figure 5. The method for making a connection from input v to an output w is illustrated in Figure 4. The first step when a signal is received on input v for the controlling means 13 is to test the parameter B v to determine whether it is equal to b, an integer indicating the maximum number of outputs connected to a given input (block 40). If the parameter is equal to the maximum, then the connection is refused (block 41). If not, then the controlling means find some output w connectable to the input v such that the parameter Busy w is equal to zero and the parameter Bad w is equal to zero (block 42). If there are no such outputs, then the request for connection is refused (block 43). For such output w meeting the test of block 42, the parameter Busy w is set to 1 (block 44). Further, for the input v, the parameter B v is incremented by 1 (block 45). Then the controlling means 13 operates a crosspoint to connect the input v to the output w (block 46). Next, for all inputs u that are connectable to the output w, (see Figure 3), the controlling means goes through the following steps to update parameters (block 47). First, the parameter F u for all inputs u is incremented by 1 (block 48). Then, for each such input u, the parameter F u is tested to determine whether it is equal to f (block 49). If the parameter F u is not equal to f, then the loop continues through the other inputs u. If the parameter F u is equal to f, then for all outputs t, where the input u is connectable to t (see Figure 3), the parameter Bad t is incremented by 1 (block 50). Then the loop to the remaining inputs u is continued. When all such inputs u have been processed, then the controlling means stops (block 51). In order to break a connection from input v to output w, the controlling means 13 goes through the process illustrated in Figure 5. Upon the receipt of a request to break a connection, the first step of the controlling means is to decrement the parameter B v by 1 for the input v and to set the parameter Busy w for the output w to zero (block 60). Then the controlling means operates the crosspoint to disconnect the input v from the output w (block 61). Next, the controlling means goes through the following process to update the remaining parameters for each input u that is connectable to the output w, (block 62). For each such u, the parameter F u is decremented by 1 (block 63). Further, the parameter F u is tested to determine whether it is equal to f minus 1 (block 64). If not, the loop continues to update the remaining parameters. If the test of block 64 is true, then for all outputs t that are connectable to the input u, the parameter Bad t is decremented by 1 (block 65 and 66). When all such outputs t have had their parameters corrected, then the loop continues. When all such inputs u have been updated, then the controlling means stops (block 67).

Claims: A single stage sparse crossbar (10) for connecting a signal on one of a plurality of inputs (11) to a non-busy one of a plurality of outputs (12), comprising: a plurality of controllable switches arranged so that each input is connectable to at least q outputs, q being an integer, and means (13) for controlling the controllable switches to connect the signal to a non-busy output so that no more than f outputs, f being an integer, that are connectable to any input become busy where f is less than q; characterised in that the controlling means includes: means for maintaining for each input i a parameter F i indicating the number of outputs to which the input i is connectable that are busy; means for maintaining for each output o a paramter Bad o indicating whether the output is connectable to an input i for which the parameter F i equals f and a parameter Busy o indicating whether the output is connected to any input; and means for connecting the signal to an output o responsive to the parameters Bad o and Busy o . The apparatus of claim 1, wherein the controllable switches are further arranged so that no more than c outputs, c being an integer, are shared by any pair of inputs, and c is less than q. The apparatus of claim 1, wherein the controlling means further includes: means for connecting the signal to no more than b outputs, b being an integer, from any one input, where b + f is less than or equal to q. The apparatus of claim 1, wherein the controlling means further includes: means for maintaining for each input i a parameter B i indicating the number of outputs to which the input is connected. A method for controlling a single stage sparse crossbar to connect a signal received on an input to the crossbar to at least one output wherein each input is connectable to at least q outputs, q being an integer, and no more than c outputs, c being an integer, are shared by any pair of inputs, and c is less than q, characterised by comprising the steps of: maintaining for each output o a parameter Bad o indicating the number of inputs i connectable to o for which the number of outputs to which the input i is connectable that are busy due to other inputs equals f, f being an integer, and a parameter Busy o indicating whether the output is connected to any input; and connecting, responsive to the parameters Bad o and Busy o , the signal to a non-busy output o so that no more than f outputs that are connectable to any input become busy where f is less than q. The method of claim 5, further including the step of: maintaining for each input i a parameter F i indicating the number of outputs to which the input i is connectable that are busy. The method of claim 5, further including the step of: maintaining for each input i a parameter B i indicating the number of outputs to which the input is connected; and connecting, responsive to the parameter B i , the signal to no more than b outputs, b being an integer, from any one input, where b + f is less than or equal to q.

Inventors: FELDMAN, PAUL NEIL, FRIEDMAN, JOEL, PIPPENGER, NICHOLAS JOHN
Applicants: INTERNATIONAL BUSINESS MACHINES CORPORATION
Application year: 1987
Main classification: H04Q3
IPC codes: H04Q3