Field of the Invention
The invention relates to safely transmitting data between electronic devices. By way of example, the electronic devices may be computers used for controlling an aircraft.
Brief Discussion of the Related Art
In an aircraft, the or each engine is controlled by an engine control unit (ECU) comprising a plurality of electronic data processor devices such as computers that are connected to one another by serial links over which data frames are exchanged. These serial links are subjected to disturbances, e.g. as a result of electric and/or electromagnetic fields and of lightning strikes, which disturbances can change the data being transmitted over the link. In spite of that, it is necessary to avoid control of the engines being changed under such circumstances.
An object of the invention is to improve the reliability of data transmission.
To this end, the invention provides a method of transmitting data between an electronic transmitter device and an electronic receiver device connected together by a data link, the method comprising the steps of:
Causing the frames to occupy a longer period of time limits the risk of any one disturbance changing the transmitted data. In addition, the presence of the checkdata makes it easier for the receiver device to detect corrupted frames and to accelerate data processing.
Advantageously, the method includes the step, when none of the received frames is valid, of reconstituting a frame by majority voting on the basis of the three received frames.
Comparing the data of the received frames makes it simper to reconstitute a frame, e.g. by using a majority voting algorithm, thus eliminating errors that result from a disturbance.
Under such circumstances, and advantageously, the method includes the steps of calculating checkdata on the reconstituted frame and of making the reconstituted frame available for processing if it is valid.
The robustness of transmission is further improved.
Preferably, the frame is reconstituted progressively while receiving the data of the third frame.
Memory requirements are thus limited and processing speed is enhanced.
Under such circumstances, and preferably, the receiver electronic device includes both at least one first buffer memory zone and at least one second buffer memory zone, and the method further comprises:
This limits buffer memory requirements.
Advantageously, the data link is liable to be subjected to a disturbance having a predetermined theoretical maximum duration, and the frames are spaced apart by an interval duration longer than the predetermined theoretical maximum duration.
The interval duration is measured from the beginning of transmission of one frame to the beginning of transmission of the following frame. Thus, the same disturbance cannot change the same bit in two successive frames.
Also advantageously, the data link is liable to be subjected to two consecutive disturbances that are spaced apart by a predetermined theoretical minimum duration, and each frame has a duration shorter than the predetermined theoretical minimum duration.
The risk of a frame being changed by two successive disturbances is thus limited.
The invention also provides a set of data processor devices comprising at least one transmitter electronic device and at least one receiver electronic device connected together by a data link, the electronic devices being arranged to implement the method of the invention.
Other characteristics and advantages of the invention appear on reading the following description of a particular, non-limiting implementation of the invention.
Reference is made to the accompanying drawings, in which:
With reference to the figures, the method of the invention is implemented in apparatus comprising two electronic devices 1A and 1B, each having a processor circuit 2A, 2B such as a processor associated with random access memory (RAM) and mass storage. The RAM includes two buffer memory zones dedicated to temporary storage of the transmitted data (the buffer memory zones are referred to below as buffer memory 1 and buffer memory 2 for greater convenience and without reference to the figures). Each processor circuit 2A, 2B is connected to a communication interface 3A, 3B. The communication interfaces 3A, 3B are connected to each other via filters 4A, 4B by a serial link 5. The devices 1A, 1B may take turns acting as being transmitter and receiver. These various components are of conventional structure and they are therefore not described in greater detail.
In operation, data frames are transmitted between the electronic devices 1A, 1B in order to be processed by the processor circuits 2A, 2B. The apparatus is arranged to implement a transmission method that is based on:
The devices 1A, 1B are arranged more precisely to implement the data transmission method comprising the steps of:
In this example, the checkdata is the result of a cyclic redundancy check (CRC), e.g. a checksum, that serves to verify the integrity of the data of the frame. This type of verification is itself known.
At the receiver end, the frames 1 and 2 are stored in buffer memories. The frame 3 is used, if necessary, to perform error correction on the fly. More precisely, the frame 3 is compared bitwise and in real time with the previously received and stored frames 1 and 2: this makes it possible in real time to reconstitute a corrected frame that is stored in the buffer memory.
Since each frame is associated with respective checkdata, the processor circuit of the receiver device can verify the validity of each received frame. Each frame is thus verified with reference to its own checkdata. The frame that is used for processing is the first frame to be received for which validity is confirmed by its checkdata.
Consequently, during reception:
If the frame 1 (first received frame) is validated (step 10), the frame 1 is made accessible for the processing that is to be performed and both the frames 2 (second received frame) and 3 (third received frame) are ignored.
If the frame 1 is not valid, but the frame 2 is valid (step 20), then the frame 2 is made accessible and the frame 3 is ignored.
If neither frame 1 nor frame 2 is valid, the receiver device performs error detection on frame 3. Each word of frame 3 is compared (bitwise) with the received words of the frames 1 and 2. The majority bits are stored and form a reconstituted frame.
If frame 3 is valid (step 30), then frame 3 is made available for processing and frames 1 and 2 are ignored.
If frame 3 is not correct, the receiver verifies the checkdata of reconstituted frame 3.
If the checkdata is correct (step 40), then the reconstituted frame is made available.
If the checkdata is not correct, then data transmission is considered as having failed (step 50).
An example of received frames and of a reconstituted frame is given in the table below. Although the received data frames 1, 2, and 3 ought to be identical (since they were identical before being transmitted), it is clear that they are different because of errors introduced during transmission. CRC1, CRC2, CRC3, and CRC4 constitute the checkdata of the respective frames 1, 2, and 3, and of the reconstituted frame.
The various situations corresponding to receiving three frames are listed in Table 2 below. In this table, “OK” means that the frame is valid, “KO” means that the frame is not valid, “X” means that the frame is ignored.
When all of the frames have been received, there is only one situation in which the data made available for processing is erroneous: all three frames have been corrupted and, during bitwise comparison, two of the frames share bits that have been corrupted in the same way.
Table 3 lists the various possibilities when at least one transmitted frame is not received. When one or more frames is/are missing (marked “none” in the table), frame correction cannot be performed and the first correct frame to be received is used.
The mechanism of the invention combines a correction mechanism (triplication) with a mechanism for verifying validity in order to have good robustness. Thus, most transmission failures can be detected and corrected.
Under extreme circumstances in which correction is not possible, failure is detected and the transmission is considered as having failed.
Implementation of the invention does not involve any extra cost and requires only a relatively small amount of calculation resources.
The invention is usable for any data transmission between electronic data processor devices.
Number | Date | Country | Kind |
---|---|---|---|
14 57839 | Aug 2014 | FR | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2015/053239 | 2/16/2015 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2015/124538 | 8/27/2015 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
5241548 | Dillon et al. | Aug 1993 | A |
5455830 | Gregg | Oct 1995 | A |
5673291 | Dent | Sep 1997 | A |
6438723 | Kalliojarvi | Aug 2002 | B1 |
6697441 | Bottomley | Feb 2004 | B1 |
7061866 | Connor | Jun 2006 | B2 |
7234095 | Lee | Jun 2007 | B2 |
7379450 | Gu | May 2008 | B2 |
7388853 | Ptasinski | Jun 2008 | B2 |
7522633 | Ichino | Apr 2009 | B2 |
7539489 | Alexander | May 2009 | B1 |
7738441 | Nishibayashi | Jun 2010 | B2 |
7849138 | Gu | Dec 2010 | B2 |
7903670 | Ha | Mar 2011 | B2 |
7916746 | Yonge, III | Mar 2011 | B2 |
8233463 | Yang | Jul 2012 | B2 |
8238247 | Wu | Aug 2012 | B2 |
8331386 | Carmon | Dec 2012 | B2 |
8422411 | Sudarshan | Apr 2013 | B2 |
8458551 | Owaki | Jun 2013 | B2 |
8566669 | Schuette | Oct 2013 | B2 |
8588347 | Petrovic | Nov 2013 | B1 |
8780937 | Classon | Jul 2014 | B2 |
8855219 | Gao | Oct 2014 | B2 |
9094419 | Coffee | Jul 2015 | B2 |
9178757 | Glosser, Jr. | Nov 2015 | B2 |
9374194 | Glosser, Jr. | Jun 2016 | B2 |
9407481 | Petrovic | Aug 2016 | B1 |
20020095635 | Wager et al. | Jul 2002 | A1 |
20020168033 | Suzuki | Nov 2002 | A1 |
20060251011 | Ramakrishnan | Nov 2006 | A1 |
20100095181 | Ma | Apr 2010 | A1 |
20110070821 | Chun et al. | Mar 2011 | A1 |
20120314599 | Vilke | Dec 2012 | A1 |
20170070989 | Morel-Fourrier | Mar 2017 | A1 |
Number | Date | Country |
---|---|---|
0797326 | Sep 1997 | EP |
0797326 | Jan 2000 | EP |
2453604 | May 2012 | EP |
2453604 | Nov 2014 | EP |
Number | Date | Country | |
---|---|---|---|
20170070989 A1 | Mar 2017 | US |
Number | Date | Country | |
---|---|---|---|
61942862 | Feb 2014 | US |