Brevet FR2660133A1 — publié le 19910927

La présente invention a pour objet un procédé d'embrouillage, de désembrouillage et de recherche de synchronisation d'un train binaire ainsi que des circuits permettant la mise en oeuvre de ce procédé. Elle est applicable dans les systèmes de transmission de données. Dans les systèmes de transmission de données, il est nécessaire d'éviter la transmission sur la ligne de longues séries de O ou de 1. En effet, par exemple, la transmission d'une longue suite d'éléments binaires à O se traduit par une longue période d'absence d'oscillations sur la ligne. Le répéteur connecté à cette ligne ne reçoit alors plus aucun signal de référence et de recalage de son circuit d'horloge. II devient donc nécessaire de prévoir un circuit d'horloge ultra performant, ce qui augmente notablement son coût. Pour pallier de tels inconvénients, une solution consiste à embrouiller les données à transmettre afin d'obtenir un train binaire dans lequel le nombre d'éléments binaires O et le nombre d'éléments binaires à 1 sont sensiblement identiques, ces éléments étant également répartis dans le train. A la réception, il faut désembrouiller ce train d'éléments binaires afin de reconstituer le train de données initial. La présente invention a donc pour objet un procédé répondant aux exigences ci-dessus mentionnées et un circuit permettant la mise en oeuvre de ce procédé. Le procédé d'embrouillage d'un train de données binaires à transmettre, de désembrouillage et de recherche de synchronisation de ce train de données binaires embrouillé transmis et reçu faisant l'objet de l'invention est caractérisé par le fait qu'il consiste à: - découper le train de données à transmettre en mots de longueur fixe - donner à l'un des éléments binaires de position fixe une valeur fixe dans tous les mots dudit train - embrouiller ledit train de données avec une séquence binaire pseudo-aléatoire de longueur fixe afin d'obtenir un train de données binaires embrouillé à émettre; - transmettre ledit train embrouillé; - désembrouiller le train de données binaires reçu à l'aide d'une séquence binaire pseudo-aléatoire identique à ladite séquence binaire pseudo-aléatoire utilisée pour 'embrouillage;; - comparer chaque élément binaire du premier mot reçu avec l'élément binaire de même rang du second mot reçu; - sélectionner les éléments binaires qui, dans les deux premier et second mots reçus occupent le même rang et ont ladite valeur fixe de l'élément binaire de position fixe; - comparer chacun des éléments binaires sélectionnés avec les éléments binaires respectifs de même rang de chacun des mots reçus suivants et ne sélectionner, après chaque comparaison, que les éléments binaires qui, dans chaque mot, occupent le même rang et ont ladite valeur fixe; - poursuivre ladite comparaison jusqu'à ce qu'il ne reste qu'un seul élément binaire sélectionné qui est donc ledit élément binaire de position fixe recherché. Le circuit de désembrouillage et de recherche de synchronisation permettant de mettre en oeuvre le procédé de l'invention est caractérisé par le fait qu'il comprend notamment: - un générateur de séquence binaire pseudo-aléatoire de longueur fixe; - une porte logique réalisant la fonction OU EXCLUSIF dont une entrée est connectée à une sortie dudit générateur de séquence binaire pseudo-aléatoire et dont une autre entrée est commandée par le train de données binaires reçu;; - un registre à décalage dont une entrée est connectée à une sortie d'une porte réalisant la fonction logique OU et dont une entrée est connectée à une sortie de ladite porte réalisant la fonction logique OU EXCLUSIF et dont une autre entrée est connectée à une sortie de ce registre - un compteur dont une entrée de comptage est connectée à l'entrée du registre à décalage par l'intermédiaire d'une porte commandée par un signal d'horloge reconstitué par un circuit d'horloge à partir dudit train de données binaires embrouillé reçu, une entrée de remise à zéro de ce compteur étant connectée à une sortie d'une porte dont des entrées reçoivent respectivement un signal d'initialisation et un signal de comptage de mots issus dudit circuit d'horloge;; - un démultiplexeur dont une entrée est connectée à une sortie du compteur et dont des sorties sont connectées à une entrée de portes logiques respectives commandées par ledit signal de comptage de mots pour fournir respectivement des signaux d'inhibition retransmis à une entrée dudit générateur de séquence binaire pseudo-aléatoire, de synchronisation trouvée, et de poursuite de la recherche de synchronisation. Les principaux objets et caractéristiques de l'invention seront maintenant détaillés dans la description qui va suivre, faite à titre d'exemple non limitatif, en se reportant aux figures annexées qui représentent: - la figure 1, un exemple de constitution d'un train binaire de mots de longueurs fixes embrouillé avec une séquence pseudo-aléatoire, conformément à l'invention; - la figure 2, un schéma illustrant le principe de recherche de synchronisation de l'invention; - la figure 3, un exemple de réalisation d'un circuit de réception permettant de mettre en oeuvre le principe de recherche de synchronisation de l'invention. On décrira tout d'abord, en se reportant à la figure 1, le principe d'embrouillage d'un train binaire de mots de longueur fixe, conformément à la présente invention. Selon le principe de l'invention, le train binaire à transmettre TBT est composé de mots MB de longueur fixe, L éléments binaires selon l'exemple choisi. L'un des L éléments binaires de chaque mot, dans une position fixe prédéterminée F, a une valeur fixe. Pour simplifier la description, à titre d'exemple non limitatif, cet élément binaire sera le premier (représenté à l'extrémité droite de chaque mot sur le schéma de la figure 1) de chaque mot et il aura la valeur 0. Les L-1 autres éléments binaires de chaque mot prennent, selon les informations à transmettre, tantôt la valeur 0, tantôt la valeur 1. Ils sont représentés par des X sur le schéma de la figure 1, où les données à transmettre sont illustrées sur la première ligne. Avant l'émission sur une ligne de transmission, ce train binaire TBT est embrouillé avec une séquence binaire pseudo-aléatoire SBPA de longueur fixe. Les circuits de réception, comme on le verra par la suite, connaissent les caractéristiques de cette séquence. On obtient donc un train d'éléments binaires embrouillé à émettre TBEE constitué de mots de L éléments binaires obtenus en réalisant élément binaire à élément binaire l'opération logique "OU EXCLUSIF" de la séquence pseudo-aléatoire SBPA et du train binaire à transmettre TBT. Sur le schéma de la figure 1, le train d'éléments binaires embrouillé à émettre TBEE est constitué d'éléments X, Y, O et 1. Les éléments binaires X sont le résultat de l'opération "OU EXCLUSIF" des éléments X du train binaire à transmettre TBT et des éléments 0 de la séquence pseudo-aléatoire SBPA. Les éléments binaires Y sont le résultat de cette même opération des éléments X du train binaire à transmettre TBT et des éléments 1 de la séquence SBPA. Les éléments binaires 0 et 1 sont respectivement le résultat du "OU EXCLUSIF" des éléments binaires à la valeur 0 du train binaire TBT et des éléments binaires respectifs 0 et de la séquence SBPA. Après cet embrouillage, la suite des éléments binaires F fournit donc une certaine séquence. Les circuits de réception doivent reconnaître cette séquence. Lorsque ces circuits de réception sont synchronisés, c'est-à-dire lorsque les éléments binaires reçus font à leur tour l'objet de l'opération logique "OU EXCLUSIF" avec l'élément binaire de même rang de la suite pseudo-aléatoire SBPA que celui qui a servi à l'embrouillage, le résultat de ce désembrouillage, pour chaque mot, est une séquence composée d'un élément binaire à 0 et de L-l éléments ayant une valeur de 0 ou de 1, appelée X, comme on l'a vu précédemment. On décrira maintenant, en se reportant également à la figure 2, le principe de la recherche de synchronisation. Selon le procédé de l'invention, on écrit dans un registre RG à L étages une première suite MB1 désembrouillée de L éléments binaires. Parmi ces L éléments binaires se trouve l'élément F qui, selon l'exemple choisi, est le premier de chaque mot de longueur L, cet élément étant à 0. Afin de reconstituer les mots du train désembrouillé, il suffit donc d'identifier cet élément binaire. Tous les éléments binaires à 0 écrits dans le registre RG, et seulement ceux-ci, peuvent être cet élément F recherché. On a représenté sur le schéma de la figure 2, un exemple de constitution de 4 mots MB1 à MB4 de 6 éléments binaires reçus et le contenu MB1, MC1, MC2, MC3,du registre RG après la réception de chacun de ces mots. Pendant la réception de la seconde suite de L éléments binaires désembrouillés, on compare chacun de ces L éléments binaires à l'élément binaire de rang correspondant de la première suite écrit dans le registre RO : lorsque les deux éléments binaires comparés sont à 0 on écrit (ou on maintient) 0 dans l'étage correspondant du registre RG. Dans tous les autres cas, on écrit 1 dans le registre RG. En effet, I'élément binaire F qui occupe la même position dans tous les mots du train de données est toujours un élément binaire à 0. On peut éliminer, après cette première comparaison, tous les étages du registre RG dans lesquels sont écrits des éléments binaires 1. Uopération précédente est renouvelée pendant la réception de la troisième suite de L éléments binaires désembrouillés comparés chacun à l'élément binaire de rang correspondant du mot inscrit dans le registre RG, ce mot n'étant plus un "mot de données" MB mais le premier "mot de comparaison11 MC1. Le deuxième mot de comparaison MC2 obtenu comportera un nombre d'éléments binaires à 0 inférieur, ou au plus égal, au nombre d'éléments binaires à O contenu dans le premier mot de comparaison. Après la réception d'un nombre prédéterminé S (4 selon l'exemple illustré sur le schéma de la figure 2) de suites de L éléments binaires, donc après S-l comparaisons, le mot de comparaison, MC3 selon l'exemple choisi, peut comporter plusieurs éléments binaires à 0. Tous, peuvent être l'élément F recherché. On entame alors un second cycle de comparaisons. Le mot de comparaison MC3 peut ne comporter qu'un seul élément binaire O, comme le montre l'exemple choisi, illustré par le schéma de la figure 2. Cet élément peut être l'élément F recherché. Selon le cas, on considère que cet élément est bien l'élément F, ou bien, on procède à une ou plusieurs comparaisons supplémentaires pour confirmer que l'élément binaire identifié est bien l'élément F recherché. Le mot de comparaison peut également ne comporter que des éléments binaires à 1: on n'a pas identifié l'élément F de chaque mot par suite d'une mauvaise synchronisation du train binaire reçu et de la séquence pseudo-aléatoire SBPA. On procède alors à un décalage, ou glissement d'un élément binaire de la séquence SBPA et on poursuit les comparaisons. Ce glissement de la séquence peut être réalisé, par exemple, en supprimant une impulsion d'horloge. On décrira maintenant, en se reportant à la figure 3, un exemple de réalisation d'un circuit de réception permettant la mise en oeuvre du principe de recherche de synchronisation de l'invention et, plus particulièrement, de désembrouiller un train binaire reçu TBER et d'effectuer les comparaisons des suites successives de L éléments binaires désembrouillés selon le principe précédemment décrit. Le circuit de réception de la figure 3 comprend notamment un générateur GPA de séquence pseudo-aléatoire, un circuit de récupération d'horloge RHB, une horloge HGR, un registre à décalage RGD et un compteur CPR. L'horloge HGR, commandée par le circuit de récupération de signaux d'horloge RHB, fournit un signal d'horloge -t et deux signaux de commande 10 et iL. Le signal o est un signal d'initialisation utilisé pour initialiser le générateur de séquence pseudo-aléatoire GPA c'est-à-dire pour recaler ce générateur à la même position que le générateur de séquence pseudo-aléatoire du circuit émetteur utilisé pour embrouiller le train de données à transmettre, de manière à ce qu'il produise la même séquence pseudo-aléatoire que celle utilisée à l'émission, mais avec un éventuel déphasage, la "phase" de cette séquence étant de toute façon inconnue. Le signal d'initialisation 10 est également utilisé pour la mise à zéro du registre à décalage RGD et du compteur CPR. Le signal tel est un signal de comptage de mots qui passe au niveau logique 1 après la réception de L éléments binaires. Le générateur GPA initialisé par le signal tO fournit la séquence pseudo-aléatoire de désembrouillage identique à la séquence pseudoaléatoire d'embrouillage à une entrée d'une porte logique stol réalisant la fonction logique OU EXCLUSIF et dont l'autre entrée reçoit le train binaire embrouillé reçu TBER. Le registre à décalage RGD est commandé par les signaux d'horloge I et d'initialisation tO. Une entrée de données ed de ce registre est connectée à la sortie de la porte logique pti par l'intermédiaire d'une porte st2 réalisant la fonction logique OU. Une autre entrée de cette porte nt2 est connectée à une sortie sd du registre RGD. La sortie de la porte ot2 est également connectée, via un inverseur lvi, à une entrée d'une porte pt3 réalisant la fonction logique ET. Une autre entrée de cette porte reçoit le signal d'horloge t. Une sortie non référencée de cette porte est connectée à une entrée de comptage ec du compteur CPR. Une entrée de remise à zéro du compteur CPR est connectée à une sortie d'une porte 24 réalisant la fonction logique OU et dont deux entrées reçoivent respectivement le signal d'initialisation 10 et le signal de comptage de mots IL. Une sortie du compteur CPR est connectée à une entrée d'un démultiplexeur DMX dont trois sorties dsl, ds2 et ds3 sont respectivement connectées à une entrée de portes sot5, ot6 et st7 réalisant la fonction logique ET. Ces portes sont commandées par le signal de comptage de mots IL fourni sur une autre de leurs entrées. Ces portes fournissent respectivement des signaux de comptage sx0, sxi et sx2. A la réception d'un train binaire embrouillé TBER, le circuit de récupération d'horloge RHB permet de reconstituer le rythme d'horloge. II alimente le circuit d'horloge HGR qui fournit en réponse les signaux d'horloge t, d'initialisation 10 et de comptage de mots IL. Ce dernier passe au niveau logique 1 après la réception de L éléments binaires. A chaque pas d'horloge, sous la commande du signal, les éléments binaires du train embrouillé TBER reçu sont mis en OU EXCLUSIF avec les éléments binaires respectifs de la séquence pseudo-aléatoire issue du générateur GPA, par la porte logique pt1 Les éléments binaires retransmis par cette porte sont fournis à une entrée de la porte OU pt2 dont une autre sortie reçoit le signal de sortie du registre à décalage RGD. Le signal de sortie de la porte pt2 est alors inscrit dans ce registre.Après inversion par le circuit lvi, ce signal est fourni à l'entrée ec du compteur CPR via la porte ET r > t3 commandé par le signal d'horloge t, Le compteur CPR est remis à zéro par le signal 10 (temps tO), puis au début de la réception de chaque mot, c'est-à-dire après la réception de chaque groupe de L éléments binaires, par le signal tL. Le compteur CPR, qui progresse d'un pas pour chaque élément binaire de niveau 1 fourni sur son entrée de comptage ec, compte donc le nombre d'éléments binaires à 0 fournis par la porte out2. A la fin de la réception de chaque mot, le signal de comptage IL passe au niveau logique 1. II est alors procédé à l'examen du contenu du compteur CPR. Comme on l'a vu précédemment, trois cas sont possibles: - le contenu du compteur CPR est égal à O, c'est-à-dire que le registre à décalage RGD ne contient que des éléments binaires à 1. Le signal fourni par le démultiplexeur DMX sur sa sortie dsl est au niveau logique 1. Un signal d'inhibition sx0 de niveau logique 1 est en conséquence transmis par la porte sot5, après inversion par un inverseur logique lv2, à une entrée de commande du générateur pseudo-aléatoire GPA via une porte ET st8 dont une entrée reçoit le signal d'horloge t. Ce dernier n'est donc pas retransmis et la progression du générateur GPA est inhibée. Le signal de comptage de mots IL passe au niveau logique 0. II en est de même du signal d'inhibition sx0. La porte 28 redevient passante, le signal d'horloge I est de nouveau transmis à l'entrée de commande du générateur GPA dont la progression reprend. Le fonctionnement du circuit de réception de la figure 3 reprend donc de la façon précédemment décrite: - la valeur numérique contenue dans le compteur CPR est supérieure à 1 c'est-à-dire que le registre à décalage RGD contient plusieurs éléments binaires à o. Le signal fourni sur la sortie ds3 du démultiplexeur DMX est au niveau logique 1. II en est donc de même du signal sx2 retransmis par la porte out7. La recherche se poursuit. - le compteur CPR contient la valeur numérique 1, c'est-à-dire que le registre à décalage RGD contient un seul élément binaire à 0. On a donc identifié l'élément binaire F recherché, de chaque mot. Le si-gnal fourni sur la sortie ds2 du démultiplexeur DMX passe au niveau logique 1. II en est de même du signal de synchronisation trouvée sxi retransmis par la porte out6. Ce signal peut être utilisé pour commander la poursuite du fonctionnement du circuit de réception de la figure 3 de la façon qui vient d'être décrite afin de confirmer l'identification de l'élément binaire F, donc de la synchronisation du train binaire embrouillé reçu. La synchronisation de ce train étant acquise, on peut prélever le train de données désembrouillé TBDR sur une sortie -1 de la porte logique otl. Le premier élément binaire de chaque mot est indiqué par le passage à o du signal de sortie de la porte logique pt2. Le circuit de réception de la figure 3 dont on vient de décrire le fonctionnement permet donc bien de retrouver l'élément binaire F de position fixe et de niveau logique prédéterminé dans chaque mot, de désembrouiller le train binaire reçu et donc de reconstituer les mots émis. La description qui précède n'a été fournie qu'à titre d'exemple non limitatif et de nombreuses variantes peuvent être envisagées sans sortir pour autant du cadre de l'invention. REVENDICATIONS 1. Procédé d'embrouillage d'un train de données binaires à transmettre, de désembrouillage et de recherche de synchronisation de données binaires embrouillé transmis et reçu, caractérisé par le fait qu'il consiste à: - découper le train de données à transmettre (TBT) en mots (MB) de longueur fixe (V; - donner à l'un des éléments binaires de position fixe (F) une valeur fixe (0) dans tous les mots (MB) dudit train (TBT) - embrouiller ledit train de données avec une séquence binaire pseudo-aléatoire (SBPA) de longueur fixe afin d'obtenir un train de données binaires embrouillé à émettre (TBEE); - transmettre ledit train embrouillé (TBEE);; - désembrouiller le train de données binaires reçu (TBER) à l'aide d'une séquence binaire pseudo-aléatoire identique à ladite séquence binaire pseudo-aléatoire (SBPA) utilisée pour l'embrouillage; - comparer chaque élément binaire du premier mot reçu (MB1) avec l'élément binaire de même rang du second mot reçu (MB2);; - sélectionner les éléments binaires qui, dans les deux premier (MB1) et second (MB2) mots reçus occupent le même rang et ont ladite valeur fixe (0) de l'élément binaire de position fixe (F) - comparer chacun des éléments binaires sélectionnés avec les éléments binaires respectifs de même rang de chacun des mots reçus suivants et ne sélectionner, après chaque comparaison, que les éléments binaires qui, dans chaque mot, occupent le même rang et ont ladite valeur fixe (0) - poursuivre ladite comparaison jusqu'à ce qu'il ne reste qu'un seul élément binaire sélectionné qui est donc ledit élément binaire de position fixe (F) recherché. 2. Procédé tel que défini en 1, caractérisé par le fait qu'il consiste, lorsque lesdites comparaisons successives ne permettent pas de sélectionner un seul élément binaire de valeur fixe (0) après un nombre de comparaisons prédéterminé, à entamer un second cycle de comparaisons et de sélection avec les mots reçus suivants. 3. Procédé tel que défini en 1, caractérisé par le fait qu'il consiste, lorsque lesdites comparaisons successives ne conduisent à la sélection d'aucun élément binaire, à faire glisser la séquence binaire pseudo-aléatoire de désembrouillage d'un élément binaire et à effectuer un second cycle de comparaisons et de sélection. 4. Circuit de désembrouillage et de recherche de synchronisation permettant de mettre en oeuvre le procédé décrit dans les revendications 1, 2 et 3, caractérisé par le fait qu'il comprend notamment: - un générateur (GPA) de séquence binaire pseudo-aléatoire de longueur fixe; - une porte logique (otl) réalisant la fonction OU EXCLUSIF dont une entrée est connectée à une sortie dudit générateur (GPA) de séquence binaire pseudo-aléatoire et dont une autre entrée est commandée par le train de données binaires embrouillé reçu (TBER);; - un registre à décalage (RGD) dont une entrée (ed) est connectée à une sortie d'une porte (2) réalisant la fonction logique OU et dont une entrée est connectée à une sortie (spi) de ladite porte (,otl) réalisant la fonction logique OU EXCLUSIF et dont une autre entrée est connectée à une sortie (sd) de ce registre (RGD);; - un compteur (CPR) dont une entrée de comptage (ec) est connectée à l'entrée (ed) du registre à décalage (RGD) par l'intermédiaire d'un inverseur (Ivl) et d'une porte (pt3) commandée par un signal d'horloge (t) reconstitué par un circuit d'horloge (HGR) à partir dudit train de données binaires embrouillé reçu (TBER), une entrée de remise à zéro de ce compteur (CPR) étant connectée à ne sortie d'une porte (pt4) dont des entrées reçoivent respectivement un signal d'initialisation (10) et un signal de comptage de mots (IL) issus dudit circuit d'horloge (HGR); ; - un démultiplexeur (DMX) dont une entrée est connectée à une sortie du compteur (CPR) et dont des sorties (ds1, ds2, ds3) sont connectées à une entrée de portes logiques respectives (pt5, pt6, 27) commandées par ledit signal de comptage de mots (fol) pour fournir respectivement des signaux d'inhibition (sx0) retransmis à une entrée dudit générateur (GPA) de séquence binaire pseudo-aléatoire, de synchronisation trouvée (sx1), et de poursuite de la recherche de synchronisation (sx2).