[go: up one dir, main page]

FR2692382A1 - Parallel processor for processing multiple data by a series of repetitive instructions. - Google Patents

Parallel processor for processing multiple data by a series of repetitive instructions. Download PDF

Info

Publication number
FR2692382A1
FR2692382A1 FR9207261A FR9207261A FR2692382A1 FR 2692382 A1 FR2692382 A1 FR 2692382A1 FR 9207261 A FR9207261 A FR 9207261A FR 9207261 A FR9207261 A FR 9207261A FR 2692382 A1 FR2692382 A1 FR 2692382A1
Authority
FR
France
Prior art keywords
data
memory
lines
bits
words
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR9207261A
Other languages
French (fr)
Inventor
Eugene Remi
Draman Cemal
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
TECHNIUM
Original Assignee
TECHNIUM
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by TECHNIUM filed Critical TECHNIUM
Priority to FR9207261A priority Critical patent/FR2692382A1/en
Priority to PCT/FR1993/000596 priority patent/WO1993025976A1/en
Publication of FR2692382A1 publication Critical patent/FR2692382A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
    • G06F15/8015One dimensional arrays, e.g. rings, linear arrays, buses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Complex Calculations (AREA)
  • Image Processing (AREA)

Abstract

A parallel processor comprising: an assembly (21) of alpha series of K elemental arithmetic units (UCEi,j), wherein each of the elemental arithmetic units (UCEi,j) has M data input lines (Lce) and N data output lines (Lcs), and each of said lines (Lce, Lcs) is connected to one of the input/output lines (Lces) of the assembly (21); a bulk memory (22) having O input/output lines (Lmes) for writing in and reading out words of O bits, said assembly (21) transferring data to and from said bulk memory; a transposing structure performing the "direct" conversion of a set of Q data items having P bits into P words having Q bits, said transposing structure further performing the "reciprocal" conversion of P' words having Q' bits into Q' data items having P' bits; and a set of ports (24) for transferring data to and from the assembly (21), the memory (22) and the transposing structure (23). Said processor may be used to perform repetitive processing, particularly image processing.

Description

i 2692382 La présente invention concerne un processeur parallèle pour leThe present invention relates to a parallel processor for

traitement rapide d'un nombre important de données selon un algorithme identique pour chacune des données Un tel processeur est en particulier destiné au traitement d'images,  fast processing of a large number of data according to an identical algorithm for each of the data Such a processor is in particular intended for image processing,

pixel par pixel, et temps réel.pixel by pixel, and real time.

on connait dans l'état de la technique différents types de processeurs à architecture parallèle, en particulier des processeurs fonctionnant selon le mode "simple flot d'instruction, multiple flots de données" Pour les processeurs de l'état de la technique, une seule unité de contrôle gère le fonctionnement d'une pluralité d'unités de calculs, et  various types of parallel architecture processors are known in the state of the art, in particular processors operating according to the "simple instruction flow, multiple data streams" mode. For the processors of the state of the art, a single control unit manages the operation of a plurality of calculation units, and

plusieurs données sont traitées simultanément.  several data are processed simultaneously.

L'association d'un nombre important d'unités de calcul interconnectées, intégrant chacune des mémoires vives pour le stockage des données et des informations relatives au traitement, ainsi que le résultat des  The association of a large number of interconnected computing units, each integrating RAMs for storing data and processing information, as well as the result of

traitements, forme un réseau matriciel.  treatments, forms a matrix network.

Le parallélisme de type "simple flot d'instruction, multiple flots de données" est en particulier adapté aux traitements de bas niveau, c'est-à-dire pour les opérations ponctuelles ou sur un voisinage indépendant de la position du pixel dans  The parallelism of the type "simple instruction flow, multiple data streams" is particularly suitable for low level processing, that is to say for point operations or on a neighborhood independent of the position of the pixel in

l'image.the image.

Le brevet américain US 4 144 566 décrit en particulier un processeur parallèle comportant un grand nombre de processeurs élémentaires raccordés en parallèle sur un bus d'adresse et un bus de commande, et comportant chacun une mémoire et des moyens de commande et de calcul pour opérer des calculs sur les bits adressés dans la mémoire et sur des bits provenant soit de la mémoire interne, soit d'organes périphériques extérieurs La mémoire de masse et lesdits moyens de commande et de calcul sont interconnectés à une mémoire rapide de faible capacité, les moyens de commande comportant une seule bascule de stockage permettant d'opérer en série des calculs sur  US Pat. No. 4,144,566 describes in particular a parallel processor comprising a large number of elementary processors connected in parallel on an address bus and a control bus, and each comprising a memory and control and calculation means for operating calculations on the bits addressed in the memory and on bits coming either from the internal memory or external peripheral members The mass memory and said control and calculation means are interconnected to a fast memory of low capacity, the means control system comprising a single storage scale for serial operation of calculations on

2 26923822 2692382

les bits extraits de la mémoire et/ou provenant dudit périphérique. Par "moyen de commande", on entend en particulier des structures permettant d'aiguiller l'information depuis une ou plusieurs sources vers une ou plusieurs destinations, et notamment des multiplexeurs. Afin d'améliorer la puissance et la vitesse de calcul, le brevet américain US 4 215 401 décrit un processeur parallèle massif comportant une pluralité d'unités de calcul élémentaires UCE, chacune des unités de calcul élémentaires étant reliée aux unités de calcul élémentaires voisines pour former une matrice d'unités de calcul élémentaires interconnectées de dimension N x M Les unités de calcul élémentaires sont  the bits extracted from the memory and / or from said device. By "control means" is meant in particular structures for routing information from one or more sources to one or more destinations, including multiplexers. In order to improve the power and the speed of calculation, US Pat. No. 4,215,401 describes a massive parallel processor comprising a plurality of elementary calculation units UCE, each of the elementary calculation units being connected to neighboring elementary calculation units for form a matrix of interconnected elementary computing units of dimension N x M The elementary calculation units are

en outre reliées à un contrôleur central.  further connected to a central controller.

Chacune des unités de calcul élémentaires comprend une mémoire vive, un accumulateur à un bit d'entrée, un accumulateur à un bit de sortie et une porte NAND L'usage de portes NAND comme l'unité de traitement, et l'organisation des mémoires impliquent une relative complexité des séquences d'instruction et  Each of the elementary calculation units comprises a random access memory, an accumulator with an input bit, an accumulator with an output bit and a NAND gate. The use of NAND gates as the processing unit, and the organization of the memories imply a relative complexity of the training sequences and

