FR2566950A1 - Processeur de points d'images video, systeme de visualisation en comportant application et procede pour sa mise en oeuvre - Google Patents

Processeur de points d'images video, systeme de visualisation en comportant application et procede pour sa mise en oeuvre Download PDF

Info

Publication number
FR2566950A1
FR2566950A1 FR8410376A FR8410376A FR2566950A1 FR 2566950 A1 FR2566950 A1 FR 2566950A1 FR 8410376 A FR8410376 A FR 8410376A FR 8410376 A FR8410376 A FR 8410376A FR 2566950 A1 FR2566950 A1 FR 2566950A1
Authority
FR
France
Prior art keywords
memory
processor
network
data
address
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.)
Granted
Application number
FR8410376A
Other languages
English (en)
Other versions
FR2566950B1 (fr
Inventor
Gerard Chauvel
Frederic Boutaud
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.)
Texas Instruments France SAS
Original Assignee
Texas Instruments France SAS
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 Texas Instruments France SAS filed Critical Texas Instruments France SAS
Priority to FR8410376A priority Critical patent/FR2566950B1/fr
Priority to US06/746,595 priority patent/US4768157A/en
Priority to EP85401323A priority patent/EP0179672B1/fr
Priority to JP60142377A priority patent/JPH0736108B2/ja
Priority to DE8585401323T priority patent/DE3576750D1/de
Publication of FR2566950A1 publication Critical patent/FR2566950A1/fr
Application granted granted Critical
Publication of FR2566950B1 publication Critical patent/FR2566950B1/fr
Priority to JP5315596A priority patent/JPH0777973A/ja
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/02Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
    • G09G5/022Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed using memory planes
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory

Abstract

CE PROCESSEUR DE POINTS COMPORTE UN RESEAU DE CELLULES DE MEMOIRE 33 ADRESSABLES SELON DES RANGEES ET DES COLONNES (DIRECTION X ET Y). UN BLOC DE COMMANDE 42 PERMET DE REALISER LA LECTURE ET L'ECRITURE DANS CE RESEAU SELON DES PARAMETRES ETABLIS A L'AVANCE. CE PROCESSEUR EST INTEGRE DANS UN SYSTEME VIDEO D'AFFICHAGE POUR PERMETTRE TOUTES LES MANIPULATIONS D'IMAGE.

Description

