FR2591365A1 - Processeur de manipulation de donnees pour un systeme graphique et systeme graphique correspondant. - Google Patents

Processeur de manipulation de donnees pour un systeme graphique et systeme graphique correspondant. Download PDF

Info

Publication number
FR2591365A1
FR2591365A1 FR8518250A FR8518250A FR2591365A1 FR 2591365 A1 FR2591365 A1 FR 2591365A1 FR 8518250 A FR8518250 A FR 8518250A FR 8518250 A FR8518250 A FR 8518250A FR 2591365 A1 FR2591365 A1 FR 2591365A1
Authority
FR
France
Prior art keywords
data
image memory
data manipulation
manipulation processor
reading
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.)
Withdrawn
Application number
FR8518250A
Other languages
English (en)
Inventor
Guy Fontenier
Philippe Gambier
Michel Delcroix
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.)
GRADIENT
Original Assignee
GRADIENT
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 GRADIENT filed Critical GRADIENT
Priority to FR8518250A priority Critical patent/FR2591365A1/fr
Publication of FR2591365A1 publication Critical patent/FR2591365A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

Processeur de manipulation de données pour un système graphique, et système graphique correspondant. Dans un système graphique comportant N plans (80, 81) de mémoire d'image, on intercale entre chaque plan de mémoire d'image et le bus de données 14 du système graphique un processeur de manipulation de données 200, 201. Un bus de données d'élément d'image 220, 221. Un bus de données d'élément d'image 220, 221 relie un plan de mémoire d'image, un processeur de manipulation de données et un sérialiseur vidéo 120, 121. Cette architecture permet des manipulations de données (déplacement de zones,...) sans transfert de données sur le bus de données 14 du système graphique. (CF DESSIN DANS BOPI)

Description