une limitation de la vitesse de traitement.  a limitation of the processing speed.

Le brevet européen O 122 048 divulgue un Ordinateur de traitement en parallèle de données, comprenant une pluralité de cellules de traitement (P) et un dispositif de commande pour engendrer des signaux de commande en réponse à des instructions de programme, chaque cellule comprenant un élément de traitement arithmétique ayant trois bornes d'entrée (Dl, D 2,C) et une pluralité de bornes de sortie (PLUS, RETENUE; +, CY, BW) Chaque cellule comprend en outre une pluralité de mémoires pouvant être commandées pour fournir des signaux d'entrée de données aux bornes d'entrée de l'élément de traitement en réponse a des signaux de commande provenant du dispositif de commande Les mémoires sont connectées au dispositif de commande et a l'élément de traitement arithmétique  European Patent 0 122 048 discloses a parallel data processing computer, comprising a plurality of processing cells (P) and a controller for generating control signals in response to program instructions, each cell comprising an element arithmetic processor having three input terminals (D1, D2, C) and a plurality of output terminals (PLUS, RETENTION; +, CY, BW) Each cell further comprises a plurality of controllable memories for providing data input signals to the input terminals of the processing element in response to control signals from the controller The memories are connected to the controller and the arithmetic processing element

3 26923823 2692382

de telle sorte qu'à la fois des opérations arithmétiques et des opérations logiques, comprenant des opérations logiques mettant en jeu une pluralité de signaux d'entrée de données, puissent être exécutées par l'élément de traitement arithmétique en réponse à l'application sélective d'un niveau logique de UN binaire ou de ZERO binaire en provenance de l'une des mémoires à l'une des bornes d'entrée de l'élément de traitement. Le but de la présente invention est d'optimiser le processeur afin d'équilibrer les ressources consacrées à la gestion de la mise en forme des données et à l'alimentation des unités de calcul élémentaires en données d'une part, et les ressources consacrées à l'exécution des traitement logiques et/ou  such that both arithmetic operations and logical operations, including logical operations involving a plurality of data input signals, can be performed by the arithmetic processing element in response to the selective application a logic level of a binary ONE or binary ZERO from one of the memories to one of the input terminals of the processing element. The purpose of the present invention is to optimize the processor in order to balance the resources devoted to the management of data formatting and the supply of the elementary computing units to data on the one hand, and the resources devoted to at the execution of logical processing and / or

arithmétique d'autre part.arithmetic on the other hand.

A cet effet, l'invention concerne plus particulièrement un processeur parallèle constitué, outre une partie de contrôle générant l'ensemble des commandes nécessaire au fonctionnement de la partie affectée au calcul et à la gestion des données, par: un ensemble d'UCE de a séries de Kunités de calcul élémentaires UC Eij, i désignant un entier compris entre 1 et acet j désignant un entier compris entre 1 et K, ledit ensemble comportant L lignes d'entrée-sortie, chacune des unités de calcul élémentaires UC Ei,j disposant de M lignes Lce pour l'entrée de données et de N lignes Lcs pour la sortie de données, chacune de ces lignes Lce, Lcs étant connectée à l'une des lignes d'entrée-sortie Lces de l'ensemble; une mémoire de masse de grande capacité disposant de O lignes d'entrée-sortie Lmes pour l'écriture et la lecture de mots de O bits, l'ensemble échangeant des données avec ladite mémoire de masse; une structure de transposition effectuant la transformation dite "directe" d'un ensemble de Q données de P bits en un ensemble de P mots de Q bits,  For this purpose, the invention relates more particularly to a parallel processor constituted, in addition to a control part generating all the commands necessary for the operation of the part assigned to the calculation and data management, by: a set of UCE of a series of elementary calculating Kunits UC Eij, i denoting an integer between 1 and acet j denoting an integer between 1 and K, said set comprising L input-output lines, each of the elementary calculation units UC Ei, j having M lines Lce for data input and N lines Lcs for data output, each of these lines Lce, Lcs being connected to one of the input-output lines Lces of the set; a large-capacity mass memory having O lines of input-output Lmes for writing and reading O-bit words, the set exchanging data with said mass memory; a transposition structure performing the so-called "direct" transformation of a set of Q data of P bits into a set of P words of Q bits,

4 26923824 2692382

un mot étant constitué par l'association des Q bits de poids équivalent des Q données, ladite structure de transposition assurant par ailleurs la transformation dite "réciproque" de P' mots de Q' bits en Q' données de P' bits Une telle structure communique avec les ports d'entrée- sortie grâce à l'entrée de "données" ayant respectivement P et P' bits, et avec la mémoire de masse par des "mots" ayant respectivement Q et Q' bits Les lignes permettant ces échanges peuvent être monodirectionnelles ou bidirectionnelles, et distinctes ou communes pour les transferts de "données" et de "mots"; un ensemble de ports permettant l'échange de données entre la structure de transposition ou la mémoire de masse d'une part et l'extérieur d'autre part Les différents ports ne comportent pas obligatoirement le même nombre de lignes, et peuvent être individuellement mono-directionnels ou bidirectionnels; l'ensemble d'UCE échangeant des données avec la mémoire, la mémoire échangeant des données avec la structure de transposition et avec l'ensemble de ports et la structure de transposition échangeant des  a word being constituted by the association of the Q bits of equivalent weight of the given Q's, the said transposition structure ensuring, moreover, the so-called "reciprocal" transformation of P 'words of Q' bits into Q 'data of P' bits Such a structure communicates with the input-output ports by means of the input of "data" having respectively P and P 'bits, and with the mass memory by "words" having respectively Q and Q' bits. The lines allowing these exchanges can be one-way or two-way, and distinct or common for "data" and "word" transfers; a set of ports allowing the exchange of data between the transposition structure or the mass memory on the one hand and the outside on the other hand The different ports do not necessarily have the same number of lines, and can be individually mono -directional or bidirectional; the set of UCE exchanging data with the memory, the memory exchanging data with the transposition structure and with the set of ports and the transposition structure exchanging data.

données avec l'ensemble de ports.data with the set of ports.

Dans la présente description, une "Donnée"  In the present description, a "Data"