La presente invention est relative a un processeur de points d'images
vidéo destinés a être affichées sur un écran par balayage ligne par ligne et
point par point.
Afin de permettre la manipulation des ima- ges telles que l'incrustation, la rotation ou le changement de couleur (par exemple), on procède actuellement par programmation de l'unité centrale de traitement dont est pourvu en général un système
d'affichage vidéo moderne pouvant réaliser la visua-
lisation d'images sur un écran à balayage de trames.
La présente invention a pour but de rendre ces manipulations possibles moyennant un minimum de programmation et une réduction très poussée de la
taille des mémoires nécessaires.
Elle a donc pour objet un tel processeur qui
est caractérisé en ce qu'il comprend un réseau de cel-
lules de mémorisation agencées selon des rangées et des colonnes et destinées à contenir au moins une partie de l'information d'image qui doit étre soumise à un traitement, ce réseau de mémorisation étant
adressable selon deux directions perpendiculaires dé-
finies respectivement par les colonnes et les rangées,
le processeur comportant également des moyens d'en-
trée/sortie pour que le processeur puisse communiquer avec l'e>xtérieur pour recevoir lesdites informations
d'image et des moyens de commande destinés, en fonc-
tion du traitement à subir par celles-ci, à adresser sélectivement selon l'une ou l'autre direction les
cellules de mémorisation dudit réseau.
L'invention sera mieux comprise à l'aide de
la description qui va suivre, donnée uniquement à
titre d'exemple et faite en se référant aux dessins annexés, sur lesquels:
- la Fig.1 est un schéma général d'un sys-
tème d'affichage vidéo dans lequel est incorporé un processeur de points suivant l'invention;
- les Fig.2A et 2B sont un schéma plus dé-
taillé de ce système; - la Fig.3 représente le champ d'adresse de
l'unité centrale de traitement CPU avec ses possibi-
lités d'interprétation; - les Fig.4A et 4B sont des chronogrammes de cycles de premier plan et de second plan pouvant être exécutés par le système vidéo; - la Fig.5 est un schéma partiel du système
vidéo représentant le processeur d'adresses et le pro-
cesseur de points, ainsi que la circulation des don-
nées pour accéder au processeur de points; - la Fig.6 est un chronogramme de l'accès au processeur de points;
- la Fig.7 est un schéma détaillé du proces-
seur de points avec ses organes périphériques; - la Fig.8 est un diagramme illustrant la copie du contenu d'une zone de la mémoire. générale du système à l'aide du processeur de points;
- la Fig.9 montre la circulation de l'infor-
mation entre la mémoire générale et le processeur de points dans le cas de la Fig.8; - la Fig.10 est un organigramme illustrant le déroulement de la copie d'une zone de la mémoire générale; - la Fig.11 montre comment le processeur de points permet d'inverser une forme à afficher; - la Fig.12 est un autre exemple d'inversion de forme; - la Fig.13 illustre la façon dont on peut obtenir un agrandissement ou une réduction d'une forme; - la Fig.14 monte comment une forme peut être déplacée dans l'image; - la Fig. 15 montre le déplacement d'une forme définie sur un plan de couleur ou sur plusieurs plans de couleurs;
- la Fig.16 montre le principe d'un dépla-
cement d'une forme dans une image affichée; - la Fig.17 montre une phase du déplacement constituée par la restitution du fond antérieur de l'image; - la Fig.18 montre comment la forme et le fond sont recomposés par le déplacement; - la Fig.19 illustre une superposition de la forme sur le fond de l'image par inversion de couleur; - les Fig.20 et 21 montrent le principe de la superposition du contenu de plusieurs zones de la mémoire; - la Fig.22 est un schéma d'une cellule du réseau de mémoire du processeur de points; et - la Fig.23 est un schéma simplifié d'un
bloc de commande utilisé avec le processeur de points.
La Fig.1 représente un schéma très simpli-
fié d'un système de visualisation dans lequel est uti-
lisé le processeur de points suivant l'invention. Ce
système comporte plusieurs unités qui sont les suivan-
tes:
- une unité centrale de traitement 1 appe-
lée ci-après CPU qui est destinée à gérer toutes les opérations du système grâce à un programme qui est contenu dans sa propre mémoire;
- un processeur d'affichage vidéo 2 appe-
lé ci-après VDP communiquant avec le CPU 1 par un bus 3 et une ligne de commande 4, la circulation de
l'information sur le bus 3 étant assurée en multi-
plexage temporel pour des adresses et des données conformément au processus qui est décrit notamment dans la demande de brevet français ne 83 03 142
déposée le 25 Février 1983 au nom de la Demanderesse.
- une mémoire générale dynamique 5 appelée ci-après DRAM qui peut communiquer avec les autres organes du système par l'intermédiaire d'un bus 6 à temps partagé, ce dernier étant relié notamment au CPU 1 par l'intermédiaire d'une interface 7; - une unité d'affichage 8 qui peut être un poste de télévision classique ou bien un moniteur également classique, cet organe étant destiné à l'affichage des informations visuelles élaborées dans le système suivant l'invention, par exemple à l'aide d'un tube cathodique; - une unité externe 9 ou Didon à l'aide de
laquelle le système suivant l'invention peut commu-
niquer avec une source d'information e*terne qui peut être par exemple un émetteur de télétexte relié au
système par exemple par un canal de télévision radio-
diffusé ou par une ligne téléphonique, ou autre.
L'unité externe 9 peut charger des informations dans la mémoire 5 pour permettre après traitement dans le
système leur affichage sur l'écran de l'unité d'affi-
chage 8 Le processeur d'affichage vidéo comprend un processeur d'adresses 10, le processeur de points 11 suivant l'invention et un processeur d'affichage 12,
ces organes communiquant tous entre eux par l'inter-
médiaire du bus à temps partagé 6 et d'un bus 13 sur
lequel peuvent circuler des données uniquement.
Les bus 6 et 13 sont raccordés à la mémoire
DRAM 5 par l'intermédiaire d'une interface 14 permet-
tant de multiplexer les données et les adresses des-
tinées à la DRAM 5.
Il est également prévu un dispositif de com-
mande 15 d'accès dynamique à la mémoire DRAM 5. Ce dispositif a été décrit en détail dans le FR-A-2406250 et dans le demande de brevet français n 83 03 143 déposée le 25 Février 1983 au nom de la Demanderesse et sera appelé ci-après circuit DMA 15. En outre, il est prévu un circuit de base de temps BT associé au processeur d'affichage et communiquant notamment avec le circuit DMA 15, le moniteur de télévision 8 et ce processeur d'affichage lui-même. On trouvera une
description détaillée de ce dernier dans la demande de
brevet français n' 83 06 741 déposée le 25 Avril 1983
au nom de la Demanderesse.
On a déjà indiqué ci-dessus que le CPU 1 communique avec le VDP 2 par l'intermédiaire d'un unique bus multiplexé 3 sur lequel circulent les informations sous la commande de signaux eux-mêmes transmis sur une ligne 4 de manière que les adresses qui transitent sur ce bus puissent être utilisées d'une part comme adresses de la mémoire DRAM 5 lorsque le CPU 1 communique directement avec cette mémoire moyennant quoi le champ de données consécutif est utilisé pour écrire ou lire dans la mémoire, ou d'autre part comme un champ d'instruction permettant de placer le VDP 2 dans une certaine configuration de traitement des données contenues dans le champ de données consécutif; Plus précisément, dans la demande de brevet français n 83 03 142 précitée, on indique que les informations qui circulent sur le bus 3 comportent chacune deux champs d'information dont le premier validé par le signal AL (abréviation de "Address Latch" ou "verrouillage d'adresse") transporte soit une adresse pour un accès direct à la DRAM 5, soit une instruction qui est destinée à être interprétée par le VDP 2. Le deuxième champ validé par le signal EN (abréviation de" Enable" ou "validation") contient la donnée qui transite dans l'un des deux sens sur le bus, ce sens étant déterminé par l'état du signal R/W
("Read/Write" ou "lecture/écriture"). Suivant l'uti-
lisation du premier champ (adresse pour la mémoire ou instruction interprétée), la donnée peut être destinée à la mémoire ou en provenir ou bien être utilisée par
le VDP 2 pour le placer dans l'une de ses configura-
tions de traitement.
La DRAM 5 utilisée dans le système décrit ici est une mémoire composite comprenant plusieurs zones qui peuvent être adressées- à partir d'une adresse de base. Cette mémoire peut donc être composée d'au moins une mémoire de page 5a, de mémoires de gestion de lignes et de colonnes 5b et 5c ( Voir à ce propos, la demande de brevet déposée ce jour au nom de la Demanderesse pour " Système d'affichage d'images vidéo sur un écran à balayage ligne par ligne et point par point") d'au moins une mémoire de zone 5d, d'au moins une mémoire de forme 5e, des mémoires de caractères typographiques 5f, une mémoire tampon 5 qui est destinée à l'adaptation des diverses vitesses
de traitement, notamment de l'unité centrale de trai-
tement 1 et de la voie externe 9 (voir à ce propos le EP-A-0 005 4490 précitée), et éventuellement une mémoire 5h programmée en language assembleur, pour le CPU 1, etc. Toutes ces zones de la mémoire peuvent être accédées par les organes internes au VDP 2 et par le CPU 1, ces accès pouvant être commandés soit par le
CPU 1 elle-même, soit par l'intermédiaire du disposi-
tif d'accès dynamique à la mémoire 15 (voir à ce pro-
pos le FR. 83 06 741 précitée). Toutefois, pour la
compréhension de la suite de la description. il est
utile de rappeler brièvement le fonctionnement du
circuit DMA 15.
Ce circuit est capable de répartir le temps d'accès à la DRAM 5 en fonction d'une certaine prio- rité parmi les utilisateurs du système c'est-à-dire le CPU 1, et les divers organes du VDP 2. A cet effet, le circuit DMA 15 peut être sollicité par chacun de ces utilisateurs pour préparer un accès à la mémoire soit selon un cycle unique (mono-cycle)soit sous forme d'une série d'accès consécutifs (multi-cycle). Dans ce
dernier cas, le circuit DMA 15 peut commander un cer-
tain nombre d'accès à la mémoire à l'aide de signaux d'accès de colonne (CAS) alors que l'on n'utilise qu'un seul signal d'accès de rangée (RAS). Ceci est particulièrement utile par exemple lorsque le système
doit préparer l'affichage d'une page entière sur l'é-
cran moyennant quoi il est nécessaire d'accéder à un très grand nombre de positions dans la mémoire qui
sont contigues et pour lesquelles il suffit d'augmen-
ter l'adresse de colonne à chaque fois.d'une unité seulement alors que l'adresse de rangée reste la même pour tous les accès de cette rangée. Il est à noter que toutes les procédures d'accès à la mémoire 5 sont
déterminées par le circuit DMA 15.
On va maintenant examiner en détail le sché-
ma représenté sur-les Fig.2A et 28.
L'interface 7 est destiné à relier sélecti-
vement le CPU 1 au VDP 2 pour un accès indirect ou à
la DRAM 5 pour un accès direct. Il est capable d'in-
terpréter chaque champ d'adresse en conséquence.
La Fig.3 montre la répartition du champ d'adresse sur 16 bits selon un exemple pouvant être envisagé. Ainsi, lorsque la valeur du champ est située (en hexadécimal) entre >0000 et >FEFF. il s'agit d'un accès direct à la DRAM 5, cependant que lorsque cette valeur est située entre >FF00 et >FFFF, le champ est interprété comme une instruction permettant de valider des registres en écriture ou en lecture vis à vis du
champ de données consécutif.
A cet effet, l'interface comporte un déco-
deur 16 relié au bus 3 et comportant 16 sorties parmi
lesquelles quatre sorties c'est à dire celles corres-
pondant aux deux bits les moins significatifs sont
utilisées pour la validation de quatre registres par-
ticuliers de l'interface. Ces registres sont: - un registre de transfert d'adresse 17 validé par le signal ENCPUA; - un registre de transfert de donnée 18 validé par le signal ENCPUD; - un registre d'état 19 (STATUS) validé par le signal ENST; - un registre de commande 20 validé par le
signal ENCT.
Ces quatre registres sont commandés en écriture ou en lecture par le signal R/W (en écriture R/W=0) qui est appliqué à leurs entrées de commande correspondantes. Par conséquent, lorsqu'il s'agit d'un accès direct du CPU 1, le décodeur 16 génère les signaux de transfert d'adresse ALCPU et ENCPU. En écriture (R/W=0) le champ de données consécutif est transféré à son tour dans le registre 18 tandis qu'en lecture (R/W=1) le contenu de ce registre est transféré en fin de cycle sur le bus 3 pour que le CPU 1 puisse accéder
à la donnée correspondante lue dans la DRAM 5. Le dé-
codeur 16 comporte également une sortie REQCPUF qui permet de demander dans le DMA 15, un cycle d'accès à la DRAM 5. Cette sortie est donc raccordée au circuit
DMA 15 pour que celui-ci alloue un cycle mémoire (si-
gnaux RAS et CAS) au CPU 1. Ce cycle permet alors le
transfert par le bus 6 entre le CPU 1 et la DRAM 5.
Dans le deuxième cas, lorsque le champ d adresse présente une valeur située entre >FFOO et
>FFFF, ce champ est interprété comme une instruction.
Ces instructions peuvent principalement être réparties en deux groupes appelés respectivement "groupe d'instructions de premier plan" (appellation
anglaise FOREGROUND INSTRUCTIONS) et " groupe d'ins-
tructions de second plan" (appellation anglaise
BACKGROUND INSTRUCTIONS). Pour faciliter la descrip-
tion qui va suivre on utilisera pour le premier groupe
l'abréviation FG et pour le second groupe la désigna-
tion BG.
On a vu parmi les adresses interprétées,
quatre adresses sont destinées à désigner sélective-
ment les quatre registres 17 à 20 de l'interface 7.
Pour cela, les deux derniers bits du champ d'adresse
peuvent être utilisés selon la table de. vérité sui-
vante: RCTL WCTL - 00 - Registre 20 RST WST - 01 - Registre 19 RCD WCD 10 - Registre 18 RCA WCA - 11 - Registre 17 (R désigne un signal de lecture et W un
signal d'écriture).
Les autres instructions résultant d'une adresse interprétée qui sont donc au nombre de 256-4=252 avec les huit bits les 'moins significatifs
du champ d'adresses (Fig.3), sont destinées à l'exécu-
tion de cycles FG par l'intermédiaire d'un registre FG 21 qui fait partie de l'interface 7 et qui est relié
2566950 -
entre certaines sorties du décodeur 16 et le proces-
seur d'adresses 10 et plus précisément aux entrées d'adresses d'une mémoire permanente ou CROM 22 faisant
partie de ce processeur.
Un registre 23 de l'interface 7 appelé re-
gistre BG est destiné à être chargé avec des instruc-
tions BG lorsqu'il est désigné par un champ d'adresse dont l'interprétation appelle un ou plusieurs cycles BG. La désignation de ce registre se fait sur les trois bits les moins significatifs du champ d'adresse et plus précisément lorsque ces bits ont la valeur 111. (champ d'adresse >FF07). Lorsque le registre BG 23 est sélectionné, le champ de donnée consécutif contient une instruction sur 16 bits qui place le VDP dans une configuration permettant l'exécution d'un grand nombre de cycles de mémoire sous la commande du
circuit DMA 15, ces cycles étant traités successive-
ment à moins que des instructions FG viennent inter-
rompre le processus. Dans ce cas, le circuit OMA al-
loue un ou plusieurs cycles FG qui sont exécutés puis
les cycles BG sont repris là o ils avaient été inter-
rompus, le processus d'interruption en fonction de la priorité à accéder à la mémoire étant décrite dans la
demande 83 03 143 précitée.
Le processeur d'adresses, outre la mémoire CROM 22 comporte deux piles de registres 24 et 25 respectivement appelées NRAM et PRAM qui peuvent être chargées et lues sur 16 bits à travers un registre de transfert 26 relié au bus 6 à temps partagé. Chaque pile est reliée à une unité arithmétique et logique ou ALU 27, elle-même connectée également directement au bus 6 par l'intermédiaire du registre de transfert 26
et de deux bus sur 16 bits 28 et 29, N et P. Le pro-
cesseur d'adresses est utilisé principalement pour l! fournir et calculer toutes les adresses générées par
le VDP pour accéder à la mémoire 5.
La mémoire 22, lorsqu'elle est adressée par une partie de l'instruction contenue soit dans le registre 21 FG, soit dans le registre 23 BG, permet de sélectionner une micro-instruction qui y est mémorisée afin notamment de valider un ou plusieurs registres
des piles 24 et 25, une fonction arithmétique ou logi-
que dans le ALU 27 et le transfert par le registre 26.
Les opérations de l'ALU 27 sont commandées par cinq bits des microinstructions qui peuvent sélectionner la retenue (CI=O,1 ou 2) et l'opération d'addition ou de soustraction sur le bus P ou N 28,29 ou entre ces
deux bus.
La mémoire de commande CROM 22 contient également les signaux nécessaires à la commande des autres organes du VDP 2 pour effectuer le transfert des données et des adresses entre les différents bus et les registres. Les micro-instructions adressées dans la CROM 22 sont chaque fois validées en temps partagé par le circuit DMA 15 sur la ligne 30 pour permettre l'établissement de l'ordre de priorité
relative à l'accès à la mémoire. Dans le cas repré-
senté ici, six priorités sont ainsi établies dans l'ordre d'énumération:
1. CPU - FG
2. Voie externe (Didon 9) 3. Gestion de l'affichage 4. Affichage (processeur d'affichage 16) 5. Rafraichissement de la mémoire 5
6. CPU BG.
Il résulte donc de ce qui précède que les cycles FG de premier plan sont utilisés par le CPU 1 pour accéder directement à la mémoire ou bien pour accéder aux registres internes du VDP 2 et ce pour n'échanger avec la mémoire qu'un seul mot de 16 bits à
la fois. Ceci est illustré sur la Fig.4A.
Par contre, un cycle BG de second plan est exécuté avec la priorité la plus faible, c'est à dire lorsque le VDP 2 n'a pas d'autres cycles à exécuter pour les autres utilisateurs. Le cycle BG peut être déclenché soit par le CPU par l'intermédiaire d'un cycle FG (Fig.4B) soit par le VDP 2. Lorsque c'est le CPU qui déclenche un tel cycle ou groupe de cycles, il peut s'agir par exemple du déplacement d'un groupe de mots dans la mémoire 5, cette opération étant alors exécutée sans que le CPU n'ait de nouveau à intervenir après le cycle FG qui les a déclenché, de sorte qu'il peut continuer à travailler en FG durant l'exécution des cycles BG, le tout étant géré par le circuit DMA 15 selon la priorité établie (dans ce cas précis, il y aurait interruption puis reprise de l'exécution des
cycles BG).
L'avantage considérable de cet ordonnance-
ment des opérations est que les différents utilisa-
teurs peuvent travailler et communiquer à leur pro-
pre rythme, sans être gênés par les autres utilisa-
teurs, le DMA permettant d'appliquer dans tous les cas
la priorité appropriée.
L'interface 14 de la DRAM 5 comprend deux
registres de transfert 31 et 32 commandés par des si-
gnaux fournis par les micro-instructions de la mémoire CROM 22 et par les signaux RAS et CAS issus du circuit DMA 15, afin de transférer les champs d'adresse et de
donnée du bus 6 vers la DRAM ou inversement. Cepen-
dant, des données peuvent également être transférées directement dans la mémoire 5 à partir du bs 13 à des adresses transférées à travers le bus 6 et le registre
32, en provenance du processeur d'adresses 10.
Le schéma de principe du processeur de points 11 apparait sur les Fig.2B. Dans le système décrit ici, ce processeur travaille en mode BG pour aider à la composition de l'image qui est affichée sur l'écran par l'intermédiaire du processeur d'affichage 12. Le processeur de points comporte un réseau
33 de cellules de mémoire 34 du type RAM, dont la par-
ticularité est qu'il est accessible selon deux axes perpendiculaires appelés axes X et Y. Ce réseau peut être réalisé en circuit câblé comme décrit plus loin (Fig.22 et 23) et également en détail dans la demande
de brevet français déposée ce jour au nom de la Deman-
deresse et intitulée " Mémoire permettant de trans-
former un flot de mots de données en un autre flot de
mots de données. Toutefois, le réseau 33 peut égale-
ment être réalisé en circuit intégré selon les tech-
niques de fabrication connues désormais par les spé-
cialistes. Le réseau 33-comporte une entrée/sortie Y 35 reliée à un registre de transfert 38 lui-même connecté
au bus de données 13, Cette entrée est également con-
nectée à une unité logique 37 à laquelle est associé un registre de masque 38. Celui-ci se trouve connecté à un bus de transfert 39 relié à une entrée/sortie X
du réseau 33 et à un registre de transfert 41 con-
necté également au bus de données 13.
Le processeur de points comprend également un bloc de commande 42 qui est chargé de déterminer les limites des adresses du réseau 33, de valider les signaux de lecture et d'écriture pour-les deux axes X et Y et de commander les fonctions logiques à exécuter sur des données sélectionnées dans le réseau 33 par les adresses X et des données issues de la DRAM 5. Le bloc de commande 42 est chargé à partir du registre BG 23 (Fig.2A) et sa configuration est déterminée par les micro-instructions sélectionnnées dans la mémoire CROM 22. Il est à noter que l'accès au processeur de point 11 (en lecture et en écriture) est commandé par
le circuit DMA 15. cependant que l'exécution des fonc-
tions de traitement des données par le processeur de points peut se dérouler indépendamment des cycles exécutés dans les autres organes du processeur vidéo 2. Pour accéder au processeur de points, le CPU 1 utilise une instruction qui sélectionne l'un des
mots dans le sens X ou Y (Fig.5).
La donnée est transmise en écriture ou en
lecture durant un champ de données du CPU. par l'in-
termédiaire des bus 6 et 13. Ce transfert est réalisé durant un cycle CPUF. Le décodage de l'instruction FG correspondant dans la CROM 22 permet de sélectionner le micro-code de celle-ci qui détermine l'accès au
processeur de points. Le champ d'adresse de l'instruc-
tion sélectionne un adressage X ou Y par l'intermé-
diaire du bloc de commande 42 et un mot de 16 bits,
selon le cas.
Il est à noter que l'exemple décrit ici con-
cerne un système dont le format est de 16 bits, nombre qui est aussi choisi pour le réseau du processeur de
points. Cependant, ce nombre n'est nullement limita-
tif. L'accès au bus 13 est réalisé en validant l'un ou l'autre des registres de transfert 36 et 41 à l'aide des signaux DS.DB et DP.Dg issus de la mémoire
CROM 22.
En écriture, le microprocesseur accède au processeur de points 11 pour construire par exemple un bloc de 16 mots de 16 bits, qui est transféré par la
suite dans une zone de la mémoire.
En lecture, le microprocesseur accède à un
bloc de 16 x 16 mots lu auparavant dans-la mémoire 5.
Le chronogramme relatif à une écriture apparait sur la Fig.6. Le cycle CPUF déclenché selon les méthodes
précédemment décrites, valide le microcode sélection-
né dans la CROM 22 par l'instruction FG. En début de cycle, le signal ENCPUD transfère la donnée du CPU1 du registre CPU DATA 18 sur le bus 6 puis sur le bus DRAM 13 par le signal TS.DB pour être présentée aux entrées X du réseau 33 du processeur de points 12 et chargée par le signal WX à l'adresse X. Le mécanisme d'écriture dans le sens Y est analogue. Une instruction de lecture utilise le chemin inverse et les principes définis pour le processeur
d'adresses 10.
Sur la Fig.7, on a représenté le processeur de points 11 avec tous les signaux de commande qui en régissent le fonctionnement. Le bloc de commande 42 comprend deux sections 42X, 42Y pour l'adressage en X
et Y et une section de commande d'accès 42A qui déco-
de l'instruction en provenance du registre 23 et vali-
de les adressages, les fonctions et les signaux d'é-
criture et de transfert.
FONC - Ces entrées sélectionnent l'opération effectuée par le processeur de points et par l'unité logique. S - Sélectionne le sens de progression des
adresses X ou Y qui peut être croissant ou décroi-
sant. LIE - Sélectionne le sens de transfert des données:
- En lecture: de la mémoire 5 vers le pro-
cesseur de points 11. - En écriture: du processeur de points 11
vers la mémoire 5.
X/Y - Sélectionne l'axe d'utilisation du
réseau 33.
- Pour le sens Y, les données transitent à
travers le registre 36.
- Pour le sens X, elles transitent, en lecture à travers l'unité logique 37 et, en écriture
à travers le registre 41.
Les 8 bits de paramètres (PARAM) sélection-
nent les bornes entre lesquelles le transfert s'effec-
tue, XA - XB. ou YA - YB.
La zone 43 est limitée par deux adresses YA et YB. La progression des adresses va de YA vers YB, ou de YB vers YA, selon le sens "S". Le transfert de la donnée s'effectue en écriture ou en lecture selon la valeur de "L/E". Le bit de donnée de poids fort MSB
est situé à gauche.
Les bornes de la zone 44 sont XA 11 et XB= 13, le choix de la progression et du sens de transfert se fait de façon identique par les signaux "S" et "L/E". Le bit de-poids fort MSB est en haut du réseau 33. Le processeur de points est sélectionné par l'entrée CYCLE et les adresses progressent au rythme du signal CAS. Ces signaux sont fournis par le circuit
OMA 15.
On va maintenant décrire plusieurs cas de traitement des données à l'aide du processeur de points. A - COPIE DE ZONES DE LA MEMOIRE 5. îFic.8> La copie de zones de la mémoire 5 consiste à lire le contenu d'une partie d'une zone, de la charger dans le processeur de points, puis de la transférer du processeur de points dans une autre zone de la mémoire 5. Dans l'exemple décrit, la copie est éxécutée par blocs de 16 mots au maximum correspondant à la
capacité du processeur de points.
Une instruction de lecture charge le proces-
seur de points à partir des paramètres contenus dans le code de l'instruction chargé préalablement dans le bloc de commande 42 à savoir: l'axe de lecture X ou Y, - les bornes XA - XB ou YA - YB, - le sens croissant ou décroissant,
Les adresses sont élaborées dans le proces-.
seur d'adresses 10. Le pointeur de lecture PM2 (Fig.5} et la valeur d'incrément "'" sélectionnent un mode de progression des adresses dans l'un des trois axes, profondeur, ligne ou colonne de la mémoire 50 Les paramètres de l'instruction d'écriture peuvent être identiques ou différents des paramètres de l'instruc-
tion de lecture. Pour chaque transfert, 'léxécution des cycles de lecture et d'écriture est déclenchée par le chargement du registre 23. Il est à noter que la progression en "profondeur" de la mémoire 5 correspond
* au passage d'un plan mémoire à un autre dans des em-
placements qui correspondent à un endroit identique
dans l'image.
B - COPIE DE ZONES AVEC PARAMETRES IDENTIQUES (Fig.g9 Le cas le plus simple consiste à copier le contenu d'une ZONE A dans une ZONE B de cette même mémoire, les paramètres des instructions de lecture et d'écriture étant identiques. La matrice de la ZONE A, à transférer dans la ZONE B. est décrite dans un carré
de 16 points par 16 lignes. Les paramètres des ins-
tructions de lecture et d'écriture sont les suivants: - axe de transfert Y, - bornes du processeur de points YA = 0 et
YB = 15,
- sens de progression d'adresse décroissant.
Le pointeur de lecture PM2 (Fig.5) est pro-
grammé à la première adresse de la ZONE A. Le pointeur d'écriture PM1 adresse le premier mot de la zone B. Les valeurs d'incrément A et B sont choisies selon le
mode de progression utilisé et selon les caractéristi-
ques des zones. Par exemple, la ZONE A peut être défi-
nie par une progression modulo 1, les mots 45 à 46 qui
définissent la forme étant contigus dans la mémoire.
La ZONE B peut être le premier plan d'une zone mémoire identique à celle décrite ci-dessus (Fig.8) (512
points par lignes, 4 plans); la progression par colon-
ne définit A = >80 (en hexadécimal).
Les valeurs de pointeur et d'incrément sont
chargées dans le processeur d'adresses 10. Le charge-
ment de l'instruction de lecture déclenche l'exécution du transfert. Le premier mot 45 de la ZONE A situé i
l'adresse PM2, est transféré à l'adresse Y15 du pro-
cesseur de points. Le pointeur PM2 est incrémenté du
contenu de B, Y est décrémenté. Les mots suivants jus-
qu'au mot 45 sont chargés de la même manière dans le
processeur de points.
Lorsque Yn = O, le bloc de commande d'accès
42 du processeur de points transmet au OMA 15, un si-
gnal qui arrête la génération des signaux CAS de com-
mande de la mémoire 5, ce qui libère le processeur 1 9 d adresses 11. La fin de cycle est indiquée dans le
registre d'état 19 ( Fig.2A).
Le chargement de l'instruction d'écriture déclenche le transfert en sens inverse du processeur de points vers la ZONE B, en utilisant le pointeur PM1
incrémenté à chaque cycle du contenu de A. -
La Fig.10 représente l'organigramme des opé-
rations ainsi exécutées. Aprés programmation des poin-
teurs du processeur d'adresses, l'instruction de lec-
ture est déclenchée, s'il n'y a pas de cycle BG en cours (FBI=O). Les paramètres étant chargés, la boucle
de transfert 47 est répétée 16 fois de Y15 à YO.
De la même façon, le CPU 1 charge l'instruc-
tion d'écriture pour transférer les informations du processeur de points vers la mémoire 5. La boucle 48 est répétée seize fois de Y15 à YO. La boucle 49 est
répétée autant de fois qu'il y a de blocs d'informa-
tions à transférer.
Le temps d'exécution des boucles 47 et 48 dépend de la progression des adresses. En effet, si le
calcul de la prochaine adresse ne génère pas de débor-
dement d'adresse colonne, le premier accès est un cy-
cle complet RAS et CAS et les cycles suivant sont seu-
lement du type CAS.
Le temps de traitement TT est alors: - 5 TC + 3 TC x 15 = 50 TC, soit 2/ s avec à
titre d'exemple TC = 40nS.
Dans le pire des cas, si chaque calcul d'a-
dresse génére un débordement d'adresse colonne, chaque accès est un cycle complet du type RAS et un cycle de type CAS. Le temps d'accès est alors:
- 5 TC x 16 = 80 TC, soit 3.,21S.
C - COPIE DE ZONES AVEC PARAMETRES DIFFERENTS.
Dans l'exemple précédent, la lecture s'ef-
fectue par la voie LY (lecture Y) et l'écriture par la
voie EY (écriture Y) du processeur de points, les bor-
nes et le sens de progression des adresses étant iden-
tiques. En utilisant des paramètres de lecture et d'é-
criture différents, on obtient soit une rotation de
l'image, soit.une inversion de sa forme ( Fig. 11).
La forme originale 50 est copiée dans le
processeur de points 11 par un cycle de lecture utili-
sant la voie LY. Les paramètres de lecture sont les suivants: voie Y, bornes YA = 0 et YB = 15, sens de
progression Y15 --> YO.
Le paramètre d'incrément B du pointeur de lecture PM2 (Fig.5), est choisi pour une progression croissante en colonne. En fin d'&éxécution après 16 cycles de lecture, la forme originale 50 est chargée
dans le processeur de points 11.
Le contenu du processeur de point est uti-
lisé pour écrire les formes 51 à 54 dans la mémoire 5.
Le paramètre d'incrément A du pointeur d'écriture PM1.
est identique à B si la zone destinataire a les mêmes
caractéristiques que la zone source (forme originale).
La forme 51 est la recopie du contenu du processeur de points, utilisant la même progression d'adresse par la voie EY avec les paramètres: voie Y. bornes YA = 0 et YB = 15, sens de progression
Y15 --> YO.
La forme 52 est la recopie de la forme ori-
ginale avec une rotation de 90 degrés dans le sens anti-horaire. La voie EX est utilisée pour écrire, les
paramètres d'écriture sont les suivants: voie X, bor-
nes XA = 0 et YB = 15, sens de progression XO --> X15.
La forme 53 inverse de l'originale est obte-
nue en utilisant la voie d'écriture EY, les paramètres de progression d'adresse du processeur de points étant inverses: voie Y, bornes YA = 0 et YB = 15, sens de
progression YO --> Y15.
La forme 54 inverse de la forme 52 est aussi une rotation de 90 dans le sens horaire de la forme 53. Elle est obtenue avec les paramètres suivants: voie X, bornes XA = 0 et X8 = 15, sens de progression
X15 --> XO.
La Fig.12 montre une rotation sur 180
partir de l'original 50. Cependant, il n'est pas pos-
sible d'obtenir en une seule fois cette rotation de ' de la forme, il faut créer la rotation de 90 de l'image dans une zone mémoire tampon de la DRAM 15 et
la recopier dans le processeur de point 11.
La forme 52 est copiée dans le processeur de
points par la voie LY suivant une progression d'adres-
se décroissante de Y15 vers YO.
La forme 55 est obtenue en utilisant la voie X avec les paramètres suivant: voie X, bornes XA = 0 et X8 = 15, sens de progression XO --> X150 La progression des pointeurs de lecture et
d'écriture est inchangée.
Dans tous les cas examines ci-dessus, le temps d'éxécution total pour des cycles de 16 lectures et 16 écritures est compris entre 50 TC et 80 TC soit
2/$S à 3,2,/AS avec TC = 40 nS.
D - COPIE AVEC DES VALEURS D'INCREMENTS DIFFERENTS
Dans le paragraphe précédent, les progres-
sions des pointeurs de lecture et d'écriture de la mémoire 5 sont identiques. En changeant les valeurs de progression relative des pointeurs de lecture et d'écriture, on peut obtenir des effets de changement
de taille et de " zoom " (Voir Fig.13).
L'original 50 est chargé dans le processeur
de points 11 par la voie LY.
Une lettre en double hauteur 56 est obtenue
en exécutant deux séquences de seize cycles de l'ins-
truction d'écriture par la voie EY. Durant la première instruction, le pointeur PM1 contient l'adresse de la première ligne de la matrice. Au cours de la première séquence d'écriture, la valeur A permet de progresser par colonne en sautant une ligne à chaque fois. Une
partie de la forme obtenue est représentée en 57.
Après les seize premiers cycles d'écriture, le poin-
teur PM1 contient l'adresse de la seconde ligne de la matrice. La progression est la même au cours de la deuxième séquence, les lignes sautées précédemment étant remplies avec le même contenu que la ligne qui la précède. A la fin de la deuxième séquence de seize
cycles, on obtient la lettre en double hauteur 56.
Le principe est le même pour une lettre en triple hauteur 58 qui s'obtient en exécutant trois
fois les seize cycles d'écriture.
Pour obtenir une réduction de taille 59, la
progression du pointeur PM2 durant le cycle de lectu-
re, est telle qu'une ligne sur deux est transférée dans le processeur de points. La lettre réduite en
taille est recopiée dans la mémoire 5.
A partir des exemples précédents, il apparait clairement que l'on peut combiner une rotation d'image avec un changement de dimension de celle-ci, en choisissant à chaque fois les voies de
lecture/écriture X et Y de la progression des adres-
ses en fonction de la manipulation à effectuer.
E - DEPLACEMENTS DE FORMES
Les exemples décrits précédemment concer-
nent une manipulation d'image sans que l'on procède à un changement en translation de la matrice d'image concernée. La Fig.14 illustre un cas dans lequel la matrice d'image (ici une croix appelée "souris" par les spécialistes) est déplacée en translation sur un
seul plan de fond de couleur uniforme.
La forme originale 60 est définie dans une zone 61 de la mémoire DRAM 5. Pour chaque déplacement, cette forme est copiée dans le processeur de points 11 en utilisant des paramètres de lecture adaptés au déplacement désiré. On suppose que la forme tient dans la matrice 16' x 16 et que dans l'exemple considéré,
elle est déplacée successivement de deux cellules mé-
morisées (ou de deux points d'image, ce qui revient en
réalité au même) dans toutes les directions.
La colonne 62 représente les déplacements verticaux, deux lignes vers le haut pour la forme 62B, deux lignes vers le bas pour la forme 62C. La forme originale doit être cadrée au centre du réseau 33 du proceseur de points. Le pointeur de lecture PM2 contient l'adresse 60A de l'original. Les paramètres de transfert dans le processeur de points sont les suivants: lecture par la voie LX, bornes de transfert
XA = 2 et XB = 13, sens de progression X13 --> X2.
Au premier cycle, le contenu de l'adresse A de l'original est transféré dans le processeur de
points à l'adresse X13. Le pointeur PM2 est incrémen-
té pour pointer sur l'adresse 60B et X est décrémenté.
En répétant cette séquence douze fois, les douze mots, 2 à 13 de l'original sont transférés aux adresses X13 à X2 du processeur de point. La forme est au centre du
réseau 33.
Pour obtenir les formes 62B et 62C décalées, le pointeur d'écriture PM1 doit être programmé à la
position correspondant au premier mot de la forme.
(pour 62B adresse 67 et pour 62C adresse 68). Le transfert inverse du processeur de points s'effectue par la voie EY, en utilisant les paramètres suivants: écriture par voie EY, bornes YA = 2 et YB = 13, sens
de progression Y13 --> Y2.
Le pointeur PM1 évolue selon une progression par colonne à chaque cycle. Les décalages à gauche ou à droite et en
diagonale s'effectuent selon le même principe. Cepen-
dant, l'original est copié dans le processeur de point
à la position correspondant à son décalage horizontal.
Par exemple, dans la colonne 63, les paramè-
tres sont les suivants pour un décalage de deux points à gauche: lecture par voie LX, bornes XA = 4 et
XB = 15, sens de progression X15 --> X4.
A la fin du transfert, la forme est décalée dans le processeur de points. Elle est recopiée dans la mémoire 5 par la voie EY, selon le procédé décrit
précédemment. Si la forme est à cheval sur la frontiè-
re de deux mots de 16 bits, le transfert s'effectue en
deux cycles de lecture et d'écriture.
Le décalage peut être effectué d'un nombre
quelconque de points, dans les huit directions.
E - DEPLACEMENT DE FORMES SUR UN FOND
Le paragraphe précédent décrit un motif qui se déplace dans toutes les directions sur l'écran. Ce motif peut être une souris permettant d'aider à la composition d'une image, Différents cas sont possibles (Fig.15,). - E1, La souris se déplace dans un plan séparé des plans d'image: - si la mémoire de page est codée sur quatre plans P1 à P4. la souris se trouve dans le plan PI; elle se superpose dans sa couleur aux plans P2, P3 et P4 qui définissent une image de fond en huit couleurs
(voir à prospos des plans mémoire, la demande de bre-
vet français n 83 06 741 précitée).
- le fonctionnement se ramène au cas précé-
dent, les paramètres d'incrémentation des pointeurs
étant différents.
- E2. La souris se déplace dans tous les plans: - dans ce cas, l'image de fond est codée sur quatre plans en quinze couleurs, la seizième couleur
définissant la souris.
- l'image peut être aussi codée en seize
couleurs, chaque points de la souris doit alors appa-
raitre dans une couleur qui se distingue facilement de
celle du fond.
- cas E2 - La forme est définie en une seule
couleur (Fig.16).
Pour réaliser ce déplacement, on affecte une section de la mémoire composite 5, une zone de sauvegarde que l'on a représenté en 69 sur la Fig.16 qui montre également une partie 70 de la zone de la
mémoire relative au plan 1 et concernant le déplace-
ment considéré icio La forme examinée est ici la sou-
ris 60 de la Fig.14.
Pour cet exemple de déplacement, la souris
est définie dans une couleur parmi 16. Pour simpli-
fier, le code de couleur est "1111" c'est à dire que les points de souris sont représentés par des "31 dans
les quatre plans de couleur.
En traitant les plans séparément, l'opéra-
tion consiste à forcer un niveau "1" dans les bits du plan considéré, aux emplacements o la souris doit se superposer. En retirant la souris, la Figure initiale de l'image à afficher comprend deux zones, une zone 71
représentée par des bits à "1" et une zone 72 repré-
sentée par des bits à "0", d'autres formes dans les plans P2, P3 et PC permettant d'obtenir les quinze combinaisons de couleur sur l'écran. Il est à noter que la forme de la zone 71 est choisie ici tout à fait aléatoirement pour représenter le contenu de l'image courante sur lequel doit se superposer la souris. La formule originale de la souris 60 (Fig. 14) est aussi représentée par des bits à "1", le fond correspondant à des bits à "0". Dans cet exemple,
on veut déplacer la souris de la position A à la posi-
tion B. Les opérations sont les suivantes: I - Restitution de l'ancien fond (zones 71 et 72) mémorisé durant le déplacement précédent dans
la zone de sauvegarde 69.
II - Sauvegarde des zones 70B et C dans le
plan de sauvegarde en 69B et 69C.
III - Superposition de la souris 60 sur les
zones 708 et 70C.
I - La restitution de l'ancien fond est illustrée sur
la Fig.17.
Lorsque la souris est située à l'intérieur d'un groupe de seize points, la zone de sauvegarde 69 (Fig.16) contient autant de mots que la souris a de
lignes. Le pointeur de lecture PM2 (Fig.5) est posi-
tionné sur la ligne L1 de la zone 69A. Le pointeur d'écriture PM1 est positionné sur la ligne L1 de la zone 70A. Les douze mots de seize bits représentant
douze lignes de seize points de l'image sont trans-
férés dans le processeur de points 11 par une ins-
truction de lecture ayant les paramètres suivants: lecture par voie LY, bornes XA = 4 et XB = 15. sens de
progression Y15 --> Y4.
Après exécution des douze cycles, la forme à restituer se trouve transférée dans le processeur de Z7 points (Fig.7). L'instruction d'écriture utilise les
mêmes paramètres et le transfert est inverse en utili-
sant la voie EY.
En fin d'exécution, l'ancienne forme est restituée et la souris effacée.
II - La sauvegarade du nouveau fond et la superposi-
tion de la souris sont réalisées de la façon suivante (Fig.18). La nouvelle position B de la souris étant sur une frontière de mots adjacents, les zones 70B et C doivent être sauvegardées dans les zones 69B et 69C (Fig.16) pour la restitution au cours du prochain
déplacement. Il convient alors de transférer les don-
nées de la zone 70B dans le processeur de points 11, de transférer les données du processeur de points dans la zone de sauvegarde 698, de superposer la partie concernée de la souris 60, de transférer les données
du processeur de points dans la zone 70B.
Le transfert des données de la zone 70B dans le processeur de points s'effectue par la voie LY. les paramètres du processeur de points étant les suivants: lecture par voie LY, bornes YA = 2 et YB = 13, sens de
progression Y13 --> Y2.
Le pointeur PM2 est sur la ligne L1 de la zone 708 (Fig.16). Après douze cycles de lecture, la forme contenue dans la zone 70B se trouve dans le processeur de points. Le transfert inverse des données du processeur de points vers la zone 69B s'effectue selon le même processus avec PM1 pointant sur L1. Pour
obtenir la zone 708 avec la partie de la souris con-
cernée, les lignes L2 à L8 de la souris 60 doivent être superposées aux positions respectives X6 à XO du processeur de points dont les paramètres sont alors les suivants: lecture par la voie LX, bornes XA = 0 et XB = 6, sens de progression X6 --> XO, fonction "OU' entre les entrées L et P réalisée dans l'unité logique 38. Le pointeur de lecture PM2 pointe sur la ligne L2. A la première lecture, le mot sélectionné par L2 (zone 60 Fig.18) est présenté aux entrées L de
l'unité logique tandis que le mot sélectionné par "X6".
est appliqué aux entrées "P". L'unité logique effectue
la fonction L ou P et le résultat est placé à l'adres-
se X6. Après sept opérations identiques, les lignes 2
à 8 de la souris sont superposées à la zone 70B.
Le processeur est identique pour superposer la partie restante de la souris sur la forme 70C. La méthode de superposition est répétée dans les quatre
plans de couleur.
F - FORME AFFICHEE EN 16 COULEURS
Lorsque tous les codes de couleur sont uti-
lisés pour composer l'image de fond, la forme de la souris doit se distinguer quelle que soit la couleur des points qui forment le fond. Une méthode consiste à changer la couleur des points par un "OU EXCLUSIF" qui inverse les bits de fond sur lesquels la forme de la
souris est superposée (Fig.19).
Cette méthode n'utilise pas de zone de sau-
vegarde. Le mécanisme de déplacement de la souris est le suivant: restitution du fond par une fonction 'OU EXCLUSIF' sur la position A exécutée dans l'unité logique 38, et affichage de la souris sur le fond par
une fonction "OU EXCLUSIF".
On procède de la façon suivante: la zone B à restituer est transférée dans le processeur de points par la voie LY, la souris 60 est transférée
dans le processeur de points, en effectuant une fonc-
tion 'OU EXCLUSIF" entre les mots contenus dans le processeur de points (voie P) et ceux issus de la zone (voie L). Le résultat est replacé à la même adresse (Xn), en fin de traitement, le contenu du processeur
de points est transféré dans la zone 70A. Le fond d'o-
rigine est restitué, la nouvelle position "B" de la
souris, est créée selon le meme principe.
L'opération doit être exécutée dans tous les
plans de couleur.
G - SUPERPOSITION DE ZONES
La superposition d'une zone consiste à rem-
placer une portion de la mémoire de page, par une
forme multicouleur définie dans une autre zone mémoi-
re. La mémoire de page (Fig.20) est définie sur un nombre de plans qui est supérieur ou égal au nombre de
plans de couleur de la forme à superposer. La super-
position peut être réalisée par différentes méthodes.
Celle qui est décrite ici à titre d'exemple utilise un plan de forme contenant des bits positionnés à l'état "1", indiquant qu'une couleur est définie dans les plans de couleurs. Les bits à "0" du plan de forme
indiquent la transparence. Dans les zones transparen-
tes, le contenu de la mémoire de page est inchangé.
On suppose que le contenu des plans de cou-
leur C1 et C2 doit être transféré dans les zones Z1 et Z2 des plans P1 et P2, la forme n'ayant pas de couleur définie dans le plan 3. Le mécanisme de transfert est décrit sur la Fig-.21, il se répète pour les deux plans P1 et P2. Le plan P3 n'a pas d'information de couleur,
les bits de forme F sont remplacés par des "O".
La superposition des couleurs sur le plan P1, est exécutée en quatre étapes, selon les principes
décrits dans les paragraphes précédents.
A. Le contenu de la zone Zl es transféré dans le pro-
cesseur de points par la voie LY. En fin de cycle, il contient au maximum les caractéristiques du plan P1 de
seize lignes comportant seize points issus du plan P1.
B. L'étape suivante consiste à superposer la forme dans le processeur de points, les bits F = 1 du plan
de forme étant représentés par des "O" dans le pro-
cesseur de points. Les bits à "0" du plan de forme ne
* changent pas le contenu du processeur de points.
Le plan de forme est lu par la voie LX, l'unité logique effectue la fonction "NON"-L-"ET"-P entre les mots du processeur de points et du plan de
forme, ayant les mêmes positions relatives. Le résul-
tat de l'opération est placé dans le processeur de
points. En fin de cycle, le processeur de point con-
tient des "0" aux bits F de la forme, et le contenu du
plan Z1 au position T de la forme.
C. Le premier plan de couleur Cl est superposé au con-
tenu du processeur de points, en effectuant une fonc-
tion "OU" entre les mots issus du plan de couleur via la voie d'accès ou LX et le contenu du processeur de points. En fin de cycle les parties F de la forme contiennent les bits de couleur C1, les parties T sont inchangées. ID. La dernière phase consiste à tranférer le contenu du processeur de point dans la zone Zl en utilisant la
voie EY.
La même opération est recommencée pour le plan P2, tandis que l'étape "C" est sautée pour la
composition du plan P3.
La Fig.22 montre à titre d'exemple non li-
mitatif, un mode de réalisation d'une cellule de mémorisation m du réseau 33 en version câblée. Les spécialistes comprendront qu'un tel réseau peut être réalisé également en version intégré en conférant à
ses cellules les mêmes propriétés.
L'organe de base de chaque cellule m est une bascule 73 de type "D", par exemple celle vendue sous le n'7474 par la Demanderese. Cette bascule comporte une borne d'entrée E. une borne de sortie S et une
borne d'horloge Cl.
Ces entrées peuvent être raccordées sélec-
tivement, par des portes 74 à des lignes AxmEc, A xmL, AymEc, AymL pour l'adressage et des lignes E/Sxm et
E/Sym pour l'extraction et le chargement des données.
ym Les lignes d'adressage sont raccordées au bloc de commande 42 (Fig.7) dont une partie apparaît sur les
figures. Il s'agit de quatre sections de multiplexa-
ge désignées sur la Fig.7 par 42 X et 42 Y. Le transfert des données est commandé à
l'apparition du signal CAS sur une ligne 75.
Comme déjà indiqué ci-dessus, les adresses auxquelles les données doivent être rangées dans le réseau 33 peuvent augmenter ou diminuer entre deux "bornes" préalablement fixées, l'écart entre ces
bornes étant le nombre de mots dans un bloc considéré.
Par exemple, si on souhaite traiter successivement des blocs de cinq mots, on peut ranger ces mots à partir de l'adresse Y5 jusqu'à l'adresse Y9, (sens croissant) ou à partir de l'adresse Y1l jusqu'à l'adresse Y7 (sens décroissant), toute autre valeur des bornes, et tout autre nombre de mots (jusqu'à concurrence de 16) pouvant naturellement être utilisé. Il est à noter que ces paramètres peuvent varier d'un groupe de mots au suivant, le tout étant fonction de la manipulation
d'image à effectuer.
Pour déterminer les valeurs d'adressage ou bornes lors du traitement de chaque bloc de mots, on utilise les circuits de "paramètres" 42A qui peuvent être chargés préalablement au traitement du bloc de
mots considérés à partir de l'unité centrale 1.
Ce circuit 42 est associé à un montage composé d'un registre 76, d'un compteur 77 et d'un
comparateur 78.
La sortie d'égalité 79 du comparateur 78 est
relié au registre d'état 19 (Fig.2A) pour pouvoir si-
gnaler à celui-ci que la valeur de borne des adresses
en progression a été atteinte.

Claims (17)

REVENDICATIONS
1. Processeur de points d'images vidéo destinées à être affichées sur un écran par balayage ligne par ligne et point par point, caractérisé en ce qu'il comprend un réseau (33) de cellules de mémori- sation (34) agencées selon des rangées et des colonnes
et destinées à contenir au moins une partie de l'in-
formation d'image qui doit être soumise à un-traite-
ment, ce réseau de mémorisation étant adressable selon
deux directions (X,Y) perpendiculaires définies res-
pectivement par les colonnes et les rangées, le pro-
cesseur comportant également des moyens d'entrée/sor-
tie (35,46,36,41) pour que le processeur puisse communiquer avec l'extérieur pour recevoir lesdites
informations d'image et des moyens de commande desti-
nés en fonction du traitement à subir par celles-ci, à
adresser sélectivement selon l'une ou l'autre direc-
tion les cellules de mémorisation dudit réseau.
2. Processeur de points suivant la revendi-
cation 1, caractérisé en ce que lesdits moyens de com-
mande comprennent un multiplexeur d'adresses (42X,
42Y) avec des moyens (LE, ValX, Valy) pour sélection-
ner des opérations de lecture et d'écriture dans ledit réseau et les directions dans lesquelles la lecture/
écriture doit être exécutée.
3. Processeur de points suivant la revendi-
cation 2, caractérisé en ce que lesdits moyens de com-
mande comprennent également des moyens pour définir des bornes d'adressage (X1 à Y15 X à X 15) au cours 9 15' 1 1p5}
de chaque cycle d'utilisation dudit réseau.
4. Processeur de points suivant l'une quel-
conque des revendications là 3, caractérisé en ce que
lesdits moyens de commande comprennent également des moyens (S) pour déterminer le sens d'adressage selon
l'une ou l'autre des directions d'adressage perpendi-
culaires.
5. Processeur de points suivant l'une quel-
conque des revendications précédentes, caractérisé en
ce qu'il comporte un circuit de traitement logique
(37, 38) po-ur soumettre à des fonctions logiques pré-
déterminées les données extraites dudit réseau et les données appliquées de l'extérieur audit circuit de
traitement logique.
6. Processeur de points suivant l'une
quelconque des revendications 1 à 5, caractérisé en ce
que ledit réseau comporte des rangées et des colonnes
dont la longueur est égale au format des mots d'infor-
mations utilisé pour composer lesdites images.
7. Système de visualisation d'images sur un écran d'images vidéo par balayage de trames ligne par
ligne et point par point, comportant une unité centra-
le de traitement (1) destinée à commander la composi-
tion des informations d'image à afficher, une mémoire
composite (5) dans laquelle avant l'affichage de cha-
que trame, toutes les données de visualisation sont mémorisées, un processeur d'adresses (10) destiné à définir sous la commande de ladite unité centrale à définir à chaque instant l'adresse à laquelle des
données doivent être écrites ou lues dans ladite mé-
moire composite, un processeur d affichage (12) et une base de temps (BT) pour assurer la visualisation des données sur ledit écran après extraction de ladite mémoire et un circuit de commande d'accès dynamique à la mémoire (15) pour ordonnancer l'adressage de ladite mémoire en fonction des divers utilisateurs (1,11,12) dudit système, celui-ci étant caractérisé en ce qu'il comporte en outre un processeur de points (11) suivant
l'une quelconque des revendications 1 à 6.
8. Système suivant la revendication 7, ca-
ractérisé en ce que lesdits moyens de commande (42) sont raccordés à ladite unité centrale de traitement (1) par l'intermédiaire de moyens de décodage (16,21, 23) des instructions fournies par cette unité centra- le.
9. Procédé de traitement d'images à l'aide du processeur de points suivant l'une quelconque des
revendications 1 à 6, dans un système suivant l'une
quelconque des revendications 7 et 8, caractérisé en
ce qu'il consiste à extraire un groupe de mots de
données de ladite mémoire composite (5), correspon-
dant à une portion d'image stockée dans celle-ci à l'instant considéré, à charger ce groupe de mots de données dans ledit réseau (33) du processeur de points
(11), à extraire ledit groupe de mots de données du-
dit réseau et à charger le groupe dans ladite mémoire composite en modifiant au moins certaines des valeurs
d'adresse de cette dernière par rapport à celles aux-
quelles étaient stockés les mots de données lors de
l'extraction du groupe.
10. Procédé suivant la revendication 9, ca-
ractérisé en ce qu'il consiste à inverser lors de l'extraction des mots de données dudit réseau, le sens
d'adressage de celui-ci par rapport au sens d'adressa-
ge utilisé pendant le chargement.
11. Procédé suivant l'une quelconque des re-
vendiations 9-et 10, caractérisé en ce qu'il consiste à charger les mots de données dans ledit réseau (33) selon une direction d'adressage et à les en extraire selon l'autre direction d'adressage (X ou Y) afin
d'obtenir une rotation de 90' de la portion d'image.
12. Procédé suivant l'une quelconque des
revendications 9 à 11, caractérisé en ce qu'il consis-
te à extraire les mots de données de ladite mémoire composite (5) à des adresses ayant l'une par rapport à l'autre un premier écart constant (modulo B. Fig.8) et
à charger les mots de données dans ladite mémoire com-
posite (5) à des adresses ayant l'une par rapport à l'autre un second écart constant (modulo A) égal ou
différent du premier écart.
13. Procédé suivant la revendication 12. ca-
ractérisé en cq que ledit écart correspond au nombre d'adresses nécessaires pour le stockage des données
relatives à une ligne de l'image à des adresses conti-
gues de la mémoire composite (5).
14. Procédé suivant la revendication 12,
caractérisé en ce que ledit écart correspond à la dif-
férence entre deux valeurs d'adresse correspondant à des emplacements équivalents dans différents plans de
couleur de ladite mémoire composite.
15. Procédé suivant l'une quelconque des re-
vendications 9 à 14. caractérisé en ce qu'il consiste à charger chaque mot de données extraits dudit réseau {33) à au moins deux adresses différentes de ladite
mémoire composite (5).
16. Procédé suivant l'une quelconque des
revendications 9 à 14, caractérisé en ce qu'il consis-
te à ne charger dans ladite mémoire composite (5) que
certains mots de données extraits dudit réseau (33).
17. Procédé suivant l'une quelconque des re-
vendications 9 à 16, caractérisé en ce qu'il consiste à soumettre les mots de données extraits de ladite
mémoire composite (5) et les mots de données se trou-
vant stockés dans ledit réseau (33) à une opération
logique telle que "ET","OU, "NON ET" ou autre.
FR8410376A 1984-06-29 1984-06-29 Processeur de points d'images video, systeme de visualisation en comportant application et procede pour sa mise en oeuvre Expired FR2566950B1 (fr)