Processeur de manipuLation de données pour un système
graphique et système graphique correspondant
La présente invention a pour objet un processeur de manipulation de données pour L'accès à une mémoire d'image d'un système graphique et pour Le traitement effectué sur L'image contenue dans cette mémoire. La présente invention a également pour objet un système graphique comportant un tel processeur de manipulation de données.
On a représenté sur la figure 1 un système graphique selon l'art antérieur. Ce système comprend un moyen de calcul 2 composé d'au moins un processeur 4 et une mémoire 6 contenant des instructions, une mémoire d'image 8, un circuit d'entrée-sortie 10 et un sérialiseur vidéo 12. Tous ces éléments sont connectés à un bus de données 14, à l'exception du sérialiseur vidéo 12 qui est relié à La mémoire d'image 8 par un autre bus de données 13. Par ailleurs la mémoire 6, la mémoire d'image 8 et le circuit d'entrée-sortie 10 sont adressés par le processeur 4 respectivement par l'intermédiaire d'un bus d'adresse 16. Enfin, un bus de commande 18 relie la mémoire d'image 8 et le processeur 4.
De manière classique, la mémoire d'image 8 peut comporter plusieurs plans de mémoire d'image.
Chaque plan est composé d'un ensemble de mots, par exemple de longueur 32 bits, organisés en matrice. Un inconvénient important de cette structure est La non symétrie entre les accès au plan suivant l'axe X, ou colonnes de la matrice, et suivant t'axe Y, ou lignes de la matrice. Il se pose notamment le problème de la frontière de mots sur l'axe X, par exemple dans le cas de la recopie d'une zone lorsqu'un mot doit être reco
pier "å cheval" sur deux mots consécutifs du plan.
Un autre inconvénient important est la satu
ration du bus de -données 14 lors de traitements sur
L'image mémorisée. En effet, ces manipulations se caractérisent par des algorithmes simples (recopie de zones, inversion de zones.*.) mais nécessitent un flux de données très important.
De plus, dans le cas d'un système dont la mémoire d'image est composée de plusieurs plans, ce qui permet de travailler en niveaux de gris ou en fausses couleurs, les manipulations sur les différents plans d'image sont effectuées séquentieltement et Le fLux de données nécessaire pour réaliser un traitement augmente donc en fonction du nombre de plans.
L'invention a pour but de remédier notamment aux inconvénients du système selon l'art antérieur décrit. Ce but est atteint par l'insertion entre le bus de données 14 et la mémoire d'image 8 d'un processeur de manipulation de données commandé par le moyen de calcul 2 et permettant une gestion locale des manipulations effectuées sur La mémoire d'image.
Le processeur de manipulation de données de
L'invention permet notamment de gérer localement la notion de frontière moyennant un contraire simple et un minimum d'accès à la mémoire d'image, ceci étant réalisé sans aucun transfert de données sur le bus de données 14 du système graphique. Plus généralement, le processeur de manipulation de données de l'invention peut réaliser des recopies de zones, par exemple à L'aide de la primitive graphique connue "Bit boundary block transfer" (en abrégé BITBLT), sans aucun transfert de données sur le bus de données 14.
De manière plus précise, L'invention permet de réaliser un système graphique comprenant un moyen de calcul, un bus de données sur lequel est connecté
le moyen de calcul, une mémoire d'image composés de N plans de mémoire, -où N- est un entier posi-tif et un générateur vidéo, ledit système comprenant, pour cha- que plan de mémoire, un processeur de manipulation de données et un bus de données d'élément d'image, Ledit plan de mémoire d'image, ledit générateur vidéo et ledit processeur de manipulation de données étant reliés audit bus de données d'élément d'image, ledit processeur de manipulation de données étant également relié au bus de données, ledit processeur de manipulation de données accedant en lecture et en écriture à Ladite mémoire d'image pour lire, écrire ou modifier le contenu de ladite mémoire d'image en fonction de commandes délivrés par le moyen de calcul.
Le générateur vidéo délivre au moins un signal vidéo correspondant au contenu de la mémoire d'image. Il comporte à cet effet au moins un sériaLi- seur vidéo associé à chaque plan de la mémoire d'image.
L'utilisation d'un proces-seur de manipulation de données par plan de mémoire d#'image permet de réaliser en parallèle une même opération sur tous les plans de La mémoire d'image. Il en résulte un gain de temps important par rapport aux systèmes selon l'art antérieur dans lesquels le moyen de calcul travaille de manière séquentielle sur les différents plan de la mémoire d'image.
De manière préférée, chaque processeur de manipulation de données comprend un module de lecture de mots comprenant au moins deux registres temporaires dont les entrées de données sont reliées au bus de données d'élément d'image, et un tampon de lecture dont L'entrée est reliée au bus de données d'élément d'image et la sortie au bus de données, un tampon d'écriture dont La sortie est reliée au bus de données a 'élément d'image, un module de sélection ayant plusieurs entrées reliées au moins aux sorties des registres temporaires du moyen de lecture et au bus de don nées, la sortie dudit module de sélection étant reliée à L'entrée du tampon d'écriture, ledit module de sé
Lection comprenant au moins un module de fonctions logiques pour effectuer une combinaison logique du contenu des registres temporaires, un moyen de commande du module de lecture et un moyen de commande du module de sélection, lesdits moyens de commande étant reliés au bus de commande du système pour recevoir du moyen de calcul des signaux de commande des modules.
Selon un mode de réalisation préféré, le module de lecture de chaque processeur de manipulation de données comporte un registre circulaire disposé entre le bus de données d'élément d'image et les en trées des registres temporaires et de tampon de lecture, le moyen de commande du module de lecture comprenant un moyen de contrôle de décalage du registre circulaire.
De manière avantageuse, chaque processeur de manipulation de données comprend un ~ondule d'acquisition comprenant une entrée de données série et une entrée d'horloge, et une sortie de données parallèLe reliée à une entrée du module de sélection.
Selon une caractéristique du système de
L'invention, chaque processeur de manipulation de données comprend un moyen de lecture en Z pour lire simultanément un bit dans chaque plan de mémoire d'image.
Selon une autre caractéristique, le module de sélection comprend un multiplexeur comportant plusieurs entrées pour recevoir différentes combinaisons logiques dé livrées par Le module de fonctions logiques et pour recevoir les autres signaux reçus par le module de sélection.
Selon une autre caractéristique, le moyen de commande du module de sélection comprend une ligne de commande globale pour commander en parallèle le module de sélection de chaque processeur de manipulation de données et une Ligne de commande indépendante pour commander uniquement Le module de sélection dudit processeur de manipulation de données.
Les caractéristiques et avantages de l'in- vention ressortiront mieux de la description qui va suivre, donnée à titre illustratif mais non limitatif, en référence aux dessins annexés, sur lesquels
- La figure 1, déjà décrite, illustre schématiquement un système graphique selon l'art connu,
- la figure 2 illustre schématiquement un mode de réalisation d'un système graphique comprenant un processeur de manipulation de données selon I 'in- vention, dans le cas d'une mémoire composée d'un plan unique,
- la figure 3 illustre une variante du système de la figure 2 dans le cas d'une mémoire composée d'une pluralité de plans,
- la figure 4 est un dessin schématique du processeur de manipulation de données de L'invention,
- la figure 5 illustre un mode de réalisation du module de lecture et du moyen de commande dudit-module de lecture du processeur de manipulation de données de la figure 4,
- la figure 6 illustre un mode de réalisation du module de sélection et un moyen de commande dudit module de sélection du processeur de manipulation de données de la figure 4, et
- la figure 7 illustre un mode de réalisation du module d'acquisition du processeur de manipulation de données de la figure 4.
La figure 2 illustre schématiquement un sys thème graphique comprenant un processeur de manipulation de données selon l'invention. Sur cette figure,
Les éléments identiques à ceux du système représenté sur La figure 1 portent les mêmes références.
Ce système graphique comprend, de manière connue, un moyen de calcul 2 composé d'au moins un processeur 4 et une mémoire 6 contenant des instructions, une mémoire d'image 8, un circuit d'entrée-sor- tie 10 et un sérialiseur vidéo 12, élément d'un générateur vidéo (non représenté). Il comprend également de manière connue un bus de données 14, auquel sont connectés le processeur 4, la mémoire 6 et le circuit d'entrée-sortie 10. Enfin, un bus d'adresse 16 permet au processeur, de manière connue, d'adresser la mémoire 6, la mémoire d'image 8 et le circuit d'entrée sortie 10, et un bus de commande 24 de commander la mémoire d'image 8.
L'invention trouve son originalité dans l'adjonction d'un processeur de manipulation de données 20 disposé entre le bus de données 14 et la mémoire d'image 8. Ce processeur de manipulation de données est relié à La -mémoire d'image 8 par un bus de données d'élément d'image 22 et est commandé par Le processeur 4 par l'intermédiaire du bus de commande 24. On peut noter également que le sérialiseur vidéo 12 est relié à La mémoire d'image par le bus de données d'élément d'image 22.
Le processeur de manipulation de données de
L'invention présente L'avantage de diminuer considérablement, par rapport à l'art antérieur, Le volume des données véhiculées par le bus de données 14. Ce bus sert uniquement, dans un système graphique conforme à l'invention, à la mise à jour de L'image lorsque celle-ci requiert des données extérieures à celles contenues dans la mémoire d'image 8. Le bus de données 14 est ainsi utilisé par exemple lors de L'acquisition d'une image. Ce bus est également utilisé en lecture lorsque le moyen de calcul 2 désire lire le contenu d'un mot de la mémoire d'image 8.
En revanche, grâce à l'insertion d'un processeur de manipulation de données 20, tout transfert de donnée d'image est supprimé sur le bus de données 14 Lors des opérations de mise à jour de la mémoire d'image 8 ne nécessitant pas de données d image externes, telles que des opérations de recopie d'une zone ou autre.
Le processeur de manipulation de données 20 permet également de gérer simplement et efficacement
Les frontières de mots suivant t'axe X, c'est-à-dire le problème de la recopie d'un mot "à cheval" sur deux mots consécutifs.
Dans le système graphique selon t' inven- tion, représenté sur la figure 2, la mémoire d'd'image 8 est composée d'un unique plan de mémoire d'image. Dans cette configuration, le système graphique comporte un unique processeur de manipulation de données 20. En revanche, dans le cas où l'image mémorisée comporte plusieurs niveaux de gris ou est en couleur, la mé-moire d'image est composée d'une pluralité de plans de mémoire d'image. Dans ce cas, le système graphique comporte autant de processeurs de manipulation de données que de plans de mémoire d';mage.
On a représenté sur la figure 3 t 'architec- ture des processeurs de manipulation de données de la mémoire d'image et des sérialiseurs vidéo dans Le cas d'une mémoire d'image composée à titre d'exemple de deux plans de mémoire d'image. Dans ce mode de réali satinons le système graphique comporte deux processeurs de manipulation de données 20 et 201. Chacun- de ces processeurs de manipulation de données est relié au bus de donnée 14 et au bus de commande 24. Le processeur de manipulation de données 20o est également re
Lié à un premier plan de mémoire d'image 8 par-un bus de données d'élément d'image 22o auquel est également connecté un sérialiseur vidéo 120.De même, un bus de données d'élément image 221 relie te processeur de manipulation de données 201 un plan de mémoire d'image 81 et un sérialiseur vidéo 121.
Cette structure permet notamment, dans une mémoire d'image comportant plusieurs plans de mémoire d'image, d'effectuer un traitement identique en parallèle sur tous les plans de mémoire d'image. Ceci constitue un avantage intéressant par rapport au système selon L'art antérieur dans lequel un même traitement effectué sur chacun des plans de mémoire d'image devait etre réalisé de manière séquentielle sur chaque plan.
Dans un système dont la mémoire d'image est composée de plusieurs plans de mémoire d'image en parallèle, un élément d'image est mémorisé par une suite de bits, ces bits étant en général disposés dans des plans de mémoire d'image différents mais à une adresse identique. On dit qu'un élément d'image est mémorisé suivant l'axe Z, ou selon la profondeur de La mémoire d'image.
La possibilité d'accéder simultanément à tous les plans de la mémoire d'image offre L'avantage de permettre la Lecture ou L'écriture d'un élément d'image suivant l'axe Z en une seule commande. Dans l'art antérieur, au contraire, une telle opération nécessitait autant de commandes successives que de plans mémoire d'image.
On va maintenant décrire en détail un mode de réalisation du processeur de manipulation de données associé à chaque plan de mémoire d'image dans un système graphique conforme à L'invention. On a représenté sur la figure 4 un dessin schématique de ce processeur de manipulation de données.
Il comprend principalement un module de Lecture 28, un moyen de commande associé 30, un module de sélection 32, un moyen de commande associé 34 et un tampon d'écriture 36. Ce processeur de manipulation de données peut également comprendre avantageusement un moyen 38 de Lecture en Z et un module d'acquisition 40.
Le moyen de lecture en Z permet de lire un bit unique dans Le plan de mémoire d'image associé au processeur de manipulation de données. Ce moyen peut être composé simplement d'une porte ET dans le cas où le plan de mémoire d'image est composé de 32 boîtiers de mémoire sélectionnables indépendamment et stockant chacune un bit de chaque mot. En effet, il suffit alors de sélectionner uniquement le boîtier correspondant au bit à lire.
La lecture suivant l'axe Z, si elle est effectuée simultanément sur tous les plans de mémoire d'image, permet de lire un mot selon la direction Z, c'est-à-dire un mot dont chaque bit est dans un plan de mémoire d'image particulier. Quant au module d'acquisition, il permet la saisie d'une image délivrée par exemple par une caméra numérique.
Le processeur de manipulation de données de
L'invention comporte un certain nombre de bus de données internes pour relier ces différents éléments. A titre d'exemple purement illustratif, chaque bus de données comporte, sur la figure 4 et sur les figures suivantes, 32 lignes de données.
Un premier bus de données bidirectionnel 42 relie le bus de données d'élément d'image 22 à L'en- trée 44 du module de lecture 28. Ce bus est également relié à l'entrée de donnée du moyen 38 de lecture en
Z. En fonction du signal de commande reçu du moyen de
commande 30 par la voie de commande 46, Le module de lecture délivre le mot reçu sur son entrée 44 sur un bus de données bidirectionnel 48 relié au bus de données 14, ou délivre sur des bus de données 50 ou 52 une combinaison logique de plusieurs mots reçus. On décrira en référence à la figure 5 un mode particulier de réalisation du module de lecture 28 et de son moyen de commande associé 30.
Le moyen de sélection 32 comporte une pluralité d'entrée de donnée et une sortie de donnée unique. IL comporte des entrées reliées aux bus de données 48, 50 et 52. Il comporte également une entrée reliée au bus de données 54 qui reçoit des données du module d'acquisition 40, et une entrée recevant par une Ligne 56 un bit unique pour une écriture suivant
L'axe Z de la mémoire. Ce moyen de sélection 32 est commandé par le moyen de commande 34 par l'interme- diaire d'un bus de commande 58 pour délivrer sur sa sortie le signal reçu par L'une de ses entrées ou une combinaison logique de signaux reçus sur deux entrées particulières. La sortie de ce moyen de sélection est reliée à L'entrée de donnée du tampon d'écriture 36 par un bus de données 60.
La sortie de ce tampon d'écriture 36 est connectée au bus de données 42 relié au bus de données d'élément d'image 22. Le tampon d'écriture 36 est commandé par une ligne de commande 62 du bus de commande 24. Ce dernier est également relié aux moyens de commande 30, 34 pour recevoir les ordres de commande du moyen de calcul du système.
Le processeur de manipulation de données de la figure 4 permet de réaliser différents types de mises à jour de L'image contenue dans le plan de mémoire d'image associé à ce processeur de manipulation de données. On peut regrouper ces mises à jour en deux catégories : celles qui nécessitent des informations externes issues du bus de données 14 et celles concernant des manipul-ations locales ne nécessitant pas de données externes.
Les mises à jour nécessitant des informations externes sont : L'accès par mot suivant l'axe X,
L'accès suivant l'axe Z, qui peut être ponctuel, si un seul bit est accédé par plan de mémoire d'image, ou multiple, et L'accès pour l'acquisition d'une image.
L'accès par mot suivant l'axe X se fait de manière classique. En lecture, Le module de lecture 28 est commandé par Le moyen de commande 30 de manière à délivrer sur Le bus de données 48 le mot reçu par le bus de données 44. En mode d'écriture, le mot reçu par le processeur de manipulation de données du bus de données 14 est transmis par le moyen de sélection 32 commandé par le moyen de commande 34 sur le bus de données 60, puis sur le bus de données 42 -sur recep- tion d'un signal de commande du tampon d'écriture 36.
Dans l'accès par mot suivant l'axe X, le processeur de manipulation de données est donc commandé pour être transparent aux données transmises.
L'accès suivant t'axe Z n'est concevable que pour une mémoire composée de plusieurs plans. Cet accès utilise en écriture L'entrée DINZ qui est reliée à la ligne de donnée 56 et en Lecture la sortie DOUTZ retiée à la sortie du moyen 38 de lecture en Z. Les lignes DINZ et DOUTZ sont reliées entre elles à l1ex- térieur du processeur de manipulation de données 20 et sont reliées à une ligne de donnée du bus de données 14. Pour chaque plan de La mémoire d'image, c'est-àdire pour chaque processeur de manipulation de données, ces lignes sont reliées à une Ligne différente du bus de données 14.
L'accès suivant L'axe Z permet de réaliser 3 types de mise à jour : une mise à jour ponctuelle dans laquelle l'information présente sur chaque ligne DINZ de chaque processeur de manipulation de données est transférée à une même adresse de chaque plan de la mémoire d'image, ce qui permet par exemple le tracé de vecteur ; une mise à jour multiple dans laquelle L'information transmise sur chaque ligne DINZ est transférée simultanément sur plusieurs bits parmi les 32 bits d'un mot de chaque plan de La mémoire d'image, cette mise à jour permettant par exemple te remplissage de zones ; et une mise à jour multiple dans laquelle l'information à écrire a été préalablement chargée dans les processeurs de manipulation de données par une ligne série DACQ constituant L'entrée de donnée du module d'acquisition 40, et dans laquelle cette infor mation est parallélisée pour être inscrite par mots de 32 bits simultanément sur tous les plans de la mémoire d'image.
L'accès suivant L'axe Z par la commande en parallèle de tous les processeurs de manipulation de données constitue un premier avantage du système graphique de l'invention par rapport aux systèmes graphiques de l'art antérieur. ta gestion locale des mises à jour de L'image ne nécessitant pas de données externes à cette mémoire d'image constitue un second avantage important du système graphique de L'invention.
Cette gestion locale par chaque processeur de manipulation de données permet de réaliser simplement des transferts de données entre une zone source et une zone destination contenues dans un même plan de mémoire d'image. Les principales manipulations de données Locales qui -peuvent être réalisées par le processeur de manipulation de données sont la gestion de la frontière entre mots, la recopie de zones, et des fonctions logiques entre deux zones. Ceci permet notamment de faire toutes les manipulations de données nécessaires pour réaliser la fonction BITBLT sans faire transiter d'information sur le bus de données 14 du système, moyennant un minimum d'accès à la mémoire d'image et un contrôle simple.
Ces manipulations de données locales seront décrites plus en détail en référence aux figures 5 et 6 qui décrivent respectivement un mode de réalisation du module de Lecture 28 et de son moyen de commande associé, et du module de sélection 32 et de son module de commande associé.
Sur la figure 5, le module de lecture 28 comprend un registre circulaire dont L'entrée de donnée est reliée au bus 44 et la sortie de donnée à un bus 66, un premier et un second registres temporaires 68, 70 du type à echantillonnage et maintien dont les entrées de donnée sont reliées au bus 66 et dont Les sorties de donnée sont reliées respectivement aux bus 50 et 52, et un tampon de Lecture 72 dont L'entrée de donnée est reliée au bus 66 et la sortie de donnée au bus 48.
Les différents éléments du moyen de lecture 28 sont commandés par le moyen de commande 30. Celuici comporte un ensemble de 5 portes ET 74, 76, 78, 80, 82 recevant respectivement sur une première entrée des signaux DBSO, DBS1, DBS2, DBS3 et DBS4 et recevant chacune sur une deuxième entrée un signal AEP de validation d'accès au plan de mémoire d'image. La combinaison des signaux de sortie de ces portes ET représentent une valeur numérique comprise entre 0 et 31 qui indique la valeur du décalage circulaire réalisé sur Le mot reçu par le registre circulaire 62.
Le moyen de commande 30 comprend également un inverseur 84 recevant le signal de validation AEP, une porte ET 86 dont une entrée est reliée à la sortie de l'inverseur 84 et dont une autre entrée reçoit un signal LDGA de chargement de registres temporaires 68 et 70, une porte ET 88 à 3 entrées recevant les signaux AEP et LDGA, et un signal VLDA de validation du chargement dans le registre 68, une porte ET 90 recevant Les signaux AEP et LDGA, et un signal VLDB de validation de chargement dans le registre 70, La sortie de cette porte ET étant reliée à L'entrée de commande du registre 70, et une porte OU 92 dont Les en trées sont reliées aux sorties des portes ET 86 et 88 et dont la sortie est reliée à L'entrée de commande du registre 68.
Le moyen de commande 30 reçoit enfin un signal OERDX de commande du tampon d'écriture 72. Les signaux de commande reçus par Le moyen de commande 30 sont issus du bus de commande 24 du système (voir figure 4).
Le registre circulaire est utilisé pour commander les transferts de zones à L'élément d'image près. Il permet ainsi de résoudre le problème de la frontière lors de la recopie d'un mot 8 cheval" sur deux mots. La recopie d'un tel mot est obtenue en trois accès au plan de la mémoire d'image. Le premier accès réalise une lecture du mot avec permutation circulaire dans le registre circulaire 62 et un stockage temporaire de ce mot décalé dans Le registre 68. La recopie s'effectue ensuite par écriture de ce mot successivement dans les deux cellules de mémorisation voisines de la zone de destination. Ces écritures nécessitent chacune un masque pour n'écrire dans chaque cellule de mémorisation que les bits destinés à ladite cellule de mémorisation.Ce masquage peut être réalisé facilement à partir des signaux DBSO, DBS1, DBSZ, DBS3 et DBS4 indicateurs du décalage du mot dans Le cas où le plan de mémoire d'image est composé de 32 boitiers de mémoire sélectionnables indépendamment et stockant chacun un bit de chaque mot.
Dans le cas d'une lecture suivant l'axe X,
Le registre circulaire 62 est transparent et le mot reçu sur l'entrée 44 du module de lecture est transmis sans modification sur le bus de données 48.
Les deux registres 68, 70 servent à stocker temporairement des mots lus dans le plan de mémoire d'image et permettent de réaliser des opérations logiques entre deux zones du plan de mémoire d'image, en combinaison avec le module de sélection que l'on va maintenant décrire en référence à la figure 6.
Sur cette figure, le module de sélection 32 comporte un module de fonctions logiques 94 et un multiplexeur 96. Le module de fonctions logiques 94 comprend deux entrées de données A et B recevant respectivement les bus de données 50, 52 et une pluralité de sorties de données pour délivrer des combinaisons Logiques des signaux A et B reçus en entrée, tels que par exemple A.B, A+B ou A~B,A@B, A~B,A@B, ou "." représente La fonction logique ET, "+" représente la fonction logique OU, '0+" représente la fonction logique OU
EXCLUSIF, et B est le complément logique de B. Le module de fonctions Logiques 94 peut également comprendre des sorties pour délivrer sans modification les signaux reçus sur les entrées A et B.
Les -différentes sorties du -module de fonctions logiques 94 sont reliées à différentes entrées du multiplexeur 96. Celui-ci comporte en outre au moins une entrée reliée au bus de données 48 pour recevoir un mot du bus de données 14 (figure 4), au moins une entrée reliée au bus de données 54 pour
L'acquisition d'une image et au moins une entrée pour recevoir un bus de données dont chaque ligne est re
liée à la ligne 56 pour écriture d'un bit suivant
L'axe Z.
Dans Le mode de réalisation représenté sur la figure 6, chaque sortie du module de fonctions lo- giques 94 est reliée au multiplexeur 96. Ce mode de réalisation correspond au cas où toutes les sorties du module de fonctions logiques 94 sont actives simultanément. Ceci est en général le cas lorsque le processeur de manipulation de données (figure 4) est réalisé sous forme d'un unique circuit intégré ; l'encombre- ment et la complexité des différents éléments du circuit ne permettent alors que difficilement la réalisation d'éLéments ayant des sorties à 3 états. Il est donc nécessaire, dans ce cas, de disposer en sortie de ces éléments un multiplexeur pour sélectionner L'une des sorties.Au contraire, si le module de fonctions logiques 94 a des sorties à 3 états, il est possible de relier ces sorties entre elles et de ne pas mettre de multiplexeur. Le module de fonctions logiques 94 comporte alors une entrée de commande pour la sélection de la fonction logique choisie.
Dans le module de sélection 32 représenté sur la figure 6, Le moyen de commande 34 commande uniquement le multiplexeur 96. Ce moyen de commande comporte un premier et un second registres 98, 100 du type à échantillonnage et maintien, un multiplexeur 102 et une porte ET 104. La sélection d'une entrée du multiplexeur 96 est obtenue par 3 signaux MUXO, MUX1 et MUX2 appliqués simultanément en entrée des registres 98, 100. Ces registres sont charges respectivement par un signal ENMUXI et par un signal ENMUXG. Le signal ENMUXG est un signal global reçu simultanément par tous les processeurs de manipulation de données du système graphique. Il permet de commander simultanément une même opération d'écriture dans chaque plan de la mémoire d'image. En revanche, le bus de commande 24 du système comporte autant de signaux ENMUXI que de processeurs de manipulation de données.Ceci permet de commander de manière sélective un processeur de manipulation de données particulier et donc d'effectuer une manipulation sur un plan de mémoire d'image unique.
Le multiplexeur 102 à un rôle identique à celui du multiplexeur 96. Il n'est nécessaire que si les sorties des registres 98 et 100 ne sont pas à 3 états. Ce multiplexeur 102 est commandé par un signal de sélection ALL.
Si le plan de mémoire d'image associé au processeur de manipulation de données est accessible (signal AEP actif, figure 5), Le processeur de manipulation de données utilise les données enregistrées dans les registres 98, 100. Si le plan n'est pas accessible, le processeur de manipulation de données force le multiplexeur 96 du module de sélection à -sélectionner la sortie A du module de fonctions logiques, en activant les signaux MUXO, MUX1, et MUX2, ce qui permet de recopier le mot lu dans le registre temporaire 68 du module de lecture (figure 5). Ceci est réalisé par l'intermédiaire de ta porte ET 104 qui reçoit en entrée les 3 signaux MUXO, MUX1 et MUX2 et dont la sortie est reliée à l'entrée de l'inverseur 84 (figure 5).
On va maintenant décrire en référence à la figure 7 un mode de réalisation du moyen d'acquisition 40 du processeur de manipulation de données. Ce moyen d'acquisition comporte un registre série-parallèle 106 et un registre 108 du type à échantillonnage et maintien. Le registre série-parallèle 106 reçoit sur son entrée de donnée un signal DACQ véhiculé par une ligne du bus de données 14. Il est commandé par un signal d'norloge CKACQ issu du bus de commande 24 du système. Le signal de donnée parallèle délivré par le registre 106 est stocké dans le registre 108 commandé par un signal de validation LDACQ issu du bus de commande 24 du système. La sortie de ce circuit 108 est rel-iée au bus de données 54 (figure 4).

