FR 2536884 A1 19840601 FR 8319147 A 19831130 La présente invention concerne les systèmes de trans- mission de données mettant en jeu plusieurs processeurs et une mémoire accessible en commun et, en particulier, de semblables sys- tèmes dans lesquels une communication simultanée est voulue entre au moins deux des processeurs et la mémoire. De nombreux systèmes de transmission de données impliquent à l'heure actuelle l'utilisation de plus d'un processeur de données avec une mémoire commune Alors qu'il serait souhaitable de permettre l'accès simultané à la mémoire de deux processeurs ou plus,-un tel accès simultané n'est pas possible, à moins que la mémoire n'ait de multiples points d'accès Dans le cas d'une mémoire possédant un unique point d'accès, les processeurs qui demandent l'accès à la mémoire en même temps sont dits en conflit, Ainsi, les processeurs doivent attendre leur tour pour accéder à la mémoire via son point d'accès unique Si un processeur antérieurement pris en charge doit transférer, dans un sens ou dans l'autre, une importante quantité de données, l'attente imposée au processeur suivant sera exagérément longue. L'invention vise à permettre un accès sans conflit, à tout moment, de chaque processeur à la mémoire. Selon les enseignements de la technique antérieure, un premier pas dans la direction d'un système sans conflit (décrit en détail ci-après) a été fourni par un système comportant (a) plusieurs bus de données contenus à l'intérieur d'un réseau de transfert de données; (b) un même nombre de processeurs, couplés chacun à un bus de données respectif; *et (c) plusieurs mémoires, pouvant chacune être connectées, par des commutations appropriées, à tous les bus de données Dans ce système selon la technique anté- rieure, chaque processeur est typiquement connecté pendant un intervalle de temps donné à une des mémoires Pendant cet intervalle, les autre processeurs ne peuvent avoir accès à cette mémoire De plus, lorsque le nombre des processeurs, des mémoires et des bus de données augmente lenombre et le coût des unités de commutation se trouvant à l'intérieur du réseau augmentent en conséquence Le but visé, qui est de permettre un accès sans conflit à la mémoire, n'est donc pas encore satisfait par un système tel que ci-dessus mentionné. 2 2536884 Un autre pas vers un système sans conflit utilise un agencement de mémorisation partagé au niveau du bit Dans un semblable agencement de mémorisation, il y a autant de mémoires qu'il existe de bits dans un mot Ainsi, dans un système utilisant des mots de 32 bits, il existe 32 mémoires qui sont chacune couplées à tous les processeurs Un semblable système demande un bus de commande distinct pour assurer le transfert des signaux d'adresse de commande entre les divers processeurs et les diverses mémoires. Tandis que le système à mémoire partagée au niveau du bit est moins complexe que le système de la technique antérieure précédemment décrit, ce dernier système est le moins satisfaisant des deux en ce sens qu'il ne peut être connecté qu'un seul processeur à la fois à la mémoire. L'invention est mise en oeuvre dans un système per- mettant de transférer en même temps des mots de donnée entre une mémoire d'emmagasinage de données et des processeurs de données en nombre N via un réseau de transfert, le système comportant également un moyen de commande de transfert. Selon l'invention, le moyen de commande de transfert comporte N tampons; chaque tampon est couplé entre l Vun respectif des processeurs et la mémoire afin d'assurer l'emmagasinage tempo- raire d'un nombre M de mots, M étant proportionnel à N; chaque tampon répond à des signaux venant du moyen de commande (a) en trans- férant en série les mots temporairement emmagasinés entre lui-même et l'un respectif des processeurs à un taux de transfert X, et (b) en transférant en parallèle M des mots en même temps entre lui- même-et la mémoire, le transfert effectué entre les N tampons et la mémoire se produisant en succession avec un taux qui autorise le transfert des mots entre chaque tampon et son processeur à se poursuivre sans interruption. La description suivante, conçue à titre d'illustration de l'invention, vise à donner une meilleure compréhension de ses caractéristiques et avantages; elle s'appuie sur lesdessins annexés, parmi lesquels: la figure 1 est un système de multiprocesseurs à mémoire multiple présenté sous forme de schéma de principe, selon la technique antérieure; 3 2536884 la figure 2 est un système de multiprocesseurs à mémoire multiple présenté sous forme de schéma de principe, selon l'invention; la figure 2 ' représente un diagramme temporel destiné à faciliter la compréhension de la figure 2; la figure 3 est une partie du système de la figure 2 montrant, d'une manière plus détaillée que la figure 2, le contenu de mémoire d'une mémoire de processeur donnée à titre d'exemple et d'une mémoire globale donnée à titre d'exemple; et la figure 3 ' est un tableau destiné à faciliter la compréhension des opérations de transfert de données de la figure 3. On se rapporte d'abord au système de la technique antérieure présenté sur la figure 1 Ce système utilise par exemple quatre processeurs 10, 12, 14 et 16, quatre mémoires à 32 bits 20, 22, 24 et 26, et un réseau 28 de transfert de données Le réseau 28 de transfert de données comprend quatre ensembles de bus 11, 13, 15 et 17 connectés chacun respectivement à un processeur associé 10, 12, 14 et 16 Chaque ensemble de bus est connecté, de manière com- mutable, à chaque mémoire Les commutateurs sont représentés sché- matiquement par des cercles vides tels que 30, et il existe seize commutateurs tels que le commutateur 30 sur la figure 1 Pour un système, choisi à titre d'exemple, utilisant 32 bits par mot de donnée, chaque ensemble de bus comprend en réalité 32 fils et le commutateur 30, de m 8 me que les autres commutateurs analogues, sont en réalité des commutateurs à une position et 32 p 8 les Les-moyens de commande de commutation ne sont pas représentés, mais ils sont des dispositifs classiques, placés sous commande des divers proces- seurs Lés petits traits obliques associés à des nomres qui sont tracés en divers points de la figure 1 et de la figure 2 à décrire ci-après indiquent le nombre de fils de signal représenté par chaque ligne coupée par le petit trait oblique Sur la figure 13 les divers traits obliques représentent tous 32 fils de donnée Les fils de terre, les fils de commande, etc viennent en supplément des 32 fils. En fonctionnement, chaque processeur est couplé à une mémoire de son choix par le positionnement de commutateurs appropriés du réseau 28 de transfert de données Le-transfert s'effectue dans l'un ou l'autre sens entre un processeur et une mémoire à laquelle il est connecté par des commutateurs tels que le commutateur 30. Le transfert est parallèle pour les bits et en série pour les mots Ainsi, un premier mot de 32 bits est transféré d'une mémoire à un processeur, ou inversement, suivi par un deuxième mot de 32 bits, etc Aussi longtemps que deux processeurs ne veulent pas communiquer avec la même mémoire en même temps, chaque processeur peut fonction- ner à sa vitesse maximale Lorsque deux processeurs veulent commu- niquer avec la même mémoire, un processeur doit attendre que le transfert de données entre la mémoire voulue et l'autre processeur soit terminé Dans le cas d'importants blocs de données, l'attente peut se prolonger et être, dans certains cas, exagérément longue. Le système de la figure 2, selon le mode de réalisation préféré de l'invention, n'est pas totalement exempt de conflit, mais il implique sensiblement moins de conflits que le circuit de la figure 1, comme cela sera décrit ci-après Sur la figure 2, quatre processeurs 10, 12, 14 et 16, identiques à ceux de la figure 1 de la technique antérieure, sont couplés à des mémo ires globales 38-1, 38-2, 38-32 (trois mémoires seulement ont été représentées) via un réseau 40 de transfert de données placé à l Viatérieur d'un bloc 41 en trait interrompu Comme pour la figure 1, le nombre des proces- seurs ( 4), le nombre des bits par mot ( 32) le nombre des mémoires ( 1) subdivisées en 32 mémoires destinées à un seul bit de plusieurs motsb etc n'est donné qu'à titre d'exemple, En particulier, un système à huit processeurs serait plus représentatif de systèmes réels, mais le nombre de quatre processeurs est choisi pour illustrer les prin- cipes de l'invention Chaque processeur tel que le processeur 10 peut comprendre un microprocesseur normal tel que celui proposé par Fairchild sous la référence " 1750 ", par Digital Equipment Corp. sous la référence "PDP-11/23 " ou par Motorola sous la référence " 68000 " Selon le cas, l'un ou plusieurs des processeurs peuvent être des dispositifs d'emploi spéciaux qui utilisent des données venant de la mémoire globale et ou bien, produisent des données destinées à la mémoire globale. A titre d'exemples, chaque processeur utilise des mots - à 32 bits; ainsi, chaque mot comprend 32-bits Comme indiqué sur la figure 2, chaque processeur comprend également une mémoire qui 2536884 emmagasine typiquement environ 64 000 ( 64 K) mots de 32 bits, mais qui pourrait en emmagasiner moins ou beaucoup plus La mémoire globale 38 comprend 32 mémoires d'état solide pour un bit par mot multiple, telles que proposées par la société Intel Chaque partie de la mémoire globale 38, par exemple les mémoires 38-1, 38-2, etc, emmagasine seulement un bit de chacun des mots multiples Dans un système à 32 bits, il-faut 32 de ces mémoires et chacune peut, à titre d'exemple, emmagasiner un bit de chacun d'au moins N x 64 K mots, o N est égal au nombre de processeurs La donnée est trans- férée à la-mémoire 38 et en sens inverse, sur des bus de données, tels que 42-1, 42-2, 42-32, -tandis que les instructions - (lecture-écriture) et l'information concernant les adresse vont à la mémoire 38 via le bus 44 et des bus dérivés tels que 44-1, 44-2, 44-32. Le réseau 40 de transfert de données comporte un registre de donnée,ou tampon de donnée, à N bits qui est associé à chaque bit de chaque processeur, o N est typiquement égal au nombre de processeurs du système ou bien à un multiple de ce nombre. Ainsi, la mémoire du processeur 10, également appelé processeur 1, est connectée à 32 registres dé 4 bits, trois d'entre eux, le registre 1-1, le registre 1-2 et le registre 1-32 étant illustrés. Le bus de données de chaque partie de mémoire globale est connecté à quatre registres de donnée Par exemple, la partie de mémoire globale 38-2 est connectée via le bus de données 42-2 au registre 1-2, au registre 2-2, au registre 3-2 et au registre 4-2 On notera que chaque registre est identifié sous la forme registre X-Y, o X est le numéro du processeur auquel le registre est connecté, et Y est le numéro de la position de bit de la partie de mémoire globale à laquelle le registre est connecté Par exemple, le registre 3-2 est connecté au processeur 3, également appelé processeur 14, et à la partie de mémoire globale 38-2 Les registres sont disposés de façon qu'un transfert de données en série pour les bits se produise entre chaque registre et son processeur associé et qu'un transfert en parallèle pour les bits se produise entre le registre et la mémoire globale. Puisque chacun des bus de données 42-X (X 1, 2, 3 ou 4) est connecté à plusieurs registres, chaque registre comporte 6 2536884 un moyen à porte représenté sous forme d'une boite horizontale allongée, telle que 45, qui est connectée a son bus de données Le but du moyen à porte est de permettre un transfert de données entre la mémoire et les registres associés avec un seul processeur à la fois, comme cela sera décrit plus complètement di-après. Le réseau 40 de transfert de données comporte égale- ment quatre registres d'adresse 46- 11 46-2, 46-3 et 46-4, à rai- son d'un registre d'adresse pour chaque processeur Ainsi, le registre d'adresse 46-1 est associé au processeur 1, le registre d'adresse 46-2 au processeur 2, etc Chaque registre d'adresse contient typiquement 30 bits d'information d'adresse de mémoire et de commande Le bus 48 d'adresse et d'instruction connecte entre eux tous les processeurs 10, 12, 14 et 16 et tous les registres d'adresse 46-1 à 46-4 Chaque registre d'adresse comporte un moyen à porte représenté sous forme d'une botte horizontale allongée ana- logue à celles incluses dans les registres de donnée et servant au même but Via le bus 48, les processeurs 10, 12, 14 et 16 émettent à leur tour, à destination du registre d'adresse associé, l'informa- tion concernant les adresses de début et de fin de la mémoire 38 pour la donnée à transférer entre le processeur et la mémoire 38, ainsi que le sens du transfert, à savoir vers la mémoire 38 ou vers un processeur. Chaque registre d'adresse est couplé aux registres de donnée associés au processeur qu'il dessert, Ainsi, le registre d'adresse 46-1 est couplé aux registres de donnée 1-1, 1-2, 1-32 associés au processeur 1 Les autres registre d'adresse sont identi- quement couplés à leurs registres associés, mais on ne les a pas repré- sentés pour simplifier le dessin Le but visé par la connexion registre d'adresse-registre de donnée est de commander le sens de transfert d'une donnée pour les registres de donnée, à savoir vers le processeur ou en sens inverse Chaque registre d'adresse comporte un compteur, ou une structure équivalente, permettant d'incrémenter les adresses de mémorisation emmagasinées dans le registre à chaque fois qu'il est fait accès à celui-ci, comme cela est décrit ci-dessous, jusqu'à ce que soit atteinte l'adresse de fin qu'il contient. i Un moyen de commande 50 est couplé à chacun des processeurs 10 à 16, à la mémoire 38, aux registres d'adresse 46-1 à 46-4 et aux registres 1-1, 1-2, 4-32 de la figure 2 afin de leur fournir des instructions et une information de synchronisation. Les connexions entre le moyen 50 et les autres éléments ne sont pas représentées sur la figure 2, bns un but de simplification des dessins Entre autrps choses, le moyen 50 produit des signaux permettant de commander la durée et le rythme suivant lesquels les divers registres sont validés pour la réception ou l'émission de - données - Comme cela est illustré sur le diagramme temporel de la figure 2 ', les registres sont validés en série, c'est-à-dire d'abord le groupe des registre 1, à savoir les registres 1-1 à 1-32 et le registre d'adresse 461, puis le groupe des registres 2, à savoir les registres 2-1 à 2-32 et le registre d'adresse 46-2, etc Un rythme, ou taux, typique (c'est-à-dire liinverse de l'intervalle d'une tranche temporelle à une autre) est 10 M Hz Pendant la tranche temporelle durant laquelle un ensemble particulier de registres de donnée est validé, le registre d'adresse associé estvalidé pour l'acceptation de nouvelles instructions, slil en existe, provenant de son processeur associé ou pour adresser la mémoire -sur une adresse-déterminée par le positionnement du compteur contenu dans le registre d'adresse dans le but de provoquer une écriture ou une lecture à l'emplacement adressé, Enfin, au cours de chaque tranche temporelle, chaque registre (pour lequel un-transfert de données est voulu pour un processeur associé) est validé pour le transfert d'un bit de donnée entre lui-même et son'processeur associé. On comprendra mieux le fonctionnement du système de la figure 2 en se reportant également à la figure 3, qui est une combinaison entre un schéma matériel et un diagramme quasi temporel. Avant de discuter en détail le fonctionnement de la figure 2, on va exposer une théorie du fonctionnement du système Pour chacun des différents processeurs 1, 2, 3 et 4 (ou 10, 12, 14 et 16), le but du système est de permettre une utilisation apparemment exclusive- de la mémoire globale 38 du système en ce qui concerne le transfert d'une donnée du processeur à la mémoire ou de la mémoire au processeur. 8 2536884 En ce qui concerne son fonctionnement pratique, le système demande le transfert d'importants blocs de données Il en- est ainsi en raison du temps qu'il faut à un processeur pour trans- férer à son registre d'adresse associé 46 les adresses de début et de finde la donnée voulue à transférer et du sens du transfert Dès que les opérations de-servitude ont été assumées, si l'on suppose *en outre que tous les processeurs demandent accès simultanément, à savoir le pire des cas, le transfert de données réel commence. On va supposer, dans la discussion suivante, que le *transfert se fait de la mémoire globale 38 aux divers processeurs 1 à 4, mais il faut comprendre que le transfert de donnér peut égale- ment s'effectuer des processeurs à la mémoire globale, ou qu' il s'agit d'une combinaison entre ces processus, à savoir un transfert de la mémoire-globale vers-certains processeurs et un transfert d'autres processeurs vers la mémoire globale. Au cours d'une première tranche de temps, sous la commande de synchronisation du moyen de commande 50, un bloc de quatre mots est transféré en parallèle, depuis une adresse de la mémoire globale 38 qui est déterminée par une adresse emmagasinée dans le compteur d'adresse 1 (à savoir le registre d'adresse 46-1), au registre de donnée 1 (à savoir le registre 1-1, le registre 1-2, ou le registre-1-32), et le compteur du registre d'adresse 1 est incrémenté à l'adresse d'un bloc suivant dequatre mots Le nombre de mots transféré en parallèle est équivalent au nombre de processeurs du système, ou O à un multiple de ce dernier Si la mémoire globale est en mesure de fonctionner au même taux de trans- fert de données, à savoir un taux X, que les processeurs, un nombre - de mots qui est égal au nombre de processeurs est transféré en parallèle Si la mémoire globale-fonctionneàd un taux égal au taux - des processeurs divisé par Y, alors un nombre-de mots égal à Y fois le nombre des processeurs est transféré en parallèle -On supposera ci-après que le taux de transfert de données de la mémoire globale 38 et le taux de transfert de données des processeurs sont tous deux égaux au taux X Par exemple, le taux X peut être égal à 1 M Hz. Pendant une deuxième tranche de temps, un deuxième groupe de quatre mots destinés au processeur 2,est transféré, depuis la mémoire globale 38, en un emplacement adressé par le registre d'adresse 2, au registre de donxée 2 ( 2-1 > 2-2 ou 2-32), Pen- dant cette tranche de temps, le premier mot du registre 1 est trans- féré à la mémoire du processeur-i. Pendant une troisième tranche de temps, la donnée est transférée, depuis la mémoire globale 38, en un emplacement adressé par le registre d'adresse 3 au registre de donnée 3 (à savoir 3-1, 3-2, ou 3-32) Pendant cette tranche de temps, le deuxième des quatres mots du registre de donnée 1 est transféré à la mémoire du processeur 1, et le premier des quatre mots du registre 2 est transféré à la mémoire du processeur 2. Pendant une quatrième tranche de temps, un bloc de quatre mots est transféré, depuis la mémoire globale 38, en un emplacement adressé par le registre d'adresse 4, au registre de données 4 (à savoir 4-1, 4-2, ou 432), le troisième des quatre mots du registre 1 est transféré à la mémoire du processeur 1, le deuxième des quatre mots du registre 2 est transféré à la mémoire du processeur 2, et le premier des quatre mots du registre 3 est transféré à ta mémoire du processeur 3. Pendant une cinquième tranche de temps, un deuxième groupe de quatre mots de la mémoire globale 38 est transféré au registre 1, tandis que le quatrième mot'du registre 1 venant du pre- mier groupeci quatre mots qui y a été transféré est transféré à la mémoire du processeur 1 Le transfert-d'un mot de chacun des autres registres à la mémoire de son processeur associé se produit pendant la cinquième tranche de temps Une action identique S celle ci dessus décrite se produit pendant les tranches de -temps suivantes jusqu'à ce que les nécessités de transfert de données des divers processeurs aient été satisfaites. Le point important à comprendre est que, dès qu'un transfert de données commence, chaque processeur reçoit la donnée aussi rapidement que son circuit le permet Chaque processeur semble donc recueillir toute l'attention de la mémoire globale et, par conséquent, tous les processeurs sont desservis en même temps, même si la mémoire globale 38 peut lire ou écrire dans une seule adresse (contenant quatre mots) au cours d'une tranche de temps unique. -0 lo 2536884 On passe maintenant à une description détaillée du fonctionnement en relation avec la figure 3, qui représente schéma- tiquement, à une échelle agrandie et détaillée par rapport à -la figure 2, la mémoire globale 1, en fait la mémoire globale 38-1, à savoir celle contenant la donnée correspondant au bit 1 (parmi-32). Les 31 autres mémoires globales sont identiques Dans les quatre zones 60, 62, 64 et 66 de la mémoire, qui emmagasinent chacune de nombreux mots, se trouvent respectivement la donnée a qui est demandée par le processeur 1, la donnée P qui-est demandée par le processeur 2, la donnée y qui est demandée par le processeur 3, et la donnée 6 qui est demandée par le processeur 4 On comprendra que deux processeurs ou plus peuvent-vouloir des données provenant des mêmes emplacements de la mémoire Ainsi, par exemple, les zones de mémoire 60 et 62 peuvent être identiques ou bien, au moins, se chevaucher La mémoire globale 1 est couplée en parallèle à chacun des registres de donnée XI o le chiffre 1 correspond à la mémoire globale 1 et o la valeur X correspond au processeur 1, 2, 3 ou 4 particulier auquel le registre de donnée est connecté. Les moyens de commutation sélective se trouvant dans chacun des registres ne sont pas illustrés, non plus que l'intercon- nexion entre le moyen de commande 50 (figure 2) et la donnée enre- gistrée et que l'interconnexion entre les registres d'adresse (figure 2) et-les systèmes de données, mais ces éléments sont de structure clas- sique et autorisent un transfert de données entre la mémoire globale 38 et les seuls registres associés à un processeur à la fois. La mémoire globale est disposée de façon qu'un groupe de quatre mots successifs soit fonctionnellement transféré ensemble d'une seule pièce Sur la figure 3, la mémoire l Oa du processeur 1 est représentée de manière agrandie et détaillée par rapport à la , figure 2 Les mémoires des autres processeurs sont identiques à la mémoire du processeur 1 Chaque mémoire de processeur comprend des emplacements d'emmagasinnage pour mots de 32 bits qui sont désignés par A, B, C,, I, Bien que ceci ne soit pas illustré, le bit 2 de la mémoire l Oa est connecté de façon à recevoir une donnée de la part du registre 1-2, le bit 3-est connecté de façon à recevoir une donnée du registre 1-3, etc - : il 2536884 * Le tableau de la figure 3 ' représente, dans sa partie gauche, les mots qui sont transférés de la mémoire '38 aux registres du réseau 40 et représente, dans sa partie droite, 'les mots qui sont transférés des registres du réseau 40 aux processeurs respectifs au cours des tranches de temps successives Ainsi,-dans la tranche de temps n 1, la'mémoire globale 38 est adressée par le registre d'adresse 1 (figure 2) de-façon A transférer des mots a, soit 1, 2, 3 et 4,'depuis la zone 60 de la mémoire globale et de zones équi- valentes des 31 autres mémoires globales (non représentées), dans le registre 1-1 et les 31 autres registres l-X-(non représentés) Le passage sélectif des données dans les registres appropriés et l'adressage de la mémoire globale par le registre d'adresse s'effec- tuent sous commande de signaux de synchronisation venant du moyen de commande 50 (figure 2) Pendant les tranches de temps suivantes à savoir n 2, n 3, n 4, etc, les mots suivants sont déplacés de la manière illustrée sur le tableau de la figure 3 ' o La figure 3 montre la situation existant à la fin de la tranehe de temps n 6, qui est indiquée par une flèche 70 sur le tableau de la figure 3 ' Ainsi, les mots P, soit 5, 6, 7 et 8, ont été transférés au registre 2-1, le mot a, soit 5, a été transféré du registre 1-1 à la mémoire 10 a, emplacement E, le mot À, soit 4, a été transféré du-registre 2-1 - à la mémoire 12 a du processeur 2, emplacement D De plus; bien que ceci ne soit pas représenté, le mot y soit 3, a été transféré du registre 3-1 à la mémoire du processeur 3, et le mot S, soit 2, a -été transféré du registre 4-1 à la mémoire du processeur 4. On notera que, dès que des mots ont été-retirés d'em- placements de la mémoire globale, ces emplacements sont-représentés sous forme de blncs sur la figure 3 En réalité, la mémoire contient encore,la donnée, même après qu'elle a été lue et envoyée au proces- seur. Comme décrit dans-l'exposé général précédant cette description détaillée du fonctionnement, une fois que tous les registres ont été remplis, chaque mémoire d'un processeur reçoit la donnée aussi vite que son circuit le permet et semble donc bénéfi- cier de l'attention non dispersée de-la mémoire globale 38. Au contraire du fonctionnement ci-dessus décrit relatif aux transferts de la mémoire globale aux processeurs, dans les transferts des processeurs à la mémoire globale, la donnée est transférée depuis un processeur (par exemple le processeur 1) à ses registres associés (par exemple le registre 1 X) à raison d'un mot par tranche de temps, jusqu'à ce que les registres soient-pleins (par exemple quatre mots) Ensuite, les registres se vident en parallèle dans quatre emplacements-de la mémoire globale qui sont déterminés par les signaux d'adressage venant du registre d'adresse approprié (par exemple le registre duadresse 1), après quoi le pro- cessus se répète. Il faut comprendre que toutes les valeurs données pour le nombre de bits par mot, le nombre de processeurs, le fait que tous les processeurs veulent être desservis en même temps, le fait que tous les processeurs veulent lire des données dans; la mémoire au lieu d'écrire des données dans la mémoire, et le fait que les vitesses des mémoires des processeurs et-la vitesse de la mémoire globale sont les-mêmes ne constituent qu'un exemple Ainsi, le nombre de bits par mot peut être supérieur ou inférieur à 32; le nombre de processeurs peut être supérieur ou inférieur à 4, le nombre 8 étant un nombre typique; les données peuvent être transférée concur- remment entre-la mémoire globale et un nombre de processeurs inférieur au nombre total de ceux-ci; le transfert de données à la mémoire globale peut être le fait de certains processeurs, de-tous les proces- seurs ou d'aucun d'eux, tandis que tous les processeurs, certains d'entre eux ou aucun d'eux, reçoivent des données-de la mémoire globale; et lamémoire globale peut fonctionner à une vitesse plus petite que celles des mémoires des processeurs (Elle pourrait fonc- tionner à une vitesse plus élevée, mais ceci ne donnerait pas un système convenablement adapté) A titre d'exemple,-si le processeur fonctionne à un; taux de transfert de données de 1 M Hz *et que la mémoire globale fonctionne à un taux de 0,5 M Hz, alors chaque registre 1-1, 1-2, 2-2, 2-2, 4-32 contiendra huit mots et huit mots seront simul- tanément transférés en même temps entre la mémoire globale et chaque registre Dans un tel cas, la mémoire globale posséderait un tampon de huit mots (non représentés) afin de recevoir les données en parallèle au taux de transfert de 0,5 M Hz et de transférer les données aux registres appropriés en parallèle-au taux de 0,1 M Hz, ou inversement. Le système permet également un transfert direct d'un processeur à un autre, de façon isolée, ou bien en même temps que des transferts des processeurs à la mémoire globale et de la mémoire globale aux processeurs Ainsi, par exemple", le processeur 1 peut délivrer des signaux d'instruction au registre d'adresse 1 afin d'amener un transfert direct dans les registres 1-X en provenance d'un autre processeur (par exemple le processeur 2), via ces registres. Dans ce cas, le processeur délivrant l'instruction émet quatre mots en série à destination de ces registres associés, par exemple les registres 2-X, en quatre tranches de temps successives Ensuite, dans la tranche de temps appropriée aux registre 1-X, la donnée est transférée en parallèle des registres 2-X aux registres 1-X, après quoi les registres 1-X se vident dans la mémoire-du processeur 1 à raison d'un mot par tranche de temps, tandis que les registres 2-X se remplissent à raison d'un mot-par tranche de temps venant du pro- cesseur 2. De nouveau, comme avec le transfert des processeurs vers la mémoire globale ou le transfert de la mémoire globale vers les processeurs, dès que-l'opération initiale d'accumulation est achevée, chaque processeur transmet Les données à sa vitesse propre. Bien entendu, l'homme de l'art sera en mesure d'imagi- ner, à partir du système dont la description vient d'être donnée à titre simplement illustratif et nullement limitatif, diverses variantes et modifications ne sortant pas du cadre de l'invention. R E V E N D I C A T I O N S 1 Système permettant de transférer en m 8 me temps des mots de donnée entre une mémoire ( 38) d'emmagasinage de données et un nombre N ( 4) de processeurs de données ( 10, 12, 14, 16) via un réseau de transfert ( 40) sous commande de signaux produits par un moyen de commande, caractérisé en que que ledit réseau comporte N tampons ( 1-1 à 1-32; 2-1 à 2-32; etc); chaque tampon est couplé entre l'un respectif desdits processeurs et ladite mémoire; chaque tampon répond à des signaux venant dudit moyen de commande en emmagasinant temporairement un nombre M de mots, M étant proportion- nel à N, afin de transférer en-série les mots temporairement emmaga- sinés entre lui-même et l'un respectif desdits processeurs, à une vitesse de transfert X, et de transférer en parallèle M desdits mots temporairement emmagasinés en une seule fois entre lui-même et ladite mémoire, le transfert entre les N tampons et la mémoire s'effectuant en succession; ladite vitesse de transfert X autorisant un transfert ininterrompu de mots entre chacun desdits processeurs et l'un respectif desdits tampons. 2 Système selon la revendication 1, caractérisé en ce que ladite mémoire est une mémoire adressable et, de plus, comporte -N moyens d'emmagasinage d'adresse ( 46-1, 46-2, etc); chaque moyen d'emmagasinage d'adresse est couplé entre l'un différent desdits pro- cesseurs et ladite mémoire et répond à des signaux venant dudit moyen de commande en recevant-de l'un respectif desdits processeurs une information d'adresse qui identifie des emplacements dans ladite mémoire, et répond à des signaux venant dudit moyen de commande en utilisant, après cela, l'information d'adresse mémorisée pour com- mander le transfert de mots entre lesdits tampons et des emplacements de mémoire identifiés. 3 Système selon la revendication 1 ou 2, caractérisé en ce que chaque mot est constitué de Y ( 32) bits et en ce que ladite mémoire comprend Y parties ( 38-1 à 38-32), emmagasinant chacune un bit respectif de chacun des mots qui y sont emmagasinés; et chaque tampon comprend Y registres -1, l 1-32), emmagasinant chacun l'un différent des Y bits de chaque mot qui y est emmagasiné. 4 Système selon la revendication 1, 2 ou 3, carac- térisé en ce que tous les tampons sont connectés à ladite mémoire par un bus à plusieurs conducteurs commun ( 42).