Priority Applications (6)

Application Number Priority Date Filing Date Title
FR8410376A FR2566950B1 (fr) 1984-06-29 1984-06-29 Processeur de points d'images video, systeme de visualisation en comportant application et procede pour sa mise en oeuvre
US06/746,595 US4768157A (en) 1984-06-29 1985-06-19 Video image processing system
EP85401323A EP0179672B1 (fr) 1984-06-29 1985-06-28 Processeur de points pour images vidéo et système et procédé de visualisation correspondants
JP60142377A JPH0736108B2 (ja) 1984-06-29 1985-06-28 像処理装置
DE8585401323T DE3576750D1 (de) 1984-06-29 1985-06-28 Punktprozessor fuer videobilder und entsprechende optische anzeigesystem und -verfahren.
JP5315596A JPH0777973A (ja) 1984-06-29 1993-12-15 画像処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR8410376A FR2566950B1 (fr) 1984-06-29 1984-06-29 Processeur de points d'images video, systeme de visualisation en comportant application et procede pour sa mise en oeuvre

Publications (2)

Publication Number Publication Date
FR2566950A1 true FR2566950A1 (fr) 1986-01-03
FR2566950B1 FR2566950B1 (fr) 1986-12-26

Family

ID=9305642

Family Applications (1)

Application Number Title Priority Date Filing Date
FR8410376A Expired FR2566950B1 (fr) 1984-06-29 1984-06-29 Processeur de points d'images video, systeme de visualisation en comportant application et procede pour sa mise en oeuvre