regroupe l'ensemble des bits d'une même information.  groups all the bits of the same information.

Un "Mot" regroupe l'ensemble des bits de  A "Word" includes all the bits of

même poids d'un ensemble de données.  same weight of a dataset.

La transposition de donnée en mot est désignée par "transposition directe" alors que la transposition de "mots" en "données" est désignée par  The translation of data into words is referred to as "direct transposition" while the translation of "words" into "data" is designated by

"transposition réciproque"."reciprocal transposition".

Dans le processeur selon l'invention, chacune des unités de calcul élémentaire UC Ej,j effectue un traitement identique sur les données provenant de la mémoire de masse, selon des instructions fournies de façon identique par le contrôleur central à chaque unité de calcul élémentaire UC Ei,j Ce mode de  In the processor according to the invention, each of the elementary calculation units UC Ej, j carries out an identical processing on the data coming from the mass memory, according to instructions provided identically by the central controller to each elementary calculation unit UC Ei, j This mode of

26923822692382

réalisation permet de limiter les flux de données et donc d'accélérer la vitesse de traitement d'un nombre  realization allows to limit the flow of data and thus speed up the processing speed of a number

important de données.important data.

Le nombre x K d'unités de calcul élémentaires est typiquement compris entre quelques dizaines et plusieurs milliers, et dépend essentiellement des progrès technologiques en matière  The number x K of elementary calculation units is typically between a few tens and several thousand, and depends essentially on the technological progress in

d'intégration de circuits.circuit integration.

Le nombre L de lignes d'entrée-sortie est égal au nombre d'unités de calcul, à un sous-multiple  The number L of input-output lines is equal to the number of calculation units, to a sub-multiple

ou à un multiple de ce nombre.or a multiple of that number.

Le nombre M d'entrées de chacune des unités de calcul élémentaires est typiquement compris entre 1  The number M of entries of each of the elementary calculation units is typically between 1

et 32.and 32.

Le nombre N de sorties de chacune des unités de calcul élémentaires est typiquement compris  The number N of outputs of each of the elementary calculation units is typically comprised

entre 1 et 32.between 1 and 32.

la longueur O de lignes d'entrée-sortie Lmes de la mémoire de masse de grande capacité est égal à L ou à un sous-multiple de L. P et P' sont égaux au nombre de lignes des ports externes auxquels ils sont connectés Q et Q' sont égaux à la longueur O de lignes d'entrée-sortie Lmes de la mémoire de masse ou à  the length O of input-output lines LMS of the mass memory of large capacity is equal to L or to a sub-multiple of L. P and P 'are equal to the number of lines of the external ports to which they are connected Q and Q 'are equal to the length O of input-output lines Lmes of the mass memory or to

des sous-multiple de 0.sub-multiple of 0.

Les transferts entre l'ensemble d'unités de calcul élémentaires et la mémoire de grande capacité dépendent des valeurs de O et L: * si O = L, l'ensemble des informations présent en sortie d'une des éléments est transféré en un cycle à l'entrée de l'autre élément * si O < L, les informations présentes en sortie de l'ensemble d'unités de calcul élémentaires sont transmises intégralement ou partiellement en un ou plusieurs cycles, ceci en connectant pour chaque cycle O des L lignes de l'ensemble d'unités de calcul élémentaires aux O lignes de la mémoire de grande capacité Les informations présentes en sortie de la  The transfers between the set of elementary calculation units and the high-capacity memory depend on the values of O and L: * if O = L, all the information present at the output of one of the elements is transferred in one cycle at the input of the other element * if O <L, the information present at the output of the set of elementary calculation units is transmitted in whole or in part in one or more cycles, this being connected for each cycle O L lines of the set of computational units elementary O rows of the memory of large capacity The information present at the output of the

6 26923826 2692382

mémoire de grande capacité sont transmises en un cycle à O des L lignes de l'ensemble d'unités de calcul élémentaires les unités de calcul élémentaires non  large capacity memory are transmitted in a cycle at O of the L rows of the set of elementary calculation units the elementary calculation units not

sollicitées sont bloquées en écriture.  solicited are blocked in writing.

Les transferts entre la mémoire de grande capacité et la structure de transposition dépendent des valeurs de O, Q et Q' * si Q = O L'ensemble des informations présent en sortie de structure de transposition est transféré en un cycle à l'entré de la mémoire de grande capacité * Si Q < O Les informations présentes en sortie de structure de transposition sont transmises en un cycle a Q des O lignes de la mémoire de grande capacité la partie de la mémoire de grande capacité  The transfers between the high capacity memory and the transposition structure depend on the values of O, Q and Q '* if Q = O The set of information present at the output of the transposition structure is transferred in a cycle to the input of the large capacity memory * If Q <O The information present at the output of the transposition structure is transmitted in one cycle to Q of the O lines of the high-capacity memory part of the large-capacity memory

non sollicitée est bloquée en écriture.  unsolicited is blocked in writing.

* si Q' = L L'ensemble des informations présent en sortie de la mémoire de grande capacité est transféré en un cycle à l'entré de structure de transposition * si Q' < O les informations présentes en sortie de la mémoire de grande capacité sont transmises intégralement ou partiellement en un ou plusieurs cycles ceci en connectant, pour chaque cycle, Q des O lignes de la mémoire de grande capacité aux Q lignes  * if Q '= L The set of information present at the output of the high-capacity memory is transferred in a cycle to the input of the transposition structure * if Q' <O the information present at the output of the high-capacity memory are transmitted in whole or in part in one or more cycles by connecting, for each cycle, Q O lines of the high capacity memory to the Q lines

de structure de transposition.transposition structure.

Les transferts de la mémoire de grande capacité vers l'ensemble de ports ainsi que les transferts entre l'ensemble de ports et la mémoire de grande capacité dépendent des valeurs de R désignant le nombre de lignes du ports sollicité par le transfert qui est inférieur à O. Pour les transferts de la mémoire de grande capacité vers un port configuré en sortie, les informations présentes en sortie de la mémoire de grande capacité sont transmise intégralement ou partiellement en un ou plusieurs cycles, en connectant  The transfers of the large-capacity memory to the set of ports as well as the transfers between the set of ports and the high-capacity memory depend on the values of R denoting the number of lines of the ports requested by the transfer which is less than O. For transfers from high capacity memory to an output configured port, the information present at the output of the high capacity memory is transmitted in whole or in part in one or more cycles, by connecting