Claims (8)

REVENDICATIONS
1. Processeur de manipulation de données pour un système graphique comprenant au moins un moyen de calcul (2) et une mémoire d'image (8), ledit processeur de manipulation de données (20) étant caractérisé en ce qu'il est muni d'une première entrée de données pour échanger des données avec la mémoire d'image et d'une deuxième entrée de données pour échanger des données avec le moyen de calcul, Ledit processeur de manipulation de données comprenant :: - un module de lecture (28) comprenant au moins deux
registres temporaires (68, 70) dont les entrées de
données sont reliées à La première entrée de données
et un tampon de lecture (72) dont L'entrée est re
liée à ladite première entrée de données et la sor
tie à la deuxième entrée de données (4), - un tampon d'écriture (36) dont la sortie est reliée
à La première entrée de données, - un module de sélection (32) ayant plusieurs entrées
reliées au moins aux sorties des registres temporai
res (68, 70) du moyen de lecture (28) et à la
deuxième entrée de données, La sortie dudit module
de sélection étant reliée à L'entrée du tampon
d'écriture (36), Ledit module de sélection compre
nant au moins un module de fonctions logiques (94)
pour effectuer une combinaison logique du contenu
des registres temporaires, - un moyen de commande (30) du module de Lecture (28)
et un moyen de commande (34) du module de sélection
(32), lesdits moyens de commande recevant des si
gnaux de commande du moyen de calcul (2).
2. Processeur de manfpulation de données selon la revendication 1, caractérisé en ce que le module de lecture (28) comporte un registre circulaire (62) disposé entre la première entrée de données et les entrées des registres temporaires (68, 70) et du tampon de lecture (7-2), le moyen de commande du module de lecture comprenant un moyen (74, 82) de contrôle de décalage du registre circulaire.
3. Processeur de manipulation de données selon l'une quelconque des revendications 1 et 2, carac térisé en ce qu'il comprend un moyen d'acquisition (40) comprenant une entrée de données série et une entrée d'horloge, et une sortie de données paralLèle reliée à une entrée de module de sélection.
4. Processeur de manipulation de données selon L'une quelconque des revendication 1 à 3, caractérisé en ce que le module de sélection (32) comprend un multiplexeur (96) comportant plusieurs entrées pour recevoir différentes combinaisons logiques délivrées par le module de fonctions logiques (94) et pour recevoir les autres signaux de données reçus par le module de sélection.
5. Processeur de manipulation de données selon l'une quelconque des revendications 1 à 4, associé à un plan de mémoire d'image d'un système graphique comprenant une mémoire d'image à N plans, caractérisé en ce qu'il comprend un moyen (38) de lecture en Z pour Lire un bit dans ledit plan de mémoire d'image.
6. Système graphique comprenant un moyen de calcul (2), un bus de données (14) sur lequel est connecté le moyen de calcul, une mémoire d'image (8) composée de N plans de mémoire (8o, 81), où N est un entier positif, et un générateur vidéo comprenant au moins un sérialiseur vidéo (12), ledit système étant caractérisé en ce qu'il comprend, pour chaque plan de mémoire d'image, un processeur de manipulation de données (200, 2 1) suivant L'une quelconque des revendications 1 à 4, et un bus de d-onnées d'élément d'image (22o, 221), ce dernier reliant L'entrée de données dudit plan de mémoire d'image, ledit générateur vidéo et la première entrée dudit processeur de manipulation de données, la deuxième entrée dudit processeur de manipulation de données étant reliée au bus de données (14) dudit système graphique, ledit processeur de manipulation de données accédant en lecture et en écriture à ladite mémoire d'image pour lire, écrire ou modifier Le contenu de Ladite mémoire d'image en fonction de commandes délivrées par Le moyen de calcul.
7. Système selon la revendication 6, caractérisé en ce que chaque processeur de manipulation de données comprend un moyen (38) de lecture en Z, le moyen de calcul étant apte à lire simultanément un bit dans chaque plan de mémoire d'image.
8. Système selon L'une quelconque des revendications 6 et 7, caractérisé en ce que le moyen de commande (34) du module de sélection (32) de chaque processeur de manipulation de données du système graphique comprend une ligne de commande globale (ENMUXG) pour commander en parallèle le module de sélection de tous les processeurs de manipulation de données du système graphique et une ligne de commande indépendante (ENMUXI) différente pour chaque processeur de manipulation de données pour commander séparément les modules de sélection desdits processeurs de manipulation de données.
FR8518250A 1985-12-10 1985-12-10 Processeur de manipulation de donnees pour un systeme graphique et systeme graphique correspondant. Withdrawn FR2591365A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR8518250A FR2591365A1 (fr) 1985-12-10 1985-12-10 Processeur de manipulation de donnees pour un systeme graphique et systeme graphique correspondant.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR8518250A FR2591365A1 (fr) 1985-12-10 1985-12-10 Processeur de manipulation de donnees pour un systeme graphique et systeme graphique correspondant.