Country Status (5)

Country Link
US (1) US4768157A (fr)
EP (1) EP0179672B1 (fr)
JP (2) JPH0736108B2 (fr)
DE (1) DE3576750D1 (fr)
FR (1) FR2566950B1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0628187A1 (fr) * 1992-02-18 1994-12-14 Neopath, Inc. Procede et appareil de traitement rapide de sequences de donnees

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0715706B2 (ja) * 1986-03-27 1995-02-22 日本電気株式会社 メモリ制御装置
US5053989A (en) * 1986-08-27 1991-10-01 Minolta Camera Kabushiki Kaisha Digital image processing apparatus having a microprogram controller for reading microinstructions during a vacant period of the image processing circuit
US4823286A (en) * 1987-02-12 1989-04-18 International Business Machines Corporation Pixel data path for high performance raster displays with all-point-addressable frame buffers
US5299301A (en) * 1987-07-10 1994-03-29 Hitachi, Ltd. Image displaying method and apparatus
US4954970A (en) * 1988-04-08 1990-09-04 Walker James T Video overlay image processing apparatus
JPH06101039B2 (ja) * 1988-05-11 1994-12-12 富士通株式会社 ウインドウ画像データの読出処理方式
US5327159A (en) * 1990-06-27 1994-07-05 Texas Instruments Incorporated Packed bus selection of multiple pixel depths in palette devices, systems and methods
US6232955B1 (en) 1990-06-27 2001-05-15 Texas Instruments Incorporated Palette devices, systems and methods for true color mode
US5293468A (en) * 1990-06-27 1994-03-08 Texas Instruments Incorporated Controlled delay devices, systems and methods
US5717697A (en) * 1990-06-27 1998-02-10 Texas Instruments Incorporated Test circuits and methods for integrated circuit having memory and non-memory circuits by accumulating bits of a particular logic state
US5270687A (en) * 1990-06-27 1993-12-14 Texas Instruments Incorporated Palette devices, computer graphics systems and method with parallel lookup and input signal splitting
US5309551A (en) * 1990-06-27 1994-05-03 Texas Instruments Incorporated Devices, systems and methods for palette pass-through mode
US5341470A (en) * 1990-06-27 1994-08-23 Texas Instruments Incorporated Computer graphics systems, palette devices and methods for shift clock pulse insertion during blanking
US5546553A (en) * 1990-09-24 1996-08-13 Texas Instruments Incorporated Multifunctional access devices, systems and methods
US5699087A (en) * 1991-06-24 1997-12-16 Texas Instruments Sequential access memories, systems and methods
US5418898A (en) * 1991-08-07 1995-05-23 Occam Research Corporation Multidimensional data display system and method
CA2076742A1 (fr) * 1991-08-30 1993-03-01 Aiwa Co., Ltd. Appareil a cameras et circuit annexe de conversion de format d'image
JP2528446B2 (ja) * 1992-09-30 1996-08-28 株式会社ハドソン 音声画像処理装置
KR0179166B1 (ko) * 1995-10-04 1999-05-01 문정환 디지탈 영상신호처리용 메모리장치
US6889304B2 (en) * 2001-02-28 2005-05-03 Rambus Inc. Memory device supporting a dynamically configurable core organization
US7500075B1 (en) 2001-04-17 2009-03-03 Rambus Inc. Mechanism for enabling full data bus utilization without increasing data granularity
US6825841B2 (en) * 2001-09-07 2004-11-30 Rambus Inc. Granularity memory column access
GB2383145B (en) * 2001-10-31 2005-09-07 Alphamosaic Ltd Data access in a processor
KR100529670B1 (ko) * 2003-10-01 2005-11-17 동부아남반도체 주식회사 Cmos 이미지 센서 및 그 제조 방법
US8190808B2 (en) * 2004-08-17 2012-05-29 Rambus Inc. Memory device having staggered memory operations
US7254075B2 (en) * 2004-09-30 2007-08-07 Rambus Inc. Integrated circuit memory system having dynamic memory bank count and page size
US7280428B2 (en) 2004-09-30 2007-10-09 Rambus Inc. Multi-column addressing mode memory system including an integrated circuit memory device
US8595459B2 (en) 2004-11-29 2013-11-26 Rambus Inc. Micro-threaded memory
CN1870873A (zh) * 2005-05-28 2006-11-29 深圳富泰宏精密工业有限公司 铰链装置及应用该铰链装置的便携式电子装置
US20070260841A1 (en) 2006-05-02 2007-11-08 Hampel Craig E Memory module with reduced access granularity
US9268719B2 (en) 2011-08-05 2016-02-23 Rambus Inc. Memory signal buffers and modules supporting variable access granularity

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4090174A (en) * 1976-11-01 1978-05-16 International Business Machines Corporation Method and apparatus for accessing horizontal sequences, vertical sequences and rectangular subarrays from an array stored in a modified word organized random access memory system
US4197590A (en) * 1976-01-19 1980-04-08 Nugraphics, Inc. Method for dynamically viewing image elements stored in a random access memory array
US4225929A (en) * 1978-03-10 1980-09-30 Taito Corporation Code converter circuitry system for selectively rotating a video display picture
EP0082746A2 (fr) * 1981-12-17 1983-06-29 AlliedSignal Inc. Générateur d'adresses

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3394354A (en) * 1965-11-30 1968-07-23 Ibm Multiple word random access memory
US3976982A (en) * 1975-05-12 1976-08-24 International Business Machines Corporation Apparatus for image manipulation
US4271476A (en) * 1979-07-17 1981-06-02 International Business Machines Corporation Method and apparatus for rotating the scan format of digital images
US4357671A (en) * 1980-06-17 1982-11-02 Sunrise Systems, Inc. Display generation apparatus
DE3036711C2 (de) * 1980-09-29 1985-08-01 Siemens AG, 1000 Berlin und 8000 München Verfahren zum Verkleinern von grafischen Mustern
JPS5763586A (en) * 1980-10-03 1982-04-17 Canon Kk Pattern generator
US4570158A (en) * 1981-10-27 1986-02-11 Williams Electronics, Inc. Horizontal and vertical image inversion circuit for a video display
JPS58110255A (ja) * 1981-12-25 1983-06-30 Hitachi Ltd プリンタ制御装置
US4590465A (en) * 1982-02-18 1986-05-20 Henry Fuchs Graphics display system using logic-enhanced pixel memory cells
JPS58159184A (ja) * 1982-03-17 1983-09-21 Nec Corp 画像回転装置
JPS58222371A (ja) * 1982-06-18 1983-12-24 Usac Electronics Ind Co Ltd 画像処理用記憶方式
US4559611A (en) * 1983-06-30 1985-12-17 International Business Machines Corporation Mapping and memory hardware for writing horizontal and vertical lines
US4644503A (en) * 1983-12-30 1987-02-17 International Business Machines Corporation Computer memory system with integrated parallel shift circuits
US4631751A (en) * 1984-10-24 1986-12-23 Anderson Karen L Method for enlarging a binary image

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4197590A (en) * 1976-01-19 1980-04-08 Nugraphics, Inc. Method for dynamically viewing image elements stored in a random access memory array
US4197590B1 (fr) * 1976-01-19 1990-05-08 Cadtrak Corp
US4090174A (en) * 1976-11-01 1978-05-16 International Business Machines Corporation Method and apparatus for accessing horizontal sequences, vertical sequences and rectangular subarrays from an array stored in a modified word organized random access memory system
US4225929A (en) * 1978-03-10 1980-09-30 Taito Corporation Code converter circuitry system for selectively rotating a video display picture
EP0082746A2 (fr) * 1981-12-17 1983-06-29 AlliedSignal Inc. Générateur d'adresses

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0628187A1 (fr) * 1992-02-18 1994-12-14 Neopath, Inc. Procede et appareil de traitement rapide de sequences de donnees
EP0628187A4 (fr) * 1992-02-18 1995-03-22 Neopath Inc Procede et appareil de traitement rapide de sequences de donnees.