7 26923827 2692382

R des O lignes de la mémoire de grande capacité aux R  R O rows of high-capacity memory to R

lignes du port sollicité en sortie, pour chaque cycle.  lines of the port solicited at the output, for each cycle.

Pour les transferts d'un port configuré en entrée vers la mémoire de grande capacité, les informations présentes sur le port configuré en entrée sont transmises en un cycle à R des O lignes de la mémoire de grande capacité La partie de la mémoire non  For transfers from a port configured as an input to the high-capacity memory, the information on the port configured as input is transmitted in one cycle to R of the O lines of the high-capacity memory.

sollicitée est bloqué en écriture.  solicited is blocked in writing.

Les transferts entre un port et la structure de transposition dépendent des valeurs de P, P' et de R. Les informations présentes en sortie "données" de la structure de transposition sont transmises en un cycle au port configuré en sortie (R =  The transfers between a port and the transposition structure depend on the values of P, P 'and R. The information present at the "data" output of the transposition structure is transmitted in one cycle to the port configured at the output (R =

P).P).

Les information présentes sur un port configuré en entrée sont transmises en un cycle à l'entrée "données" de la structure de transposition (R = P). Selon un mode de réalisation simplifié, chacune des K unités de calcul élémentaires UC Ej d'une série i d'unités de calcul élémentaires UC Ei,j accède aux éléments de mémoire Mj-r à Mj+r et écrit dans les éléments de mémoire Mj-s à Mj+s sans échanger de données avec une unités de calcul élémentaires UC Ej T ou jÉj' Avantageusement, chacune des K unités de calcul élémentaires UC Ei,j accède aux éléments de mémoire Mi-t, j-r à Mi+t,j+r et écrit dans les éléments de mémoire Mi-u,j-s à Mi+uj+s sans échanger de données avec une unités de calcul élémentaires UC Eji,jr o iÉil et jÉj'. La présente invention sera mieux comprise à  The information present on a port configured as input is transmitted in one cycle to the "data" input of the transposition structure (R = P). According to a simplified embodiment, each of the K elementary calculation units UC Ej of a series i of elementary calculation units UC Ei, j accesses the memory elements Mj-r to Mj + r and writes to the memory elements Mj-s to Mj + s without exchanging data with a unitary calculation unit UC Ej T or jEj 'Advantageously, each of the K elementary calculation units UC Ei, j accesses the memory elements Mi-t, jr to Mi + t , j + r and written in the memory elements Mi-u, js to Mi + uj + s without exchanging data with a unitary calculation unit UC Eji, jr oIEil and jEj '. The present invention will be better understood at

la lecture de la description qui suit, faisant  reading the following description, making

référence aux dessins annexés o: la figure 1 représente schématiquement l'environnement d'un processeur selon l'invention; la figure 2 représente la structure générale du processeur selon l'invention;  1 schematically represents the environment of a processor according to the invention; FIG. 2 represents the general structure of the processor according to the invention;

8 26923828 2692382

la figure 3 représente de façon schématique l'architecture d'un élément de mémoire de la structure de transposition, selon un premier mode de  FIG. 3 schematically represents the architecture of a memory element of the transposition structure, according to a first embodiment of FIG.

réalisation; -production; -

la figure 4 représente le réseau de mémoires et les liaisons avec les différents BUS; la figure 5 représente le schéma de principe d'une cellule du réseau de mémoire; la figure 6 représente de façon schématique l'architecture d'un deuxième mode de réalisation d'un élément de mémoire de la structure de transposition; la figure 7 représente le réseau de mémoires et les liaisons avec les différents BUS; la figure 8 représente le schéma de principe d'une cellule du réseau de mémoire; la figure 9 représente de façon schématique l'architecture d'un troisième mode de réalisation d'un élément de mémoire de la structure de transposition; la figure 10 représente le réseau de mémoires et les liaisons avec les différents BUS; la figure 11 représente le schéma de principe d'une cellule du réseau de mémoire; la figure 12 représente l'architecture  FIG. 4 represents the network of memories and the links with the various BUSs; FIG. 5 represents the block diagram of a cell of the memory network; FIG. 6 schematically represents the architecture of a second embodiment of a memory element of the transposition structure; FIG. 7 represents the network of memories and the links with the various BUSs; FIG. 8 represents the block diagram of a cell of the memory network; Figure 9 schematically shows the architecture of a third embodiment of a memory element of the transposition structure; FIG. 10 represents the network of memories and the links with the various BUSs; Fig. 11 shows the block diagram of a cell of the memory array; Figure 12 shows the architecture

d'une Unité de Calcul élémentaire.  a Basic Calculus Unit.

La figure 1 représente l'architecture d'ensemble d'un exemple d'application d'un processeur selon l'invention La chaîne de traitement d'image  FIG. 1 shows the overall architecture of an exemplary application of a processor according to the invention. The image processing chain

comporte essentiellement trois modules ( 1 à 3).  essentially comprises three modules (1 to 3).

Le premier module est constitué par une station de travail en imagerie ( 1) capable d'acquérir et de restituer des images en temps réel, connecté à  The first module consists of an imaging workstation (1) capable of acquiring and reproducing images in real time, connected to

une caméra numérique ( 5) et à un moniteur ( 6).  a digital camera (5) and a monitor (6).

Cette station de travail est généralement équipée d'un processeur vidéo ( 7) dotée d'une mémoire de programme locale ( 8), d'une mémoire de données ( 9) permettant de mémoriser les informations provenant d'une caméra, ou destinées au transfert vers un moniteur, et de plusieurs opérateurs câblés pour  This workstation is generally equipped with a video processor (7) provided with a local program memory (8), a data memory (9) for storing information from a camera, or for transfer to a monitor, and several operators wired for

réaliser des fonctions spécifiques.  perform specific functions.

Le deuxième module ( 3) peut être composé d'un processeur unique ou d'un processeur de type Multiple instruction Multiple donnée, dont le processeur élémentaire peut être un processeur  The second module (3) can be composed of a single processor or a multiple Multiple instruction type given processor, whose elementary processor can be a processor

classique, un processeur vectoriel, un transputer.  classic, a vector processor, a transputer.

Ce deuxième module ( 3) assure les transformations moyen et haut niveau tel que le passage  This second module (3) ensures the medium and high level transformations such as the passage

