Brevet FR2787603A1 — publié le 20000623

CARTE D'ENTRÉE-SORTIE DE DONNTÉES INFORMATIQUES La présente invention concerne le domaine des échanges de signaux de données entre une unité centrale informatique et des périphériques. L'invention concerne plus particulièrement les accès à un bus de données d'un processeur d'une carte informati- que, par exemple, d'une carte d'entrée-sortie d'un périphérique associé à une unité centrale. Dans tout système informatique, on utilise des protoco- les particuliers pour échanger des données entre une unité cen- trale et les différents périphériques. Le plus souvent, ces pro- tocoles d'échange ou de transmission de données sont normalisés de manière à rendre les périphériques et les unités centrales les plus versatiles possibles. Parmi les protocoles d'échanges de données classiques, la présente invention concerne plus particulièrement celui connu sous la dénomination commerciale USB (Universal Serial Bus) cor- respondant à la norme USB 1.0. Ce protocole de communication est de plus en plus souvent utilisé car il présente l'avantage de ne pas être lié au périphérique. Les particularités de ce protocole USB sont l'utilisation d'un bus ayant un maître et au moins un esclave, le fait que le bus est bidirectionnel et le fait que les données sont codées selon le codage NRZI, dit sans retour à zéro inverse. Tout équipement informatique, qu'il s'agisse d'une unité centrale ou d'un périphérique, qui souhaite être compatible avec le protocole USB doit posséder un accès (ou port) à ce bus série universel. Cet accès se présente, comme pour tous les autres protocoles, sous la forme d'un connecteur accessible depuis l'exté- rieur de l'équipement. La plupart du temps, les accès correspon- dants aux différents bus véhiculant des signaux selon différents protocoles sont différenciés les uns des autres par l'utilisation de connecteurs différents. Ainsi, chaque protocole de communication se caractérise par le nombre de conducteurs utilisé pour le bus et par le type de signaux véhiculés par ces conducteurs. Pour le protocole USB 1.0, deux conducteurs véhiculent les données sous forme dif- férentielle. Ces conducteurs sont généralement désignés par Data+ et Data-. Le protocole USB 1.0 utilise également un ou deux conducteurs dits d'alimentation. Un premier conducteur est un conducteur de masse pour équilibrer les niveaux de potentiels de référence entre l'unité centrale et le périphérique. Un deuxième conducteur, utilisé le cas échéant, est un conducteur fournissant un potentiel positif d'alimentation au périphérique. La plupart des unités centrales récentes et, en parti- culier, la quasi-totalité des cartes mères pour unités centrales de micro-ordinateurs, possède au moins un port USB. Il en découle que les cartes d'entrée-sortie des périphériques doivent prévoir également un port USB pour pouvoir s'adapter aux dernières évolu- tions technologiques de ces micro-ordinateurs. Toutefois, le parc informatique existant et la plupart des micro-ordinateurs porta- bles y compris récents, sont dépourvus de ports USB et utilisent des protocoles de communication plus anciens. Parmi ces protoco- les plus anciens, on signalera les protocoles dits RS232, I2C, ou PS2. Ces protocoles sont normalisés et sont donc, comme le proto- cole USB, parfaitement définis sans qu'il soit nécessaire de les détailler ici plus avant. La coexistence de systèmes informatiques utilisant des protocoles de communication différents conduit à prévoir des périphériques capables d'interpréter ces protocoles différents. Pour ce faire, on est classiquement contraint de prévoir, côté périphérique, un accès, donc un connecteur, par protocole reconnu. La figure 1 illustre, de façon très schématique, cette contrainte et représente un exemple de carte d'entrée-sortie 1 d'un périphérique destiné à être associé à une carte 2 d'entrée- sortie d'une unité centrale, voire d'un autre périphérique. La carte d'entrée-sortie du périphérique 1 est conçue pour être capable d'échanger des données selon, par exemple, le protocole USB et le protocole RS232. Par conséquent, cette carte comprend un premier connecteur 3 constituant un port d'accès USB à un bus 4 relié à un processeur 5 de traitement de la carte d'entrée- sortie. La carte 1 comporte également un deuxième connecteur 6 constituant un accès à un bus 7 de données échangées selon le protocole RS232 et relié au circuit 5. Côté unité centrale 2, deux cas de figures peuvent se présenter. Soit le processeur 8 de cette unité envoie des données selon le protocole USB sur un bus 9 à destination d'un accès 10, soit le processeur 8 envoie les données selon le protocole RS232 sur un bus 11 à destination d'un port 12. Le bus 11 et le port 12 RS232 ont été représentés en pointillés car une même unité cen- trale n'enverra pas des données simultanément selon les deux pro- tocoles. Ainsi, le circuit 2 associé au bus USB est, par exemple, une unité centrale d'un micro-ordinateur de bureau tandis que le bus 11 associé au port RS232 est, par exemple, celui d'une carte d'entrée-sortie d'un micro-ordinateur portable. Selon le type d'équipement dont on dispose pour être connecté au périphérique dont la carte 1 d'entrée-sortie est celle illustrée par la figure 1, on utilise l'un ou l'autre des connecteurs 3 ou 6 pour échanger des données avec le périphé- rique. Classiquement, on attribue un type particulier (forme, taille, nombre de conducteurs) de connecteur à un protocole donné. Ainsi, les connecteurs des accès USB sont différents des connecteurs pour les accès RS232 qui sont eux-mêmes différents des connecteurs pour d'autres accès selon d'autres protocoles d'échanges de données. Une telle différentiation des accès est rendue néces- saire par le fait que les données sont échangées selon des pro- tocoles différents et incompatibles les uns avec les autres. Pour éviter les erreurs d'affectation de bus des protocoles différents les uns des autres par l'utilisateur, on prévoit donc des connec- teurs différents. La multiplication des connecteurs sur une carte d'entrée- sortie présente l'inconvénient évident d'un encombrement accru. La présente invention vise par conséquent à proposer une nouvelle solution pour réaliser les entrées-sorties d'une carte de périphérique. Une première solution envisageable serait de prévoir un système d'interface qui transformerait les signaux reçus en signaux selon le protocole USB. Dans un tel cas, la carte d'entrée-sortie du périphérique ne comprendrait que le traitement de données selon le protocole USB. Le circuit d'adaptation spéci- fique servirait alors à transformer des signaux RS232 en signaux USB. Toutefois, une telle solution présente l'inconvénient de requérir un circuit dédié à chaque protocole supplémentaire de données que l'on souhaite utiliser, ce qui est particulièrement coûteux. L'invention vise donc, plus particulièrement, à propo- ser une solution qui ne nécessite pas de circuit dédié à chaque protocole et qui soit, en particulier, intégrée dans le périphé- rique. L'invention vise, en particulier, à proposer une solu- tion qui soit compatible avec la réalisation d'une carte d'entrée-sortie pour périphérique adaptée à fonctionner avec des unités centrales de types différents. Pour atteindre ces objets, la présente invention pré- voit une carte d'entrée-sortie informatique comprenant un accès à un bus série universel, cet accès étant propre à recevoir des données selon plusieurs protocoles différents utilisant tous, deux conducteurs de données. Selon un mode de réalisation de la présente invention, la carte comprend un moyen de détection de présence d'un poten- tiel positif sur un troisième conducteur de l'accès USB. Selon un mode de réalisation de la présente invention, les deux conducteurs de données issus de l'accès USB sont reliés, chacun, à au moins deux entrées d'un processeur destiné à traiter les données. Selon un mode de réalisation de la présente invention, ledit processeur détecte le protocole selon lequel sont transmi- ses des données reçues par l'accès USB. Ces objets, caractéristiques et avantages, ainsi que d'autres de la présente invention seront exposés en détail dans la description suivante de modes de réalisation particuliers faite à titre non-limitatif en relation avec les figures jointes parmi lesquelles: la figure 1 qui a été décrite précédenmmnent est destinée à exposer l'état de la technique et le problème posé; la figure 2 représente, partiellement et de façon très schématique, un mode de réalisation d'une carte d'entrée-sortie selon l'invention, propre à être associée à deux cartes d'entrée- sortie d'unité centrale différentes; et la figure 3 représente partiellement un mode de réali- sation d'un circuit de détection automatique selon la présente invention. Les mêmes éléments ont été désignés par les mêmes réfé- rences aux différentes figures. Pour des raisons de clarté, seuls les éléments qui sont nécessaires à la compréhension de l'inven- tion ont été représentés aux figures et seront décrits par la suite. Une caractéristique de la présente invention est de prévoir, dans une carte d'entrée-sortie d'un périphérique infor- matique, le partage d'un même connecteur d'accès entre plusieurs protocoles d'échange de données ainsi qu'une discrimination auto- matique du protocole d'échange de données utilisé. Ainsi, à l'inverse de toutes les solutions préconisées dans l'art antérieur qui mettent l'accent sur une différentiation des connecteurs par protocole d'échange de données, la présente invention prévoit un connecteur indifférencié susceptible de constituer un accès pour des données échangées selon des protoco- les différents. Selon l'invention, tous ces protocoles acceptés par ce même connecteur ont une caractéristique commune qui est de comprendre deux fils de données. La figure 2 représente, de façon très schématique, un mode de réalisation d'une carte 20 d'entrée-sortie d'un périphé- rique informatique selon la présente invention. Cette carte 20 possède un processeur 25 de traitement des données et/ou d'organisation des entrées-sorties entre le périphérique et le monde extérieur. Selon la présente invention, la carte 20 possède un connecteur 23, de préférence, un connec- teur constituant un accès USB classique. Selon la présente invention, le connecteur 23 est sus- ceptible d'être relié, par l'intermédiaire d'un câble approprié (non représenté), à une unité centrale informatique 2 dont le processeur 8 est adapté à transmettre des données sur un bus série 9 vers un connecteur USB 10, ou à une unité centrale 2' dont le processeur 8' est adapté à communiquer avec un périphé- rique par l'intermédiaire d'un bus 11 véhiculant des données, par exemple, selon la norme RS232 vers un connecteur 12. Ainsi, la carte 20 d'entrée-sortie de l'invention peut au moins recevoir, sur son connecteur 23, soit des données selon le protocole USB, soit des données selon le protocole RS232. Quatre conducteurs 26, 27, 28 et 29 partent du connec- teur 23 vers l'intérieur de la carte 20. Ces quatre conducteurs correspondent au nombre maximal de conducteurs utilisés dans un protocole de communication fixé par la norme USB. Deux conduc- teurs 27 et 28 constituent les fils de données tandis qu'un conducteur 29 constitue un fil de masse permettant d'adapter les niveaux de masse entre l'unité centrale et le périphérique. Le quatrième conducteur 26 est optionnel et sert à véhiculer un potentiel positif d'alimentation éventuel. A la figure 2, le conducteur 26 est reliée à une borne V+ d'alimentation du proces- seur 25. Une caractéristique de la présente invention est que les fils de données 27 et 28 sont envoyés sur plusieurs bornes du processeur 25 correspondant aux différents protocoles de trans- mission de données susceptibles d'être traités par le périphé- rique associé à la carte 20. Ainsi, dans l'exemple représenté, les conducteurs 27 et 28 sont reliés à deux bornes D+, D- d'en- trée selon le protocole USB dans le circuit 25, à deux bornes TxD, RxD du circuit 25 destinées à des données selon le protocole RS232, et enfin à deux bornes I+, I- destinées à des données selon le protocole I2C. Bien que cela n'ait pas été représenté à la figure 2, le conducteur de masse 29 qui définit le potentiel de référence de la carte d'entrée- sortie 20 est bien entendu relié à l'entrée de masse du processeur 25. Le processeur 25 est, selon l'invention, de préférence adapté à détecter le type de protocole qu'il reçoit sur son connecteur 23. Ainsi, si le connecteur 23 est relié par une liai- son (non représentée) à l'unité centrale 2, le processeur 25 détecte une transmission selon le protocole USB et, tant qu'il ne détecte pas l'apparition d'un nouveau protocole, considère le port 23 comme un port USB. Si le connecteur 23 est connecté à l'unité centrale 2', le processeur 25 détecte l'arrivée de don- nées selon le protocole RS232 et, tant qu'il ne détecte pas un autre protocole de données, considère le port 23 comme étant un port RS232. On notera que le processeur est apte à être alimenté par la carte 20 pour être capable de traiter des transmissions selon des protocoles sans alimentation (par exemple, RS232). Selon un premier mode de réalisation, la détection du protocole est effectuée exclusivement par le processeur 25 en analysant une transmission qui lui parvient. Selon un deuxième mode de réalisation de la présente invention illustré par la figure 3, la carte 20 d'entrée-sortie est associée à un circuit 21 de détection de la présence d'un niveau positif d'alimentation sur le conducteur 26 issu du connecteur 23. Un tel mode de réalisation de la détection du protocole de transmission est particulièrement simple, en particulier, pour différencier le protocole USB des autres protocoles. En effet, que le périphérique ait, ou non, besoin d'une alimentation posi- tive, l'unité centrale délivre un potentiel positif d'alimenta- tion sur le conducteur concerné du bus universel série. Par conséquent, ce potentiel est présent sur le conducteur 26 quand le protocole USB est utilisé. Par contre, qu'il s'agisse du pro- tocole RS232, du protocole I2C, ou du protocole PS2, ces trois protocoles ne prévoient pas d'alimentation, de sorte qu'aucun potentiel n'est présent si l'unité centrale, raccordée sur le connecteur 23, transmet des données selon l'un de ces deux proto- coles. Ainsi, une simple détection de la présence d'un poten- tiel positif (par exemple, 5 V) permet à la carte d'entrée-sortie de savoir si l'unité centrale, à laquelle elle est raccordée, utilise le protocole USB ou un autre protocole. La figure 3 représente un mode de réalisation particu- lièrement simple d'un détecteur 21 de présence d'un potentiel positif sur le conducteur 26 du connecteur 23. Selon ce mode de réalisation, le processeur 25 comporte une borne V+ d'alimenta- tion. Cette borne V+ est reliée, d'une part à une source d'ali- mentation (non représentée) de la carte 20 et, d'autre part, par l'intermédiaire du circuit 21, au conducteur 26 du connecteur 23. Le conducteur 26 est par ailleurs relié directement à une entrée de détection Sense du processeur 25. Le circuit 21 est ici constitué d'une diode dont l'anode est connectée à la borne Sense 26 et dont la cathode est connectée à la borne V+. Le processeur 25 détecte la présence d'un potentiel positif sur la borne Sense. Ainsi, quand un poten- tiel positif est présent sur le conducteur 26, le processeur 25 sait qu'il s'agit d'une transmission selon le protocole USB. On notera que, dans une telle situation, la carte 20 n'a pas besoin de fournir l'alimentation au processeur 25 qui peut puiser cette alimentation, sur le conducteur 26, par l'intermédiaire de la diode 21 polarisée en direct. Dans tous les autres cas, la diode 21 empêche au courant d'alimentation provenant de la carte d'atteindre le conducteur 26, la borne Sense et le connecteur 23. On notera que, dans ce mode simplifié, il s'agit d'une simple lecture d'état (haut ou bas) sur la borne Sense fournissant directement un résultat (protocole USB ou non) parfaitement compatible avec la logique du processeur. A la figure 3, on a représenté également deux résis- tances Rl et R2 reliant, respectivement, chaque conducteur 27, 28 à une borne B du processeur 25 délivrant un potentiel positif (par exemple, le potentiel positif d'alimentation) pour "tirer" les conducteurs 27 et 28 à ce potentiel lors de transmission selon les protocoles I2C et PS2. Le cas échéant, les résistances Rl et R2 pourront être reliées directement à la borne d'alimen- tation V+. Toutefois, un avantage de prévoir une borne B spécifi- que pour la polarisation des conducteurs 27 et 28 lors des proto- coles I2C et PS2 est précisément que cela permet de limiter leur utilisation aux protocoles de transmission pour lesquels cela est requis. On notera que la carte d'entrée-sortie 20 selon l'in- vention est forcément une carte esclave, c'est-à-dire qu'elle détecte les signaux qu'elle reçoit sur les conducteurs 27 et 28 du connecteur 23. Par exemple, si elle reçoit un signal sur le conducteur 28 et non sur le conducteur 27, elle peut en déduire qu'il s'agit d'une réception selon le protocole RS232. Si, par contre, elle reçoit deux signaux de données différentiels sur les conducteurs 27 et 28, elle peut en déduire qu'il s'agit de signaux de données D+ et D- selon le protocole USB. Un avantage de la présente invention est qu'elle permet le partage d'un connecteur d'accès à un bus d'entrée-sortie d'une carte de périphérique sans risque de confusion quant au protocole de transmission de données utilisé. Un autre avantage de la présente invention est qu'en partageant un même connecteur, elle permet de minimiser la taille nécessaire à une carte d'entrée-sortie d'un périphérique suscep- tible de recevoir des données depuis des unités centrales de types différents et, en particulier, transmettant des données selon des protocoles différents. Par rapport à une interface de transformation des don- nées, la présente invention présente l'avantage de proposer une solution beaucoup plus simple, donc moins encombrante. Bien entendu, la présente invention est susceptible de diverses variantes et modifications qui apparaîtront à l'homme de l'art. En particulier, l'invention s'applique de façon plus géné- rale à tout protocole de transmission de donnés utilisant deux fils de données, un fil de masse ou de potentiel de référence, et optionnellement, un fil d'alimentation. De plus, on notera que, physiquement, le connecteur 23 n'est pas forcément du type de ceux utilisés classiquement pour le protocole USB, l'important étant qu'il dispose d'un nombre de conducteurs suffisant pour mettre en oeuvre l'invention. En outre, d'autres circuits 21 de détection du protocole USB par détection de la présence d'un potentiel positif pourront être prévus. En particulier, si le processeur 25 ne comporte pas d'accès permettant de réaliser cette détection, on pourra prévoir un circuit 21 opérant la détection indépendamment du processeur 25 et une commutation de la source d'alimentation du processeur 25 selon qu'il s'agit ou non d'un protocole USB. REVENDICATIONS 1. Carte d'entrée-sortie informatique comprenant un accès (23) à un bus série universel (USB), caractérisée en ce que cet accès est propre à recevoir des données selon plusieurs pro- tocoles différents utilisant tous, deux conducteurs de données (27, 28). 2. Carte selon la revendication 1, caractérisée en ce qu'elle comprend un moyen (21) de détection de présence d'un potentiel positif sur un troisième conducteur (26) de l'accès USB (23). 3. Carte selon la revendication 1 ou 2, caractérisée en ce que les deux conducteurs (27, 28) de données issus de l'accès USB sont reliés, chacun, à au moins deux entrées (D+, D-, TXD, RxD, I+, I-) d'un processeur (25) destiné à traiter les données. 4. Carte selon la revendication 3, caractérisée en ce que ledit processeur (25) détecte le protocole selon lequel sont transmises des données reçues par l'accès USB (23).