Abstract:
In an electronic switching system, there is provided an arrangement which, without doubling the computers of the control units, enables the switching elements of the system to be controlled without interruption in the event of a failure affecting their control. To this end, the system comprises n control units each with an independent store (memory). The program corresponding to two functions i.e. to the control of two groups of switching elements is written in the independent store of each unit. Exchange memories, interconnecting the independent stores in twos, enable the momentary data necessary for monitoring of the group of switching elements in charge of the control unit under failure to be transferred from this unit to the other unit holding, in its independent store, the program relating to the same group.

Description:
BACKGROUND OF THE INVENTION 
     This invention relates to a control arrangement adaptable to an electronic switching system comprising computers used as control units (C.U.). 
     The use of high-speed data processing circuits has brought about an increase (as compared to non-electronic switching systems) in the centralization of control functions. This centralization has many advantages, but it can make the system vulnerable to component failures if not properly handled. For example if no redundancy were provided it would be possible for a single component failure to cause a complete failure of the system. A duplication of central control computers is therefore necessary. 
     In view of what has been achieved in the field of telephonic or telegraphic switching, where reliability of operation is of particular significance, a distinction is drawn between arrangements with two control units and arrangements with multiple control units, multiple in this context meaning that the number of control units is greater than two. 
     Generally speaking, there are two main categories of control arrangements with two control units. In the first category, the two units normally work in parallel, each performing all the current functions, but for only half of the incoming signals. In the event of failure, one of the units handles all the traffic it can, but this presupposes a significant reconfiguration of the network because that part of the content of each store (memory) which is governed by the processed signals differs for the two stores. 
     In the second category, the two units work in microsynchronism, the second unit repeating the operations of the first, enabling them to be verified, and replacing the other unit in the event of failure. The disadvantage is the waste of the total processing capacity used. 
     In either category, the concentration of the intelligence and of the memory in only two control units makes the arrangement as a whole inflexible to a large extent and also makes it impossible rationally to adapt standardized control units to telephone or telegraph exchanges of different capacity. 
     Although it is of course possible to use control units comprising stores differing in capacity according to requirements, the other elements of the control units designed for the maximum capacity of traffic would become plethoric for a low density of traffic. 
     A control arrangement with multiple control units working in parallel for the various input signals, each operating for (1/n) th  of the traffic, have also been proposed. As in the two categories of arrangements comprising two control units, each of the n control units performs all the functions. In this way the control arrangement can be better adapted to the requirements of the network because it is sufficient to vary the number n. 
     However, at the risk of an enormous waste of memory capacity in regard to the permanent or semipermanent data relating to the nature of the operations to be carried out, there can be no question of providing each of the n control units with its own store supplying it with all the necessary data. 
     In the known arrangement, the difficulty has been obviated by giving the n control units a common store. 
     However, the principle of safety becomes illusory when the failure affects precisely the common store which then has to be doubled. 
     On the other hand, multiprocessing in one and the same store or in two identical stores gives rise to problems of logic (time sharing) and hardware (changing priority access logic) which increase in proportion as the number of control units varies. 
     The present invention relates to a control arrangement by which these various disadvantages may be obviated. 
     SUMMARY OF THE INVENTION 
     According to the invention, there is provided a control arrangement for a switching system comprising: 
     n control units each consisting of a computer and of an independent store (n integer greater than 2); 
     p groups of switching elements, the operation of each group constituting one of p functions (p integer greater than 2); 
     n(n-1)/2 exchange stores of smaller capacity than the independent store; 
     and means for coupling each exchange store to a predetermined pair of control units so as to have each control unit capable to perform at least two predetermined functions. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The invention is described in more detail in the following with reference to the accompanying drawings, wherein: 
     FIG. 1 diagrammatically illustrates the principle of a control arrangement according to the invention. 
     FIG. 2 illustrates one example of embodiment of the invention. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     In the Figures, the multiple connections between two elements have been symbolized by a single continuous line provided with two oppositely directed arrows in the case of a two-way connection. 
     In FIG. 1, n control units U 1 , U 2  . . . U n , n ≧ 2, of which only the first two and the last have been shown, each comprise an independent store (not shown). The n control units are bilaterally connected in twos by n(n-1)/2 small exchange stores E.sub.(1,2), E.sub.(1,3), E.sub.(1,n), E.sub.(2,n), etc. . . . 
     The control arrangement comprises for p functions p pairs of control circuits (C 1 , D 1 ), (C 2 ,D 2 ), (C i , D i ), (C P , D P ) (not shown in FIG. 1) which are identical for each pair and each of which is intended to be installed between a control unit and a group of elements of which the control is a current function. The number p is ≧ 2 and i is any number from 1 to p. By virtue of the fact that they are identical, one and/or the other of the circuits C i  and D i  may be connected to the same group of elements to be controlled. The control arrangement may optionally comprise other control circuits, each of which is intended to be installed at the output of a control unit to enable it to perform one of the non-current functions, such as handling conventional peripherals. 
     The method for using the control arrangement implies the writing into the independent store of two C.U., and only two, of that part of the control programme for controlling any group of elements which is independent of the switching system. Two operational states can exist for each C.U.: 
     i. normal operation, wherein each C.U. performs a predetermined function i.e. the control operation of a predetermined group of elements; 
     ii. failure of a C.U., wherein, under the control of a monitoring system, the necessary data for the control operation of said group of elements are transferred from the C.U. under failure to the C.U. which possesses that part of the control programme for controlling said group of elements. 
     FIG. 2, which illustrates one example of an embodiment of the invention. It will be described at the same time as the method according to the invention. 
     In the interests of clarity, the following situation has been assumed to prevail: 
     There are only four functions: f i  (i = 1, 2, 3, 4). Each function consists of the control of a group of switching elements. 
     The number of control units is four. 
     Each of the functions must be able to be performed by two control units. Each control unit is only designed for two functions. This results in the following scheme: 
     unit 1: functions f 1  and f 2   
     unit 2: functions f 2  and f 3   
     unit 3: functions f 3  and f 4   
     unit 4: functions f 4  and f 1   
     The function f 1  will be for example the control of scanners, the function f 2  the control of concentrators, etc. The distribution of the functions such as described above will be referred to as &#34;graduated&#34;. 
     In FIG. 2, each of control units has been divided in the interests of clarity into blocks i a , i b  and i c  (i = 1, 2, 3 and 4 successively), representing: 
     in the case of the blocks 1 b , 2 b  etc. . . the independent store (I.S.); 
     in the case of the blocks 1 c , 2 c  etc. . . the access circuit to the independent store (A.C.I.S.); 
     in the case of the blocks 1 a , 2 a  etc. . . the rest of the elements of each C.U. 
     The exchange stores E 1 ,2, E 1 ,3, E 1 ,4, E 2 ,3, E 2 ,4, and E 3 ,4, are also connected to the access circuits. 
     The intermediate control circuits (I.C.C.) between a control unit and a group of switching elements, whose control involves one and the same function, are doubled, namely C 1  and D 1  for the function f 1 , C 2  and D 2  for the function f 2 , C 3  and D 3  for the function f 3 , C 4  and D 4  for the function f 4 . 
     Each of the intermediate circuits C i  and D i  is connected to a certain number of switching elements (S.E.) for the function f i  (symbolised by squares) through an &#34;OR&#34; circuit (represented by the block 101 or 102 or 103 or 104 according to the group of switching elements). 
     The intermediate circuits required for transmission in the adequate form of the commands of the control unit to be switching elements are also used for transmitting data relating to the state of the controlled units to the independent stores of the control units by way of access circuits 1c, 2c, 3c and 4c. 
     The operation of each control unit is monitored by a monitoring element (M.E.) denoted by the reference 60 + i connected bilaterally to the block ia, and a general monitoring element (G.M.E.) 70 is connected bilaterally to the four elements 60 + i. The monitoring elements 60 + i and 70 are conventional elements. 
     In the method according to the invention, the program required for carrying out the functions f i , independently of the data variable according to the state of the network and transmitted to the control units by the intermediate circuits C i  and D i  are written into each of the independent stores of the two corresponding control units. 
     In the absence of failure, each control unit performs only one function, i.e. the unit i performs the function f i , the intermediate circuits D not being used. 
     The exchange stores are used for the data required for coordinating processing operations interrelated in regard to order, for example the various functions to be performed for the signals associated with the same address. 
     If a failure of the control unit 2 for example is detected by the monitoring element 62, the monitoring element interrupts the operation of the control unit 2 and general monitoring element 70 gives the alarm. 
     The control unit 2 is taken out of service while the couplings between units 1 and 2 are established by the A.C.I.S. It is then C.U. 2 is being repaired. The exchange store E.sub.(1,2) then enables the data associated with the signals being processed to be transferred to the I.S. 1 b . 
     It should be noted that the C.U. 4 can also be taken out of operation without all the functions having to stop being performed. 
     It is also possible in normal operation to use each control unit for the two functions which it is capable of performing, but each for only half the traffic. The double couplings of FIG. 2 are then permanently used. In the event of a failure, for example in the control unit 2, the load of the control unit is distributed between the control units 1 (for f 1 ) and 3 (for f 3 ). In the manner previously described, the functions are divided into as many categories as there are control units. The effect of the graduated distribution is that each category is always processed by at least two control units and never more. 
     In certain cases, however, it may be preferable to divide the functions into a number greater than the number of control units, for example when the functions to be performed are very numerous. Assuming for example that there are four control units and six functions, the distribution of the virtual functions may be as follows: control unit 
     
         ______________________________________control 1       f.sub.1 f.sub.2                       f.sub.3 2       f.sub.1             f.sub.4                                   f.sub.5 3               f.sub.2     f.sub.4     f.sub.6 4                     f.sub.3     f.sub.5                                         f.sub.6______________________________________ 
    
     In normal operation, the effective functions may be distributed in such a way that each control unit performs all its virtual functions for half the traffic, its load being distributed between the other three in the event of failure. It should be noted that, in this example, the maintenance of the functions in the event of failure of a control unit leads to a better distribution than in the first case described above. It is in fact a question of generalising the notion of &#34;graduation&#34; of which the various cases discussed above were only intended to represent examples. 
     In practice, the particular arrangement may always be adapted in its dimensions to a given system in the following manner: 
     The preliminary choice of the number n of control units will be based on the data processing capacity. 
     The total number of logical processing modules will then be divided into N approximately equal parts, N = kn (k integer). 
     The distribution of N between the n control units will be such that each control unit will have to treat q logical modules, such that: 
     
         q = 2 N/n = 2 K 
    
     the flexibility of this process in its practical application is very considerable and is only given with a view to forming a theoretical support for a measure readily carried out intuitively for low values of N and n. 
     The condition mentioned above is necessary if the same logical module is to reside in only two stores. It is sufficient for finding a solution (which is generally not exclusive). 
     Obviously, numerous additional modifications and variations of the present invention are possible in light of the above teachings. It is therefore to be understood that within the scope of the appended claims, the invention may be practiced otherwise than as specifically described herein.