image à liste et le traitement de ces listes.  list image and the processing of these lists.

Le troisième module ( 4) est constitué par un processeur selon l'invention, comportant une structure de calcul ( 101) destinée au traitement en temps réel vidéo sur la base d'algorithmes du bas  The third module (4) is constituted by a processor according to the invention, comprising a calculation structure (101) intended for video real-time processing on the basis of lower algorithms.

niveau en traitement d'images (calculs sur voisinages).  level in image processing (neighborhood calculations).

Cette structure de calcul ( 101) reçoit des commandes provenant d'un contrôleur central ( 102) générant les instructions nécessaires au fonctionnement de la  This computing structure (101) receives commands from a central controller (102) generating the instructions necessary for the operation of the

structure de calcul ( 101).computing structure (101).

L'ensemble de l'architecture est connectée d'une part à un BUS industriel standard (référencé "Multibus" sur la figure 1) pour les commandes, et d'autre part sur un ensemble de BUS vidéo numérique (référencé "BUS images" sur la figure 1) pour les échanges de données qui permettent des échanges de type pipeline ou, par un système d'aiguillage, des  The entire architecture is connected on the one hand to a standard industrial bus (referenced "Multibus" in Figure 1) for commands, and secondly on a set of digital video BUS (referenced "BUS images" in FIG. 1) for data exchanges that allow pipeline type exchanges or, by a referral system,

communications plus complexes.more complex communications.

La figure 2 représente la structure  Figure 2 shows the structure

générale du processeur selon l'invention.  general processor according to the invention.

Dans l'exemple décrit, le processeur comporte: un ensemble d'UCE ( 21) de 512 unités de calcul élémentaires identiques Cet ensemble forme un réseau uni-dimensionnel dans lequel chaque processeur élémentaire dispose d'une ligne de sortie et de 7 lignes d'entrée Chacune des lignes d'indice i parmi les L= 512 lignes d'entrée-sortie de l'ensemble d'UCE ( 21) est connecté à la sortie du processeur élémentaire d'indice i et à l'entrée des 7 processeurs élémentaires  In the example described, the processor comprises: a set of UCE (21) of 512 identical elementary calculation units This set forms a uni-dimensional network in which each elementary processor has an output line and 7 d-lines Each of the lines of index i among the L = 512 input-output lines of the set of ECUs (21) is connected to the output of the elementary processor of index i and to the input of the 7 processors elementary

d'indice i-3 à i+ 3.of index i-3 to i + 3.

une mémoire de masse ( 22) disposant de 512 lignes d'entrée-sortie de données et qui permet  a mass memory (22) having 512 data input-output lines and which allows

l'écriture de mots de 512 bits.the writing of 512-bit words.

une structure de transposition ( 23) composée de deux mémoires de transposition 32 * 512 identiques et indépendantes ayant chacune un adressage permettant la lecture ou l'écriture sous un format "donnée" ( 32 bits) et la lecture et l'écriture sous le format "mot"( 512 bits) Chacune des mémoires de transposition permet à tout moment d'effectuer soit une transposition données-mots, soit une transposition  a transposition structure (23) composed of two identical and independent transposition memories 32 * 512 each having an address allowing reading or writing in a "given" format (32 bits) and reading and writing in the format "word" (512 bits) Each of the transposition memories makes it possible at any time to perform either a transposition of data-words or a transposition.

mots-données.data words.

