Brevet FR2601213A1 — publié le 19880108

Z601213 i La présente invention concerne un système de transmission prévu pour la transmission de données aussi bien en mode synchrone qu'en mode asynchrone, et elle porte plus particulièrement sur un circuit d'adaptation automatique au mode de transmission approprié. Un modem est un dispositif qu'on utilise aux extrémités réceptrice et émettrice d'une ligne téléphonique pour assurer la transmission de données par cette ligne. Les données qui traversent le modem peuvent être de type synchrone, 10 ce qui signifie que des caractères de données sont transmis à une cadence fixe, avec l'émetteur et le récepteur en synchronisme, ou de type asynchrone, ce qui signifie que les intervalles de temps entre des caractères transmis peuvent être de longueur inégale. Un ordinateur hôte qui offre la possibilité d'établissement de liaisons de transmission par le réseau téléphonique commuté pour des applications asynchrones (par exemple pour des données provenant d'un terminal éloigné) , et des applications synchrones (par exemple pour des données correspon20 dant au transfert de fichiers à partir d'un autre ordinateur hôte) comporte habituellement une entrée/sortie par modem pour des données asynchrones et une entrée/sortie par modem séparée réservée pour des données synchrones. Chaque entrée/sortie par modem de l'ordinateur hôte 25 reçoit de façon caractéristique des données sur une ligne de télécommunication séparée provenant du centre de commutation téléphonique. Cependant, dans certaines applications, le trafic de données pour chaque entrée/sortie n'a pas un volume suffisant pour justifier le coût d'une ligne de télécommunica30 tion et d'un modem séparés. Il existe des modems prévus avec des options leur permettant de traiter soit des données synchrones, soit des données asynchrones, mais non les deux. Ainsi, lorsqu'on utilise des types de modems actuels (dont certains comportent un commutateur manuel pour le passage d'un 35 mode à l'autre), on ne peut pas obtenir le résultat souhaita- ble consistant dans l'utilisation d'une seule ligne de télécommunication pour différents types de données. L'inventeur a conçu un modem qui peut être utilisé conjointement pour des données synchrones et asynchrones et qui, au début d'une communication, s'adapte automatiquement au type de données (synchrones ou asynchrones) qui sont transmises. L'inventeur s'est basé sur la séquence caractéristique d'établissement de liaison entre modems qui est actuellement utilisée pour établir la cadence de données. Cette manière de 10 procéder utilise le fait capital qui consiste en ce que la séquence d'établissement de liaison ne dépend pas de la nature des données qui sont transmises (c'est-à-dire des données synchrones ou asynchrones). Ainsi, avant d'établir la nature de la transmission de données, il est possible d'accomplir la 15 fonction d'établissement de liaison sans que le modem soit placé dans la configuration correspondant à un type de données ou l'autre. Apres la séquence d'établissement de liaison, le modem conforme à l'invention examine pendant une durée déter20 minée la transmission de données réelle et, sur la base du contenu des données réelles qui sont reçues, il détermine si les données sont asynchrones ou synchrones. L'inventeur a tiré parti des caractéristiques différentes des données synchrones et des données asynchrones en 25 concevant un modem de façon qu'il examine, par incréments et pendant une durée fixée, les données réelles qui sont transmises. Si un certain nombre d'incréments consécutifs sont trouvés égaux pendant cette durée, les données sont supposées être synchrones. Si l'intervalle de temps mesuré (cinq secondes 30 dans un exemple) s'écoule sans que les données apparaissent comme étant synchrones, le modem suppose que le fonctionnement a lieu dans le mode asynchrone. On examinera ultérieurement de façon plus détaillée les raisons qui conduisent à ces hypothèses. L'invention sera mieux comprise à la lecture de la description détaillée qui va suivre d'un exemple de réalisation, et en se référant aux dessins annexés dans lesquels: La figure 1 montre le modem utilisé dans un système, La figure 2 est un organigramme de la séquence de commande utilisée, La figure 3 montre des détails du modem, et Les figures 4 à 10 montrent des séquences de données utilisées pour la commande. Comme le montre la figure 1, un ordinateur hôte 12 communique au moyen d'une ligne d'un centre de commutation par l'intermédiaire d'une interface de centre de commutation 13, d'un modem il et d'un contrôleur série à protocoles multiples, 10. Avant de décrire le fonctionnement du modem 11, il convient de noter que la ligne de télécommunication peut être une ligne 15 quelconque exigeant l'intervention d'un modem. Dans le mode de réalisation représenté sur la figure 1, l'ordinateur hôte 12 communique avec le modem 11 par l'intermédiaire d'un canal de commande série. Lorsque le modem 11 a achevé la séquence d'établissement de liaison avec le modem 20 éloigné (non représenté) se trouvant à l'extrémité éloignée de la connexion de télécommunication, il détermine la nature des données et il émet un message de commande vers l'ordinateur hôte 12 par l'intermédiaire du contrôleur série à protocoles multiples 10, comme on le décrira. L'ordinateur hôte 12 achève 25 ensuite l'établissement de la connexion en effectuant un traitement interne asynchrone ou un traitement interne synchrone. De plus, le modem se place de lui-même dans la configuration appropriée pour traiter des données asynchrones ou des données synchrones. Comme le montre la figure 2, à l'achèvement de la procédure d'établissement de liaison (case 202), un temporisateur de 5 secondes est déclenché (case 203). Pendant ce temps, les données entrantes sont assemblées et désembrouillées pour donner cinq quantités consécutives à huit bits (case 204). L'opération de la case 205 sépare des données synchrones vali- 260121 3 des possibles vis-à-vis de données susceptibles d'être asynchrones. Les opérations des cases 205 et 210 à 212 accomplissent le traitement nécessaire dans la situation dans laquelle cinq incréments de 8 bits consécutifs apparaissent pendant 5 l'intervalle mesuré de 5 secondes. Les opérations des cases 206-208 accomplissent le traitement nécessaire dans la situation opposée. Si le modem 11 rencontre cinq correspondances consécutives avec des quantités à 8 bits, il choisit lui-même de se 10 placer dans le mode de transmission synchrone. Si 5 secondes se sont écoulées sans que cinq correspondances consécutives soient apparues, le modem choisit lui-même de se placer dans le mode de transmission asynchrone. On notera que, comme l'indique la case 205, les octets suivants ne sont pas reconnus comme des caractères de synchronisation (SYNC) valides: 11111111, 10101010, 01010101. On en expliquera la raison ultérieurement. En considérant maintenant la figure 3, on note que le modem 11 comprend un processeur de signal numérique (DSP) 20 301, un microprocesseur 303 (qui peut être un microprocesseur Intel 8051), un émetteur/récepteur synchrone/asynchrone universel (USART) 305 (qui peut être un USART Intel 8251A) et un registre à décalage 302. Le processeur de signal numérique 301 est chargé d'accomplir la fonction de démodulation sur les échantillons en modulation par impulsions et codage (MIC) qui sont reçus à partir du circuit d'interface de centre de commutation 13. De plus, le processeur de signal numérique 301 remplit la fonction de modulation pour les données qui proviennent du microprocesseur 303. Le processeur de signal numérique 301 récupère des signaux d'horloge de la manière habituelle, à partir des données reçues, et il applique ces signaux au microprocesseur 303. Le microprocesseur 303 communique avec le processeur de signal numérique 301 par l'intermédiaire de conducteurs 306, pour la 35 transmission de données du microprocesseur 303 au processeur de signal numérique 301. Le processeur de signal numérique 301 est connecté au registre à décalage 302, pour commander la transmission de données vers le microprocesseur 303. Le microprocesseur 303 est chargé de la transmission de données entre 5 le processeur de signal numérique 301 et l'ordinateur hôte 12 (figure 1), par l'intermédiaire de l'USART 305. De plus, le microprocesseur 303 contrôle le train de données et il effectue une action en cas d'apparition de certaines conditions concernant les données, comme on le décrira de façon plus dé10 taillée. Le microprocesseur 303 assure en outre toutes les fonctions de définition de séquence et de caractéristiques temporelles pour l'établissement de liaison avec le modem de l'extrémité éloignée, d'une manière bien connue dans la technique. Enfin, le microprocesseur 303 communique avec le pro15 cesseur hôte 12 par une liaison série de commande séparée. Pour les besoins de la description, on définira un intervalle de baud comme étant la durée séparant des changements de phase sur une ligne de transmission. Un modem fonctionnant à 1200 bit/s a des intervallesde baud d'environ 1,66 20 ms. Pendant chacun de ces intervalles de baud, 2 bits (soit un dibit) sont reçus à partir de l'extrémité éloignée, qui est dans cet exemple l'interface de centre de commutation 13. Lorsque quatre dibits sont reçus par le microprocesseur 303, ils sont enregistrés dans une mémoire vive interne (non repré25 sentée, mais qui fait partie du microprocesseur 303), et ils sont comparés à l'échantillon de 8 bits enregistré précédent. Si les deux échantillons sont égaux et ne sont pas l'un des suivants: 11111111, 10101010, 01010101, un compteur de synchronisation, interne au microprocesseur 303, est incrémenté. 30 Si les deux échantillons ne sont pas égaux, le nouvel échantillon remplace l'ancien et le compteur de synchronisation.est remis à zéro. Si le contenu du compteur de synchronisation est égal à 5, un message est émis vers l'ordinateur hôte par la liaison série de commande, pour indiquer la réception de don35 nées synchrones. Si 5 secondes s'écoulent sans que le contenu du compteur de synchronisation soit égal à 5, un message est émis vers l'ordinateur hôte par la liaison série de commande, pour indiquer la réception de données asynchrones. On va montrer en se référant aux figures 4 à 10 la raison pour laquelle on effectue les hypothèses indiquées concernant des données asynchrones et synchrones. La figure 4 montre trois caractères ASCII "wjg". Comme on le verra, ces caractères peuvent arriver en format synchrone ou asynchrone (mais non les deux) pendant une transmission. La figure 5 est un exemple d'un train de caractères asynchrones dont les données correspondent aux caractères ASCII "wjg". On note que chaque caractère est délimité par un bit de départ (0) et un bit d'arrêt (1). En l'absence de transmis15 sion de caractères, une valeur 1 est transmise. Ceci est nettement différent de la nature générale de données synchrones, représentées sur la figure 10, dans lesquelles des octets de caractères de données synchrones de longueur fixe 01111110 sont transmis en l'absence d'émission de données. En retournant au train de données asynchrones qui est représenté sur la figure 5 et en partant d'une position de bit aléatoire, on peut diviser le train, comme le montre la figure 6, en quantités à 8 bits commençant à ce bit aléatoire. Les données sont supposées être synchrones sauf si cinq quan25 tités à 8 bits consécutives ont la même configuration de bits. Comme le montre la figure 6, deux quantités à 8 bits consécutives ne sont jamais égales, sauf dans le cas de la quantité 11111111, qui n'est pas un candidat. Par conséquent, aucun de ces octets n'incrémentera le compteur de synchronisation, même 30 une seule fois. Il en résulte que des données ayant cette allure, c'est-à-dire des données se présentant sous la forme de salves avec des valeurs 1 multiples entre des caractères, ne seront jamais considérées comme valides pour le comptage. Ceci implique que la condition la plus probable dans laquelle un 35 train de données asynchrones pourrait être considéré par er- reur comme un train de données synchrones, est celle dans laquelle des données sont transmises continuellement sans valeurs 1 entre les caractères. La figure 7 représente un train continu de données asynchrones qui sont transmises avec un seul bit d'arrêt. L'échantillon [1] montre le résultat qu'on obtient si on fait démarrer l'échantillon avec un bit d'arrêt. La configuration périodique comprise entre les échantillons [1J et 15], représentée sur la figure 7, apparaît alors. Pour qu'on ait la con10 dition échantillon [l] = échantillon [2] = échantillon [3] = échantillon [41 = échantillon [52 (qui est la condition synchrone), chacun des échantillons l[1] à [5] doit être égal à 10101010. Cependant, 10101010 est l'un des octets de données qu'on a déclaré comme étant non significatif pour la résolution 15 de la question synchrone/asynchrone (comme indiqué sur la figure 2, case 205). On notera que cette configuration apparaîtrait pour n'importe quelle suite de cinq échantillons consécutifs, indépendamment de la position du bit de départ. De façon similaire, un train continu de caractères asynchrones avec un bit de départ et deux bits d'arrêt pourrait apparaître sous la forme représentée sur la figure 8. En partant d'une position de bit quelconque dans la séquence, on obtient la configuration périodique qui est représentée sur la figure 9. On notera que toute séquence de cinq octets consécu25 tifs comportera au moins une position de bit qui disqualifiera la séquence, c'est-à-dire qui empêchera de la considérer comme une séquence de synchronisation valide, indépendamment de la valeur de x. Comme indiqué ci-dessus, la figure 10 montre un exem30 ple d'un train de caractères asynchrones avec des caractères ASCII "wjg" et le caractère de synchronisation 01111110. On notera que des caractères de synchronisation sont toujours transmis en l'absence de transmission de caractères de données, et qu'il n'y a pas de bits pour délimiter des caractères. Si une quantité à huit bits n'est pas un caractère de synchronisa- tion, on considère qu'il s'agit de données. On fait l'hypothèse importante qui consiste à considérer qu'au moins cinq caractères de synchronisation consécutifs seront transmis entre le moment auquel le modem achève le procédure d'établissement de liaison et le début de la transmission de données. A 1200 bit/ s, ceci prendrait moins de 50 millisecondes. Il est donc cer-tain que la répétition continue du caractère de synchronisation conduira à déterminer que les données sont synchrones, et ceci se produira indépendamment de l'endroit o le comptage commence 10 dans la transmission de données. En conclusion, on peut donc noter qu'en utilisant les principes de l'invention, on peut faire varier le nombre de bits de données dans chaque multiplet de données, ainsi que l'intervalle mesuré prédéterminé. De plus, bien que cette tech15 nique soit décrite pour des données synchrones et asynchrones, on peut l'utiliser pour n'importe quel type de données ayant des caractéristiques de données similaires. En outre, le dispositif de données récepteur, c'est-à-dire l'ordinateur hôte dans l'exemple considéré, pourrait être placé par défaut dans un mode de transmission donné, sauf si le modem lui transmet une instruction contraire. Dans une telle situation, un seul signal doit être appliqué au dispositif récepteur. Il faut également noter que bien qu'on envisage de faire fonctionner le circuit de l'invention uniquement au début 25 de chaque nouvelle transmission, ceci n'est pas obligatoire, et le dispositif pourrait être conçu de façon à contrôler continuellement la transmission et à produire des signaux sous l'effet de tout changement du mode de transmission. REVENDICATIONS 1. Circuit destiné à être intercalé entre une ligne de télécommunication et un processeur, cette ligne de télécommunication acheminant des transmissions de données, carac5 térisé en ce qu'il comprend: des moyens destinés à contrôler pendant un intervalle prédéterminé chaque nouvelle transmission de données sur la ligne de télécommunication, au début de cette nouvelle transmission de données; des moyens fonctionnant sous la commande des moyens de contrôle de façon à détecter si une nouvelle transmission de données particulière est en format synchrone ou en format asynchrone; et des moyens destinés à produire un premier signal lorsqu'on détecte qu'une nouvelle transmission de données est synchrone, et à produire un signal différent lorsqu'on détecte que la nouvelle trans15 mission de données est asynchrone. 2. Circuit selon la revendication 1, caractérisé en ce que les moyens de contrôle comprennent des moyens qui, en commençant à un bit de données quelconque, décomposent la transmission contrôlée en multiplets de données contenant cha20 cun n bits de données; des moyens destinés à comparer des multiplets de données successifs pendant l'intervalle prédéterminé; des moyens destinés à compter des multiplets de données successifs qui ont tous des bits de données semblables dans les mêmes positions relatives, dans des multiplets de données 25 comparés successifs; et des moyens destinés à produire le premier signal lorsque les moyens de comptage atteignent un nombre prédéterminé, pendant l'intervalle prédéterminé. 3. Circuit selon la revendication 2, caractérisé en ce qu'il comprend en outre des moyens destinés à restaurer les 30 moyens de comptage sous l'effet de la détection de multiplets de données présentant certaines combinaisons de bits de données préétablies. 4. Circuit selon la revendication 3, caractérisé en ce que n est égal à huit. 5. Circuit selon la revendication 1, caractérisé en ce que la transmission comprend une partie d'initialisation suivie par une partie de transmission de données active, et dans lequel l'intervalle prédéterminé apparaît pendant les 5 premières secondes de la partie de transmission. 6, Circuit selon la revendication 1, caractérisé en ce qu'il comprend en outre des moyens destinés à traiter une transmission de données synchrone ou asynchrone, et des moyens qui réagissent aux signaux précités en validant les moyens de traitement. 7. Circuit selon la revendication 1, caractérisé en ce qu'il comprend en outre des moyens destinés à appliquer les signaux précités au processeur. 8. Dispositif de traitement de signal prévu pour l'utilisation entre des dispositifs d'émission de données et de réception de données, ce dispositif de traitement de signal pouvant commander des transmissions de données entre les dispositifs d'émission et de réception de données selon deux modes de transmission, et ces modes se caractérisant par des configurations de données dans la transmission qui sont spéci20 fiques du mode de transmission considéré, caractérisé en ce qu'il comprend: des moyens destinés -à établir un intervalle de temps prédéterminé; des moyens destinés à établir une série de multiplets de données, chaque multiplet contenant n bits de données; des moyens destinés à examiner les multiplets établis; 25 des moyens destinés à comparer des multiplets de données examinés successifs, pour déterminer si un certain nombre prédéterminé m de multiplets de données comparés sont identiques; et des moyens destinés à appliquer à un premier dispositif de transmission de données fonctionnant en réception un premier 30 signal représentatif de l'un des modes de transmission, sous l'effet de la détermination de l'existence dans l'intervalle prédéterminé de multiplets de données consécutifs identiques en un nombre égal au nombre prédéterminé m. 9. Dispositif selon la revendication 8, caractérisé 35 en ce que le nombre de bits de données dans chaque multiplet il de données est égal à 8, et en ce que les moyens d'établissement d'une série de multiplets de données commencent à n'importe quel bit de données dans la transmission. 10. Dispositif selon la revendication 9, caractérisé 5 en ce que l'intervalle prédéterminé est de 5 secondes au début de chaque nouvelle transmission entre des dispositifs d'émission et de réception de données. 11. Dispositif selon la revendication 9, caractérisé en ce qu'il comprend en outre des moyens destinés à interdire 10 la validation des moyens d'application d'un premier signal sous l'effet de la détection de certainescombinaisons de bits de données pré-établies dans le multiplet de données qui est comparé. 12. Dispositif selon la revendication 8, caractérisé 15 en ce qu'il comprend des moyens destinés à donner à ce dispositif une configuration spécifique pour commander la transmission de données dans un seul des deux modes; et des moyens commandés par les moyens d'application du premier signal, de façon à commander les moyens qui définissent la configuration 20 du dispositif.