FR 2490435 A1 19820319 FR 8019952 A 19800916 La presente invention concerne un dispositif pour la transmission de signaux asynchrones entre plusieurs stations reliées par une seule ligne de transmission. Il est connu des machines de traitement de l'information realisees à l'aide de microprocesseurs dans des domaines varies allant des terminaux dits "intelligents" jusqu'aux centralisateurs de données, en passant par les machines point de vente, les caisses enregistreuses et les machines de bureau. Ces machines sont généralement construites autour d'un processeur central qui permet de gérer un certain nombre de périphériques tels que des imprimantes, des lecteurs de badges, des affichages, des claviers ou des organes divers commandés à partir d'un processeur central. En général ces machines sont prévues pour remplir un certain nombre de fonctions demandées par une application particulière mettant en oeuvre les différents périphériques suivant des procédures spécifiques. Leurs possibilités sont très limitées, - soit parce qu'il n'existe pas d'interface vers le milieu extérieur capable de supporter d'autres périphériques - soit parce que l'interface prévue limite le nombre et la puissance des périphériques - soit encore parce que le processeur central n'est pas pourvu des moyens de dialogue programmés ou non On désigne ici par interface l'ensemble des moyens formant la frontière entre deux systèmes, organes, machines, etc, permettant leur mise en communication directe. Lorsque les interfaces existent sur ces machines déja relativement conséquentes, ces interfaces peuvent être de deux types ~ le premier correspond a l'émission et la réception des données et des ordres en parallele, le plus souvent sur un octet accompagné d'un certain nombre de signaux de service appelés signaux de "Handshaking" dans la littérature anglo-saxone. Ces signaux de service permettent au récepteur et c# l t émetteur de dialoguer successivement avec l'interface. Pour l'émetteur, il s'agit d'avertir le récepteur et de s'assurer que les signaux sont effectivement transmis et bien reçus, pour le récepteur, c'est la prise en compte des informations émises par l'émetteur avec fourniture d'un compte rendu ou d'un acquittement. Le second type d'interface très répandu consiste à émettre et recevoir des données en série de façon a diminuer le nombre de connexions au prix d'une perte de vitesse par rapport à l'interface parallèle. C'est naturellement vers ce type d'interface que le choix se porte lorsque le cablage ou le nombre de liaisons doit être limité, notamment dans la réalisation des petites machines de traitement de l'information. Cependant, la plupart des interfaces "série"~nécessitent au moins deux liaisons, respectivement pour transmettre et recevoir les donnees, ainsi que deux autres pour les signaux de service. Un autre inconvenient majeur réside dans le fait que l'organe de commande ne peut s'adresser qu'à un seul périphérique sur cette interface, ce qui multiplie ceux-ci lorsque la configuration s'enrichit ou conduit a des modifications importantes si l'on veut étendre les fonctionnalités pour s'adapter a un problème nouveau. Le but de la présente invention est d'obtenir une interface unique sérialisée présentant un nombre de liaisons minimum et permettant de connecter un grand nombre de périphériques sans aucune modification de matériel. En général, l'architecture utilisée est réalisée à l'aide de microprocesseurs spécialisés dans l'exécution de tâches particulières et reliés entre eux par cette interface unique et multipoint. L'invention présente notamment les avantages suivants - le nombre de liaisons est minimal entre les processeurs - l'adaptation ou l'extension des fonctionnalités est facilitée par simple adjonction sur l'interface des éléments additifs sans modification du matériel existant Elle permet la constitution rapide et aisée de machines å la demande remplissant des fonctions spécifiques par assemblage d'éléments modulaires mis au point indépendamment les uns des autres et la décentralisation des fonctions au niveau d'unités secondaires possédant leurs propres moyens de traitement Elle rend l'interface indépendante du type de microprocesseur choisi et facilite la réparation et la maintenance, par échange du sous-ensemble défaillant. On comprendra mieux l'objet de l'invention par la description faite au regard des dessins qui va suivre La figure 1 représente l'architecture de base. La figure 2 donne le schéma physique de l'interface multipoint. La figure 3 montre les chronogrammes des signaux physiques échangés sur la liaison bidirectionnelle de l'interface. Les figures 4A et 4B montrent les chronogrammes des informations logiques transitant sur l'interface multipoint. La figure 5 représente un organe émetteur ou récepteur utilisé pour la mise en oeuvre de la présente invention. La figure 6 représente le diagramme des temps correspondant a la transmission d'un message d'un octet selon l'invention. La figure 7 représente les circuits nécessaires â la transmission bidirectionnelle des messages selon l'invention. La figure 8 est une représentation des circuits de commande de la figure 5. La figure 9 est une représentation des registres de travail du microprocesseur 8Q80 commercialisé par la société INTEL et utilisé dans la mise en oeuvre des émetteurs récepteurs de l'invention. La figure 10 est un organigramme correspondant au fonctionnement du microprogramme d'émission des informations sur la ligne de transmission. La figure 11 est un organigramme correspondant au programme permettant le test de l'état de la ligne de transmission entre deux émissions. Les figures 12 et 13 sont des organigrammes correspondants aux programmes de lecture des informations transmises par l'émetteur et reçues par le récepteur. La figure 14 montre un exemple de réalisation d'une caisse enregistreuse a l'aide du dispositif selon l'invention. Dans la suite de la description on désignera par Interface Serie Asynchrone Multipoint (I S A M) le dispositif de l'invention. Sur la figure 1 on distingue à un instant déterminé du fonctionnement de l'ensemble - une unité principale (U P) commandée par un microprocesseur et qui se comporte en maître vis à vis des unités secondaires réparties le long de l'I S A M d'une façon banalisée. - des unités secondaires (U S) connectées- à l'I S A M dans un ordre quelconque qui reçoivent et exécutent les ordres émis par l'U P. Les unités secondaires ont une structure équivalente à 1'U P et possèdent par conséquent des moyens de traitement de l'information ainsi que des interfaces spécialisées vers les périphériques qu'ils supportent ; - les unités peuvent supporter chacune, un ou plusieurs périphériques, suivant leur puissance et l'importance de la gestion de chacun des périphériques ; - un autre instant, il est possible qu'une U S devienne U P, dans ce cas l'U P précédente devient U S, pour cela une procédure de basculement des priorités est implantée dans les deux unités concernées. La généralité n'est en aucun cas affectée en considérant donc que l'U P est unique et assure le déroulement des fonctions globales de la machine ou du système considéré, tandis que les U S sont spécialisées dans la gestion des périphériques ou de tâches particulières dont elles déchargent l'U P. Cette dernière caractéristique est très importance car elle permet de réduire considérablement le matérial nécessaire à la réalisation des machines, notamment au niveau de l'U P qui voit ainsi sa taille mémoire limitée au traitement de l'application au plus haut niveau. La figure 2 décrit l'interface physique entre une U P et plusieurs U S. Cette interface est limitée à 3 liaisons - la liaison principale (l) supporte les informations en série de façon asynchrone et bidirectionnelle c'est-à-dire assurant les échanges entre U P et U S et réciproquement entre U S et U P - la liaison (2) est une liaison unidirectionnelle de l'U P vers les U S pour signaler à ces dernières qu'une activation est demandée par l'U P.Tant que cette liaison est active, les U S ne peuvent que répondre a l'U P en se mettant en état de réception - la liaison (3) est une liaison par laquelle les U S peuvent interrompre ou acquitter 1'U P soit pour indiquer une reconnaissance d'adresse, soit pour donner les résultats des travaux exécutés à la demande préalable de 1'U P. La figure 3 donne le chronogramme spécifique a la ligne principale de l'I S A M. Les informations transitent dans les deux sens sous la forme d'octets bs digits binaires). Chaque octet est précédé d'un bit START (1) suivi des informations (octet). L'émission des octets d'informations est suivi par un retour de la ligne a l'état permanent de repos. Ceci implique donc que chaque unité détecte le niveau permanent de la ligne avant et après chaque octet de façon a contrôler l'état de repos. Pour cela, il suffit que la porte d'entrée sortie utilisée pour générer et détecter ce signal puisse être lue directement par le processeur de chaque unité. Les figures 4A et 4B donnent les chronogrammes des signaux logiques échangés sur í XI S A M respectivement entre 1'U P et les U S et entre une U S et l'U P. Nous examinerons ci-après successivement ces deux éventualités : sur la figure 4A l'U P active la liaison (2) et envoie sur (1) l'octet d'adresse de l'U S demandée. Toutes les U S au repos reçoivent l'adresse et la comparent à leur propre adresse. L'U S qui reconnaît son adresse acquite la demande en activant la ligne (3) et les autres U S attendront que 1'I S A M devienne libre pour se remettre à l'écoute. L'U P ayant reçu l'acquittement de l'U S émet alors son message (ordres et données) ainsi qu'un ou plusieurs octets de contrôle servant à détecter ou corriger les erreurs sur la ligne. Ces octets de contrôle peuvent être constitués par des parités longitudinales permettant de détecter des erreurs, ou mieux, par des codes de redondance cycliques fondés sur les propriétés des polynomes à coëfficients pris sur le corps de Galois de façon à pouvoir détecter et corriger les erreurs sur l'I S A M. Après réception du (ou des) octets de contrôle 1'U S désactive la liaison (3) avant d'effectuer le travail demandé. La figure 4B illustre les échanges d'une U S vers l'U P. Lorsqu'une U S a terminé le travail demandé par 1'U P, elle avertit cette dernière- par une interruption générée sur la liaison (3). Dans ce but elle s'assure au préalable que l'I S A M est libre en testant la liaison (1) et active la liaison (3). Pour 1'U S la phase suivante constitue une attente de libération de l'U P. Lorsque l'U P sera arrivée à un point interruptible, la demande de l'U S est prise en compte. L'U P active la liaison (2) et émet sur la liaison (1) un préambule d'interrogation (4) (ordre du type "Qui êtes vous ?"). Dans le cas où une seule U S a fait une demande, cette dernière désactive la liaison (3). L'U P interroge alors chaque U S susceptible d'avoir terminé une tâche. Lorsqu'une U S a reconnu son adresse, elle active la liaison (3) pour signifier qu'elle est prête à transférer des informations suivant la procédure déjà écrite. Lorsque l'U P a reçu un acquittement elle se prépare à recevoir les informations de l'U S concernée. Ces informations sont reçues tant que la liaison (3) n'est pas revenue au repos. Dans le cas où plusieurs U S ont fait une demande en raison du délai de vérification de libération de l'I S A M, toutes les U S désactivent la liaison (3) et attendent la suite de la séquence. Si un conflit se produit entre une demande de 1'U P et l'activation d'un U S, cette dernière ne reconnaît pas son adresse, se désactive et attend la libération de 1'I S A M pour refaire sa demande. La figure 5 représente le dispositif d'émission et de réception utilisé dans chacune des unités. Il comprend au moins un microprocesseur 51, associé à un dispositif de commande des entrées-sorties des informations entrantes ou sortantes de l'unité, constitué par un dispositif de mémorisation 52, un dispositif de verrouillage 53, un compteur de temps 54, un registre d'états C/S 55, un organe 'de commande 56, une mémoire PROM 57 bis et un circuit 57 de transmission et réception des données connectées au conducteur de données 11. Le microprocesseur 51 peut être un microprocesseur du type 8080 ou 8085 commercialisé par la so ciété INTEL.Ce microprocesseur peut être connecté a des éléments autres que ceux représentés sur la figure 5 par les lignes d'adresse 48-15 et de données ADo~7. Les 8 lignes de données AD0#7 sont reliées à l'entrée d'un registre de verrouillage 53 pour adresser la mémoire à accès aléatoire RAM2. Cette mémoire RAM2 peut avoir une capacité de 2 K bits organisée en 256 X 8 bits. Elle contient un registre R7 pour mémoriser l'octet transféré au travers de la porte P57 et un registre R8 pour mémoriser le bit de parité correspondant a l'octet transféré. Le registre 53 sélectionne aussi, par l'état de ses sorties, l'organe de commande 56. L'organe de commande 56 assure la commande du circuit 57 de transmission réception des données pour différentes configuration binaires mémorisées dans le registre 53 et dont les détails seront donnés ci-apres, il sélectionne le registre d'état 55 lorsque la configuration binaire dans le registre 53 est XXXXOOOO et enfin il sélectionne le compteur de temps 57 lorsque la configuration binaire dans le registre 53 est XXXX0100. Le compteur de temps 54 a ses entrées parallèlement reliées aux lignes de données AD0#7 de façon à pouvoir être chargé à tout moment par le microprocesseur à une valeur de temps initiale. Le registre d'état C/S 55 est lui aussi relié aux lignes AD0#7 pour lui permettre de mémoriser un ordre envoyé par le microprocesseur. C'est un registre à 8 bascules dont les états permettent la sélection soit du circuit d'entrée/sortie PA7 ou du compteur de temps CT4. La ligne ALE connecte le microprocesseur au registre 53 et transporte le signal de verrouillage du registre 53 pour autoriser ou non l'adressage de la mémoire RAM2 et de l'organe de commande 56. La ligne IO/M sélectionne soit la mémoire RAM2, soit le circuit 57 d'entrée/sortie. Les lignes RD et WR commandent les opérations de lecture/écriture et sont reliées aux circuits de commandes appropriés de la mémoire RAM2 et du circuit 57. Le microprocesseur-est synchronisé par une horloge Q qui peut être un ##-artz, il transmet des signaux d'horloge sur la ligne CLK à l'entrée IN du compteur de temps CT4. La ligne RESET out est reliée a l'entrée du circuit 57 et permet d'initialiser le système en mode d!entree/sortie. La sortie du compteur de temps CT54 est reliée a l'entrée IIT du microprocesseur 51 pour délivrer un signal d'interruption du traitement qui est en cours lorsque la valeur du compte initialement chargée a l'intérieur du compteur de temps CT4 est épuisée. Le microprocesseur 51 est également relié par ses lignes de données et d'adresse à une mémoire morte 57bis dans laquelle figurent inscrits les microprogrammes nécessaires à la transmission et à la réception des données par l'unite. La figure 6 représente l'évolution dans le temps d'un message transmis sur le conducteur 11. La transmission d'un message comportant 8 octets s'effectue sur 10 moments. Le premier moment est utilisé à transmettre le signal de début de message ou signal START, les moments 2 à 9 sont utilisés pour la transmission du message proprement dit, et le 10ème moment peut transmettre le bit de parité du message. Le récepteur reçoit les signaux transmis dans ces 10 moments, pour effectuer un contrôle de parité et mémorise le résultat. Lorsque tous les octets d'informations sont reçus l'octet de contrôle est mis en oeuvre pour détecter les erreurs éventuelles. L'U S concernée peut ensuite donner un code 'erreur de transmission dans sa réponse. Les 8 bits d'information constituant un octet sont transférés en série sur le conducteur ll et sont rangés successivement dans le registre R7 de la mémoire RAM2. Ce transfert s'effectue par lecture successive de la porte PA57, transfert successif dans le registre accumulateur du microprocesseur récepteur et transfert après alignement du registre accumulateur dans le registre R7 de la mémoire RAM2. A chaque nouveau bit transféré un bit de parité est calculé en tenant compte de la parité des bits déjà reçus, le résultat du calcul est consigné dans le registre R8 de la mémoire RAM2. Le bit de fin de message qui sert aussi de bit de parité pour le message transmis est comparé au bit de parité calculé et mémorisé dans le registre R8, s'il y a égalité de valeur entre les deux bits la transmission sera reconnue comme correcte, sinon, cette anomalie sera signalée à l'émetteur par émission au niveau du récepteur du signal ER. La figure 7 est une représentation du circuit PA57 de la figure 5. Ce circuit se compose des amplificateurs trois états 708 et 709 munis de leurs portes de commande 710 et 711. La sortie de l'amplificateur 708 est reliée à l'entrée de l'amplificateur 709, ces deux amplificateurs sont connectés au conducteur 11 de façon à pouvoir utiliser l'amplificateur 708 pour transmettre les données (1/01), sur le conducteur 11 et l'amplificateur 709 pour recevoir les données (I/O), transmises sur le conducteur 11. La porte 711 commande l'amplificateur 708 lorsqu'elle est sélectionnée par la combinaison XXXX0001 reçue par l'organe de commande 56, par la ligne I0/M, et lorsqu'il s'agit d'un ordre d'écriture WR transmis par le microprocesseur 51. De même, la porte 710 commande l'amplificateur 709 lorsqu'elle est sélectionnée, par la combinaison XXXX0001, la ligne IO/M, et cette fois lorsqu'il s'agit d'un ordre de lecture RD transmis par le microprocesseur 51. Les amplificateurs 708 et 709 peuvent être initialisés par le signal RESET. La liaison 12 est reliée à la sortie Q du basculeur JK 701. Les entrées J et K de ce basculeur sont commandées par le circuit de commande 56.Il est placé, dans l'état 1 logique lorsque la combinaison XXXX0010 est appliquée à l'entrée du circuit de commande 56 et il est placé dans l'état 0 pour la combinaison XXXX00ll appliquée à ce même circuit de commande. La liaison 13 est appliquée à l'entrée de l'amplificateur 3 états 704 dont la sortie est reliée à la ligne de donnée I03 du microprocesseur 51. La deuxième entrée de l'amplificateur trois états 704 est commandée par le circuit de commande 56 pour la combinaison binaire XXXX0l0l cette combinaison est appliquée par le microprocesseur 51 à l'entrée du circuit de commande 56 pour tester l'état de la ligne 13. La liaison 13 est aussi reliée à la sortie de l'amplificateur trois états 706 dont l'entrée est reliée à la sortie Q du basculeur 707.Le basculeur 707 a ses entrées J et K commandées par le circuit de commande 56 et prend l'état 1 logique lorsque la combinaison XXXX0ll0 est appliquée à l'entrée du circuit de commande~56, et il est placé dans l'état 0 pour la combinaison XXXX0lll appliquée à ce même circuit de commande. Le circuit de commande est représenté à la figure 8. Il s'agit d'un simple circuit de décodage des combinaisons binaires formées par les 4 bits de parité les plus faibles du registre 53. Les circuits 801, 809, 810, 811 et 809bis décodent la combinaison XXXX0000 pour appliquer par la sortie de la porte et 801 le signal de commande C/S au registre d'état 55. Les circuits 802, 812, 813 et 809bis décodent la combinaison XXXX0001 pour appliquer par la sortie de la porte et 802 le signal de commande PA(l1) aux circuits 710 et 711 du circuit d'entrée-sortie PA(57).Les circuits 803, 814, 815 et 809bis décodent la combinaison XXXX0010 et appliquent le signal de commande (12=1) au basculeur 701 du circuit Pu57. Les circuits 804, 816 et 809bis décodent la combinaison XXXX0011 et appliquent- le signal de commande (12=0) au basculeur 701 du circuit PA57. Les circuits 805, 817, 818 et 809bis décodent la combinaison XXXX0100 et appliquent le signal CT pour commander le compteur de temps CT 54. Les circuits 806, 819 et 809bis décodent la combinaison xxxxolol et appliquent le signal "Test 13" à l'entrée de la porte 705 du circuit PA 57.Les circuits 807, 820 et 809bis décodent la combinaison XXXX0110 et appliquent le signal (13=1) à l'entrée de la porte 713 du circuit PA57 pour commander la mise à 1 logique du basculeur 707. Les circuits 808 et 809bis décodent la combinaison XXXX0lll et appliquent le signal (13=0) à l'entrée de la porte 712 du basculeur 707 pour commander sa mise à 0. Les circuits 808bis, 821, 822 et 823 décodent la combinaison XXXX1000 et appliquent le signal Test 12 à l'entrée de l'amplificateur 714 pour tester l'état de la ligne 12. La figure 9 donne une représentation des registres de travail contenus dans un microprocesseur du type 8080 ou 8085. Le registre A correspond à l'accumulateur. Les registres B, C, D, E sont des registres de travail et sont spécialisés pour recevoir des données. Les registres H et L sont des registres d'adresse. Le registre SP contient l'adresse d'un registre de pile et est utilisé lors des interruptions de traitement pour pointer vers l'adresse d'une pile en mémoire pour sauver le contenu de certains registres du microprocesseur ou pour reprendre des traitements interrompus. Le registre PC est le compteur de programme et permet dans l'exécution d'un programme le passage à l'instruction suivante. Le registre I est un registre d'index qui permet l'adressage de données par indexation. Les détails relatifs à la fonctionnalité de ces registres sont donnés dans le livre intitulé "les microprocesseurs" de Pierre Le Beux et Rodnay Zaks édité par la Société d'édition Sybex - 313 rue Leçourbe 75015 PARIS - C 1977. L'organigramme de la figure 10 représente les différentes étapes nécessaires au déroulement du microprogramme exécuté par le microprocesseur d'une unité émettrice pour l'émission d'un octet. A l'étape 101 le microprocesseur émetteur de cette unité positionne la ligne Il de liaison à l'état 0 logique et charge le compteur de temps à la valeur du temps nécessaire pour l'émission du signal START et de l'octet qui suit de la façon représentée sur la figure 6. La fin de l'émission émiss du signal START provoque une interruption du microprocesseur 51. L'octet à transférer, contenu dans le registre R7 de la mémoire RAM2, est alors chargé dans le registre accumulateur A du microprocesseur 51 pour tester la valeur du premier bit étape 102).La porte Pu 57 transmet la valeur correspondante du premier bit lu dans le registre R7 et sur le conducteur li aux etapes 103 et 104. A l'étape 105 le bit de parité correspondant au message à transmettre est calculé et transmis dans une position de bit du registre R8 de la mémoire RAM2. A l'étape 108 le contenu du registre R7 est décalé d'une position binaire vers la gauche. Ce processus se reproduit à chaque signal d'interruption délivré- par le compteur de temps, il se termine lorsque tous les bits de l'octet ont été successivement transférés. L'étape 107 consiste à vérifier que tous les bits ont été transférés. A étape 109 le bit de parité mémorisé dans le registre R8 est à son tour transféré. Le récepteur peut alors comparer la parité des bits de l'octet reçu, au bit de parité qu'il a également reçu. S'il y a colncidence le cycle de transmission s'achève (étape 112). S'il n'y a pas coïncidence, le récepteur signale à l'émetteur qu'il y a erreur (signal ER figure 3) et un nouveau cycle de transmission est exécuté a partir de l'étape 101. La figure 11 est un organigramme montrant les opérations effectuées par le récepteur lorsqu'il est en attente d'un message en provenance de l'émetteur. Ces tests se font par lectures répétées de l'état de la ligne de transmission 11. A l'étape 114, la porte PA 57 est lue de façon répétée tant que l'état de la ligne 11 est à 0. Lorsque l'état de la ligne devient 1 (étape 115) le compteur CT 54 est chargé à une valeur de temps prédéterminée (étape 116) de façon à occasionner une interruption du traitement du microprocesseur et provoquer une lecture de l'état de la porte PA 57 lorsque cette valeur de temps est épuisée. Ce test a lieu à l'étape 122.Si à cette étape, l'état de la porte est à 1, le récepteur se met en attente du signal START, par contre, si l'état de la porte est à 0 il faut en conclure que le test effectué à l'étape 115 a eu lieu sur une grandeur erronée par exemple un parasite, le récepteur retourne alors à l'étape 114. La figure 12 est une représentation de la séquence de réception du signal START. A l'étape 125 le récepteur lit l'état de la porte PA 57. Le compteur de temps CT 54 est chargé à une valeur de temps prédéterminée N2 dès que l'état du conducteur 11 prend la valeur 0. Cette valeur de temps est décrémentée à l'étape 129 au rythme de l'horloge interne du microprocesseur jusqu'# atteindre la valeur 0 (étape 130). Le passage à zéro du compteur CT provoque une interruption du microprocesseur qui effectue alors une opération de lecture de la porte -PA7, si à cet instant de la séquence le conducteur 11 présente toujours la valeur 0, il y a confirmation qu'il s'agit bien d'un signal START et non d'un parasite, la lecture de l'octet (étape 134) pourra alors s'effectuer. La figure 13 est une représentation de la séquence de lecture d'un octet. Le compteur de temps CT 54 est chargé à une valeur de temps correspondant au temps nécessaire à la lecture des 8 bits transmis. Si la durée d'un bit est de lms, la valeur du temps de transmission chargée dans le compteur CT 54 est de 8ms. Chaque transfert d'un bit provoque une interruption du microprocesseur récepteur (étape 136) pour l'autoriser à mémoriser dans le registre R7 le bit lu sur la porte PA7, effectuer un calcul de parité sur les bits déjà reçus avec celui qui vient d'être reçu et charger le résultat de calcul de la parité dans le registre R8 (étape 137). Lorsqu'un octet a été transféré dans le registre R7, le compteur CT4 prend l'état 0 en même temps qu'est reçu le bit de parité transmis par l'émetteur. Une comparaison a alors lieu entre# le bit transféré par l'émetteur et le bit précédemment calculé et mémorisé dans le registre R8 du récepteur (étape 140). S'il y a correspondance entre les 2 bits de parité, la transmission s'est effectuée sans erreur et est considérée comme terminée, par contre s'il y a une différence d'état entre les 2 bits de parité, il y a erreur de transmission, cette erreur est signalée à l'émetteur en forçant à l'état 0 le conducteur 11 (étape 142) et la séquence de test de l'état de la porte PA 57 est reprise (étape 113). Le système de scrutation de l'état du conducteur 11 et de délivrance des signaux d'interruption permet la synchronisation de l'envoi des messages à l'émission sur le fonctionnement de la station qui reçoit. On réalise ainsi un double niveau d'asynchronisme qui est : indépendant des fonctions traitées au niveau de chaque station, car en dehors des périodes d'interruption, les-stations peuvent se livrer à l'exécution d'autres tâches complètement indépendantes les unes des autres, et indépendant des programmes du récepteur puisque les interruptions peuvent être produits à tout instant. Les séquences qui viennent d'être décrites pourront être réalisées à l'aide de la liste des instructions suivantes inscrite dans la mémoire PROM7bis de la figure 2 en utilisant les instructions du microprocesseur INTEL 8080. EMISSION Instructions Commentaires 100 OUT PA Porte A (----0 101 LHLD 102 NOVA,M (Initialisation du compteur CT4) 103 MOV CT,A CT ±--- A 104 LHLD 105 MOV B,M B (----0 INT (Interruption comp teur de temps) 106 LDA A ---- 8 107 SBB B 108 JZ NEXT (113) 109 LDA A ----R7 10A OUT porte A 10B MOV C,A C ±---A 10C ANA Masque 1 000 000 10D XRA,N Calcul de parité A 10E LHLD A0 R8 + A0 10F MOV M,A parité dans R8 110 MOV A,C A ±--- R7 111 RLC décalage R7 112 MOV M, A R7 --A 113 LDA A f---- R8 114 OUT porte A 115 NOP 116 IN porte A 117 CPI Si 1 = Erreur 118 JNC NEXT (100) 119 RET Fin Test Porte llA IN Porte A A0 Etat de PA7 11B CMP M Comparer Ao à 1 faire S=1 dans PSW si # 11C RM NEXT=(llA) si 5=1 retour en IIA llD LHLD Charger H, L avec le contenu de la mémoire trouvé aux adresses qq et PP. A N IIE MOV CT,A CT ---- N 11F RET START 121 IN Porte A 122 CMP M Faire S ±- 1 dans PSW si # 123 RM NEXT (121) Retour en 121 si 5=1 124 LHLD 125 MOV A,M 126 MOV CT,A 127 RET INT.START 128 PUSH PSW Sauver A et PSW 129 IN PORTE A 12A CMP M Faire Z=0 de PSW Si porte = 0 12B RM NEXT (128) si Z=1 retour en 128 12C CNZ Lecture Octet LECTURE OCTET 12D LHLD 12E MOV A,M 12F MOV CT, A 130 LX1 B B ---- 0 131 RET INT 132 LHLD 133 MOV A, M 134 RLC 135 MOV D, A 136 IN Porte A 137 MOV E,A 138 LHLD Adressage de R8 139 XRA Parité dans A 13A MOV M,A Parité dans R8 13B MOV AE 13C ORA D 13D LHLD Adressage de R7 13E MOV M,A R7 f---- A 13F INX B 140 LDA A s 8 141 SBB B 142 JP Z f---- 1 de PSW sur =0 143 RET 144 MOV A,E 145 LHLD Adressage de R8 146 CMP M 147 JZ NEXT (149) Faire Z=1 de PSW s'il y a égalité 148 Fin 149 OUT porte A 150 CALL test porte La transmission d'un message comprenant plusieurs octets s'effectue en répétant autant de fois les opérations précédentes qu'il y a d'octets dans le message. Pour l'émission le microprocesseur émetteur positionne en début d'émission la ligne 12 à l'état 1 logique par action sur le basculeur 701 et il maintient la ligne 12 à 1 jusqu'à la fin de l'émission. L'accusé de réception est fourni au microprocesseur émetteur par l'état de la ligne 13 qui doit prendre l'état 1 logique. La lecture de l'état de la ligne 13 est effectuée par le microprocesseur par lecture de l'état de l'amplificateur 704. A la réception, le microprocesseur récepteur teste l'état de la ligne 12 à l'aide de l'amplificateur 714 et envoie un accusé de réception en positionnant la ligne 13 à l'état 1 par action sur le basculeur 707. Le signal 13 est remis à zéro soit après un préambule d'interrogation soit après que l'unité réceptrice ait reçu les signaux de contrôle. La figure 14 donne un exemple de réalisation pratique d'une machine dont l'architecture est conçue autour d'un I S A M. S'il s'agit d'une caisse enregistteuse ordinaire. La première U S (1) assure la gestion du clavier et de l'affichage. Dans ce but, il suffît que 1'U P demande à cette U S d'une façon globale - afficher les informations suivantes - écouter le clavier. En fonction des touches sélectionnées par l'opérateur l'U P donne des ordres aux différentes U S non sans avoir préalablement fait les contrôles et les calculs classiques. La deuxième U S (2) assure la gestion de l'imprimante destinée à délivrer le ticket et imprimer le journal de fond. La troisième U S (3 > peut être optionnelle et gère une ligne de télécommunication transformant ainsi très simplement cette caisse en terminal point de vente. On voit ici la souplesse apportée par 1'I S A M ainsi que la facilité de câblage apportée par le faible nombre de liaisons. Une quatrième U S (4) peut être connectée, soit à l'intérieur de la caisse enregistreuse, soit à l'extérieur pour des questions d'encombrement. Cette quatrième U S peut être dédiée à un lecteur de badge ou tout autre périphérique donnant à la caisse enregistreuse des fonctionnalités complémentaires. Il va de soit que toutes ces extensions supposent que le programme de 1'U P les supporte, ce qui ne pose aucun problème particulier hormis la taille mémoire associée. L'exemple qui vient d'être donné d'une réalisation préférée de l'invention n'est nullement limitatif, il va de soit que tout homme de l'art bien au fait des techniques de traitement de l'information pourra concevoir d'autres modes de réalisation de l'invention sans pour autant sortir de son cadre. REVENDICATIONS 1. Dispositif pour la transmission de signaux asynchrones entre plusieurs unités d'un système de traitement de l'information, chaque unité étant pourvue de moyens de traitement, de moyens d'émission et de réception des informations échangées avec les autres unités, caractérisé en ce qu'il comprend dans chaque unité des moyens pour établir sur une même ligne de transmission la connection des dites unités entre elles, les dits moyens de connection comprenant des moyens de dialogue bidirectionnels pour transmettre l'information entre les unités par variation de l'amplitude d'un seul et même signal associés à un moyen d'émission d'un signal d'activation de la ligne de transmission lorsque l'unité se place en mode d'émission et à un moyen d'émission d'un signal d'acquittement lorsque l'unité est en mode de réception. 2. Dispositif selon la revendication 1 caractérisé en ce que les moyens de traitement de chaque unité sont constitués par des microprocesseurs monolithiques. 3. Dispositif selon la revendication 1 caractérisé en ce que chaque unité peut indifféremment prendre le rôle d'unité principale ou d'unité secondaire dans le système. 4. Dispositif selon les revendications 1 et 3 caractérisé en ce que l'une des liaisons de l'interface transmet une demande de l'unité principale vers les unités secondaires lorsqu'elle est activée par ledit moyen d'activation. 5. Dispositif selon les revendications 1 et 3 caractérisé en ce que l'une des liaisons de l'interface transmet une réponse des unités secondaires vers l'unité principale lorsqu'elle est activée par ledit moyen d'émission du signal d'acquittement. 6. Dispositif selon l'une quelconque des revendications 1, 2, 4 et 5 caractérisé en ce que la commande d'activation est transmise sur une seule liaison reliant l'unité émettrice aux unités réceptrices par la variation de l'amplitude d'un seul et même signal. 7. Dispositif selon l'une quelconque des revendications 1, 2, 4 et 5 caractérisé en ce que la commande d'acquittement est transmise sur une seule liaison reliant l'unité réceptrice aux autres unités par la variation de l'amplitude d'un seul et même signal. 8. Dispositif selon la revendication 1 caractérisé en ce que chaque unité secondaire possède des moyens de reconnaissance d'adresse. 9. Dispositif selon la revendication 7 caractérisé en ce que chaque unité secondaire possède des moyens de détection et de commande du niveau permanent de la liaison de réponse vers l'unité principale. 10. Dispositif selon la revendication 1 caractérisé en ce que l'unité principale possède des moyens de détection et de commande du niveau permanent de la liaison de demande vers les unités secondaires. 11. Dispositif selon la revendication 1 caractérisé en ce que chaque unité secondaire possède des moyens de reconnaissance et d'exécution des ordres envoyés par l'unité principale vers la liaison bidirectionnelle. 12. Dispositif selon la revendication 1 caractérisé en ce que l'unité principale possède des moyens d'interrogation de chaque unité secondaire. 13. Dispositif selon la revendication 1 caractérisé en ce que les informations envoyées sous la forme de trains asynchrones de digits binaires précédés d'un digit de départ et suivi d'un niveau permanent correspondant au niveau de repos de la liaison. 14. Dispositif selon la revendication 12 caractérisé en ce que gunite principale possède des moyens de synchronisation des trains de digits binaires asynchrones.