WO2006053956A1 - Detection d’erreurs dans les donnees concernant l’actionnement d’un organe de vehicule - Google Patents

Detection d’erreurs dans les donnees concernant l’actionnement d’un organe de vehicule Download PDF

Info

Publication number
WO2006053956A1
WO2006053956A1 PCT/FR2005/002624 FR2005002624W WO2006053956A1 WO 2006053956 A1 WO2006053956 A1 WO 2006053956A1 FR 2005002624 W FR2005002624 W FR 2005002624W WO 2006053956 A1 WO2006053956 A1 WO 2006053956A1
Authority
WO
WIPO (PCT)
Prior art keywords
data transmission
codes
code
data
transmission method
Prior art date
Application number
PCT/FR2005/002624
Other languages
English (en)
Inventor
Jean-Jacques Aubert
Patrice Brot
Yves Crouzet
Agnan De Bonneval
Anis Youssef
Original Assignee
Airbus France
Centre National De La Recherche Scientifique (Cnrs)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Airbus France, Centre National De La Recherche Scientifique (Cnrs) filed Critical Airbus France
Priority to US11/719,325 priority Critical patent/US8239075B2/en
Priority to CA2587503A priority patent/CA2587503C/fr
Publication of WO2006053956A1 publication Critical patent/WO2006053956A1/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/08Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location

Definitions

  • the present invention relates to transmission systems, by means of digital signals, data relating to the actuation of a member for operating a vehicle. It concerns in particular the problem of the fidelity of transmission of such data in embedded systems operating in real time.
  • the first electrical controls of this type were made up of analog signals, but digital signals are increasingly being used as a support for control commands.
  • the actions exerted by the driver of the vehicle are translated in the form of numerical commands, which are then inserted into messages by an insertion unit; then these messages pass through one or more interconnect units until reaching one or more extraction units in which said digital commands are extracted from said message; finally, the control instructions are applied to one or more servo units (after having been, if necessary, translated into analog setpoints for the servo units that need them).
  • error codes Codes to detect that errors have occurred are called "error codes”. These are the codes to which the present invention is mainly concerned, but it could also be envisaged to correct the transmission errors by using so-called “error correcting" codes. It should also be noted that certain codes make it possible to detect the presence of errors as well as to correct them.
  • the ability of the code to detect, or correct, transmission errors is always limited.
  • the detection, or correction, of a code increases, at k fixed, with the "redundancy" (n -k).
  • the probability of non-detection corresponds to the probability that a received word r, although erroneous, is by accident equal to another code word that the transmitted word which is at the origin of this received word r ; we deduce that this probability is of the order of q ⁇ (n ⁇ k) . Therefore, conventionally, predetermined error detection reliability is achieved in a communications system numerically by adjusting the parameters q, n, and k of an error detector code according to this order of magnitude.
  • a first known means for reducing the risk of such an event occurring is to double the electrical circuits so as to be able to transmit two copies of each message respectively along two separate channels.
  • This technical solution obviously has the disadvantage of doubling the installation costs of these electrical circuits.
  • it implies an increase in the space occupied by these circuits, and their weight, which can be very troublesome in certain areas such as avionics.
  • the invention thus relates, in a first aspect, to a method of transmitting data relating to the actuation of a vehicle member, in which codewords are transmitted, along a given channel, each resulting from the coding of channel of an information symbol block representative of said data, said method being remarkable in that at least two such successive information symbol blocks are encoded by means of two different codes from each other.
  • the impossibility of correctly transmitting a certain setpoint is not catastrophic, provided that the pilot (or the steering system) is informed of this impossibility early enough to be able to take appropriate back-up measures (for example, call upon an auxiliary mechanical means of another chain of electrical components than the main mechanical organ).
  • the code words are all of the same length n> k, and that their k last symbols are systematically taken identical to the k information symbols, the (nk) first symbols representing the redundancy (this is an example of so-called "systematic" coding).
  • "channel noise” has the effect of putting zeros in place of certain determined components of each code word transmitted by the channel.
  • the error concerns the information symbols rather than the redundancy symbols
  • the received words corresponding to two identical successive messages will be different since the redundancy symbols were initially different (as a whole) for these two messages.
  • the error concerns the redundancy symbols rather than the information symbols, the two received words will be close to each other, or perhaps identical, but the receiver will verify the membership of each received word to a different code from the other code.
  • the probability of non-detection of transmission errors affecting two successive messages is also very low when these two messages are different from one another, if one implements the method of data transmission according to the invention.
  • the present invention advantageously allows, for the applications concerned, to obtain a very high level of security with a cost of implementation quite reasonable.
  • the member concerned (aileron, brake, and so on) is part of an aircraft.
  • two such blocks of successive information symbols are always coded by means of two codes different from each other.
  • the codes used are all the same length n, in order to facilitate the sampling of the data.
  • the codes used are linear codes.
  • linear codes are well known in the field of telecommunications (a domain that is a priori different from that of digital controls). These codes are such that any linear combination of code words (with the coefficients taken from the alphabet) is still a code word.
  • the codes used are cyclic codes.
  • Cyclic codes are particular linear codes, which are such that the result of a circular permutation applied to any codeword is also a code word. Cyclic codes are known for their efficiency and low cost; they are commonly used, and coding / decoding methods implementing these codes have been integrated into commercially available (physical or software) components (such as those, for example, for telecommunications networks).
  • each cyclic code is attached to a "generator polynomial". To change the code from one message to the next, just change the generator polynomial.
  • the invention relates to a data transmission system relating to the actuation of a vehicle member, comprising an encoder able to apply a channel coding to blocks of information symbols representative of said data so as to forming code words intended to be transmitted along a given channel, said system being remarkable in that said encoder is able to encode two such successive blocks of information symbols by means of two different codes, one of which 'other.
  • said data transmission system further comprises an error detection unit able, for each word received at the end of said given channel, to:
  • the invention also aims at:
  • immovable data storage means comprising computer program code instructions for performing the steps of any of the data transmission methods succinctly set forth above,
  • the device shown diagrammatically in this figure has the function of transmitting, from a source 10 to a destination 100, data relating to the actuation of a vehicle member.
  • This data can for example represent a setpoint, or a set portion, for driving of the vehicle.
  • the source 10 translates this information into a series of symbols belonging to a certain Galois field GF (q), and transmits these symbols to a storage unit 20, which accumulates the symbols so as to form blocks containing each k information symbols representing a message.
  • q Galois field GF
  • each of these blocks is transmitted by the storage unit 20 to an encoder 30 which incorporates redundancy so as to construct a word belonging to a respective code. For example, it will be possible to assign a rank to each message within a series of messages, and to associate a predetermined code to each message according to its rank.
  • the code words thus formed are then transmitted to a modulator 40, which associates each symbol of the code word with a modulation symbol. Then these modulation symbols are transmitted to a transmitter 50, which inserts the symbols into a transmission channel.
  • This channel may for example be a wired link, but it may also be a non-wired link such as a radio link; it can also be a logical channel.
  • the transmitted message arrives at a receiver 60, after being affected by a "transmission noise" which may have the effect of modifying or erasing some of the modulation symbols.
  • the receiver 60 then transmits these symbols to the demodulator 70, which transforms them into symbols of GF (q).
  • the symbols resulting from the transmission of the same code word are then grouped into a "received word" in an error detection unit 80.
  • this error detection unit 80 checks whether each received word belongs to the respective code that was used by the encoder 30 for this respective message.
  • the encoder 30 and the error detection unit 80 may be provided with the same "Table” type correspondence list. "Look Up Table” (LUT), which will allow both devices to know which code should be associated with a message according to its rank; such a look-up table can be conveniently implemented in software form or in the form of a specific logic circuit. If the error detection unit 80 finds that the received word belongs to the code respectively associated with this message, the received word is transmitted to a redundancy suppression unit 90, which extracts k information symbols by setting implement a decoding algorithm inverse to that implemented by the encoder 30. Finally, these information symbols are provided to their recipient 100.
  • LUT Look Up Table
  • the error detection unit 80 ascertains that the received word does not belong to the code respectively associated with this message, it triggers an alarm according to particular arrangements which the person skilled in the art will have fixed, in a known manner, depending on the intended application of the invention.
  • Units 80 and 90 may be considered together to form a "decoder" 110.
  • cyclic code coding / decoding with m ⁇ 2 distinct generator polynomials is successively implemented, in a repeated manner:
  • this received word happens to be a word belonging to one of the m codes, it is very improbable that this received word belongs to all the m codes, so that the presence of a Transmission error will, most likely, be detected at the latest after m words received, and the repetition of errors (signaling the possibility of permanent channel failure) will, most likely, be detected at the latest after 2m words received.
  • a similar "complementarity principle" will preferably be applied if another coding method is used, for example non-cyclic linear code coding using parity matrices of the same size (nk) ⁇ n, but different two by two. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

