FR 2927752 A1 20090821 FR 0851064 A 20080219 DISPOSITIF ET PROCÉDÉ DE TRANSFERT BIDIRECTIONNEL DE DONNÉES DE TRAMES ENTRE DEUX RÉSEAUX ASYNCHRONES DE DÉBITS DIFFÉRENTS L'invention concerne les réseaux de communication asynchrones, notamment ceux qui sont embarqués dans des véhicules automobiles ou des aéronefs, et plus précisément le transfert de données de trames entre des réseaux de communication asynchrones présentant des débits différents, io comme par exemple un réseau de type CAN (� Controller Area Network �) et un réseau de type FlexRay. Comme le sait l'homme de l'art, il arrive que deux réseaux (de communication) asynchrones présentant des débits assez différents cohabitent au sein d'un système comportant plusieurs équipements, comme par exemple 15 un véhicule automobile ou un aéronef. Cette cohabitation peut par exemple résulter d'une phase de migration d'un premier réseau asynchrone (présentant un premier débit) vers un second réseau asynchrone (présentant un second débit notablement plus important que le premier débit), ou bien de l'intégration d'équipement(s) répondant au standard d'un second réseau asynchrone dans 20 un premier réseau asynchrone de débit inférieur au second. Pour que cette cohabitation puisse se faire, on connecte les premier et second réseaux asynchrones via un dispositif de transfert, parfois appelé passerelle. Plusieurs dispositifs de transfert ont été proposés, notamment dans les documents brevet US 2006/0059278, JP 11008647 et US 6,683,883. 25 Mais, aucun d'entre eux n'est entièrement satisfaisant du fait qu'il n'offre pas une bidirectionnalité des transferts, ou met en oeuvre des procédures de conversion complexes, ou encore est exclusivement dédié à un unique type de liaison entre deux réseaux de types prédéfinis et donc est inadapté à d'autres applications impliquant des réseaux présentant d'autres types. 30 L'invention a donc pour but d'améliorer la situation. Elle propose à cet effet un procédé, dédié au transfert de données de trames entre des premier et second réseaux de communication asynchrones, le premier réseau étant chargé de transmettre des premières trames ayant un premier format, et le second réseau étant chargé de transmettre des secondes trames ayant un second format et présentant un débit strictement supérieur à celui du premier réseau. Ce procédé de transfert se caractérise par le fait qu'il consiste : - en cas de réception pendant un cycle du second réseau d'au moins une première trame comprenant des premières données devant être transférées vers le second réseau lors du cycle suivant : io ^ à extraire de cette première trame des premières données contenues dans un champ de données et des secondes données contenues dans un champ d'entête choisi et définissant la longueur de ce champ de données, puis • à placer les premières et secondes données extraites respectivement 15 dans des premier et second champs associés d'un couple dédié à la première trame reçue dans un champ de données d'une seconde trame destinée à être transmise lors du cycle suivant, et - en cas de réception d'une seconde trame comprenant un champ de données contenant au moins un couple de premier et second champs 20 associés contenant des premières données devant être transférées vers le premier réseau, ^ à extraire du champ de données de cette seconde trame les premières et secondes données contenues respectivement dans les premier et second champs du couple considéré, puis 25 • à placer les premières et secondes données extraites respectivement dans le champ de données et le champ d'entête choisi d'une première trame, en vue de sa transmission immédiate par le premier réseau. Le procédé de transfert selon l'invention peut comporter d'autres caractéristiques qui peuvent être prises séparément ou en combinaison, et 30 notamment : - en l'absence de réception pendant un cycle du second réseau d'une première trame comprenant des premières données devant être transférées vers le second réseau lors du cycle suivant, on peut placer des secondes données, qui définissent une longueur impossible choisie, dans le second champ du couple qui est dédié à la première trame non reçue dans le champ de données d'une seconde trame destinée à être transmise par le second réseau lors du cycle suivant ; - en cas de réception d'une seconde trame comprenant un champ de données contenant plusieurs couples de premier et second champs associés comportant des premières données devant être transférées vers io le premier réseau, on peut extraire du champ de données de cette seconde trame les premières et secondes données contenues respectivement dans les premier et second champs de chaque couple, puis on peut placer les premières et secondes données extraites de ces couples respectivement dans le champ de données et le champ d'entête choisi de premières trames 15 différentes, et l'on peut faire immédiatement transmettre ces premières trames par le premier réseau ; - en cas de réception d'une seconde trame, on peut ne procéder au placement dans une première trame des premières et secondes données extraites d'un couple qu'à condition que les secondes données définissent 20 une longueur possible ; - en cas de réception d'une seconde trame, on peut déterminer si elle comprend un identifiant signalant qu'elle contient des données devant être transférées vers le premier réseau. Puis, dans l'affirmative, on peut traiter cette seconde trame reçue tandis que dans la négative on peut rejeter cette 25 seconde trame reçue ; - en cas de réception d'une première trame, on peut déterminer si elle comprend un identifiant signalant qu'elle contient des données devant être transférées vers le second réseau. Puis, dans la négative, on peut rejeter cette première trame reçue, tandis que dans l'affirmative on peut déterminer 30 si cet identifiant signale qu'elle contient des données devant être transférées lors du cycle suivant du second réseau, et dans la négative on peut différer le traitement de cette première trame reçue tandis que dans l'affirmative on peut traiter cette première trame reçue. L'invention propose également un dispositif, cbdié au transfert de données de trames entre des premier et second réseaux de communication asynchrones, le premier réseau étant chargé de transmettre des premières trames ayant un premier format, et le second réseau étant chargé de transmettre des secondes trames ayant un second format et présentant un débit strictement supérieur à celui du premier réseau. Ce dispositif de transfert se caractérise par le fait qu'il comprend : io - des premiers moyens de transfert chargés, en cas de réception pendant un cycle du second réseau d'au moins une première trame comprenant des premières données devant être transférées vers le second réseau brs du cycle suivant : ^ d'extraire de cette première trame des premières données contenues 15 dans un champ de données et des secondes données contenues dans un champ d'entête choisi et définissant la longueur de ce champ de données, puis ^ de placer les premières et secondes données extraites respectivement dans des premier et second champs associés d'un couple dédié à la 20 première trame reçue dans un champ de données d'une seconde trame destinée à être transmise lors du cycle suivant, et des seconds moyens de transfert chargés, en cas de réception d'une seconde trame comprenant un champ de données contenant au moins un couple de premier et second champs associés contenant des premières 25 données devant être transférées vers le premier réseau : ^ d'extraire du champ de données de cette seconde trame les premières et secondes données contenues respectivement dans les premier et second champs du couple considéré, puis ^ de placer les premières et secondes données extraites respectivement 30 dans le champ de données et le champ d'entête choisi d'une première trame, puis de communiquer immédiatement cette première trame au premier réseau afin qu'il la transmette. L'invention est particulièrement bien adaptée, bien que de façon non limitative au couplage d'un premier réseau asynchrone de type CAN à un second réseau asynchrone de type FlexRay. D'autres caractéristiques et avantages de linvention apparaît-ont à l'examen de la description détaillée ci-après, et cbs dessins annexés, sur lesquels : - la figure 1 illustre schématiquement un exemple de réalisation de dispositif de transfert selon l'invention assurant une liaison bidirectionnelle entre des io premier et second réseaux asynchrones de débits différents, - la figure 2 illustre schématiquement un exemple de première trame transmise par un premier réseau asynchrone de type CAN, - la figure 3 illustre schématiquement un exemple de seconde trame constituée par un dispositif de transfert selon l'invention à partir de données 15 contenues dans des premières trames issues d'un premier réseau asynchrone de type CAN, et destinée à un second réseau asynchrone de type FlexRay, - la figure 4 illustre les principales étapes d'un exemple d'algorithme permettant de transférer des données de trames du premier réseau 20 asynchrone vers le second réseau asynchrone, conformément à l'invention, - la figure 5 illustre les principales étapes d'un exemple d'algorithme permettant de transférer des données de trames du second réseau asynchrone vers le premier réseau asynchrone, conformément à l'invention. Les dessins annexés pourront non seulement servir à compléter 25 l'invention, mais aussi contribuer à sa définition, le cas échéant. On a schématiquement représenté sur la figure 1 des premier R1 et second R2 réseaux de communication asynchrones de débits différents et couplés l'un à l'autre par l'intermédiaire d'un dispositif de transfert bidirectionnel D selon l'invention. 30 Par définition, un premier réseau (de communication asynchrone) R1 est un réseau (de communication) chargé de transmettre des premières trames Ti v ayant un premier format et présentant un premier débit, et un second réseau (de communication asynchrone) R2 est un réseau (de communication) chargé de transmettre des secondes trames T2 ayant un second format et présentant un second débit strictement supérieur au premier débit du premier réseau R1. Dans ce qui suit, on considère à titre d'exemple non limitatif que le premier réseau est de type CAN (Controller Area Network û réseau dit évènementiel) et le second réseau est de type FlexRay (réseau dit déterministe (ou �time-trigger �)). Mais, l'invention n'est pas limitée à ces io deux types de réseau de communication asynchrone. Elle concerne en effet toute combinaison de réseaux de communication asynchrones de type différents et présentant des débits différents. Par ailleurs, on considère dans ce qui suit, à titre d'exemple non limitatif, que les premier R1 et second R2 réseaux sont embarqués dans un 15 véhicule automobile. Mais l'invention n'est pas limitée à ce type de système. Elle concerne en effet tout type de système, et notamment les aéronefs. Le premier réseau R1 comprend classiquement des équipements Si i (i = 1 à N, N = 2) qui sont connectés en parallèle à un bus multiplexé. Dans le cas d'un réseau de type CAN, il constitue un réseau de diffusion de 20 (premières) trames Ti v. Il est rappelé que dans un réseau de type CAN l'accès d'un équipement (S1 i) au bus multiplexé se fait selon le mode dit CSMA/CR, chaque équipement (Si i) devant écouter le trafic sur le bus multiplexé avant de parler, et un mécanisme étant prévu pour résoudre les collisions entre demandes d'émission de trames (Ti v) en fonction de priorités prédéfinies. 25 On a schématiquement illustré sur la figure 2 un exemple de première trame (CAN) Ti v transmise par le premier réseau R1. Une telle première trame T1 v comporte un champ de données CD1, comprenant les données utiles (ou � payload �) à transmettre, un entête E1, comprenant un champ ID dont la valeur définit l'identifiant de trame et un champ DLC dont la valeur 30 définit la longueur du champ de données CD1, et un ou plusieurs champs de fin F1 qui constituent avec l'entête E1 les champs d'encapsulation. Le second réseau R2 comprend classiquement des équipements S2j (j = 1 à m, m = 2) qui sont connectés en parallèle à un bus multiplexés. Il est rappelé que dans un réseau de type FlexRay l'accès des équipements (S2j) au bus multiplexé se fait selon le mode dit TDMA (multiplexage temporel), chaque équipement (S2j) disposant au cours de chaque cycle d'au moins une tranche temporelle allouée, pendant laquelle il est autorisé à émettre des données (éventuellement dans une (seconde) trame T2). Comme illustré sur la figure 3, une seconde trame (FlexRay) T2, transmise par le second réseau R2 comporte un champ de données CD2, io comportant les données à transmettre, un entête E2 et un ou plusieurs champs de fin F2 qui constituent ensemble les champs d'encapsulation. Sur la figure 3, les références P1 et P2 désignent d'éventuelles données (ou champs) quelconques. Le dispositif (de transfert bidirectionnel) D selon l'invention constitue 15 une passerelle assurant la liaison entre les premier R1 et second R2 réseaux. Elle est chargée de mettre en oeuvre un procédé de transfert bidirectionnel de données de trames (Ti v et T2) selon l'invention. Ce procédé de transfert bidirectionnel comprend essentiellement des première (A) et seconde (B) parties qui régissent respectivement le transfert 20 de données du premier réseau R1 vers le second réseau R2 et le transfert de données du second réseau R2 vers le premier réseau R1, et qui reposent toutes les deux sur l'utilisation et le traitement de couples de premier Cl v et second C2v champs. La première partie (A) du procédé selon l'invention est mise en oeuvre 25 par le dispositif D, au moyen d'un premier module de transfert MT1, chaque fois qu'il reçoit (par exemple sur une première interface 11 connectée au premier réseau R1) au moins une première trame Ti v pendant un cycle k du second réseau R2. On notera que le dispositif D dispose d'un compteur (parfois appelé �vMacrotick �) qui s'incrémente en fonction d'une base de 30 temps définie par une horloge interne et qui est synchronisé sur les cycles k du second réseau R2 (par exemple sa valeur Mc est remise à zéro chaque fois qu'elle atteint une valeur maximale M2 (par exemple égale à 4096) qui correspond à la fin d'un cycle k. Si la première trame Ti v reçue pendant le cycle k comprend dans son champ de données CD1 des premières données qui doivent être effectivement transférées vers le second réseau R2 lors du cycle suivant k+1, alors dans une première phase (A1) le premier module de transfert MT1 extrait de cette première trame Ti v, d'une part, les premières données qui sont contenues dans son champ de données CD1, et d'autre part, des secondes données qui sont contenues dans son champ d'entête DLC et qui définissent io la longueur de son champ de données CD1. Puis, dans une seconde phase (A2) le premier module de transfert MT1 place (copie) les premières et secondes données qu'il vient d'extraire respectivement dans des premier Cl v et second C2v champs qui sont associés l'un à l'autre au sein d'un couple Cv, qui est dédié à la première 15 trame T1v reçue dans le champ de données CD2 d'une seconde trame T2 qui est destinée à être transmise lors du cycle suivant k+1 (par exemple par une seconde interface 12 du dispositif D, connectée au second réseau R2). Il est important de noter qu'une trame T2 qui est constituée par le premier module de transfert MT1 pendant un cycle k du second réseau R2 peut 20 comporter plusieurs (au moins deux) couples Cv (par exemple Cl et C2 (v = 1 ou 2) dans l'exemple non limitatif de la figure 3). La valeur de ce nombre de couples peut être fixe et donc connue à l'avance par le dispositif D, ou bien variable et dans ce cas elle est transmise en même temps que les données. La valeur de ce nombre est à priori bornée. 25 On comprendra qu'il est avantageux de placer autant de couples Cv que possible dans une trame T2 étant donné que le débit du second réseau R2 est (très) supérieur à celui du premier réseau R1. Si le dispositif D ne reçoit pas lors du cycle k une première trame T1 v' dont les données utiles (premières données contenues dans le champ CD1) 30 doivent être transférées vers le second réseau R2 lors du cycle suivant k+1, alors son premier module de transfert MT1 place des secondes données, qui définissent une longueur impossible choisie, dans le second champ C2v' du couple Cv' qui est dédié à cette première trame T1v' non reçue dans la seconde trame T2 destinée à être transmise par le second réseau R2 lors du cycle suivant k+1. Par exemple, si la longueur des premières données contenues dans un champ de données CD1 d'une première trame T1v peut prendre des valeurs comprises entre 0 octets et 8 octets, alors on peut choisir comme valeur de longueur impossible la valeur 9. La valeur de la longueur qui est copiée dans le second champ C2v io d'un couple Cv d'une seconde trame T2 sert donc à signaler aux équipements S2j du second réseau R2 non seulement la longueur des premières données (utiles) qui sont contenues dans le premier champ Cl v de ce même couple Cv, mais également si ces premières données (utiles) ont été mises à jour. On comprendra en effet qu'en l'absence d'une mise à jour (signalée par une valeur 15 de longueur impossible) on est en présence d'anciennes premières données qui ne doivent pas être prises en compte, tandis qu'en présence d'une mise à jour (signalée par une valeur de longueur possible) on est en présence de nouvelles premières données qui doivent être prises en compte. On a représenté sur la figure 4 les principales étapes d'un exemple 20 d'algorithme permettant de transférer des données de premières trames T1v du premier réseau R1 vers le second réseau R2. Cet algorithme commence par une étape 10 qui correspond par exemple au début d'un cycle k du second réseau R2. La valeur Mc du compteur vMacrotick vient donc d'être remise à zéro et recommence à 25 s'incrémenter à chaque coup d'horloge. Le premier module de transfert MT1 est alors prêt à constituer une nouvelle seconde trame T2. On notera qu'un premier module de transfert MT1 peut devoir transmettre plusieurs secondes trames T2 pendant un même cycle du second réseau R2. Dans une étape 20, le premier module de transfert MT1 procède à la 30 mise à jour dans une trame T2 du second champ C2v de chaque couple Cv qui est dédié à une première trame T1v dont les premières données doivent être io transférées lors du cycle suivant k+1. Cette mise à jour consiste à placer des secondes données qui définissent une longueur impossible choisie (par exemple égale à 9) dans chaque second champ C2v du champ de données CD2 de la trame T2 considérée. L'étape 30 se déroule lorsque le premier module de transfert MT1 reçoit une première trame T1v de la première interface 11. Dans ce cas, le premier module de transfert MT1 effectue un test pour déterminer si l'identifiant (CAN), qui est désigné par la valeur du champ ID contenu dans l'entête El de la première trame Ti v reçue, fait partie d'une liste d'identifiants associés à des io premières trames dont les premières données concernent le second réseau R2. Si ce n'est pas le cas, la première trame T1v reçue est rejetée et on passe directement à l'étape 70 qui sera décrite plus loin. On comprendra en effet que si la première trame T1v reçue ne concerne pas le second réseau R2 il est inutile de perdre du temps et des ressources à la traiter. En revanche, si 15 l'identifiant fait partie de la liste on passe à l'étape 40. Dans cette étape 40, le premier module de transfert MT1 effectue un autre test pour déterminer si l'identifiant (CAN) ID de la première trame T1v reçue fait partie d'une sous-liste d'identifiants dont les premières données associées doivent être transférées vers le second réseau R2 lors du cycle 20 suivant k+1. Si ce n'est pas le cas, le traitement de la première trame T1v reçue est différé et on passe directement à l'étape 70 qui sera décrite plus loin. On comprendra en effet que si la première trame T1v reçue ne doit pas faire l'objet d'un transfert de ses premières données (CD1) lors du cycle suivant k+1, elle doit être traitée ultérieurement. En revanche, si l'identifiant fait 25 partie de la sous-liste précitée on passe à l'étape 50. Dans cette étape 50, le premier module de transfert MT1 extrait de la première trame T1 v, d'une part, les premières données qui sont contenues dans son champ de données CD1, et d'autre part, les secondes données qui sont contenues dans son champ d'entête DLC (et qui définissent la longueur 30 de son champ de données CD1). Puis, dans une étape 60 le premier module de transfert MT1 copie les Il premières et secondes données qu'il vient d'extraire respectivement dans les premier Cl v et second C2v champs du couple Cv, qui est dédié à la première trame T1 v reçue dans le champ de données CD2 de la seconde trame T2 en cours de constitution. Dans l'étape 70, le premier module de transfert MT1 effectue un autre test pour déterminer si la valeur Mc du compteur vMacrotick est égale à une valeur choisie M1. Cette valeur M1 est strictement inférieure à la valeur M2 qui définit la fin du cycle en cours du second réseau R2. En effet, il faut absolument arrêter de prendre en compte des premières trames Ti v avant la fin du cycle k io en cours afin d'avoir le temps d'effectuer la demande d'émission de la seconde trame T2 et d'émettre cette dernière avant l'expiration du cycle suivant k+1. Par conséquent, si la valeur Mc du compteur vMacrotick est supérieure à la valeur M1 qui est choisie pour la seconde trame T2 considérée, la demande d'émission sera prise en compte, mais cette seconde 15 trame T2 ne sera transmise qu'au cours du cycle k+2, ce qui dégradera la performance temporelle du procédé de transfert. Si la valeur Mc du compteur vMacrotick est inférieure à la valeur choisie M1, alors on retourne à l'étape 30 pour traiter une autre première trame T1 v' qui a été éventuellement reçue par le dispositif D. Il se peut en effet qu'il 20 reste encore des premières données contenues dans d'autres premières trames Ti v' et qui doivent être transférées lors du cycle suivant k+1, éventuellement dans la seconde trame T2 en cours de constitution. En revanche, si la valeur Mc du compteur vMacrotick est égale à la valeur choisie M1, alors on passe à l'étape 80. 25 Dans cette étape 80, le premier module de transfert MT1 effectue une demande d'émission pour la seconde trame T2 qu'il vient de constituer. Si cette demande d'émission est autorisée, il communique la seconde trame T2 qu'il vient de constituer à la seconde interface 12 qui la transmet alors au bus multiplexé du second réseau R2. 30 L'étape 90 marque la fin du traitement effectué par le premier module de transfert MT1 pour la seconde trame T2 considérée. Il peut alors de nouveau recommencer l'algorithme précédemment décrit (étapes 10 à 90) pour constituer une nouvelle seconde trame T2 et procéder à son émission dans le second réseau R2. La seconde partie (B) du procédé selon l'invention est mise en oeuvre par le dispositif D, au moyen d'un second module de transfert MT2, chaque fois qu'il reçoit du second réseau R2 (par exemple sur la seconde interface 12) une seconde trame T2 du type de celle illustrée sur la figure 3, c'est-à-dire comportant dans son champ de données CD2 au moins un couple Cv de premier Cl v et second C2v champs associés. Si la seconde trame T2 reçue comprend dans son champ de données CD2 des premières données qui doivent être effectivement transférées vers le premier réseau R1, alors dans une première phase (B1) le second module de transfert MT2 extrait de cette seconde trame T2, d'une part, les premières données qui sont contenues dans le premier champ C1v d'un (ou du seul) couple Cv, et d'autre part, des secondes données qui sont contenues dans le second champ C2v de ce même couple Cv et qui définissent la longueur des premières données du premier champ Cl v. Puis, dans une seconde phase (B2) le second module de transfert MT2 place (copie) les premières et secondes données, qu'il vient d'extraire du champ de données CD2 de la seconde trame T2 reçue, respectivement dans le champ de données CD1 et le champ d'entête DLC d'une première trame T1 v qui est dédiée au couple Cv, en vue de sa transmission immédiate au premier réseau R1 (par exemple par la première interface 11 du dispositif D). Il est important de noter que si le second module de transfert MT2 constate que les secondes données, qu'il a extraites d'un couple Cv d'une seconde trame T2 reçue, définissent une longueur impossible (par exemple égale à 9 dans le cas où les valeurs possibles sont comprises entre 0 et 8), cela indique que les premières données qui leurs sont associées au sein de ce couple Cv n'ont pas été mises à jour et donc qu'elles ne doivent pas être transférées vers le premier réseau R1. Dans ce cas, il est préférable que le second module de transfert MT2 ne copie pas les premières et secondes données extraites dans une première trame T1 v. La valeur de la longueur qui est contenue dans le second champ C2v d'un couple Cv d'une seconde trame T2 sert donc à signaler au dispositif D non seulement la longueur des premières données (utiles) qui sont contenues dans le premier champ Cl v de ce même couple Cv, mais également si ces premières données (utiles) ont été mises à jour. Il est également important de noter qu'une seconde trame T2 qui est reçue par le dispositif D en provenance du second réseau R2 peut comporter plusieurs (au moins deux) couples Cv (par exemple Cl et C2 (v = 1 ou 2) dans l'exemple non limitatif de la figure 3). Ce nombre peut éventuellement varier d'une seconde trame T2 à l'autre (sa valeur est alors transmise avec les données). On a représenté sur la figure 5 les principales étapes d'un exemple d'algorithme permettant de transférer des données d'une seconde trame T2 du 15 second réseau R2 vers le premier réseau R1 . Cet algorithme commence par une étape 100 qui correspond à la réception par le dispositif D (en fait sa seconde interface 12) d'une seconde trame T2 provenant du second réseau R2. Dans une étape 110, le second module de transfert MT2 effectue un 20 test pour déterminer si la seconde trame T2 reçue contient ou désigne un identifiant (FIexRAY) faisant partie d'une liste d'identifiants de secondes trames TE dont les premières données concernent le premier réseau R1. Si ce n'est pas le cas, la seconde trame T2 reçue est rejetée, ce qui met fin à l'algorithme (étape 180). On comprendra en effet que si la seconde trame T2 25 reçue ne concerne pas le premier réseau R1 il est inutile de perdre du temps et des ressources à la traiter. En revanche, si l'identifiant fait partie de la liste on passe à l'étape 120. Dans cette étape 120, le second module de transfert MT2 extrait de la seconde trame T2 les secondes données qui sont contenues dans le second 30 champ C2v d'un couple Cv de son champ de données CD2 (lesquelles définissent la longueur des premières données du premier champ Cl v de ce même couple Cv). Puis, dans une étape 130, le second module de transfert MT2 effectue un autre test pour déterminer si la valeur de la longueur qui est définie par les secondes données extraites du couple Cv considéré est une valeur possible (par exemple comprise entre 0 et 8). Si ce n'est pas le cas (valeur impossible, par exemple égale à 9), le couple Cv est rejeté et on passe directement à l'étape 160 qui sera décrite plus loin. En revanche si c'est le cas (valeur possible, par exemple comprise entre 0 et 8), le second module de transfert MT2 passe à l'étape 140. Dans cette étape 140, le second module de transfert MT2 commence par extraire de la seconde trame T2 reçue les premières données qui sont contenues dans le premier champ Cl v qui est associé au second champ C2v dans le couple Cv considéré. Puis, il copie les premières et secondes données, qu'il a extraites du couple Cv du champ de données CD2 de la seconde trame T2 reçue, respectivement dans le champ de données CD1 et le champ d'entête DLC d'une première trame Ti v qui est dédiée au couple Cv. Dans une étape 150, le second module de transfert MT2 effectue une demande d'émission pour la première trame T1 v qu'il vient de constituer. Si cette demande d'émission est autorisée, il communique la première trame T1v qu'il vient de constituer à la première interface 11 qui la transmet alors au bus multiplexé du premier réseau R1, puis il passe à l'étape 160. Dans cette étape 160, le second module de transfert MT2 effectue un nouveau test pour déterminer si il doit traiter un autre couple Cv' du champ de données CD2 de la seconde trame T2 reçue, qu'il n'a pas encore traité. Si c'est le cas, il passe à une étape 170 dans laquelle il incrémente d'une unité la valeur du compteur de couples Cv (soit v ? v+1), puis il retourne à l'étape 120 pour traiter le couple Cv+1 contenu dans le champ de données CD2 de la seconde trame T2 reçue. En revanche, si le second module de transfert MT2 constate qu'il n'y a plus de couple Cv à traiter dans la seconde trame T2 reçue, alors il cesse le traitement de la seconde trame T2 reçue (étape 180). Il peut alors de nouveau recommencer l'algorithme précédemment décrit (étapes 100 à 180) pour traiter une éventuelle nouvelle seconde trame T2 reçue. Les premier MT1 et second MT2 modules de transfert peuvent être réalisés sous la forme de circuits électroniques, de modules logiciels (ou informatiques), ou d'une combinaison de circuits électroniques et de modules logiciels. L'invention offre un certain nombre d'avantages, parmi lesquels : - la garantie des temps de latence y compris lorsque le dispositif de transfert assure la liaison entre un réseau de type dit événementiel, comme par exemple un réseau CAN, et un réseau de type dit déterministe (ou � time- trigger �), comme par exemple un réseau FlexRay, - l'intégrité des données (pas de perte de trames), - la conservation du contrôle de la cohérence des trames par les équipements consommateurs, sans que le dispositif de transfert n'ait connaissance des caractéristiques nominales des données des trames recopiées, du fait de l'utilisation de l'information de longueur comme information de mise à jour. L'invention ne se limite pas aux modes de réalisation de dispositif et de procédé de transfert bidirectionnel décrits ci-avant, seulement à titre d'exemple, mais elle englobe toutes les variantes que pourra envisager l'homme de l'art dans le cadre des revendications ci-après. REVENDICATIONS 1. Procédé de transfert bidirectionnel de données de trames entre des premier (R1) et second (R2) réseaux de communication asynchrones, ledit premier réseau (R1) transmettant des premières trames ayant un premier format et ledit second réseau (R2) transmettant des secondes trames ayant un second format et présentant un débit strictement supérieur à celui du premier réseau (R1), caractérisé en ce qu'il consiste A) en cas de réception pendant un cycle du second réseau (R2) d'au moins une première trame comprenant des premières données devant être transférées vers ledit second réseau (R2) lors du cycle suivant, Al) à extraire de cette première trame des premières données contenues dans un champ de données et des secondes données contenues dans un champ d'entête choisi et définissant la longueur dudit champ de données, puis A2) à placer lesdites premières et secondes données extraites respectivement dans des premier et second champs associés d'un couple dédié à ladite première trame reçue dans un champ de données d'une seconde trame destinée à être transmise lors dudit cycle suivant, et B) en cas de réception d'une seconde trame comprenant un champ de données contenant au moins un couple de premier et second champs associés contenant des premières données devant être transférées vers ledit premier réseau (R1), B1) à extraire du champ de données de cette seconde trame les premières et secondes données contenues respectivement dans lesdits premier et second champs dudit couple, puis B2) à placer lesdites premières et secondes données extraites respectivement dans ledit champ de données et ledit champ d'entête choisi d'une première trame, en vue de sa transmission immédiate par ledit premier réseau (R1). 2. Procédé selon la revendication 1, caractérisé en ce qu'en l'absence de réception pendant un cycle du second réseau (R2) d'une première trame comprenant des premières données devant être transférées vers ledit second réseau (R2) lors du cycle suivant, on place des secondes données définissant une longueur impossible choisie dans le second champ du couple dédié à ladite première trame non reçue dans ledit champ de données d'une seconde trame destinée à être transmise par ledit second réseau (R2) lors dudit cycle suivant. 3. Procédé selon l'une des revendications 1 et 2, caractérisé en ce qu'en cas de réception d'une seconde trame comprenant un champ de données contenant plusieurs couples de premier et second champs associés comportant des premières données devant être transférées vers ledit premier réseau (R1), on extrait du champ de données de cette seconde trame les premières et secondes données contenues respectivement dans lesdits io premier et second champs de chaque couple, puis on place lesdites premières et secondes données extraites de ces couples respectivement dans ledit champ de données et ledit champ d'entête choisi de premières trames différentes, et l'on fait immédiatement transmettre ces premières trames par ledit premier réseau (R1). 15 4. Procédé selon l'une des revendications 1 à 3, caractérisé en ce qu'en cas de réception d'une seconde trame, on ne procède au placement dans une première trame des premières et secondes données extraites d'un couple qu'à condition que lesdites secondes données définissent une longueur possible. 20 5. Procédé selon l'une des revendications 1 à 4, caractérisé en ce qu'en cas de réception d'une seconde trame, on détermine si elle comprend un identifiant signalant qu'elle contient des données devant être transférées vers ledit premier réseau (R1), et dans l'affirmative on traite cette seconde trame reçue tandis que dans la négative on rejette ladite seconde trame reçue. 25 6. Procédé selon l'une des revendications 1 à 5, caractérisé en ce qu'en cas de réception d'une première trame, on détermine si elle comprend un identifiant signalant qu'elle contient des données devant être transférées vers ledit second réseau (R2), et dans la négative on rejette ladite première trame reçue, tandis que dans l'affirmative on détermine si ledit identifiant 30 signale qu'elle contient des données devant être transférées lors du cycle suivant du second réseau (R2) et dans la négative on diffère le traitement de ladite première trame reçue tandis que dans l'affirmative on traite cette première trame reçue. 7. Dispositif (D) de transfert bidirectionnel de données de trames entre des premier (R1) et second (R2) réseaux de communication asynchrones, ledit premier réseau (R1) transmettant des premières trames ayant un premier format et ledit second réseau (R2) transmettant des secondes trames ayant un second format et présentant un débit strictement supérieur à celui du premier réseau (R1), caractérisé en ce qu'il comprend A) des premiers moyens de transfert (MT1) agencés, en cas de réception pendant un cycle du second réseau (R2) d'au moins une première trame comprenant des premières données devant être transférées vers ledit second réseau (R2) lors du cycle suivant, Al) pour extraire de cette première trame des premières données contenues dans un champ de données et des secondes données contenues dans un champ d'entête choisi et définissant la longueur dudit champ de données, puis A2) pour placer lesdites premières et secondes données extraites respectivement dans des premier et second champs associés d'un couple dédié à ladite première trame reçue dans un champ de données d'une seconde trame destinée à être transmise lors dudit cycle suivant, et B) des seconds moyens de transfert (MT2) agencés, en cas de réception d'une seconde trame comprenant un champ de données contenant au moins un couple de premier et second champs associés contenant des premières données devant être transférées vers ledit premier réseau (R1), B1) pour extraire du champ de données de cette seconde trame les premières et secondes données contenues respectivement dans lesdits premier et second champs dudit couple, puis B2) pour placer lesdites premières et secondes données extraites respectivement dans ledit champ de données et ledit champ d'entête choisi d'une première trame, puis pour communiquer immédiatement cette première trame audit premier réseau (R1) afin qu'il la transmette. 8. Dispositif selon la revendication 7, caractérisé en ce que lesdits premiers moyens de transfert (MT1) sont agencés, en l'absence de réception pendant un cycle du second réseau (R2) d'une première trame comprenant des premières données devant être transférées vers ledit second réseau (R2) lors du cycle suivant, pour placer des secondes données définissant une longueur impossible choisie dans le second champ du couple dédié à ladite première trame non reçue dans ledit champ de données d'une seconde trame destinée à être transmise par ledit second réseau (R2) lors dudit cycle suivant. 9. Dispositif selon l'une des revendications 7 et 8, caractérisé en ce que lesdits seconds moyens de transfert (MT2) sont agencés, en cas de réception d'une seconde trame comprenant un champ de données contenant plusieurs couples de premier et second champs associés comportant des premières données devant être transférées vers ledit premier réseau (R1), pour extraire du champ de données de cette seconde trame les premières et secondes données contenues respectivement dans lesdits premier et second champs de chaque couple, puis pour placer lesdites premières et secondes données extraites de ces couples respectivement dans ledit champ de données et ledit champ d'entête choisi de premières trames différentes, et pour communiquer immédiatement ces premières trames audit premier réseau (R1) afin qu'il les transmette. 10. Dispositif selon l'une des revendications 7 à 9, caractérisé en ce que lesdits seconds moyens de transfert (MT2) sont agencés, en cas de réception d'une seconde trame, pour ne placer dans une première trame des premières et secondes données extraites d'un couple de cette seconde trame qu'à condition que lesdites secondes données définissent une longueur possible. 11. Dispositif selon l'une des revendications 7 à 10, caractérisé en ce que lesdits seconds moyens de transfert (MT2) sont agencés, en cas de réception d'une seconde trame, pour déterminer si elle comprend un identifiant signalant qu'elle contient des données devant être transférées vers ledit premier réseau (R1), et dans l'affirmative pour traiter cette seconde trame reçue et dans la négative pour rejeter ladite seconde trame reçue. 12. Dispositif selon l'une des revendications 7 à 11, caractérisé en ce que lesdits premiers moyens de transfert (MT1) sont agencés, en cas de réception d'une première trame, pour déterminer si elle comprend un identifiant signalant qu'elle contient des données devant être transférées vers ledit second réseau (R2), et dans la négative pour rejeter ladite première trame reçue, et dans l'affirmative pour déterminer si ledit identifiant signale qu'elle contient des données devant être transférées lors du cycle suivant du second réseau (R2) et dans la négative pour différer le traitement de ladite première trame reçue et dans l'affirmative pour traiter cette première trame reçue. 13. Utilisation du procédé de transfert et du dispositif de transfert (D) selon l'une des revendications précédentes dans le cas d'un premier réseau asynchrone (R1) de type CAN et d'un second réseau asynchrone (R2) de type FlexRay. i0