Brevet FR2839845A1 — publié le 20031121

COMMUTATEUR DE TYPE > CONFIGURABLE ET PROCEDES ASSOCIES CHAMP DE L' INVENTION La presente invention se rapporte d'une maniere generale a des systemes de traitement, et, de maniere plus particuliere, a un commutateur de type > pour une utilisation dans un systeme de traitement, dans lequel le commutateur de type > est configurable pour transferer une largeur de bits entre des chemins d'utilisation du commutateur de type >. ARRIERE PLAN DE L' INVENTION. Un commutateur de type > est une puce ou un composant d'une puce utilise de maniere commune pour fournir des liaisons a haute frequence parmi une pluralite de sources et de destinations dans un systeme de traitement base sur un VLSI (very large scale integration, integration a tres grande echelle). Lorsqu'il est utilise dans un systeme a plusieurs processeurs, un commutateur de type > fournit de maniere typique une bande passante de quantite fixe a chaque port de commutateur de type >, en ne permettant que le transfert d'un certain nombre de bits - 2 - 2839845 par seconde depuis une source jusquia une destination. Dans un systeme a plusieurs processeurs, cependant, les niveaux d'utilisation pour les processeurs varient de maniere typique en fonction des taches particulieres, ctest-a-dire des programmes, que le processeur est charge d' executer. En outre, d'autres agents du reseau, tels que des controleurs d' entrees/ sorties (I/O), des contrCleurs de memoires et des controleurs de caches situes, par exemple, sur des puces VSLI separees, vent connectes de maniere commune les uns aux autres par l'intermediaire de commutateurs de type >. Les performances, lorsqu'ils vent utilises de maniere lourde, des processeurs et des agents du systeme intensifs au plan de la bande passante, par exemple des controleurs de memoire cache fournissant des donnees a plusieurs processeurs, pourraient etre ameliorees si des connexions du commutateur de type > pouvaient fournir des bandes passantes plus larges que celles disponibles maniere courante. Par consequent, il existe un besoin pour un commutateur de type > qui peut etre configure pour fournir relativement moins de bande passante pour des agents du systeme moins intensifs en bande passante, et pour fournir relativement plus de bande passante pour des agents necessitant plus de bande passante pour une performance optimale. Il peut cependant etre couteux, en termes d'effort d'ingenierie et de planification de developper une puce VLSI, en particulier s'il s'agit d'une conception personnalisee a haute frequence. Par consequent, il serait souhaitable de concevoir une certaine souplesse dans les puces VLSI existantes de sorte qu'elles puissent etre mises en utilisation dans une variete d' applications. - 3 RESUME DE L' INVENTION Dans un premier aspect preferential, l 'invention propose un commutateur de type > pour fournir des connexions entre une pluralite d' agents d'un systeme tels que des processeurs, des memoires et des controleurs, le commutateur de type > comprenant une pluralite de soul-ports de commande et une pluralite de mini-ports configurables de maniere selective comme une pluralite de points de connexion pour fournir les connexions; dans lequel chaque sous- port de commande comprend un domaine de mini-ports que le soul-port de commande est configure pour commander de maniere selective, et chaque mini-port est configurable pour selectionner un parmi une pluralite des soul-ports de commande comprenant des domaines qui incluent le mini -port select ionnant; et dans lequel chacun des points de connexion configures comprend un des soul-ports de commande en correspondence et chaque miniport selectionnant le soul-port de commande en correspondence. Dans une variante de real isat ion de ce premier aspect, l' invention propose un commutateur de type > comprenant en outre un commutateur pour transferer des donnees de l'un des points de connexion a l'un des points de connexion en correspondence. Dans une autre variante de realisation de ce premier aspect, l 'invention propose un commutateur de type > dans loquel les mini-ports selectionnant d'un premier point de connexion vent configures pour une connexion a travers le commutateur de type > vers des miniports selectionnant en correspondence d'un deuxieme point de connexion. Dans une autre variante de real isat ion de ce premier aspect, l 'invention propose un commutateur de type > de la revendication 1, dans lequel chaque mini-port est configurable par une option au moins parmi un cablage materiel et une programmation pour selectionner l'un parmi une pluralite des sous ports de commande. Dans une autre variante de realisation de ce premier aspect, ['invention propose un commutateur de type > de la revendication 1, dans loquel chaque soul-port de commande peut fournir un signal a chacun des mini-ports dans le domaine du soul-port de commande. Dans un deuxieme aspect preferential, l 'invention propose un commutateur de type > pour fournir des connexions de signal entre une pluralite d' agents d'un systeme tel que des processeurs, des memoires et des controleurs, le commutateur de type > comprenant une pluralite de ports, chaque port comprenant un soul-port de commande et une pluralite de mini-ports; dans lequel chacun des mini-ports est configure pour selectionner pour etre commande par un soul-port de commande de l'un des ports qui ne comprend pas le mini-port selectionnant; et dans lequel lun donne parmi les soul-port de commande, lorsqu'il est selectionne par un mini-port de l'un des ports qui ne comprend pas le soul-port de commande donne, est configure pour commander un signal passant a travers le mini-port selectionnant; le commutateur de type > comprenant en outre une pluralite de points de connexion, chaque point de connexion etant configure a partir d'un soul-port de commande en correspondence et chaque mini-port selectionnant le soul-port de commande en correspondence. Dans une variante de real isat ion du premier aspect et dans une variante de real isat ion du deuxieme aspect de ['invention, l 'invention propose un commutateur de type > dans lequel deux des points de - 5 connexion vent configures pour une transmission de signaux de largeurs de bits inegales. Dans la premiere variante de real i sat ion du deuxieme aspect de l 'invention et dans une variante de realisation du premier aspect de l 'invention, l' invention propose un commutateur de type > dans lequel les mini-ports comprennent des largeurs de bits egales. Dans une autre variante de realisation du premier aspect et dans une autre variante de realisation du deuxieme aspect de ['invention, l 'invention propose un commutateur de type > dans lequel chacun des mini-ports comprend un soul-port de selection configure pour selectionner un parmi les soul-ports de commande. Dans une variante de realisation du deuxieme aspect de l' invention, l 'invention propose un commutateur de type > comprenant un commutateur configure pour transferer un signal entre un premier des ports et un deuxieme des ports. Le commutateur de type > precedent peut etre configure pour fournir des quantites de bandes passantes taillees de maniere specifique a la mesure des besoins en performance des differents agents du systeme qui seront connectes au travers du commutateur de type >. Par consequent, les goulots d'etranglement au travers du commutateur de type > peuvent etre elimines ou reduits et la performance globale du systeme de traitement peut etre amelioree. D'autres zones d'applicabilite de la presente invent ion deviendront apparentes a part ir de la description detaillee fournie ci-dessous. On devra comprendre que la descript ion detail lee et les exemples specifiques, tout en indiquant le mode de realisation preferential de ['invention, vent donnes a des fins - 6 2839845 d' illustration uniquement et ne vent pas destines a limiter la portee de ['invention. BREVE DESCRIPTION DES DESSINS La presente invention pourra etre comprise de maniere plus complete a partir de la description detaillee et des dessins qui l'accompagnent, ou: La figure 1 est un diagramme schematique d'un commutateur de type > conventionnel simplifie; et La figure 2 est un diagramme schematique d'un commutateur de type > conforme a un mode de realisation de la presente invention. DESCRIPTION DETAILLEE DU MODE DE REALISATION PREFERENTIEL La description qui fait suite des modes de realisation preferentiels est uniquement donnee a titre d'exemple et n'est en aucune maniere destinee a limiter ['invention, ses applications ou utilisations. Un commutateur de type > simplifie de la technique ancienne est indique d'une maniere generale par une reference numerique 10 a la figure 1. Quatre ports, 14, 18, 22 et 26 autorisent a jusqu'a quatre agents du systeme (non montres), ce qui comprend, sans toutefois limiter, des processeurs, des controleurs de memoire, des memoires caches et des controleurs d' entree/ sortie, de se relier les uns aux autres par l'intermediaire du commutateur de type > 10. Chacun des ports 14, 18, 22 et 26 a une largeur totale de vingt bits configuree en une connexion de donnees 30 sur 16 bits et une connexion de commande 34 sur quatre bits. Les bits de commande 34 vent utilises, de maniere typique par exemple, pour negocier une connexion entre l'un des ports 14 et 18 et l'un des ports 22 et 26 et 7 2839845 pour preciser la longueur diune transmission sur une telle connexion. Des agents du systeme vent connectes au travers du commutateur de type > 10 par l'intermediaire diun commutateur 38, typiquement un multiplexeur commutant une configuration interne au commutateur de type > 10. Une connexion de commutateur de type > a de maniere typique une largeur de bits en correspondence a la largeur de bits de donnees des ports en cours de connexion. Pour le commutateur de type > 10 donne en exemple, la largeur de connexion de commutateur est de 16 bits. Comme les largeurs des bits de commutation vent fixees, toutefois, les bandes passantes mises a la disposition des agents connectes par l'intermediaire du commutateur 38 tendent aussi a etre fixes. Par consequent des retards de transfert peuvent se produire, en particulier sur des connexions utilisees de maniere importante. Le terme "largeur de bande" tel qu'il est utilise ici se rapporte a une vitesse de transfert des donnees en bits par seconde depuis un emplacement jusqu'a un autre. D'une maniere generale, si une connexion par l'intermediaire d'un commutateur de type > est large de N bits et opere a une bande passante de X bits par seconde, une transmission de M bits de donnees sieffectuera en M/(N*X) secondes. Par consequent, pour une quantite fixe de donnees, on pourrait reduire le retard du transfert en augmentant la largeur de bits N. Un mode de realisation d'un commutateur de type > configure conformement aux principes de la presente invention est indique par une reference numerique 100 a la figure 2. Le commutateur de type > 100 comprend quatre ports 114, 118, 122 et 126. Chacun des ports 114, 118, 122 et 126 comprend une - 8 - 2839845 pluralite de mini-ports de donnees 130 ayant des largeurs de bits egales. Dans le mode de realisation montre a la figure 2, chaque mini-port 130 a une largeur de quatre bits. De maniere specifique, le port 114 comprend des mini-ports 130a-130d, le port 118 comprend des mini-ports 130e-130h, le port 122 comprend des mini-ports 130i-1301, et le port 126 comprend des mini-ports 13Om-130p. Chacun des ports 114, 118, 122 et 126 possede aussi une largeur de bits de commande de quatre bits, c'est-a-dire une connexion de commande ou un soul-port de commande 134 sur quatre bits, qui seront decrits plus en detail plus loin. De maniere specifique, le port 114 comprend un soulport de commande 134a, le port de commande 118 comprend un soul-port de commande 134b, le port 122 comprend un soul-port de commande 134c et le port 126 comprend un soul-port de commande 134d. On notera que le terme "soul-port de commande" tel qu'il est utilise ici et dans les revendications, comprend des soul-ports de commande explicites et des soul-ports de commande implicites. Un soul-port de commande implicite comprend des bits de donnees extraits comme cela est defini par un protocole pour transporter des informations de commande. Dans un sous port de commande explicite, la largeur des bits de donnees n'est pas definie comme une largeur de bits de commande. Des soul-ports de commande a la fois explicites et implicites vent envisages dans des modes de realisation de la presente invention. Un commutateur multiplexeur 138 interne au commutateur de type > 100 connecte de maniere selective des signaux de donnees entre des mini-ports 130 sur un cote 142 du commutateur de type > et des mini-ports sur un cote 146 du commutateur de type >. Chacun des soul-ports de commande 134 est configure pour commander de maniere selective un domaine de mini-ports 130 comme nous le decrirons de maniere plus detaillee plus loin. De maniere specifique, comme nous le montrons a la figure 2, les soul-ports de commande 134a et 134b vent chacun configurables de maniere separee pour commander un domaine formant un mini-port 150 qui peut inclure les mini-ports 130a-130h. Les soulports de commande 134c et 134d vent chacun configurables de maniere separee pour commander un domaine formant un mini-port 154 qui peut inclure les mini-ports 130i-130p. Chaque mini-port 130 comprend une ligne de selection ou un soul-port de selection 160 par lequel un soul-port de commande 134 qui comprend un mini-port 130 donne dans son domaine peut etre selectionne pour commander des signaux de donnees par l'intermediaire du mini-port donne 130. Chaque soul-port de selection 160 peut etre determine par exemple, par une option de cablage materiel ou de programmation du systeme. Par consequent, les mini-ports 130 peuvent etre configures avec les soul-ports de commande 134 pour fournir une largeur de bits de donnees relativement large pour un chemin d'utilisation relativement elevee et une largeur de bits de donnees relativement etroite pour un chemin d'utilisation relativement faible, au travers du commutateur de type > 100. Par exemple, comme nous le montrons a la figure 2, les mini-ports 130 vent configures avec les soul-ports de commande 134 comme des points de connexion 164, 168, 172 et 176 par lesquels jusqu'a quatre agents du systeme (non montres) peuvent etre connectes au commutateur de type > 100. Les points de connexion 164 et 172 vent configures pour transferer des signaux de donnees larges de 24 bits, et les points de connexion 168 et 176 vent configures pour des - 10 signaux de donnees larges de huit bits. Par exemple, sur le cote 142 du commutateur de type >, le point de connexion 164 a une largeur de bits de donnees de 24 bits loreque les lignes de selection 160 des mini-ports 130a, 13Ob, 130c, 13Od, 13Oe et 130f vent signales pour selectionner pour une commande par le soul-port de commande 134a. Sur le cote 146, l'autre cote du commutateur de type >, le point de connexion 172 a aussi une largeur de bits de 24 bits lorsque les lignes de selection 160 des mini-ports i, 130j, 130k, 1301, 130m et 130n vent signales pour selectionner pour une commande par le soul-port de commande 134c. Par consequent, les points de connexion en correspondence 164 et 172 peuvent fournir une connexion de donnees sur 24 bits a travers le commutateur de type > 100. Le point de connexion 168 sur le cote 142 du commutateur de type > possede une largeur de bits de 8 bits lorsque les lignes de selection 160 des mini-ports 130g et 130h vent signalees pour selectionner pour une commande par le soul-port de commande 134b. Le point de connexion en correspondence 176 a une largeur de bits de 8 bits loreque les lignes de selection 160 des mini- ports 1300 et 130p vent signalees pour selectionner pour une commande par le soul-port de commande 134d. Par consequent, les points de connexion 168 et 176 peuvent fournir une connexion de donnees sur 8 bits a travers le commutateur de type > 100. On notera qu'il n'est necessaire d'effectuer aucun changement au commutateur 138 loreque l'on configure les points de connexion 164, 168, 172 et 176. En outre, on comprendra que des pluralites de variantes et de configurations de ports, de mini-ports, de domaines des mini-ports, de soul-ports de selection et/ ou de sous ports de commande vent envisagees dans d'autres modes de realisation. Par exemple, pour un commutateur de type > ayant P ports et Q mini-ports par port, une taille de domaine pourrait s'etendre d'un mini-port a P*Q/2mini-ports inclus. Pour le mode de realisation montre a la figure 2, le nombre de ports P vaut 4, le nombre de mini-ports par port Q vaut 4, et la taille de domaine P*Q/2 vaut 8 mini-ports. Nous envisageons aussi des variantes de ports, de largeurs de bits des points de connexion, de largeurs de bits des ports de commande et/ ou de largeurs de bits de mini-ports, des variantes a celles montrees a la figure 2 qui peuvent etre utilisees dans d'autres modes de realisation. En se referent au commutateur de type > tel qu'il est configure comme nous le montrons a la figure 2, nous allons maintenant decrire un mode de realisation d'un procede pour augmenter la largeur de bits disponible pour fournir une connexion entre deux agents d'un systeme par l'intermediaire du commutateur de type > 100. Le procede comprend les etapes consistent a configurer un certain nombre des mini- ports parmi 130a a 130h a selectionner pour etre controles par le soulport de commande 134a, le nombre de mini-ports 130 etant suffisant pour fournir une largeur de bits souhaitee au point de connexion 164. Par consequent, pour une largeur de bits souhaitee de 24 bits, six miniports 130 vent configures avec le soul-port de commande 134a comme le point de connexion 164. La configuration des mini-ports 130 comprend la programmation d'un signal pour entrer vers un soul-port de selection 160 pour chacun des six mini-ports 130. Le procede comprend aussi une etape consistent a configurer un nombre en correspondence de mini-ports i a 130p pour selectionner pour etre controles par le soul-port de commande 134c, le nombre en correspondence etant suffisant pour fournir la largeur - 12 2839845 de bits souhaitee au point de connexion 172. Par consequent, six miniports 130 vent configures avec le soul-port de commande 134c comme le point de connexion 172. Les deux agents du systeme vent alors connectes au commutateur de type > aux points de connexion 164 et 172 respectivement. Loreque le commutateur de type > est configure comme nous le montrons a la figure 2, on peut voir que des agents du systeme connectes au commutateur de type > 100 aux points de connexion 164 et 172 operent avec une bande passante superieure de cinquante pour cent a celle qui serait disponible en utilisant le commutateur de type > conventionnel 10. Par contre, la bande passante disponible est inferieure de cinquante pour cent pour des agents connectes aux points de connexion 168 et 176 du commutateur de type > 100 par rapport a celle qui serait disponible en utilisant le commutateur de type > conventionnel 10. Si par exemple, un contraleur de memoire et un processeur de hautes performances etaient connectes respectivement aux points de connexion 164 et 172 alors que des contrCleurs d' entree/ sortie relativement moins intensifs au plan de la bande passante etaient connectes aux points de connexion 168 et 176, le commutateur de type > 100 fournirait relativement plus de bande passante aux agents particuliers utilisant plus de bande passante. Par consequent, des goulots d'etranglement a travers le commutateur de type > peuvent etre elimines ou reduits, et la performance globale du systeme de traitement peut etre amelioree. En outre, le commutateur de type > precedent 100 peut etre fabrique aisement en utilisant des configurations de commutateur de type > - 13 standards existantes. Lorsqu'il est utilise dans des applications dans lesquelles les soul-ports de selection 160 peuvent etre reprogrammed, le commutateur de type > 100 est aisement configurable pour accommoder les besoins en bande passante de divers agents du systeme. La description de l' invention est donnee uniquement a titre d'exemple par nature, et par consequent, l' intention est que des variations qui ne s'ecartent pas de l' esprit de l' invention soient dans la portee de ['invention. De telles variations ne doivent pas etre considerees comme un depart de lt esprit et de la portee de ['invention. - 14 REVENDI CAT IONS 1. Commutateur de type > (100) pour fournir des connexions entre une pluralite d' agents d'un systeme tels que des processeurs, des memoires et des controleurs, le commutateur de type > comprenant une pluralite de soul-ports de commande (134) et une pluralite de mini-ports (130) configurables de maniere selective comme une pluralite de points de connexion (164, 168, 172, 176) pour fournir les connexions; dans lequel chaque soul-port de commande comprend un domaine (150, 154) de mini-ports (130) que le soul-port de commande est configure pour commander de maniere selective, et chaque mini-port est configurable pour selectionner un parmi une plural ite des soul -ports de commande comprenant des domaines qui incluent le mini- port selectionnant; et dans loquel chacun des points de connexion configures comprend un des soul-ports de commande en correspondence et chaque mini-port selectionnant le soul-port de commande en correspondence. 2. Commutateur de type > (100) de la revendication 1, comprenant en outre un commutateur (138) pour transferer des donnees de l'un des points de connexion (164, 168, 172, 176) a l'un des points de connexion en correspondence. 3. Commutateur de type > (100) de la revendication 1, dans lequel les mini-ports selectionnant ( 130) d'un premier point de connexion (164, 168, 172, 176) vent configures pour une connexion a travers le commutateur de type > vers des mini-ports selectionnant en correspondence d'un - 15 deuxieme point de connexion (164, 168, 172, 176). 4. Commutateur de type > (100) de la revendication 1, dans loquel chaque mini-port (130) est configurable par une option au moins parmi un cablage materiel et une programmation pour selectionner l'un parmi une pluralite des soul-ports de commande (134). 5. Commutateur de type > (100) de la revendication 1, dans loquel chaque soul-port de commande (134) peut fournir un signal a chacun des mini-ports (130) dans le domaine du soul-port de commande (150, 154). 6. Commutateur de type > (100) pour fournir des connexions de signal entre une pluralite d' agents d'un systeme tel que des processeurs, des memoires et des controleurs, le commutateur de type > comprenant une pluralite de ports (114, 118, 122, 126), chaque port comprenant un soul-port de commande (134) et une pluralite de mini-ports (130); dans lequel chacun des mini-ports est configure pour selectionner pour etre commande par un soul-port de commande (134) de l'un des ports qui ne comprend pas le mini-port selectionnant; et dans lequel l'un donne parmi les soul-port de commande, lorequ'il est selectionne par un miniport (130) de l'un des ports qui ne comprend pas le sous- port de commande donne, est configure pour commander un signal passant a travers le mini-port selectionnant; le commutateur de type > comprenant en outre une pluralite de points de connexion (164, 168, 172, 176), chaque point de connexion etant configure a partir d'un soul-port de commande en correspondence (134) et chaque mini-port (130) selectionnant le sous - 16 port de commande en correspondence. 7. Commutateur de type > (100) des revendications 6 ou 1, dans lequel deux des points de connexion (164, 168, 172, 176) vent configures pour une transmission de signaux de largeurs de bits inegales. 8. Commutateur de type > (100) des revendications 7 ou 1 dans lequel les mini-ports (130) comprennent des largeurs de bits egales. 9. Commutateur de type > (100) des revendications 6 ou 1 dans lequel chacun des mini-ports (130) comprend un soul-port de selection (160) configure pour selectionner un parmi les soul-ports de commande (134). 10. Commutateur de type > (100) de la revendication 6, comprenant un commutateur (138) configure pour transferer un signal entre un premier des ports (114, 118, 122, 126) et un deuxieme des