L'invention concerne un procédé de transmission de données concernant l'actionnement d'un organe servant au fonctionnement d'un véhicule, dans lequel on transmet, le long d'un canal donné, des mots de code résultant chacun du codage de canal d'un bloc de symboles d'information représentatif desdites données. Selon ce procédé, au moins deux tels blocs de symboles d'information successifs sont codés au moyen de deux codes différents l'un de l'autre. L'invention concerne également un système de transmission de données destiné à mettre en oevre ce procédé.

Description

Détection d'erreurs dans les données concernant Pactionnement d'un organe de véhicule
La présente invention concerne les systèmes de transmission, au moyen de signaux numériques, de données concernant l'actionnement d'un organe servant au fonctionnement d'un véhicule. Elle concerne notamment le problème de la fidélité de transmission de telles données dans les systèmes embarqués fonctionnant en temps réel.
Ce problème se pose par exemple dans le domaine des commandes de véhicules tels qu'une voiture ou un avion. Dans de tels véhicules, l'actionnement d'un certain nombre d'organes électromécaniques est « assisté », en ce sens que le pilote du véhicule commande le fonctionnement de ces organes en envoyant un signal électrique à une unité d'asservissement chargée d'actionner ces organes au moyen de mécanismes d'assistance tels que des systèmes hydrauliques ou des électro-aimants, en conformité avec ledit signal électrique de commande.
Les premières commandes électriques de ce type étaient constituées de signaux analogiques, mais on utilise de plus en plus des signaux numériques comme support des consignes de commande. Dans ce cas, les actions exercées par le pilote du véhicule sont traduites sous forme de commandes numériques, qui sont ensuite insérées dans des messages par une unité d'insertion ; puis ces messages transitent à travers une ou plusieurs unités d'interconnexion jusqu'à atteindre une ou plusieurs unités d'extraction dans lesquelles lesdites commandes numériques sont extraites dudit message ; enfin, les consignes de commande sont appliquées à une ou plusieurs unités d'asservissement (après avoir été, le cas échéant, traduites en consignes analogiques pour les unités d'asservissement qui en ont besoin).
Ces commandes concernent souvent des organes du véhicule dont le bon fonctionnement conditionne la sécurité des passagers. Il est donc très important de s'assurer que les messages soient transmis de manière fiable entre l'unité d'insertion et chaque unité d'extraction. Mais cela pose problème dans la mesure où divers facteurs peuvent affecter la fiabilité de cette transmission. Ces facteurs comprennent notamment le bruit électronique (qui peut provenir de perturbations électromagnétiques extérieures ou de fluctuations intrinsèques aux composants électriques utilisés pour acheminer les signaux numériques), et la défaillance matérielle d'un de ces composants électriques.
Le problème considéré ci-dessus se pose également en ce qui concerne les données numériques représentatives d'une mesure physique effectuée par un capteur, lorsque cette mesure est prise en compte par une unité d'asservissement pour actionner un organe de véhicule. Il en est de même lorsqu'une unité d'asservissement chargée d'actionner un organe de véhicule doit prendre en compte des informations numériques envoyées par une base de données ou un processeur.
Les erreurs de transmission étant en pratique inévitables, la question qui se pose est celle de savoir comment on peut en tenir compte, dans un système de communication embarqué et fonctionnant en temps réel, de manière à minimiser l'impact que de telles erreurs de transmission peuvent avoir sur le bon fonctionnement du véhicule.
Une solution connue à ce problème (voir par exemple le livre édité par D. Poweli intitulé « A Generic Fault-Tolerant Architecture for Real-Time Dependable Systems -», Kluwer Académie Publishers, ISBN 0-7923-7295-6, Boston 2001 , pages 46 à 50 ; ou la norme ISO 11898-1 connue sous le nom de « Controller Area Network ») consiste à appliquer aux messages un codage de canal avant leur transmission, et à récupérer ces messages par décodage des mots de code reçus.
On rappelle que le « codage de canal » (on se limitera ici au codage dit « en blocs ») consiste à transmettre à un récepteur des « mots de code » qui sont formés en introduisant une certaine redondance dans les données à transmettre. Plus précisément, on transmet au moyen d'un mot de code l'information initialement contenue dans un nombre prédéterminé k de symboles, dits « symboles d'information », prélevés dans un « alphabet » de taille finie g ; on calcule à partir de ces k symboles d'information un nombre n > k de symboles appartenant à cet alphabet, qui constituent les composantes des mots de code V = (V^v2, ...,vΛ). L'ensemble des mots de code obtenus quand chaque symbole d'information prend une valeur quelconque dans l'alphabet, constitue une sorte de dictionnaire appelé « code » de « dimension » k et de « longueur » n .
Notamment, lorsque la taille q de l'alphabet est prise égale à une puissance d'un nombre premier, on peut donner à cet alphabet une structure de corps fini dit « corps de Galois » (« Galois field » en anglais), noté GF(q ). Par exemple, pour q = 2 , GF(q ) est un alphabet binaire, et pour q = 2s = 256 , GF{q ) est un alphabet d'octets (« bytes » en anglais).
Il y a erreur de transmission lorsqu'un mot reçu r diffère du mot de code v correspondant envoyé par l'émetteur. On dit que les erreurs de transmission sont causées par le « bruit du canal ».
Après réception du mot r , Ie récepteur cherche d'abord à détecter la présence éventuelle d'une erreur de transmission. Les codes permettant de détecter que des erreurs se sont produites sont appelés « codes détecteurs d'erreurs ». Ce sont ces codes auxquels la présente invention s'intéresse principalement, mais on pourrait également envisager de corriger les erreurs de transmission en faisant appel à des codes dits « correcteurs d'erreurs ». On notera d'ailleurs que certains codes permettent tout aussi bien de détecter la présence d'erreurs que de les corriger.
Quel que soit le type de code utilisé, il faut bien voir que la capacité du code à détecter, ou à corriger, les erreurs de transmission, est toujours bornée. De manière générale, la capacité de détection, ou de correction, d'un code augmente, à k fixé, avec la « redondance » (n -k ). En particulier, la probabilité de non-détection correspond à la probabilité qu'un mot reçu r , bien qu'erroné, soit par accident égal à un autre mot de code que le mot transmis qui est à l'origine de ce mot reçu r ; on en déduit que cette probabilité est de l'ordre de q~(n~k) . Par conséquent, classiquement, on atteint une fiabilité de détection d'erreurs prédéterminée dans un système de communications numériques en ajustant les paramètres q , n , et k d'un code détecteur d'erreurs conformément à cet ordre de grandeur.
Mais l'estimation présentée ci-dessus de la probabilité de non- détection part de l'hypothèse que l'on a affaire à des erreurs aléatoires. Or cette hypothèse est invalidée dans certaines applications concrètes.
Revenons par exemple au problème de la sécurisation de commandes numériques dans un véhicule : supposons donc, comme expliqué ci-dessus, que l'on insère ces commandes dans des messages constitués de symboles d'information appartenant à un certain alphabet, et supposons que ces messages bénéficient d'un certain codage de canal. On pourra alors considérer que certaines erreurs, telles que celles causées par des fluctuations électromagnétiques, sont effectivement de nature aléatoire et de courte durée ; dans ce cas, on pourra considérer de manière fiable que la fréquence à laquelle de telles erreurs ne sont pas détectées (dans le message codé, et par suite dans le message décodé) est égale au produit de la fréquence moyenne de ces fluctuations par la probabilité de non-détection q~(n~k) mentionnée ci-dessus.
Supposons en revanche, toujours dans l'exemple des commandes numériques d'un véhicule, qu'un composant électrique le long du « canal de transmission » tombe définitivement en panne, et qu'en outre, par malchance, cette panne cause une erreur non-détectée dans un message. Le taux d'occurrence d'un tel événement est toujours égale au produit du taux de défaillance d'un tel composant électrique par la probabilité de non-détection q-(n-k) |y|ajS on vojt qUe( ^ans cettΘ situation, si le pilote envoie ensuite une deuxième consigne identique à la première (ce qui peut être le cas lorsque le pilote essaie d'activer un certain organe électromécanique conformément à la bonne marche du véhicule), alors la nouvelle consigne sera entachée de la même erreur que la précédente, et cette erreur sera à nouveau non-détectée. On imagine facilement les conséquences qu'une telle situation peut provoquer.
Un premier moyen connu pour réduire le risque qu'un tel événement se produise consiste à doubler les circuits électriques de manière à pouvoir transmettre deux copies de chaque message respectivement le long de deux canaux distincts. Dans ces conditions, on sait qu'une erreur s'est produite lorsque, après décodage des mots correspondants transmis le long de ces deux canaux, il s'avère que les deux messages résultants ne sont pas identiques. Cette solution technique présente évidemment l'inconvénient de doubler les coûts d'installation de ces circuits électriques. En outre, elle implique une augmentation de la place occupée par ces circuits, et de leur poids, ce qui peut être très gênant dans certains domaines tels que l'avionique.
Un autre moyen connu pour réduire ce risque consiste à jouer au niveau du codage en augmentant la redondance (et donc la longueur du code) par rapport au nombre de symboles d'information (la « charge utile »). Mais cette solution technique a pour inconvénient de diminuer le « rendement de codage » kln , c'est-à-dire d'accroître le temps de traitement et le coût résultant du codage.
L'invention concerne donc, selon un premier aspect, un procédé de transmission de données concernant l'actionnement d'un organe de véhicule, dans lequel on transmet, le long d'un canal donné, des mots de code résultant chacun du codage de canal d'un bloc de symboles d'information représentatif desdites données, ledit procédé étant remarquable en ce qu'au moins deux tels blocs de symboles d'information successifs sont codés au moyen de deux codes différents l'un de l'autre.
En effet, les auteurs de la présente invention ont réalisé que dans de nombreuses applications, le fait qu'une séquence de symboles d'information subisse occasionnellement des erreurs de transmission non-détectées n'a pas des conséquences trop graves à la condition que la transmission répétée de mots de code représentant la même séquence de symboles d'information ne puisse conduire à la réception répétée de mots erronés sans qu'une erreur soit détectée.
Par exemple, dans le domaine du pilotage d'un véhicule au moyen de signaux de commande numériques, l'impossibilité de transmettre correctement une certaine consigne n'est pas catastrophique, à condition que le pilote (ou le système de pilotage) soit informé de cette impossibilité suffisamment tôt pour pouvoir prendre des mesures de secours appropriées (par exemple, faire appel à un organe mécanique auxiliaire commandé au moyen d'une autre chaîne de composants électriques que l'organe mécanique principal).
Selon l'invention, lorsque l'on transmet deux messages successifs identiques, ces deux messages sont codés de manière différente. Ces deux messages identiques sont donc représentés par deux mots de code différents, et les mots reçus correspondants sont décodés conformément à leur code respectif.
Supposons par exemple, pour fixer les idées, que les mots de code soient tous de même longueur n > k , et que leurs k derniers symboles soient systématiquement pris identiques aux k symboles d'information, les (n-k) premiers symboles représentant la redondance (c'est un exemple de codage dit « systématique »). Supposons en outre que le « bruit du canal » ait pour effet de mettre des zéros à la place de certaines composantes déterminées de chaque mot de code transmis par le canal. Dans ces conditions, si l'erreur concerne les symboles d'information plutôt que les symboles de redondance, les mots reçus correspondant à deux messages successifs identiques seront différents puisque les symboles de redondance étaient au départ différents (dans leur ensemble) pour ces deux messages. Si, au contraire, l'erreur concerne les symboles de redondance plutôt que les symboles d'information, les deux mots reçus seront proches l'un de l'autre, ou peut-être même identiques, mais le récepteur va vérifier l'appartenance respective de chaque mot reçu à un code différent de l'autre code.
On voit donc que, dans ces conditions, la situation où un premier mot reçu erroné se trouve appartenir au premier code et, à la fois, un second mot reçu erroné se trouve appartenir au second code, est très improbable. De ce fait, grâce à l'invention, la situation où il se produit à la fois une erreur non- détectée lors de la transmission d'un premier message et une erreur non détectée lors de la transmission d'un second message identique au premier, devient très improbable.
A fortiori, la probabilité de non-détection d'erreurs de transmission affectant deux messages successifs est également très faible lorsque ces deux messages sont différents l'un de l'autre, si l'on met en œuvre le procédé de transmission de données selon l'invention. Cela concerne par exemple deux messages représentant une amplitude, ou une vitesse, variant au cours du temps lors de l'actionnement d'un organe de véhicule.
Ainsi, la présente invention permet avantageusement, pour les applications concernées, d'obtenir un niveau de sécurité très élevé avec un coût de mise en œuvre tout à fait raisonnable. Pour les raisons exposées ci- dessus, elle est particulièrement avantageuse lorsque l'organe concerné (aileron, frein, et ainsi de suite) fait partie d'un avion.
Selon des dispositions particulières, deux tels blocs de symboles d'information successifs sont toujours codés au moyen de deux codes différents l'un de l'autre.
On assure ainsi une protection pour tous les messages transmis le long du canal considéré.
On notera que, pour ce faire, il suffit de mettre en œuvre m = 2 codes différents en alternance.
En variante, on met en œuvre successivement un nombre m > 2 de codes différents, de manière répétée. Comme expliqué en détail ci-dessous, une telle disposition permet de réduire considérablement le risque d'erreurs non détectées affectant une série de m messages identiques successifs, et ce, d'autant plus que m est grand.
Selon d'autres dispositions particulières, les codes utilisés ont tous la même longueur n , afin de faciliter l'échantillonnage des données.
Selon encore d'autres dispositions particulières, les codes utilisés sont des codes linéaires.
Les codes dits « linéaires » sont bien connus dans le domaine des télécommunications (un domaine qui est a priori différent de celui des commandes numériques). Ces codes sont tels que toute combinaison linéaire de mots de code (avec les coefficients pris dans l'alphabet) est encore un mot de code. Ces codes peuvent, de façon commode, être associés à une matrice H de dimension (n-k)χ n , dite « matrice de parité » (« parity-check matrix » en anglais) : un mot v de longueur n donné est un mot de code si, et seulement si, il vérifie la relation : H - vτ = 0 (où l'exposant T indique la transposition) ; on dit alors que le code est « orthogonal » à cette matrice H . On détecte donc facilement la présence d'(au moins) une erreur de transmission dans un mot reçu r si H - rτ ≠ O .
Pour changer de code linéaire d'un message au suivant, il suffit de changer de matrice de parité H .
Selon des dispositions encore plus particulières, les codes utilisés sont des codes cycliques.
Les codes dits « cycliques » sont des codes linéaires particuliers, qui sont tels que le résultat d'une permutation circulaire appliquée à un mot de code quelconque est lui aussi un mot de code. Les codes cycliques sont réputés pour leur efficacité et leur faible coût ; ils sont couramment utilisés, et des procédés de codage/décodage mettant en oeuvre ces codes ont été intégrés dans des composants (physiques ou logiciels) disponibles dans le commerce (tels que ceux, par exemple, destinés aux réseaux de télécommunications).
Comme expliqué en détail ci-dessous, à chaque code cyclique est attaché un « polynôme générateur ». Pour changer de code d'un message au suivant, il suffit donc de changer de polynôme générateur.
Selon un deuxième aspect, l'invention concerne un système de transmission de données concernant l'actionnement d'un organe de véhicule, comprenant un codeur apte à appliquer un codage de canal à des blocs de symboles d'information représentatifs desdites données de manière à former des mots de code destinés à être transmis le long d'un canal donné, ledit système étant remarquable en ce que ledit codeur est apte à coder deux tels blocs de symboles d'information successifs au moyen de deux codes différents l'un de l'autre.
Les avantages offerts par ce système de transmission de données sont essentiellement les mêmes que ceux offerts par les procédés de transmission de données succinctement exposés ci-dessus. Il est particulièrement avantageux lorsque ledit organe fait partie d'un avion. Selon des dispositions particulières, ledit système de transmission de données comprend en outre une unité de détection d'erreurs apte, pour chaque mot reçu au bout dudit canal donné, à :
- déterminer quel code de canal a été mis en œuvre pour coder les symboles d'information correspondant à ce mot reçu, et
- vérifier si ce mot reçu appartient bien à ce code de canal.
L'invention vise également :
- un moyen de stockage de données inamovible comportant des instructions de code de programme informatique pour l'exécution des étapes de l'un quelconque des procédés de transmission de données succinctement exposés ci-dessus,
- un moyen de stockage de données partiellement ou totalement amovible, comportant des instructions de code de programme informatique pour l'exécution des étapes de l'un quelconque des procédés de transmission de données succinctement exposés ci-dessus, et
- un programme d'ordinateur, contenant des instructions telles que, lorsque ledit programme commande un dispositif de traitement de données programmable, lesdites instructions font que ledit dispositif de traitement de données met en œuvre l'un quelconque des procédés de transmission de données succinctement exposés ci-dessus.
Les avantages offerts par ces moyens de stockage de données et ce programme d'ordinateur sont essentiellement les mêmes que ceux offerts par les procédés de transmission de données succinctement exposés ci-dessus.
D'autres aspects et avantages de l'invention apparaîtront à la lecture de la description détaillée ci-dessous de modes de réalisation particuliers, donnés à titre d'exemples non limitatifs. La description se réfère à la figure unique qui est un schéma synoptique d'un mode de réalisation d'un système de transmission de données selon l'invention.
Le dispositif représenté schématiquement sur cette figure a pour fonction de transmettre, d'une source 10 vers un destinataire 100, des données concernant l'actionnement d'un organe de véhicule. Ces données peuvent par exemple représenter une consigne, ou une portion de consigne, pour le pilotage du véhicule. En premier lieu, la source 10 traduit ces informations en une suite de symboles appartenant à un certain corps de Galois GF(q ), et transmet ces symboles à une unité de stockage 20, qui accumule les symboles de façon à former des blocs contenant chacun k symboles d'information représentant un message.
Selon l'invention, chacun de ces blocs est transmis par l'unité de stockage 20 à un codeur 30 qui y incorpore de la redondance de manière à construire un mot appartenant à un code respectif. Par exemple, on pourra prévoir d'attribuer un rang à chaque message au sein d'une série de messages, et d'associer un code prédéterminé à chaque message selon son rang.
Les mots de code ainsi formés sont ensuite transmis à un modulateur 40, qui associe à chaque symbole du mot de code un symbole de modulation. Puis ces symboles de modulation sont transmis à un émetteur 50, qui insère les symboles dans un canal de transmission. Ce canal peut être par exemple un lien filaire, mais il peut aussi s'agir d'un lien non-filaire comme une liaison radio ; il peut aussi s'agir d'un canal logique.
Le message transmis parvient à un récepteur 60, après avoir été affecté par un « bruit de transmission » qui peut avoir pour effet de modifier ou d'effacer certains des symboles de modulation.
Le récepteur 60 transmet alors ces symboles au démodulateur 70, qui les transforme en symboles de GF(q). Les symboles résultant de la transmission d'un même mot de code sont ensuite groupés en un « mot reçu » dans une unité de détection d'erreurs 80. Selon l'invention, cette unité de détection d'erreurs 80 vérifie si chaque mot reçu appartient bien au code respectif qui a été utilisé par le codeur 30 pour ce message respectif.
Par exemple, si l'on a attribué un rang à chaque message au sein d'une série de messages, on pourra munir le codeur 30 et l'unité de détection d'erreurs 80 d'une même liste de correspondance du type « Table de Consultation » (en anglais : « Look Up Table » ou L.U.T.), qui permettra aux deux dispositifs de savoir quel code doit être associé à un message selon son rang ; une telle Table de Consultation peut être commodément réalisée sous forme logicielle ou sous la forme d'un circuit logique spécifique. Si l'unité de détection d'erreurs 80 constate que le mot reçu appartient bien au code respectivement associé à ce message, le mot reçu est transmis à une unité de suppression de redondance 90, qui en extrait k symboles d'information en mettant en œuvre un algorithme de décodage inverse de celui mis en œuvre par le codeur 30. Enfin, ces symboles d'information sont fournis à leur destinataire 100.
Si en revanche l'unité de détection d'erreurs 80 constate que le mot reçu n'appartient pas au code respectivement associé à ce message, elle déclenche une alarme selon des dispositions particulières que l'homme du métier aura fixées, de manière connue, en fonction de l'application envisagée de l'invention.
On peut considérer que les unités 80 et 90 forment conjointement un « décodeur » 110.
On va à présent illustrer le procédé de transmission de données selon l'invention à l'aide d'une famille de codes présentée à titre d'exemple de réalisation. Les paramètres choisis ci-dessous ne répondent pas nécessairement à un choix préférentiel pour le codage ou le décodage, cet exemple de réalisation n'étant fourni que pour permettre à l'homme du métier de comprendre plus facilement le fonctionnement du procédé selon l'invention.
Considérons par exemple un codage par codes cycliques ayant tous la même dimension k et la même longueur n > k .
On rappelle que l'on peut commodément construire des mots appartenant à un code cyclique au moyen de polynômes, par exemple de la manière suivante.
On choisit tout d'abord un polynôme G(χ) , de degré (n -k) et diviseur de (x -\), qui est appelé le « polynôme générateur » du code cyclique.
Soit α = (αol 5 ...,^-1) une séquence de symboles d'information à coder. Pour commencer, on forme « l'expression polynomiale » n-\
Φ) = ∑ai-n+kχl i=n-k de cette séquence. On effectue ensuite une « division euclidienne » de a(x) par G(x) , ce qui s'écrit : a(x) = Q(x)G(x) + R(x) , où Q(x) désigne le quotient, et où le degré du reste R(x) est strictement inférieur à (n -k). Si l'on prend alors comme mot de code v(x) = a(x) - R(x) , on voit que tous les mots de code ainsi obtenus sont tels que leur expression polynomiale est multiple du polynôme générateur G(χ) . En effet, la divisibilité par un certain polynôme générateur est une caractéristique de l'expression polynomiale des mots appartenant à un code cyclique donné. Explicitement, si le reste s'écrit n-k-l R(x)= XV , i=0 alors le mot de code obtenu par cet algorithme (dit « euclidien ») s'écrit
Σ ~ (-Rθ>->-~Rn-k-l >aO>al> ->ak-l)
Comme on peut le constater, parmi les composantes de v ainsi obtenues, k d'entre elles sont respectivement égales à des composantes de a : il s'agit donc ici d'un codage « systématique ».
On détecte alors facilement la présence d'(au moins) une erreur de transmission dans un mot reçu lorsque l'expression polynomiale de ce mot reçu n'est pas un multiple du polynôme générateur G(x) ayant servi à coder ce message.
Selon un mode de réalisation de l'invention, on met successivement en œuvre un codage/décodage par code cyclique avec m ≥ 2 polynômes générateurs distincts, de manière répétée :
Gι(x),G2(x),...,Gm(x),Gï(x),G2(x),...,Gm(x),Gι(x),G2(x),...,Gm (x), et ainsi de suite.
Afin d'optimiser la détection d'erreurs dans un tel mode de réalisation, il est conseillé d'appliquer ce que nous appellerons le « principe de complémentarité ». Pour comprendre en quoi consiste ce principe, reprenons un exemple, mentionné ci-dessus, de répartition d'erreurs pouvant affecter une suite de messages identiques : il s'agit du cas où le bruit du canal a pour effet de mettre, dans chaque mot de code traversant le canal, des zéros à la place des (n - k) premières composantes (contenant les symboles de redondance si on applique l'algorithme euclidien décrit ci-dessus). Dans ce cas (évidemment particulier, mais illustratif), les mots reçus successifs sont identiques. Il est alors souhaitable que si, par accident, ce mot reçu se trouve être un mot appartenant à l'un des m codes, il soit très improbable que ce mot reçu appartienne à tous les m codes, de sorte que la présence d'une erreur de transmission sera, très probablement, détectée au plus tard après m mots reçus, et la répétition d'erreurs (signalant la possibilité d'une défaillance permanente du canal) sera, très probablement, détectée au plus tard après 2m mots reçus.
Dans le mode de réalisation considéré, on voit que si les m polynômes générateurs utilisés ne contiennent aucun facteur commun, alors un mot reçu erroné devra, pour échapper à la détection, avoir une expression polynomiale qui est un multiple de tous les m polynômes générateurs, ce qui est évidemment très improbable, sinon impossible. On obtient donc de la sorte un niveau de sécurité très élevé, que les commandes numériques à l'origine des messages codés considérés soient identiques ou non.
En pratique, on pourra se contenter de n'admettre qu'un nombre relativement faible de facteurs communs pour les m polynômes générateurs. Par exemple, si q = 2 (alphabet binaire), on pourra prendre Gz(x) = (l+ X) -P1(X) 1 où i = l,...,m et où les polynômes Pt(x) n'ont pas de facteurs communs, car, comme il est connu de l'homme du métier, le facteur (1 + x) permet commodément de détecter toutes les erreurs affectant un nombre impair de composantes d'un mot de code.
De manière encore plus particulière, si on prend par exemple n = 15 , on notera que
Figure imgf000015_0001
(=0 MQ(x) = x + l ,
M{(x) = x4 +x + l ,
M2(χ) = x4 +x3 + 1 ,
M2(x) = x4 + x3 +x2 +x + l , et
M4(x) = x2 +x + l . Si donc on prend : m = 3 et
Figure imgf000016_0001
== 1,2,3), on obtient trois polynômes générateurs de degré 5, ce qui permet de coder de trois manières différentes des séquences successives de £ = 15-5 = 10 symboles d'information.
On appliquera de préférence un « principe de complémentarité » analogue si l'on utilise un autre procédé de codage, par exemple un codage par code linéaire non cyclique au moyen de matrices de parité de même taille (n-k)χn , mais différentes deux à deux.

Claims

REVENDICATIONS
1. Procédé de transmission de données concernant l'actionnement d'un organe de véhicule, dans lequel on transmet, le long d'un canal donné, des mots de code résultant chacun du codage de canal d'un bloc de symboles d'information représentatif desdites données, caractérisé en ce qu'au moins deux tels blocs de symboles d'information successifs sont codés au moyen de deux codes différents l'un de l'autre.
2. Procédé de transmission de données selon la revendication 1 , caractérisé en ce que deux tels blocs de symboles d'information successifs sont toujours codés au moyen de deux codes différents l'un de l'autre.
3. Procédé de transmission de données selon la revendication 2, caractérisé en ce que l'on met en œuvre deux codes différents en alternance.
4. Procédé de transmission de données selon la revendication 2, caractérisé en ce que l'on met en œuvre successivement un nombre de codes différents supérieur à deux, de manière répétée.
5. Procédé de transmission de données selon l'une quelconque des revendications précédentes, caractérisé en ce que les codes ainsi mis en œuvre ont tous la même longueur.
6. Procédé de transmission de données selon l'une quelconque des revendications précédentes, caractérisé en ce que les codes ainsi mis en œuvre sont des codes linéaires.
7. Procédé de transmission de données selon la revendication 6, caractérisé en ce que les codes ainsi mis en œuvre sont des codes cycliques.
8. Procédé de transmission de données selon l'une quelconque des revendications précédentes, caractérisé en ce que ledit organe fait partie d'un avion.
9. Système de transmission de données concernant l'actionnement d'un organe de véhicule, comprenant un codeur apte à appliquer un codage de canal à des blocs de symboles d'information représentatifs desdites données de manière à former des mots de code destinés à être transmis le long d'un canal donné, caractérisé en ce que ledit codeur (30) est apte à coder deux tels blocs de symboles d'information successifs au moyen de deux codes différents l'un de l'autre.
10. Système de transmission de données selon la revendication 9, caractérisé en ce qu'il comprend en outre une unité de détection d'erreurs (80) apte, pour chaque mot reçu au bout dudit canal donné, à :
- déterminer quel code de canal a été mis en œuvre pour coder les symboles d'information correspondant à ce mot reçu, et
- vérifier si ce mot reçu appartient bien à ce code de canal.
11. Système de transmission de données selon la revendication 9 ou la revendication 10, caractérisé en ce que ledit organe fait partie d'un avion.
12. Moyen de stockage de données inamovible, caractérisé en ce qu'il comporte des instructions de code de programme informatique pour l'exécution des étapes d'un procédé de transmission de données selon l'une quelconque des revendications 1 à 8.
13. Moyen de stockage de données partiellement ou totalement amovible, caractérisé en ce qu'il comporte des instructions de code de programme informatique pour l'exécution des étapes d'un procédé de transmission de données selon l'une quelconque des revendications 1 à 8.
14. Programme d'ordinateur, caractérisé en ce qu'il contient des instructions telles que, lorsque ledit programme commande un dispositif de traitement de données programmable, lesdites instructions font que ledit dispositif de traitement de données met en œuvre un procédé de transmission de données selon l'une quelconque des revendications 1 à 8.
PCT/FR2005/002624 2004-11-16 2005-10-21 Detection d’erreurs dans les donnees concernant l’actionnement d’un organe de vehicule WO2006053956A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US11/719,325 US8239075B2 (en) 2004-11-16 2005-10-21 Detection of errors in data relating to the actuation of a vehicle member
CA2587503A CA2587503C (fr) 2004-11-16 2005-10-21 Detection d'erreurs dans les donnees concernant l'actionnement d'un organe de vehicule

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0412141A FR2878097B1 (fr) 2004-11-16 2004-11-16 Detection d'erreurs dans les donnees concernant l'actionnement d'un organe de vehicule
FR0412141 2004-11-16

Publications (1)

Publication Number Publication Date
WO2006053956A1 true WO2006053956A1 (fr) 2006-05-26

Family

ID=34951248

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2005/002624 WO2006053956A1 (fr) 2004-11-16 2005-10-21 Detection d’erreurs dans les donnees concernant l’actionnement d’un organe de vehicule

Country Status (4)

Country Link
US (1) US8239075B2 (fr)
CA (1) CA2587503C (fr)
FR (1) FR2878097B1 (fr)
WO (1) WO2006053956A1 (fr)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3014273B1 (fr) 2013-12-03 2016-01-01 Thales Sa Systeme de transmission de donnees applicatives avioniques

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4670880A (en) * 1984-09-11 1987-06-02 International Business Machines Corp. Method of error detection and correction by majority
EP0831614A2 (fr) * 1996-09-04 1998-03-25 Palomar Technologies Corporation Transpondeur RF avec détection et correction d'erreur
US6014411A (en) * 1998-10-29 2000-01-11 The Aerospace Corporation Repetitive turbo coding communication method
US6560744B1 (en) * 1998-01-23 2003-05-06 D.S.P.C. Technologies Ltd. Method and device for detecting rate
US6690733B1 (en) * 1998-12-11 2004-02-10 Daimlerchrysler Ag Method for data transmission

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6292918B1 (en) * 1998-11-05 2001-09-18 Qualcomm Incorporated Efficient iterative decoding
DE10001395A1 (de) * 2000-01-14 2001-08-02 Infineon Technologies Ag Codierverfahren zur Codierung von Aktoren-Steuerbefehlen und Aktorensteuereinheit zur Steuerung von Aktoren
DE60138208D1 (de) * 2000-10-05 2009-05-14 Panasonic Corp Digitaler datensender
DE10250920B4 (de) * 2002-10-31 2005-05-04 Siemens Ag Ausgabeeinheit, Empfangseinheit, Anordnung zur Datenübertragung in einem Kraftfahrzeug sowie Verfahren dazu
CA2465332C (fr) * 2003-05-05 2012-12-04 Ron Kerr Decodage de donnees d'entree temporaires pour codes lineaires

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4670880A (en) * 1984-09-11 1987-06-02 International Business Machines Corp. Method of error detection and correction by majority
EP0831614A2 (fr) * 1996-09-04 1998-03-25 Palomar Technologies Corporation Transpondeur RF avec détection et correction d'erreur
US6560744B1 (en) * 1998-01-23 2003-05-06 D.S.P.C. Technologies Ltd. Method and device for detecting rate
US6014411A (en) * 1998-10-29 2000-01-11 The Aerospace Corporation Repetitive turbo coding communication method
US6690733B1 (en) * 1998-12-11 2004-02-10 Daimlerchrysler Ag Method for data transmission

Also Published As

Publication number Publication date
FR2878097A1 (fr) 2006-05-19
US20090319122A1 (en) 2009-12-24
FR2878097B1 (fr) 2007-02-16
CA2587503A1 (fr) 2006-05-26
CA2587503C (fr) 2014-12-16
US8239075B2 (en) 2012-08-07

Similar Documents

Publication Publication Date Title
EP0436251B1 (fr) Système de codage de signaux numériques destinés à être transmis et/ou stockés et système de décodage correspondant
EP0891656B1 (fr) Procede et dispositif de codage convolutif de blocs de donnees, et procede et dispositif de decodage correspondants
JP3610329B2 (ja) 大最小距離を用いたターボ符号化方法及びそれを実現するシステム
CN102770911B (zh) 用于编码信息对象的方法以及使用该方法的编码器
FR2953666A1 (fr) Procede de codage ldpc a redondance incrementale
JP2000516415A (ja) 誤差率を最小化するためにソフト情報出力を用いるデコーダ
EP2019529A2 (fr) Dispositif d'entrelacement de symboles et de cartographie de canal, ainsi que procédé et système de communication mobile
FR2785743A1 (fr) Dispositif et procede d'adaptation des turbocodeurs et des decodeurs associes a des sequences de longueur variable
EP2394366B1 (fr) Procede de codage correcteur d'erreurs avec bits de parite totale
FR2849514A1 (fr) Code de geometrie algebrique adapte aux erreurs en rafale
WO2007028834A2 (fr) Procede d'amelioration de decodage iteratif de codes
EP1959572B1 (fr) Procédé de décodage à passage de messages et à convergence forcée
EP1946557A1 (fr) Procede de reception de trames d'un flux numerique
EP1172961A1 (fr) Système de communication, récepteur, méthode d'estimation d'erreurs dues au canal
FR2785744A1 (fr) Procede et dispositif de codage de sequences de donnees, procede et dispositif de decodage associes
EP2081341B1 (fr) Dispositif et procédé pour la correction d'un erreur de donnée dans une voie de communication
EP2271018A1 (fr) Procédé et dispositif de décodage basés sur un code de reed-solomon
FR3053193A1 (fr) Procede de transmission dynamique et selectif fd-dsdf d'un signal numerique pour un systeme marc/mamrc avec relais full-duplex et une voie de retour limitee, produit programme et dispositif relais correspondants
EP2704344B1 (fr) Méthode d'optimisation des ressources d'une transmission de données et dispositif mettant en oeuvre la méthode
EP1989807B1 (fr) Procede et systeme permettant de transmettre un message s' exprimant au moyen d' un polynome
WO2006053956A1 (fr) Detection d’erreurs dans les donnees concernant l’actionnement d’un organe de vehicule
FR2882480A1 (fr) Procede et dispositif de synchronisation trame
US20050273690A1 (en) System and method for detecting codeword errors in error correction code or cyclic redundancy check code
EP0982866A1 (fr) Procédé de codage convolutif et de transmission par paquets d'un flux série de données numériques, procédé et dispositif de décodage correspondants
EP1590805A1 (fr) Integration de donnees sans perte

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KP KR KZ LC LK LR LS LT LU LV LY MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2587503

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 2105/CHENP/2007

Country of ref document: IN

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 05812447

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 11719325

Country of ref document: US