Communication system comprising a plurality of processors and at least one switch, and associated communication method
11736360 · 2023-08-22
Assignee
Inventors
Cpc classification
International classification
G06F15/173
PHYSICS
H04L41/0806
ELECTRICITY
Abstract
The present invention relates to a communication system comprising a plurality of processors and at least one switch, referred to as a main switch, connecting the processors into a main communication network; the system being characterised in that it further comprises at least one other switch, called an auxiliary switch, connecting the processors in an auxiliary communication network, and in that the auxiliary communication network is intended to be used by the processors to initialise the main communication network.
Claims
1. A communication system comprising a plurality of processors and at least one switch, referred to as a main switch, connecting the processors into a main communication network; wherein the system comprises at least one other switch, called an auxiliary switch, connecting the processors in an auxiliary communication network, and wherein the auxiliary communication network is configured to be used by the processors to initialise the main communication network; wherein upon connecting the processors in the auxiliary communication network, each processor is configured to send into that auxiliary network a broadcast message comprising at least one element selected from the group: a physical address of the processor and a start address of a communication area of the processor; and a unique processor identifier.
2. The communication system according to claim 1, wherein the main communication network has a higher throughput than the auxiliary communication network.
3. The communication system according to claim 1, wherein the main communication network is a switched PCIe-type network.
4. The communication system according to claim 1, wherein the auxiliary communication network complies with an ETHERNET-type data exchange protocol.
5. The communication system according to claim 1, comprising at least two main switches connected to each other, the processors connected to the same main switch forming a same communication domain.
6. The communication system according to claim 5, wherein at least one processor, referred to as a master processor, is configured to generate a synthesis of the received broadcast messages and to send this synthesis to all other processors, and wherein each processor of the same communication domain is configured to determine a management processor from the set of processors of that communication domain; the management processor being configured to receive the synthesis from the master processor and to determine a routing configuration of the main switch of the same communication domain of the management processor, from the received synthesis.
7. The communication system according to claim 6, wherein the management processor is determined by an analysis of unique processor identifiers of all processors of the corresponding communication domain of the management processor.
8. The communication system according to claim 1, wherein at least one processor, referred to as a master processor, is configured to generate a synthesis of the received broadcast messages and to send this synthesis to all other processors.
9. The communication system according to claim 8, wherein each other processor is configured to receive the synthesis from the master processor and to program all local translations to remote addresses determined from the received synthesis.
10. A method of communicating within the communication system according to claim 1, comprising initialising the main communication network using the auxiliary communication network.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) Characteristics and advantages of the invention will become apparent upon reading the following description, given only as a nonlimiting example, referring to the attached drawings, in which:
(2)
(3)
(4)
DETAILED DESCRIPTION OF THE INVENTION
(5)
(6) The communication system 10 comprises a plurality of processors 12-1, . . . , 12-N and one or more main switches 14-1, . . . , 14-M connecting these processors 12-1, . . . , 12-N into a main communication network.
(7) Each processor 12-1, . . . , 12-N, also known as a node or computational node or computer, has a processor known per se that can be used in particular in the avionics field. In the example shown in
(8) The main switches 14-1, . . . , 14-M connect the processors to each other, thus forming a switched network, using suitable connection means. These connection means include communication buses known per se. Each switch 14-1, . . . , 14-M is thus implemented in accordance with the transmission protocol usable in the switched network by the corresponding connection means. In the example shown in
(9) Depending on how the processors 12-1, . . . , 12-N are interconnected with the switches 14-1, . . . , 14-M, the communication system 10 forms one or more communication areas. In particular, the processors 12-1, . . . , 12-N connected to the same main switch 14-1, . . . , 14-M form a single communication domain. Thus, in the example shown in
(10) The main communication network formed by the main switches 14-1, . . . , 14-M is for example a high-performance (high-speed) network, such as a PCIe type network, also called PCI Express. In particular, the term “PCIe-type network” means a network using PCIe communication buses of any existing version and any future version whose technical specifications are compatible with those described in this document.
(11) According to the invention, in addition to the main switches 14-1, . . . , 14-M forming the main network, the communication system 10 comprises at least one auxiliary switch 20 connecting the processors 12-1, . . . , 12-N into an auxiliary communication network, separate from the main communication network.
(12) This auxiliary communication network enables the main communication network to be initialised and for this purpose has simplified initialisation facilities compared to those of the main communication network. For example, the auxiliary communication network allows automatic initialisation of each of the processors 12-1, . . . , 12-N in the auxiliary communication network.
(13) In addition, the auxiliary communication network has a lower performance, such as the communication rate, than the main communication network. This auxiliary communication network is, for example, designed to only initialise the main communication network and is not usable during nominal operation of the communication system 20.
(14) According to one example, the auxiliary communication network is a switched ETHERNET-type network. In particular, the term “ETHERNET-type network” means a network using the ETHERNET protocol of any existing version and any future version whose technical specifications are compatible with those described in this document.
(15) Other examples of the respective choice of the types of the main and auxiliary communication network are possible.
(16) In the example shown in
(17) The or each auxiliary switch 20 is implemented according to the communication protocol it implements.
(18) Furthermore, advantageously according to the invention, the or each auxiliary switch 20 is connected to the processors 12-1, . . . , 12-N by connection means distinct from those of the main switches 14-1, . . . , 14-M. These connection means may be wired and/or wireless.
(19) The communication method implemented by the communication system 10 according to the invention will now be explained with reference to
(20) According to the invention, this method is implemented to initialise the main communication network using the auxiliary communication network. Such an initialisation is, for example, carried out when the communication system 10 is started up for the first time or when the communication system 10 is changed in a way that involves structural modifications. For example, such a change may comprise adding and/or removing a processor in the system 10.
(21) It is further considered that at the time of implementation of the communication method, the auxiliary communication network is already initialised, for example automatically, according to techniques known per se.
(22) In an initial step 110, each processor 12-1, . . . , 12-N performs internal local programming. In particular, in this step, the communication stack of each processor 12-1, . . . , 12-N allocates exactly the amount of contiguous physical memory required with respect to the hosted applications and schedules an access port to the corresponding main switch 14-1, . . . , 14-M.
(23) In a subsequent step 120, each processor 12-1, . . . , 12-N sends a broadcast message comprising at least one element selected from the group: its physical address and the start address of its communication area; its unique identifier.
(24) In a subsequent step 130, the processors 12-1, . . . , 12-N receive, via the auxiliary network, the broadcast messages sent by the other processors 12-1, . . . , 12-N, and from among all the processors 12-1, . . . , 12-N, one processor, known as the master processor, generates a synthesis of the broadcast messages received. Such a summary shows, for example, a concatenation of all received broadcast messages.
(25) The master processor has, for example, the fastest processor that has received the broadcast messages within a predetermined time period and has made a corresponding synthesis.
(26) The master processor then sends this synthesis to all the other processors, which send an acknowledgement back to the master processor.
(27) In a subsequent step 140, the master processor implements an installation of the network.
(28) In particular, in this step, the master processor sends a local installation message to each of the other processors.
(29) Upon receipt of such a message, each processor schedules local address translations to remote addresses. These remote addresses are determined by each of the processors 12-1, . . . , 12-N from the received synthesis, applying the same algorithm. For example, according to such an algorithm, remote addresses are linked to the unique identifier of the corresponding processor and the size of its communication area. Thus, remote addresses can be fixed.
(30) In the same step 140, the master processor further sends inter-switch translation setup messages.
(31) Upon receipt of such a message, the processors 12-1, . . . , 12-N of the same communication domain determine a management processor from among all the processors of that communication domain. This choice can be made for example by a predetermined algorithm, based for example also on the identifiers of the processors 12-1, . . . , 12-N.
(32) Then, in each communication domain, the management processor schedules all inter-switch communications in that communication domain. In particular, the management processor determines a routing configuration of the main switch of the corresponding communication domain from the received synthesis.
(33) At the end of this step, each processor 12-1, . . . , 12-N sends an installation confirmation message to the master processor.
(34) In a subsequent step 150, the master processor waits for the reception of all the installation confirmation messages and sends to all the processors 12-1, . . . , 12-N an installation completion message.
(35) In a subsequent step 160, a diagnosis of the main communication network is initiated. When this diagnosis is positive, the main communication network can then be used in its nominal operation. Otherwise, at least some of the above steps can be repeated using the auxiliary communication network.
(36) It is therefore clear that the present invention has a number of advantages.
(37) In effect, the invention allows a high performance core communication network, such as a PCIe-type switched network, to be initialised using another network which is simpler, or even automatic, to initialise.
(38) The main communication network can thus use a dynamic configuration that can be adapted to different changes that may occur during the operation of the system 10. This also avoids oversizing the network, as only the settings necessary for its actual configuration are made.