Circuit arrangement for routing signals between a master-slave pair of controlling processors and several master-slave pairs of controlled processing units
FIELD OF THE INVENTION 
     The present invention relates to a circuit arrangement in a telecommunication system for the routing of signals between a pair of controlling processors, functioning in a master-slave relationship, and several pairs of controlled processing units also operating in a relationship of the same type. 
     BACKGROUND OF THE INVENTION 
     As is well known in the art, the members of such a master-slave pair normally operate in synchronism though only the master communicates with associated peripheral units or other external components. Upon the occurrence of a failure in one of these members, the latter is dissociated from its twin which thereupon takes over the role of master if not already so designated. 
     In commonly owned U.S. application Ser. No. 347,315, filed Feb. 9, 1982 by Maria Grazia Corti et al as a continuation-in-part of an earlier application now abandoned, Ser. No. 293,997 filed Aug. 18, 1981 now abandoned, there has been disclosed a telecommunication system in which two special-purpose processors, interchangeably operating as master and slave, dialogue with a support processor designed to perform auxiliary functions such as call charging and traffic monitoring. The support processor intervenes in the operation of the special-purpose processors, as by checking for the absence of malfunctions and causing a master/slave changeover if the need therefor should arise; thus, the support processor may be regarded as being of higher rank than the two processors controlled thereby. 
     In a telecommunication system of the kind to which the invention is applicable, a pair of alternatively activable central processing units or CPUs mated in this manner are the principal constituents of each of several switching modules forming part of a digital telephone exchange or the like. These CPUs are under the control of a pair of support processors, common to all the modules, also operating in an interchangeable master-slave relationship. Thus, a malfunction of the support processor designated as the master will result in its automatic replacement by its formerly inactive twin. Since, however, either support processor must be able to communicate with either CPU of each switching module associated therewith, a four-way interconnection is needed between the two controlling processors and the two controlled CPUs of any module. Otherwise, with one support processor controlling only one CPU of each pair, a breakdown of the master CPU of a single module would require a master/slave changeover of the two support processors and of the CPUs of each module so that a subsequent breakdown of another CPU now acting as a master could no longer be rectified without manual intervention of an operator. 
     The aforementioned four-way interconnection can be realized with simple cables only if the switching modules are located close to the controlling support processors. In the case of longer lines it is necessary, for reliable operation, to insert a pair of mutually complementary modems at opposite ends of each line. This makes the network of connecting lines not only complex but also rather costly. 
     OBJECTS OF THE INVENTION 
     The general object of the present invention, therefore, is to provide a simplified circuit arrangement for interchangeably linking a pair of mated controlling processors with pairs of mated CPUs forming part of a plurality of controlled switching modules in a manner insuring continued operation under various abnormal conditions. 
     A more particular object of the invention is to provide relatively inexpensive means in such a circuit arrangement for establishing alternative routes between the controlling processors and the controlled CPUs which can be made operational, in the event of a breakdown of a route normally used, without requiring a master/slave changeover between either the processors or the CPUs served thereby. 
     SUMMARY OF THE INVENTION 
     Thus, the invention applies to a telephone or other telecommunication system with a plurality of switching modules each provided with a first and a second CPU mated in an interchangeable master-slave relationship, these CPUs being under the alternative control of a first and a second processor that are common to all the switching modules and are also mated in an interchangeable master-slave relationship. A first set of bidirectional connections respectively extend between the first processor and the first CPU of each switching module while a second set of bidirectional connections respectively extend between the second processor and the second CPU of each module. The processor currently designated as a master dialogues via the respective connections with the CPUs designated as masters in the several switching modules. 
     Pursuant to the present improvement, each first connection includes a first cascade of two closely juxtaposed interfaces while each second connection similarly includes a second cascade of two such interfaces. The first and second cascades assigned to a given switching module form a processor-side interface pair associated with a module-side interface pair, only one interface of each pair being normally active. Each interface comprises two input/output or I/O sections, namely an externally accessible I/O section and an internally accessible I/O section, and each bidirectional connection includes a direct in-line link between the externally accessible I/O sections of a processor-side interface and the associated module-side interface in cascade therewith. The internally accessible I/O sections of each pair are interconnected by a normally blocked cross-link which can be unblocked, in response to commands from the master processor, by switchover means included in the interface in order to join an active interface of a processor-side pair to a hitherto inactive interface of the same pair in the event of a malfunction occurring in a master CPU normally reached via the in-line link between the externally accessible I/O section of the active interface and the corresponding section of the associated module-side interface confronting it. The unblocking of that cross-link enables the establishment of communication between the master processor and the twin of the malfunctioning CPU through the in-line link extending between the two other cascaded interfaces of the associated pairs. 
     Advantageously, in accordance with another feature of the invention, the first connections include a common first bus, tied to the first processor, and individual first signal lines extending from that bus by way of the first interface cascades to the respective first CPUs. Analogously, the second connections include a common second bus, tied to the second processor, and individual second signal lines extending from the latter bus by way of the second interface cascades to the respective second CPUs. With the aid of coupling means, responsive to commands from the master processor, the two buses can be interconnected to provide communication between the master processor and a hitherto inactive interface of a processor-side pair in the event of a malfunction of the hitherto active interface of that pair. This enables the establishment of an alternative connection between the master processor and the master CPU previously served by the malfunctioning interface and by the module-side interface in cascade therewith, that connection further including the unblocked cross-link which joins the internally accessible I/O sections of the associated module-side interface pair to each other. 
    
    
     BRIEF DESCRIPTION OF THE DRAWING 
     The above and other features of the invention will now be described in detail with reference to the accompanying drawing in which: 
     FIG. 1 is a block diagram of part of a telecommunication system provided with a circuit arrangement embodying the invention; 
     FIG. 2 is a more detailed diagram of a representative interface included in the circuitry of FIG. 1; and 
     FIG. 3 shows details of a coupler also forming part of that circuitry. 
    
    
     SPECIFIC DESCRIPTION 
     As shown in FIG. 1, two mutually identical switching modules MO 1  and MO n  --forming part of a larger group of such modules not further illustrated--are under the alternative control of a pair of support processors ESA and ESB mated in an interchangeable master-slave relationship as discussed above. Each module MO 1  . . . MO n  includes two similarly mated CPUs which have been designated CPA 1 , CPB 1  in the case of the first module and CPA n , CPB n  in the case of the last module. Each module may have a structure similar to that disclosed in the above-identified commonly owned Ser. No. 347,315, its two CPUs being part of a pair of special-purpose processors interconnected by a bidirectional signal path which enables one CPU, acting as a master, to control switching operations of both these processors and communication thereof with associated peripheral units. According to the disclosure of that copending application, the two mated processors dialogue with a controlling support processor by way of a signal-transmitting network including a microprocessor and a channel allocator designed to determine which of the two mated processors is to communicate with the microprocessor during a time slot of an operating cycle of that network. The channel allocator, accordingly, implements pre-established priorities in the exchange of information between the support processor and the two mated processors controlled thereby. 
     As further shown in present FIG. 1, each support processor ESA, ESB includes a respective central processing unit CPA&#39;, CPB&#39; connected, by way of an input/output unit 10A, 10B and a bidirectional signal line 14A, 14B, to an associated bus BA or BB. The first bus BA is connected via a plurality of bidirectional signal lines 13A&#39; 1 , . . . 13A&#39; n  to processor-side interfaces INA&#39; 1 , . . . INA&#39; n  paired with interfaces INB&#39; 1 , . . . INB&#39; n  which in turn are connected to bus BB by way of respective bidirectional signal lines 13B&#39; 1 , . . . 13B&#39; n . Each pair of processor-side interfaces INA&#39; 1 , INB&#39; 1 , . . . INA&#39; n , INB&#39; n  confronts as associated pair of module-side interfaces INA 1 , INB 1 , . . . INA n , INB n  closely juxtaposed therewith, corresponding interfaces of the two associated pairs being directly connected by short bidirectional in-line links 11A 1 , 11B 1 , . . . 11A n  , 11B n  constituted by simple cables. The module-side interfaces INA 1 , INB 1 , . . . INA n , INB n  communicate via bidirectional signal lines 13A 1 , 13B 1 , . . . 13A n , 13B n  with respective units CPA 1 , CPB 1 , . . . CPA n , CPB n  of the switching modules served thereby. Each interface has an externally accessible and an internally accessible I/O section, as more fully described with reference to FIG. 2 hereinafter. The in-line links 11A 1 , 11B 1 , 11A n , 11B n  extend between the externally accessible confronting I/O sections of cascaded interfaces INA 1  /INA&#39; 1 , INB 1  /INB&#39; 1 , INA n  /INA&#39; n  and INB n  /INB&#39; n , respectively. The internally accessible I/O sections of each pair are interconnected by two-way cross-links 121 and 121&#39; on the module and the processor sides in the case of module MO 1  and by similar cross-links 12n and 12n&#39; in the case of the module MO n . The quartet of interfaces associated with each module effectively replaces the aforementioned channel allocator disclosed in the commonly owned application. 
     Also illustrated in FIG. 1 are a pair of couplers CBA, CBB which under certain conditions, more fully described hereinafter with reference to FIG. 3, interconnect the two buses. Coupler CBA is connected to buses BA and BB via respective input and output lines collectively designated 15A and 16A; similarly, coupler CBB has input and output lines 15B and 16B respectively connected to buses BB and BA. 
     FIG. 2 shows details of a generic interface IN representative of any of the interfaces illustrated in FIG. 1. The interface comprises an externally accessible I/O section 20A, an internally accessible I/O section 20B and a switchover section 20C. An incoming and an outgoing branch of a generic in-line link 11 are respectively connected to a signal receiver 29A and a signal transmitter 30A in I/O section 20A. Similarly, a signal receiver 29B and a signal transmitter 30B are respectively connected to an incoming and an outgoing branch of a generic cross-link 12. An output line of receiver 29A extends to a No. 0 data input of a multiplexer 22 in section 20B and to a corresponding data input of a multiplexer 23 in section 20C. An output line of receiver 29B extends to a No. 0 data input of a multiplexer 21 in section 20A and to a No. 1 data input of multiplexer 22 in section 20B. Multiplexers 21 and 22 have output lines respectively terminating at signal transmitters 30A and 30B. 
     Switchover section 20C further includes a microprocessor 200 connected via a bidirectional signal line 13 to the corresponding CPU of the associated switching module or to one of the buses BA, BB shown in FIG. 1. Microprocessor 200 is further tied to an output line 25 of multiplexer 23 and has an output lead 26 terminating at a switching input of that multiplexer, a similar lead 27 connected directly to a switching input of multiplexer 21 and via an inverter 24 to a switching input of multiplexer 22, as well as an output line 28 terminating at respective No. 1 data inputs of these latter multiplexers. As long as no malfunction information is stored in a memory of the microprocessor and there are no messages to be sent from the latter to the outgoing branch of link 11, leads 26 and 27 are de-energized so that multiplexers 21 and 23 stand on their No. 0 data inputs while multiplexer 22 stands on its No. 1 data input. As a result, signals incoming over link 11 are channeled by receiver 29A and multiplexer 23 to microprocessor 200 for conversion into instructions outgoing over line 13 whereas instructions incoming over that line give rise to signals delivered by way of line 28, multiplexer 21 and transmitter 30A to the outgoing branch of link 11. Thus, only I/O section 20A is operational under these circumstances. However, any signal arriving on the incoming branch of cross-link 12 at receiver 29B would be sent via multiplexer 21 and transmitter 30A to the outgoing branch of in-line link 11. 
     If a defect reported to microprocessor 200 calls for a rerouting of signals arriving on link 11, the microprocessor energizes its output lead 27 so that multiplexers 21 and 22 are switched. An incoming signal will then pass from receiver 29A via multiplexer 22, transmitter 30B and cross-link 12 to I/O section 20B of the twin of interface IN where it will reach the receiver 29B; with that other interface in its normal state, the signal will continue through multiplexer 21 and transmitter 30A of I/O section 20A thereof to the outgoing branch of the corresponding in-line link 11 for retransmission to the interface in cascade with the twin of interface IN. 
     Microprocessor 200, operating according to a predetermined protocol established by its programmer in the usual manner, also receives such an incoming signal via multiplexer 23 in the de-energized state of lead 26 but will not emit messages on line 13 in response thereto, except possibly for testing operations commanded by that signal. When the microprocessor is instructed to make itself accessible to receiver 29B instead of receiver 29A, it energizes the lead 26 whereby the incoming branch of cross-link 12 is placed in communication with the outgoing branch of line 13 rather than with that of link 11. By controlling the voltage level on lead 27, microprocessor 200 also determines whether signals emitted on its own output line 28 are to go to transmitter 30A or 30B. Time slots respectively allocated to the transmission of signals to and from a given interface IN are established by a non-illustrated clock common to all interfaces and CPUs. 
     FIG. 3 shows a bus B, representative of either of the two buses BA and BB of FIG. 1, as well as a generic coupler CB with inputs connected thereto. Bus B encompasses a number of multi-lead branches including an address branch 31 and a data branch 32. Input multiples 15a, 15c and 15e, tied to address branch 31, as well as input multiples 15b and 15d, tied to data branch 32, collectively represent the line 15A or 15B of FIG. 1; lines 16A and 16B are generically represented in FIG. 3 by a connection 16 comprising two output multiples 16&#39; and 16&#34;. 
     Input multiple 15a terminates at a function decoder 33 working into a writing unit 34 with output leads 35 and 36 connected to a random-access memory or RAM 38. An extension of lead 35 terminates at a switching input of a multiplexer 37 with data inputs tied to multiples 15b and 15c. A transfer network 40 in coupler CB comprises two pairs of normally cut-off amplifiers 41&#39;, 42&#39; and 41&#34;, 42&#34;; amplifiers 41&#39; and 42&#39; are inserted in opposite directions each other between multiples 15d and 16&#39; whereas amplifier pair 41&#34;, 42&#34; is similarly inserted between multiples 15e and 16&#34;. Unblocking inputs of amplifiers 41&#39;, 41&#34; and of amplifiers 42&#39;, 42&#34; are connected to respective output leads 43 and 44 of RAM 38 which is addressable by an output multiple 39 of multiplexer 37. 
     RAM 38 comprises a multiplicity of cells respectively assigned to all processor-side interfaces of the set INA&#39; 1  . . . INA&#39; n  or INB&#39; 1  . . . INB&#39; n  (FIG. 1) directly linked with bus B. Each cell stores information indicating the intact or defective state of the corresponding interface, advantageously in the form of a data bit &#34;0&#34; or &#34;1&#34;. At the beginning of operations, with all interfaces presumed to be in proper condition, a data bit &#34;0&#34; is loaded into each of these cells. Thereafter, an identification code assigned to such a cell appears on address branch 31 in any time slot during which the processor connected to bus B desires to communicate with the switching module served by the interface so identified. If a defect-indicating data bit &#34;1&#34; has been loaded into the addressed cell, RAM 38 energizes its output leads 43 and 44 in order to unblock the transfer network 40, thereby establishing two-way communication between branches 31, 32 of bus B and the analogous branches of the other bus. These buses may also include further leads, not shown, which carry commands and information not intended for couplers CBA, CBB and which are simultaneously interconnected by similar, nonillustrated sections of network 40. 
     When one of the interfaces served by bus B is found to be defective, the associated support processor emits on the address branch 31 of that bus a particular code which is detected by function decoder 33, causing it to activate the writing unit 34. The latter thereupon emits a write-enable signal W on its output 35 whereby the output multiple 39 of multiplexer 37 is switched from input multiple 15c to input multiple 15d tied to data branch 32. The special code present on address branch 31 is accompanied by an identification, on data branch 32, of the memory cell assigned to the defective interface which is therefore simultaneously addressed by way of multiple 39. Unit 34 loads the addressed memory cell with a malfunction bit D of logical value &#34;1&#34; on its data output 36 after which the multiplexer 37 is returned to its normal position upon the disappearance of signal W. When the same cell is subsequently addressed via branch 31, its contents will not be changed while transfer network 40 is activated as described above. As soon as the defect has been remedied, however, another special code on address branch 31 re-initiates the aforedescribed loading operation, except that output 36 of unit 34 now carries a data bit D of logical value &#34;0&#34; to be written in the cell assigned to the reconditioned interface. 
     Multiplexer 37 could be omitted if the input multiple 15a of function decoder 33 were connected to data branch 32 instead of address branch 31 which in that case would be permanently tied to address multiple 39 of RAM 38. In such a case, of course, the support processor would emit the memory-loading code to branch 32 of bus B at the same time that the address of the affected cell appears on branch 31. Since, however, the identification codes present in different time slots on address branch 31 are also detected by the microprocessors of the respective processor-side interfaces, the arrangement shown in FIG. 3 has the advantage of avoiding an untimely activation of such a microprocessor. If the same identification code is used for both interfaces of any processor-side pair, the activation of transfer network 40 will let the address of a defective interface be detected by the microprocessor of its twin. 
     In the following description of the operation of the present system it will be assumed that support processor ESA operates as the master, as do units CPA 1  and CPA n  of modules MO 1  and MO n . Thus, processor ESA normally dialogues with units CPA 1  and CPA n , during time slots assigned thereto, by way of line 14A, bus BA, signal lines 13A&#39; 1  and 13A&#39; n , processor-side interfaces INA&#39; 1  and INA&#39; n , in-line links 11A 1  and 11A n , module-side interfaces INA 1  and INA n , and signal lines 13A 1 , 13A n . Within each active interface the signals pass between line 13 (FIG. 2) and link 11 via microprocessor 200, line 28, multiplexer 21 and transmitter 30A in one direction and via receiver 29A, multiplexer 23, line 25 and microprocessor 200 in the opposite direction during the respective time slots. 
     If support processor ESA detects an interruption in its communication with module MO 1 , and if diagnostic procedures by that processor and possibly by other equipment localize the defect in link 11A 1 , microprocessor 200 of interface INA&#39; 1  is commanded to energize its output lead 27 so that signals emitted by the processor are rerouted in the aforedescribed manner via the cross-link 121&#39; of the processor-side pair to the companion interface INB&#39; 1  and from there via link 11B 1  to section 20A of module-side interface INB 1  whose microprocessor is commanded via the same path to execute a like switchover operation. Thus, the signals destined for unit CPA 1  are rerouted by way of cross-link 121 to the still active interface INA 1  for delivery to that unit by way of line 13A 1 . Signals traveling in the opposite direction pass through all four interfaces by the same alternate route. 
     If, on the other hand, the fault is traced to a malfunction of unit CPA 1  or of the associated interface INA 1 , processor ESA commands the microprocessor of interface INB 1  to establish communication via line 13B 1  with unit CPB 1  now designated as the master. 
     If the fault is found to lie in interface INA&#39; 1 , processor ESA directs the coupler CBA to interconnect the leads of buses BA and BB for the routing of signals from that processor by way of line 13B&#39; 1  to interface INB&#39; 1 , bypassing its defective mate INA&#39; 1 , whence the connection extends over link 11B 1  to interface INB 1  and then either to unit CPA 1  (through interface INA 1 ) or to its mate CPB 1  depending on which of these CPUs acts as the master. Oppositely traveling signals will, of course, also pass over that route. 
     None of the aforedescribed operations affects the master status of processor ESA or of the CPUs so designated in any of the other modules. Analogous operations can be performed under the control of processor ESB, with intervention of coupler CBB if necessary. 
     It will thus be seen that the system embodying the invention can effectively handle a variety of abnormal circuit conditions with relatively few connections extending between support processors ESA, ESB and switching modules MO 1 , MO n . Modems, if any, need only be used in those bidirectional lines 13 that exceed a certain length. Since the interfaces can generally be disposed as close as desired to the modules served thereby, this may apply only to some of the lines 13A&#39; 1  -13A&#39; n  and 13B&#39; 1  -13B&#39; n  linking the processor-side interfaces with buses BA and BB.