Publications (1)

Publication Number Publication Date
FR2591365A1 true FR2591365A1 (fr) 1987-06-12

Family

ID=9325614

Family Applications (1)

Application Number Title Priority Date Filing Date
FR8518250A Withdrawn FR2591365A1 (fr) 1985-12-10 1985-12-10 Processeur de manipulation de donnees pour un systeme graphique et systeme graphique correspondant.

Country Status (1)

Country Link
FR (1) FR2591365A1 (fr)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1551229A (en) * 1976-04-02 1979-08-30 Univ Manchester Image analysing systems
FR2465273A1 (fr) * 1979-09-11 1981-03-20 Anvar Multiprocesseur interactif pour la saisie et le traitement d'images

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1551229A (en) * 1976-04-02 1979-08-30 Univ Manchester Image analysing systems
FR2465273A1 (fr) * 1979-09-11 1981-03-20 Anvar Multiprocesseur interactif pour la saisie et le traitement d'images

Similar Documents

Publication Publication Date Title
EP0020983B1 (fr) Système de mémoire comportant un dispositif d'emmagasinage sérié
CH616252A5 (fr)
FR2554256A1 (fr) Appareil et procede de regeneration d'un tampon de trames fonctionnant a grande vitesse
FR2667706A1 (fr) Antememoire hierarchique a circuits integres.
EP1510925A2 (fr) Mémoire cache à lecture asynchrone et dispositif de controle de l'accès à une mémoire de données comprenant une telle mémoire cache
EP0020202A1 (fr) Système multiprocesseur de traitement de signal
EP0597028A1 (fr) Architecture de systeme en tableau de processeurs a structure parallele.
EP0515238A1 (fr) Dispositif pour la gestion de plusieurs files d'attente indépendantes dans un espace mémoire commun et banalisé
FR2591365A1 (fr) Processeur de manipulation de donnees pour un systeme graphique et systeme graphique correspondant.
FR2759178A1 (fr) Circuit de gestion de memoire dans un environnement multi-utilisateurs avec requete et priorite d'acces
FR2533736A1 (fr) Unite de gestion de memoire pour un ordinateur numerique
FR2563024A1 (fr) Dispositif pour modifier l'aspect des points d'une image sur un ecran d'une console de visualisation d'images graphiques
EP0112427B1 (fr) Dispositif de commande logique programmable
FR2526561A1 (fr) Systeme a micro-ordinateur a deux microprocesseurs
EP0169089B1 (fr) Dispositif élémentaire de traitement de données
EP0191656B1 (fr) Générateur de caractères et utilisation d'un tel générateur dans un système de visualisation
EP0928002B1 (fr) Double mémoire pour processeur de signal numérique
EP0589743A1 (fr) Dispositif modulaire permettant le couplage et le multiplexage de bus de différents types
EP0264325B1 (fr) Automate pour rendre compatible un processeur avec un bus d'un autre processeur
EP0187077A1 (fr) Processeur de tracé de vecteur
EP0962855B1 (fr) Accès rapide aux circuits tampons
FR2582423A1 (fr) Memoire tampon a interposer entre deux systemes synchrones a vitesses differentes
WO1993025976A1 (fr) Processeur parallele pour traitement de multiples donnees par une serie d'instructions repetitives
EP0205523A1 (fr) Dispositifs d'activation simultanee de trains de commandes et applications aux memoires.
EP1033722B1 (fr) Mémoire partagée

Legal Events

Date Code Title Description
ST Notification of lapse