un ensemble de ports ( 24) composé dans l'exemple décrit de deux ports bi-directionnels de 32 bits. Le processeur selon l'invention communique avec son environnement extérieur par des données de 32 bits ( Q = Q' = 32) Par contre, la communication entre l'ensemble d'unités de calcul ( 21) et la mémoire de masse ( 22) ainsi que la communication entre la mémoire de masse et la structure de transposition s'effectue avec des données de 512 bits  a set of ports (24) composed in the example described of two bi-directional 32-bit ports. The processor according to the invention communicates with its external environment by 32-bit data (Q = Q '= 32) On the other hand, the communication between the set of calculation units (21) and the mass memory (22) as well as the communication between the mass memory and the transposition structure is carried out with data of 512 bits

(K=L=O=P=P'= 512).(K = L = O = P = P '= 512).

La description qui suit concerne plus  The following description concerns more

particulièrement différentes formes de réalisation de  particularly different embodiments of

la structure de transposition.the transposition structure.

La transposition de "mots" de 32 bits en "données" de 512 bits est assurée par une ou plusieurs mémoires dites de transposition ou "mémoires orthogonales" De tels éléments permettent d'effecteur soit les transformations directes (écriture de "données", lecture de "mots"), soit les transformations réciproques (écriture de "mots", lecture de "données"),  The transposition of 32-bit "words" into "data" of 512 bits is provided by one or more so-called transposition memories or "orthogonal memories". Such elements make it possible to perform either direct transformations (writing of "data", reading of "words"), ie the reciprocal transformations (writing of "words", reading of "data"),

soit les deux transformations.either the two transformations.

il 2692382 Les Ecritures ou Lectures d'informations dans un format peuvent se faire soit par décalage, soit par adressage On peut distinguer trois types d'éléments de transposition: un premier type à double décalage orthogonal o le décalage dans une direction correspond à l'accès sous un format alors que le décalage dans une direction orthogonale correspond à l'accès sous l'autre format; un deuxième type à double adressage croisé, un adressage correspondant à l'accès sous un format et l'autre adressage correspondant à l'adressage sous l'autre format; un troisième type hybride permettant l'accès à un format par décalage et l'accès à l'autre  2692382 The writing or reading of information in a format can be done either by shift or by addressing. Three types of transposition elements can be distinguished: a first type with orthogonal double offset o the shift in one direction corresponds to the access in one format while the offset in an orthogonal direction corresponds to the access in the other format; a second type with double crossed addressing, an addressing corresponding to the access in one format and the other addressing corresponding to the addressing in the other format; a third hybrid type allowing access to a shift format and access to the other

format par adressage.format by addressing.

Les figures 3 à 11 représente des mémoires de transposition ayant des accès donnée et mot par adressage. Dans le cas o la structure de transposition ( 23) est composée d'une mémoire de transposition à lecture écriture "mots" et lecture écriture "données" une tel mémoire permet d'effectuer aussi bien les transformations directes que  FIGS. 3 to 11 represent transposition memories having address and word accesses by addressing. In the case where the transposition structure (23) is composed of a read translation memory "words" and read write "data" such a memory makes it possible to carry out both the direct transformations that

réciproques, comme illustrée par les figures 3 à 5.  reciprocal, as illustrated in Figures 3 to 5.

La figure 3 représente de façon schématique l'architecture de la structure de transposition, constituée par une mémoire à Lecture et à Ecriture "données"et à Lecture Ecriture "mots" La figure 4 représente le réseau de  FIG. 3 schematically represents the architecture of the transposition structure, constituted by a read and write memory "data" and read write "words". FIG.

mémoires et les liaisons avec les différents BUS.  memories and links with different BUS.

Chaque cellule ( 28 à 31) dont la figure 5 représente le schéma de principe communique avec: des lignes de commande d'Ecriture "mots" ( 32), des lignes de commande de Lecture "mots" ( 33) des lignes de "données" en Ecriture ( 34) des lignes de "données" en Lecture ( 35) des lignes de "mots" en Ecriture ( 36)  Each cell (28 to 31) of which FIG. 5 represents the block diagram communicates with: write command lines "words" (32), read command lines "words" (33) "data" lines "Writing (34) lines of" data "in Reading (35) lines of" words "in Writing (36)

12 2692382122692382

des lignes de "mots" en Lecture ( 37) des lignes de commande d'Ecriture "données" ( 38) des lignes de commande de Lecture "données"  lines of "words" in Reading (37) command lines Write "data" (38) command lines Read "data"

( 40).(40).

Chaque cellule élémentaire ( 28 à 31) comporte: une porte OR ( 41) dont les entrées reçoivent les signaux de commande d'Ecriture "données" et de commande d'Ecriture "mots" par les lignes ( 32) et ( 38), une porte OR dont les entrées sont reliées aux lignes de "mots" en écriture ( 36) et de "données" en Ecriture ( 34) une mémoire ( 45) une porte ( 43) commandée par le signal provenant des lignes de commande de Lecture "mots" ( 33) et dont la sortie est reliée aux lignes de "mots" en lecture ( 37) une porte ( 44) commandée par le signal provenant des lignes de commande de lecture "données" ( 40) et dont la sortie est reliée aux lignes de  Each elementary cell (28 to 31) comprises: an OR gate (41) whose inputs receive the "Write" command and Write command commands "words" via the lines (32) and (38), an OR gate whose inputs are connected to the lines of "words" for writing (36) and of "data" in Writing (34) a memory (45) a gate (43) controlled by the signal coming from the command lines of Reading "words" (33) and whose output is connected to the reading "word" lines (37) a gate (44) controlled by the signal from the "data" read command lines (40) and whose output is connected to the lines of

"données" en Lecture ( 35)."Data" in Reading (35).

Dans le cas o l'élément de mémoire de la structure de transposition ( 23) n'assure pas les deux transformations, on peut distinguer une première architecture de mémoire qui assure les transformations directe de données en mots (figures 6 à 8) et une seconde architecture de mémoire qui assure la transformation réciproque de mots en données (figure 9  In the case where the memory element of the transposition structure (23) does not provide the two transformations, it is possible to distinguish a first memory architecture which ensures the direct transformation of data into words (FIGS. 6 to 8) and a second memory architecture that ensures the reciprocal transformation of words into data (Figure 9

à 11).to 11).

La figure 6 représente l'architecture générale de la mémoire à Ecriture "données" et à Lecture "mots" La figure 7 représente le réseau de  FIG. 6 represents the general architecture of the "Write" memory and the "Word" read. FIG.

mémoires et les liaisons avec les différents BUS.  memories and links with different BUS.

Chaque cellule ( 50 à 53) dont la figure 8 représente le schéma de principe communique avec:  Each cell (50 to 53) of which FIG. 8 represents the block diagram communicates with:

13 269238213 2692382

des lignes de commande de Lecture "mots" ( 57) des lignes de "données" en Ecriture ( 55) des lignes de "mots" en Lecture ( 56) des lignes de commande d'Ecriture "données" ( 54) Chaque cellule élémentaire ( 50 à 53) comporte: une mémoire ( 58) recevant les signaux les lignes de commande d'Ecriture "données" ( 54) et des lignes de "données" en Ecriture ( 55), une porte ( 59) commandée par le signal provenant des lignes de commande de Lecture ( 57) et dont la sortie est reliée aux lignes de "mots" en  command lines for reading "words" (57) lines of "data" in writing (55) lines of "words" in reading (56) lines of writing command "data" (54) each elementary cell (50 to 53) comprises: a memory (58) receiving the signals the write command lines "data" (54) and lines of "data" in writing (55), a door (59) controlled by the signal from the command lines of Reading (57) and whose output is connected to the lines of "words" in

Lecture ( 56).Reading (56).

La figure 9 représente l'architecture générale de la seconde mémoire, à Lecture "données" et à Ecriture "mots" La figure 10 représente le réseau de  FIG. 9 represents the general architecture of the second memory, reading "data" and writing "words". FIG.

mémoires et les liaisons avec les différents BUS.  memories and links with different BUS.

Chaque cellule ( 60 à 63) dont la figure 11 représente le schéma de principe communique avec: des lignes de commande d'Ecriture "mots" ( 67), des lignes de "données" en Lecture ( 66) des lignes de "mots" en Ecriture ( 64) des lignes de commande de Lecture "données" ( 65) Chaque cellule élémentaire ( 60 à 63) comporte: une mémoire ( 68) recevant les signaux des lignes de commandes d'Ecriture ( 67) et des lignes de"mots" en Ecriture ( 64), une porte ( 69) commandée par le signal provenant des lignes de commande de Lecture ( 65) et dont la sortie est reliée aux lignes de données en  Each cell (60 to 63) of which Fig. 11 represents the block diagram communicates with: write command lines "words" (67), read "data" lines (66) lines of "words" in Writing (64) "Data" read command lines (65) Each elementary cell (60 to 63) comprises: a memory (68) receiving the signals of the write command lines (67) and lines of " "Writing" (64), a gate (69) controlled by the signal from the read control lines (65) and whose output is connected to the data lines in

Lecture ( 66).Reading (66).

La figure 12 représente l'architecture d'une Unité de Calcul élémentaire Chaque Unité de Calcul élémentaire est constituée par deux mémoires vives RAM I ( 70) et RAM II ( 71), du type mémoire double accès pour permettre la lecture et l'écriture simultanée à des adresses différentes, composées chacune de r mots de un bit, et par deux structures de calcul, la première structure de calcul ( 72) étant une unité arithmétique et logique bit série et la seconde structure de calcul ( 73) étant une unité arithmétique  FIG. 12 represents the architecture of an elementary computing unit Each elementary computing unit is constituted by two RAM I RAMs (70) and RAM II (71), of the dual access memory type to enable reading and writing simultaneous to different addresses, each consisting of r words of one bit, and by two computing structures, the first computing structure (72) being an arithmetic and logical bit series unit and the second computing structure (73) being a unit arithmetic

mot parallèle.parallel word.

L'Unité de Calcul élémentaire comporte en outre un ensemble ( 74)de multiplexeurs et de registres reliant les sorties et les entrées des éléments. Dans l'exemple décrit, on dispose d'une  The elementary computing unit further comprises a set (74) of multiplexers and registers connecting the outputs and inputs of the elements. In the example described, there is a

ligne de sortie et de 7 lignes d'entrée de données.  output line and 7 data input lines.

La présente invention est décrite dans ce qui précède en référence à un exemple de réalisation  The present invention is described in the foregoing with reference to an exemplary embodiment.

non limitatif.non-limiting.

26923822692382

Claims (6)

R E V E N D I C A T I O N SR E V E N D I C A T IO N S 1 Processeur parallèle comportant une pluralité d'unités de calcul élémentaires identiques, des mémoires pour le stockage des données et au moins un contrôleur générant l'ensemble des commandes nécessaire au fonctionnement de la partie affectée au calcul et à la gestion des données, caractérisé en ce qu'il comporte: un ensemble de ( 21) de a séries de K unités de Calcul Elémentaires UC Ei, j, i désignant un entier compris entre 1 et a et j désignant un entier compris entre 1 et K, ledit ensemble comportant L lignes d'entrée-sortie, chacune des unités de calcul élémentaires UC Ei,j disposant de M lignes Lce pour l'entrée de données et de N lignes LCS pour la sortie de données, chacune de ces lignes Lce, Lcs étant connectée à l'une des lignes d'entrée-sortie Lces de l'ensemble ( 21); une mémoire de masse ( 22)de grande capacité disposant de O lignes d'entrée-sortie Lmes pour l'écriture et la lecture de mots de O bits, l'ensemble ( 21) échangeant des données avec ladite mémoire de masse ( 22); une structure de transposition effectuant la transformation dite "directe" d'un ensemble de Q données de P bits en un ensemble de P mots de Q bits, un mot étant constitué par l'association des Q bits de poids équivalent des Q données, ladite structure de transposition assurant par ailleurs la transformation dite "réciproque" de P' mots de Q' bits en Q' données de P' bits Une telle structure communique avec les ports d'entrée-sortie grâce à l'entrée de "données" ayant respectivement P et P' bits, et avec la mémoire de masse par des "mots" ayant respectivement Q et Q' bits Les lignes permettant ces échanges peuvent être monodirectionnelles ou bidirectionnelles, et distinctes  A parallel processor comprising a plurality of identical elementary calculation units, memories for storing the data and at least one controller generating all the commands necessary for the operation of the part assigned to the calculation and the management of the data, characterized in what it comprises: a set of (21) of a series of K elementary calculation units UC Ei, j, i denoting an integer between 1 and a and j denoting an integer between 1 and K, said set comprising L input-output lines, each of the elementary calculation units UC Ei, j having M lines Lce for the data input and N lines LCS for the data output, each of these lines Lce, Lcs being connected to the one of the input-output lines Lces of the set (21); a mass memory (22) of large capacity having O lines of input-output Lmes for writing and reading O-bit words, the set (21) exchanging data with said mass memory (22) ; a transposition structure performing the so-called "direct" transformation of a set of Q data of P bits into a set of P words of Q bits, a word being constituted by the association of the Q bits of equivalent weight of the Q data, said transposition structure also ensuring the so-called "reciprocal" transformation of P 'words of Q' bits into Q 'data of P' bits Such a structure communicates with the input-output ports thanks to the input of "data" having respectively P and P 'bits, and with the mass memory by "words" having respectively Q and Q' bits The lines allowing these exchanges can be monodirectional or bidirectional, and distinct 16 269238216 2692382 ou communes pour les transferts de "données" et de "mots"; un ensemble de ports ( 24) permettant l'échange de données entre l'ensemble ( 21), la mémoire ( 22) et la structure de transposition ( 23), l'ensemble ( 21) échangeant des données avec la mémoire ( 22), la mémoire ( 22) échangeant des données avec la structure de transposition ( 23) et avec l'ensemble de ports ( 24) et la structure de transposition ( 23) échangeant des données avec  or common for transfers of "data" and "words"; a set of ports (24) for the exchange of data between the set (21), the memory (22) and the transposition structure (23), the set (21) exchanging data with the memory (22) , the memory (22) exchanging data with the transposition structure (23) and with the set of ports (24) and the transposition structure (23) exchanging data with l'ensemble de ports ( 24).the set of ports (24). 2 Processeur parallèle selon la revendication 1 caractérisé en ce que chacune des K unités de calcul élémentaires UC Ej d'une série i d'unités de calcul élémentaires UC Ei,j accède aux éléments de mémoire Mj-r à Mj+r et écrit dans les éléments de mémoire Mj-s à Mj+s sans échanger de données  Parallel processor according to Claim 1, characterized in that each of the K elementary calculation units UC Ej of a series i of elementary calculation units UC Ei j accesses the memory elements Mj-r at Mj + r and written in the memory elements Mj-s to Mj + s without exchanging data avec une unité de calcul élémentaire UC Eji ou jÉj'.  with an elementary calculating unit UC Eji or jEj '. 3 Processeur parallèle selon la revendication 1 caractérisé en ce que chacune des K unités de calcul élémentaires UC Ei,j accède aux éléments de mémoire Mi-t, j-r à Mi+t,j+r et écrit dans les éléments de mémoire Mi-u,j-s à Mi+uj+s sans échanger de données avec une unités de calcul élémentaires UC Ejt,j I  3 parallel processor according to claim 1 characterized in that each of the K elementary calculation units UC Ei, j accesses the memory elements Mi-t, jr Mi + t, j + r and writes in the memory elements Mi-u , js to Mi + uj + s without exchanging data with a unitary calculation unit UC Ejt, j I o iÉi' et jÉj'.o Ii 'and iJ'. 4 Processeur parallèle selon l'une4 Parallel processor according to one quelconque des revendications précédentes caractérisé  any of the preceding claims characterized en ce que structure de transposition ( 23) est constituée par au moins une mémoire à Lecture et à  in that transposition structure (23) is constituted by at least one read and write memory Ecriture "données" et à Lecture Ecriture "mots".  Writing "Data" and Reading Writing "Words". 5 Processeur parallèle selon l'une5 Parallel processor according to one quelconque des revendications 1 à 3 caractérisé en ce  any of claims 1 to 3 characterized in that que structure de transposition ( 23) est composée de deux types de mémoires, l'un des types correspondant à des mémoires en Ecriture "données" et Lecture "mots", l'autre correspondant à des mémoires en Ecriture "mots"  that transposition structure (23) is composed of two types of memories, one of the types corresponding to "Writing" and "Reading" writing memories, the other corresponding to "word" writing memories. et Lecture "données".and reading "data". 6 Processeur parallèle selon l'une6 Parallel processor according to one quelconque des revendications précédentes caractérisé  any of the preceding claims characterized en ce que chaque Unité de Calcul élémentaire est constituée par deux mémoires vives ( 70, 71), du type mémoire double accès pour permettre la lecture et l'écriture simultanée à des adresses différentes, composées chacune de r mots de un bit, et par deux structures de calcul, la première structure de calcul ( 72) étant une unité arithmétique et logique bit série et la seconde structure de calcul ( 73) étant une unité arithmétique mot parallèle et en ce qu'elle comporte en outre un ensemble ( 74) de multiplexeurs et de registres reliant les sorties et les entrées des éléments.  in that each elementary calculation unit is constituted by two RAMs (70, 71) of the dual access memory type to enable simultaneous reading and writing to different addresses, each composed of r words of one bit, and by two computing structures, the first computing structure (72) being an arithmetic and logical serial bit unit and the second computing structure (73) being a parallel word arithmetic unit and further comprising a set (74) multiplexers and registers connecting the outputs and inputs of the elements.
FR9207261A 1992-06-16 1992-06-16 Parallel processor for processing multiple data by a series of repetitive instructions. Pending FR2692382A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR9207261A FR2692382A1 (en) 1992-06-16 1992-06-16 Parallel processor for processing multiple data by a series of repetitive instructions.
PCT/FR1993/000596 WO1993025976A1 (en) 1992-06-16 1993-06-16 Parallel processor for processing multiple data with a series of repetitive instructions

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR9207261A FR2692382A1 (en) 1992-06-16 1992-06-16 Parallel processor for processing multiple data by a series of repetitive instructions.

Publications (1)

Publication Number Publication Date
FR2692382A1 true FR2692382A1 (en) 1993-12-17

Family

ID=9430781

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9207261A Pending FR2692382A1 (en) 1992-06-16 1992-06-16 Parallel processor for processing multiple data by a series of repetitive instructions.

Country Status (2)

Country Link
FR (1) FR2692382A1 (en)
WO (1) WO1993025976A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0456201A2 (en) * 1990-05-08 1991-11-13 Thinking Machines Corporation Massively parallel processor including slice-wise communications arrangement

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0456201A2 (en) * 1990-05-08 1991-11-13 Thinking Machines Corporation Massively parallel processor including slice-wise communications arrangement

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
PROCEEDINGS OF THE 1988 INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING 15 Août 1988, pages 452 - 461 M. H. SUNWOO J. K. AGGARWAL 'Flexibly coupled multiprocessors for image processing' *
PROCEEDINGS OF THE IEEE vol. 79, no. 4, Avril 1991, NEW YORK US pages 469 - 479 R. M. LEA AND I. P. JALOWIECKI 'Associative massively parallel computers' *

Also Published As

Publication number Publication date
WO1993025976A1 (en) 1993-12-23

Similar Documents

Publication Publication Date Title
EP0597028B1 (en) System architecture having parallel processor array
EP3660849B1 (en) Memory circuit suitable for performing computing operations
EP0154341B1 (en) Discrete cosine transform processor
EP0552074B1 (en) Multiprocessor data processing system
EP3084588B1 (en) Signal processing module, especially for a neural network and a neuronal circuit
US20090178043A1 (en) Switch-based parallel distributed cache architecture for memory access on reconfigurable computing platforms
GB2062915A (en) Parallel array processor system
FR2687814A1 (en) NEURONAL PROCESSOR WITH DISTRIBUTED SYNAPTIC CELLS.
EP0020202A1 (en) Multiprocessing system for signal treatment
FR2779843A1 (en) Serial multi port memory component comprising RAM memory bank assemblies for use in computer
EP0920157A1 (en) Device for managing a shared buffer memory
EP0298002A1 (en) Transposition memory for a data processing circuit
FR2865290A1 (en) METHOD FOR MANAGING DATA IN A MATRIX PROCESSOR AND MATRIX PROCESSOR EMPLOYING THE METHOD
EP0317413B1 (en) Picture element data-processing device
EP0646875A1 (en) Method and system of interconnection to manage messages in a processors network with a parallel structure
FR2692382A1 (en) Parallel processor for processing multiple data by a series of repetitive instructions.
EP0333537A1 (en) Digital signal-processing device
EP4546150A1 (en) Optimizing data transfers between a parallel processor and a memory
EP0589743B1 (en) Modular device for coupling and multiplexing different type buses
EP0574986B1 (en) Data processing apparatus with a single instruction and multiple data architecture
EP2208143A1 (en) Structure and method for saving and retrieving data
FR2958064A1 (en) ARCHITECTURE FOR PROCESSING A DATA STREAM ENABLING THE EXTENSION OF A NEIGHBORHOOD MASK
FR2664072A1 (en) NEURONAL CALCULATION SYSTEM.
FR2838222A1 (en) RECONFIGURABLE CONTROL SYSTEM BASED ON THE MATERIAL IMPLEMENTATION OF PETRI GRAPHICS
EP4361888A1 (en) Integrated circuit configured to execute a neural network