Also Published As

Publication number Publication date
EP0179672B1 (fr) 1990-03-21
JPH0736108B2 (ja) 1995-04-19
US4768157A (en) 1988-08-30
DE3576750D1 (de) 1990-04-26
FR2566950B1 (fr) 1986-12-26
JPS61221794A (ja) 1986-10-02
JPH0777973A (ja) 1995-03-20
EP0179672A1 (fr) 1986-04-30

Similar Documents

Publication Publication Date Title
FR2566950A1 (fr) Processeur de points d'images video, systeme de visualisation en comportant application et procede pour sa mise en oeuvre
FR2566951A1 (fr) Procede et systeme pour l'affichage d'informations visuelles sur un ecran par balayage ligne par ligne et point par point de trames video
EP0171120B1 (fr) Procédé et dispositif pour créer et modifier une image synthetique
CN100502455C (zh) 成像装置、图像处理装置及图像处理方法
JP4133806B2 (ja) サンプル点生成のためのリカーシブローテーションを用いた決定論的手法を用いた画像レンダリング
FR2583541A1 (fr) Tampon z a haute vitesse munie d'une memoire dynamique a acces aleatoire
FR2544898A1 (fr) Dispositif d'affichage video sur ecran d'affichage par balayage d'une trame ligne par ligne et point par point
FR2566949A1 (fr) Systeme d'affichage d'images video sur un ecran a balayage ligne par ligne et point par point
EP0215510A1 (fr) Processeur d'élimination de faces cachées pour la synthèse d'images à trois dimensions
WO2007071883A2 (fr) Procede et systeme de traitement de donnes numeriques
EP0025748A1 (fr) Dispositif de transmission numérique et affichage de graphismes et/ou de caractères sur un écran
WO2007071884A2 (fr) Procede pour traiter un objet dans une plateforme a processeur(s) et memoire(s) et plateforme utilisant le procede
EP0276884B1 (fr) Dispositif synthétiseur d'images
CN108416722A (zh) 一种图像显示方法、存储介质及终端设备
EP0108674B1 (fr) Terminal graphique à mémoire de points muni d'un système d'écriture en mémoire d'image de signaux de texture d'image
JP5001189B2 (ja) 画像編集再生装置
US6122069A (en) Efficient method of modifying an image
CN113559503B (zh) 视频生成方法、设备及计算机可读介质
Remondino et al. Generation of high-resolution mosaic for photo-realistic texture-mapping of cultural heritage 3D models
FR2512234A1 (fr) Procede de simulation de vision et dispositif pour sa mise en oeuvre
EP0780796B1 (fr) procédé et systéme d'affichage d'images symboliques
White COMPUTER SCANNING AND SCANNERS
FR2541805A1 (fr) Systeme de visualisation de donnees sur un ecran video en mode graphique
Viljanen Implementing VR feature camera on Android platform
Old Digital Comics

Legal Events

Date Code Title Description
ST Notification of lapse