Brevet FR2769393A1 — publié le 19990409

PROCEDE DE MULTIPLEXAGE DE SIGNAUX NUMERIQUES La présente invention concerne un procédé de multiplexage, sur un même canal radioélectrique, de signaux numériques issus de canaux logiques differents et transmis sous la forme de trames successives. Par "canal logique", on entend un flux d'information provenant soit d'une source, soit d'un codeur de canal qui confère au flux d'information provenant de la source une protection contre les erreurs de transmission. La source considérée ici peut être un codeur de parole, un codeur vidéo, un codeur d'images fixes, une source de données, ou encore une unité de commande. Pour transmettre sur un même canal radioélectrique, sous forme de trames successives, des signaux provenant de canaux logiques différents, il est connu d'inclure dans les trames un code de multiplex, qui en décrit la structure, c est-à-dire la distribution des bits délivrés par les différents canaux logiques au sein de chaque trame. Un tel système fait l'objet d'une normalisation par l'Union Internationale des Télécommunications (UIT-T) ; voir projet de recommandation UIT-T H.223, Annexe A, "Multiplexing protocol for low bit rate communication over error-prone channels", mai 1996. Dans ce système, le code de multiplex est répété intégralement au cours de chaque trame de signaux transmis. Cette répétition sert à protéger la transmission du code de multiplex qui est une information très sensible le recepteur peut détecter des erreurs de transmission de ce code et prendre des mesures appropriées : correction de valeurs accidentellement différentes, signalisation d'erreur, demande de répétition ... Cette répétition integrale du code de multiplex présente l'inconvénient de limiter le débit d'information du canal de transmission, particulièrement lorsque les trames transmises sont relativement courtes. La présente invention a pour but de réaliser un compromis entre une protection satisfaisante de l'information transmise dans le code de multiplex et le débit d'information du canal. Dans ce but, la présente invention propose un procédé de multiplexage, sur un même canal radioélectrique, de signaux numériques issus de canaux logiques différents et transmis sous la forme de trames d'information successives, suivant lequel on transmet un code de multiplex indiquant les canaux logiques dont sont respectivement issus les bits de chaque trame d'information, le code de multiplex étant intégralement transmis dans une trame de synchronisation initiale précédant lesdites trames d'information, et transmis de manière répétitive dans les trames d'information, caractérisé en ce qu'on inclut dans chaque trame d'information un nombre déterminé de bits représentant seulement une fraction du code de multiplex, une transmission complète du code de multiplex dans les trames d'information étant étalée sur un nombre n 2 1 de trames d'information successives. Ainsi, le code de multiplex n'est entièrement répété qu'après émission de n trames et non dans chaque trame comme dans les systèmes de type H.223, Annexe A. L'étalement d'une telle répétition sur plusieurs trames, avec un nombre limite de bits par trame, présente un double avantage. D'une part, il évite de compliquer le processus de multiplexage, en conservant un format unique pour les trames d'information à transmettre : il n'est pas utile de distinguer les trames contenant et ne contenant pas le code de multiplex. D'autre part, l'étalement du code de multiplex améliore sa protection contre les erreurs de transmission radio survenant par paquets. Le nombre n, et la fraction du code de multiplex incluse dans chaque trame, sont choisis selon le compromis recherché entre la protection du code de multiplex et le débit d'information. Avantageusement, on transmet le code de multiplex après application d'un codage redondant pour la détection et/ou la correction d'éventuelles erreurs de transmission. Le rendement de ce codage redondant, en ce qui concerne les répétitions du code de multiplex dans les trames d'information, peut egalement être adapté selon le compromis recherché entre la protection du code de multiplex et le débit d'information. D'autres buts et aspects de la présente invention apparaîtront à la lecture de la description détaillée qui suit d'un mode particulier de realisation, donné à titre d'exemple non limitatif. La description se refère aux dessins qui l'accompagnent, dans lesquels - les figures 1 et 2 sont des schémas partiels d'un emetteur radio mettant en oeuvre le procédé de l'invention, et d'un récepteur associé - les figures 3 à 5 représentent de façon schématique les structures respectives d'une trame de synchronisation initiale, d'une trame d'information, et d'une trame de synchronisation finale transmises conformément à un mode particulier de réalisation du procédé de l'invention. La figure 1 illustre un mode particulier de réalisation de l'invention, où on transmet sur un même canal radioélectrique des signaux numériques susceptibles de provenir de trois canaux logiques distincts, à savoir un canal audio, un canal de données, et un canal d'images. Le bloc 10 de la figure 1 schématise les moyens produisant le train de bits du canal audio A. Ces moyens peuvent comprendre un codeur de parole et un codeur de canal associé. De même, le bloc Il de la figure 2 schématise les moyens utilisés pour traiter les signaux reçus sur le canal logique audio (décodeur de canal et décodeur de source). Les blocs 12 et 13 schématisent des moyens semblables pour le canal logique de données D, et les blocs 14 et 15 pour le canal logique d'images I. Sur le canal radioélectrique, les signaux numériques issus des canaux logiques sont transmis sous forme de trames successives. Toutes les trames multiplexées comportent le même nombre L de bits. Dans les exemples numériques non limitatifs donnés ci-après, le procédé conforme à l'invention est mis en oeuvre pour des transmissions sur des canaux de données de type TCH/F9.6 d'un système de radiocommunication avec les mobiles suivant la norme GSM, les trames ayant une longueur L = 192 bits. Ces trames sont mises en forme par un multiplexeur 20 de l'émetteur qui les délivre au modulateur (non représenté sur la figure 1). Au niveau du récepteur, un démultiplexeur 24 reçoit le signal fourni par le démodulateur (non représenté sur la figure 2) et le distribue entre les trois blocs de traitement 11, 13, 15 selon les canaux logiques concernés. Dans le mode particulier de réalisation décrit ici, on distingue trois types de trames multiplexées, illustrés respectivement par les figures 3 à 5. La figure 3 représente une trame de synchronisation initiale, indiquant le début de la transmission. Elle comprend une séquence de synchronisation initiale "SYNCHRO START" constituée de Li bits (par exemple Li = 127), suivie d'un code de multiplex "MUX". La séquence "SYNCHRO START" est générée par un module 16 de l'émetteur. Les Li bits qui la constituent sont consécutifs dans la trame de synchronisation transmise, et ils ont des valeurs fixées a priori. Au niveau du récepteur, un module 22 de détection de synchronisation recherche les corrélations entre le signal fourni par le démodulateur et la séquence prédéterminée "SYNCHRO~START". Lorsqu'une forte corrélation est détectée, le module 22 fournit au démultiplexeur 24 un repère temporel qui lui permet de se caler sur la structure temporelle des trames émises. Le code de multiplex indique les canaux logiques dont seront respectivement issus les bits des trames d'information qui suivent la trame de synchronisation initiale. Un module 18 de l'émetteur génère le code de multiplex selon les canaux logiques actifs lors de la transmission à venir. Le code de multiplex peut etre transmis sans aucune protection contre les erreurs de transmission, sur un nombre M de bits (par exemple M = 4). Une variante avantageuse consiste à adjoindre au code de multiplex un certain nombre de bits de redondance lui conférant une protection contre les erreurs de transmission, en utilisant par exemple un code en blocs tel qu'un code BCH, ou un code de Hamming. Le code de multiplex transmis dans la trame de synchronisation initiale est dans ce cas constitué d'un nombre total M1 > M de bits (par exemple M1 = 7 si on utilise un code de Hamming (7,4) capable de corriger un bit erroné). Le restant éventuel de la trame de synchronisation initiale, représenté par des hachures sur la figure 3, est constitué de bits de bourrage, dans le cas où Li + M Li + Ml Au niveau du récepteur (figure 2), un module 26 analyse le code de multiplex que le démultiplexeur 24 extrait de la trame de synchronisation initiale, afin de fournir à ce démultiplexeur 24 les informations lui permettant de distribuer convenablement les bits des trames subséquentes entre les différents canaux logiques. Un deuxième type de trame, dit trame d'information, est représenté sur la figure 4. Une trame d'information contient des paquets d'information, c est-à-dire des ensembles de bits d'information "INFO #1", ..., "INFO #N", éventuellement complétés par des bits de bourrage, et provenant chacun d'un canal logique donné. Chaque trame d'information contient également un nombre détermine P de bits relatifs au code de multiplex. Ces P bits ont été arbitrairement représentés en début de trame sur la figure 4 ; cependant, ils ne sont pas nécessairement consécutifs dans la trame. Il est même préférable de distribuer ces P bits sur la longueur de la trame d'information, pour être moins sensible aux erreurs en paquets. Ces P bits correspondent à une fraction seulement du nombre M2 de bits requis pour transmettre intégralement le code de multiplex. P autres bits sont transmis dans la trame d'information suivante, et ainsi de suite sur un nombre K = M2/P de trames d'information successives. Le nombre M2 précité peut être égal au nombre M ou M1 de bits utilisés pour transmettre le code de multiplex dans la trame de synchronisation initiale. Dans le mode particulier de realisation décrit, le codage redondant utilisé pour transmettre le code de multiplex dans les trames d'information a un rendement inférieur à celui du codage redondant utilise pour le transmettre dans la trame de synchronisation initiale, c'est-à-dire que M2 > M1. Dans l'exemple numérique précédent, on peut prendre M2 = 8, le codage redondant du code de multiplex de M = 4 bits consistant à appliquer le code de Hamming (7,4) capable de corriger un bit erroné et à ajouter un bit de parité permettant de détecter des codes erronés. Dans ce cas, on peut prendre K = 4 et P = 2, en plaçant l'un des bits du code de multiplex au début de chaque trame d'information, et l'autre au milieu de chaque trame d'information. Les portions successives de P bits du code de multiplex transmis sur les trames d'information sont fournies par le démultiplexeur 24 au module d'analyse 26. Celui-ci procède au décodage détecteur et/ou correcteur d'erreurs pour obtenir des valeurs successives du code de multiplex. Le module d'analyse 26 vérifie ensuite la cohérence des valeurs successives. Si ces valeurs successives révèlent des contradictions, le module 26 prend les mesures appropriées. Après validation du code de multiplex, il retransmet le code au démultiplexeur 24. A titre d'exemple, si le module d'analyse 26 détecte un code de multiplex incohérent dans une succession de codes de multiplex identiques, il peut décider d'appliquer sur les K = 4 trames qui suivent le code de multiplex incohérent, le même code de multiplex que celui qui a été décodé sur les trames antérieures. Le module d'analyse 26 effectue ainsi une récupération d'erreur. La figure 5 représente un troisième type de trame, qui peut être transmis à la suite d'un certain nombre de trames d'information. L'émetteur produit une telle trame soit lorsque la transmission est terminée (cas 1), soit lorsque la structure des trames d'information doit être changée parce qu'un canal logique n'a plus de bits à émettre ou parce qu'un nouveau canal logique est à prendre en considération. I1 s'agit d'une trame de synchronisation finale, contenant une séquence de synchronisation finale "SYNCHRO~STOP" constituée de Lf bits (par exemple Lf = 63), suivie d'un nouveau code de multiplex "MUX" transmis en totalité. La séquence SYNCHRO~STOP, produite par le module 16, est détectable par le module 22 du récepteur qui indique au démultiplexeur 24 le changement à intervenir. Le nouveau code de multiplex indique la fin de la transmission dans le cas 1, et la nouvelle structure des trames d'information dans le cas 2. La trame de synchronisation finale peut être transmise avant la fin de la transmission de l'ensemble des trames d'information portant un même code de multiplex étalé. La présence de l'intégralité du code de multiplex dans les trames de synchronisation initiale et finale assure la transmission du code de multiplex par anticipation et evite, lors du démultiplexage, un retard du à l'étalement du code de multiplex sur K trames successives. De même que le code de multiplex transmis dans la trame de synchronisation initiale, le code de multiplex transmis dans la trame de synchronisation finale peut être protégé ou non contre les erreurs de transmission. Le rendement du codage détecteur et/ou correcteur d'erreurs appliqué au code de multiplex dans la trame de synchronisation finale peut être different du rendement du codage détecteur et/ou correcteur d'erreurs appliqué au code de multiplex dans la trame de synchronisation initiale et/ou au code de multiplex étalé sur plusieurs trames d'information successives. On note M3 le nombre total de bits du code transmis dans la trame de synchronisation finale s'il inclut des bits de redondance permettant, à la réception, de détecter et/ou corriger des erreurs (par exemple M3 = M1). Le code de multiplex transmis dans la trame de synchronisation finale est suivi par N champs de taille, contenant la taille utile de l'information contenue dans chacun des N champs d'information de la trame d'information précédente. La longueur totale LB de ces champs de taille est egale à la somme des longueurs L#1, ..., LflN de chacun des champs. L'ensemble de ces champs peut être protégé par un codage redondant. La longueur totale est alors notée L' Es Le restant de la trame de synchronisation finale, représenté par des hachures sur la figure 5, est constitué de bits de bourrage, dans le cas où Lf + M + LB M3 + L' B Le contenu des trames de synchronisation initiale et finale, excepté les séquences de synchronisation, peut être entrelacé. Le procédé de multiplexage conforme à l'invention permet d'obtenir un gain appréciable en débit de transmission, par comparaison avec le procédé de multiplexage décrit dans le projet de recommandation précité H.223, Annexe A. REVENDICATIONS 1. Procédé de multiplexage, sur un même canal radioélectrique, de signaux numériques issus de canaux logiques différents et transmis sous la forme de trames d'information successives, suivant lequel on transmet un code de multiplex (MUX) indiquant les canaux logiques dont sont respectivement issus les bits de chaque trame d'information, le code de multiplex étant intégralement transmis dans une trame de synchronisation initiale précédant lesdites trames d'information, et transmis de manière répétitive dans les trames d'information, caractérisé en ce qu'on inclut dans chaque trame d'information un nombre déterminé de bits représentant seulement une fraction du code de multiplex, une transmission complète du code de multiplex dans les trames d'information etant étalee sur un nombre déterminé K de trames successives. 2. Procédé selon la revendication 1, caractérisé en ce qu'on transmet le code de multiplex après application d'un codage redondant pour la détection et/ou la correction d'eventuelles erreurs de transmission. 3. Procédé selon la revendication 1 ou 2, caracterisé en ce que le rendement du codage redondant du code de multiplex pour une transmission du code de multiplex étalée sur plusieurs trames d'information successives est différent du rendement du codage redondant du code de multiplex pour sa transmission intégrale dans la trame de synchronisation initiale. 4. Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce que la trame de synchronisation initiale contient, en plus du code de multiplex (MUX), une séquence de synchronisation (SYNCHRO~START). 5. Procédé selon la revendication 1, 2 ou 3, caractérisé en ce qu'à la suite d'un ensemble de trames d'information, on transmet une trame de synchronisation finale, contenant un code de multiplex qui indique soit une interruption de la transmission, soit les canaux logiques dont seront respectivement issus les bits de trames d'information transmises consécutivement à ladite trame de synchronisation finale. 6. Procédé selon la revendication 5, caractérisé en ce qu'on transmet le code de multiplex dans la trame de synchronisation finale après application d'un codage redondant pour la détection et/ou la correction d'éventuelles erreurs de transmission. 7. Procédé selon les revendications 2 et 6, caractérisé en ce que le rendement du codage redondant appliqué au code de multiplex dans la trame de synchronisation finale est différent du rendement du codage redondant applique au code de multiplex dans la trame de synchronisation initiale et/ou au code de multiplex étalé sur plusieurs trames d'information successives. 8. Procédé selon l'une quelconque des revendications 5 à 7, caractérisé en ce que la trame de synchronisation finale contient, en plus du code de multiplex (MUX), une séquence de synchronisation (SYNCHRO~STOP). 9. Procédé selon la revendication 8, caractérisé en ce que la trame de synchronisation finale contient en outre N champs supplémentaires indiquant la taille de l'information utile transportée dans chacun des N champs d'information (INFO#l, ..., INFO&num;N) de la trame d'information précédente. 10. Procédé selon l'une quelconque des revendications 5 à 9, caractérisé en ce que la trame de synchronisation finale est transmise avant la fin de la transmission de l'ensemble des trames d'information portant un même code de multiplex étalé. 11. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce qu'on multiplexe des signaux issus de canaux logiques de parole, d'images et/ou de données. 12. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que le code de multiplex est transmis à raison de 2 bits par trame, sur un groupe de 4 trames d'information successives.