FR2541806A1 - Processor for video display in graphics mode - Google Patents
Processor for video display in graphics mode Download PDFInfo
- Publication number
- FR2541806A1 FR2541806A1 FR8303144A FR8303144A FR2541806A1 FR 2541806 A1 FR2541806 A1 FR 2541806A1 FR 8303144 A FR8303144 A FR 8303144A FR 8303144 A FR8303144 A FR 8303144A FR 2541806 A1 FR2541806 A1 FR 2541806A1
- Authority
- FR
- France
- Prior art keywords
- register
- processor
- bus
- memory
- image
- 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
Links
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control 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
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/02—Control 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/022—Control 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
Description
La présente invention concerne un système de visualisation d'information sur un écran vidéo par balayage de trame en mode graphique au cours duquel l'image de l'écran est affiché ligne par ligne et point par point à partir de données binaires provenant d'une mémoire de'page, prealablement chargées, et ce sous la commande d1un processeur d'affichage vidéo (Vidéo Display
Processor ou V.D.P.). L'inscription de l'image sur l'écran est donc réalisée selon le mode graphique" par opposition au "mode typographique" qui consiste d'une fa- çon connue à composer le message sur EDeeran a l'aide de caractères qui sont mémorisés dans un générateur de caractères.The present invention relates to a system for displaying information on a video screen by raster scanning in graphic mode during which the screen image is displayed line by line and point by point from binary data coming from a page memory, previously loaded, under the control of a video display processor (Video Display
Processor or VDP). The inscription of the image on the screen is therefore carried out according to the graphic mode "as opposed to the" typographic mode "which consists in a known way of composing the message on EDeeran using characters which are memorized in a character generator.
L'affichage en mode graphique est avantageux en ce sens qu'il permet de composer une image constitube de texte, d'informations genre photos et d'une façon générale de toutes lis informations que l'on trouve habituellement dans un document imprimé tel qu'un journal ou une revue. Displaying in graphic mode is advantageous in that it makes it possible to compose a constitutive image of text, of information like photos and in general of all the information that is usually found in a printed document such as 'a newspaper or magazine.
Cependant, jusqu'ici, les systèmes d'af f i- chage en mode graphique sont lents car pour chaque image à composer, il faut stocker dans la mémoire de page ciée à l'écran les données de tous les points de l'écran ce qui représente typiquement un volume d'information de 32 octets
A chaque changement d'une image, une unité centrale de traitement (Central Processing Unic ou C.P.U.) doit donc engendrer les adresses correspondant aux octets a mémoriser et pour effectuer ce travail, elle doit rester mobilisée pendant un temps relativement prolongé qui peut être supérieur à 30 ms. pour une image composée de 10.000 octets par exemple.Or, dans un dispositif de visualisation du genre concerné par l'invention, l'unité centrale de traitement peut être affectée à de nombreuses autres tâches telles que les décodages de données entrantes (ligne téléphonique, récepteur par voie heurt zienne, clavier, etc.) lue calcul de formes géométriques telles que des cercles, carrés ou autres motifs sur l'écran, etc.*. However, until now, display systems in graphic mode have been slow because for each image to be composed, it is necessary to store in the page memory on the screen the data of all the points on the screen. which typically represents a volume of information of 32 bytes
With each change of an image, a central processing unit (Central Processing Unic or CPU) must therefore generate the addresses corresponding to the bytes to be memorized and to carry out this work, it must remain mobilized during a relatively prolonged time which can be higher than 30 ms. for an image composed of 10,000 bytes for example. However, in a display device of the kind concerned by the invention, the central processing unit can be assigned to many other tasks such as decoding of incoming data (telephone line, receiver by zienne strike, keyboard, etc.) read calculation of geometric shapes such as circles, squares or other patterns on the screen, etc. *.
Par ailleurs, de nombreuses manipulations d'images (répétitions de signes déterminés, défilement sur l'écran et autres effets spéciaux) ne peuvent être exécutées que sillon dispose d'une capacité mémoire couvrant plusieurs images à la fois et toutes ces opérations doivent être exécutées sous la commande de l'unité centrale de traitement dont le programme interne doit contenir toutes les informations nécessaires aux manipulations de l'image. L'unité centrale doit donc rester mobilisée en permanence et ne peut, entre temps, effectuer les opera- tions internes évoquées ci-dessus. In addition, many image manipulations (repetition of specific signs, scrolling on the screen and other special effects) can only be performed if the groove has a memory capacity covering several images at the same time and all these operations must be performed. under the control of the central processing unit, the internal program of which must contain all the information necessary for manipulating the image. The central unit must therefore remain permanently mobilized and cannot, in the meantime, carry out the internal operations mentioned above.
L'invention a donc pour but de fournir un processeur d'affichage vidéo permettant de décharger l'unité centrale de traitement des commandes de manipulation de l'image en les confiant au processeur d'affichage vidéo. The object of the invention is therefore to provide a video display processor making it possible to discharge the central processing unit of the image manipulation commands by entrusting them to the video display processor.
L'invention a donc pour objet un processeur d'affichage vidéo pour un système de visualisation sur un écran vidéo par balayage de trame en mode graphique, dans lequel l'image de l'écran est affichée ligne par ligne et point par point à partir de données mémorisées dans une mémoire à accès direct sous la commande d'une unité centrale de traitement, qui est connectée à ce processeur par un bus d'adresses et un bus de données, caractérisé en ce qu'il comprend des moyens pour interpréter le contenu dudit bus d'adresses, soit comme une adresse proprement dite pour ladite mémoire à accès direct, soit comme commande destinée à l'exécution des fonctions de composition d'images dont est chargé ledit processeur. The subject of the invention is therefore a video display processor for a display system on a video screen by raster scanning in graphic mode, in which the screen image is displayed line by line and point by point from of data stored in a memory with direct access under the control of a central processing unit, which is connected to this processor by an address bus and a data bus, characterized in that it comprises means for interpreting the contents of said address bus, either as an address proper for said direct access memory, or as a command intended for the execution of the image composition functions for which said processor is responsible.
Ainsi, les adresses élaborées dans le C.P.U. Thus, the addresses developed in the C.P.U.
peuvent adresser la mémoire directement ou alors placer le V.D.P. dans une configuration dans laquelle celui-ci est capable, sans intervention du C.P.U. d'opérer des manipulations et effets spéciaux sur l'image, le C.P.U.can address the memory directly or place the V.D.P. in a configuration in which it is capable, without intervention of the C.P.U. to operate manipulations and special effects on the image, the C.P.U.
étant libre,pendant le temps de composition utilisé par le V.D.P., de procéder à d'autres travaux tels que le décodage des données entrantes, le calcul de formes géométriques, etc.being free, during the time of composition used by the V.D.P., to carry out other work such as the decoding of the incoming data, the calculation of geometric shapes, etc.
L'invention est exposée ci-après plus en détail, à l'aide de dessins représentant seulement des modes d'exécution, sur lesquels
- la Fig. 1 est un schéma très simplifié d'un système de visualisation suivant l'invention;
- la Fig. 2 montre un diagramme des signaux qui sont nécessaires pour la lecture et l'écriture dans la mémoire de données provenant du C.P.U.The invention is set out below in more detail, with the aid of drawings representing only embodiments, in which
- Fig. 1 is a very simplified diagram of a display system according to the invention;
- Fig. 2 shows a diagram of the signals that are required for reading and writing data from the CPU to the memory
- la Fig. 3 est un schéma simplifié du processus d'affichage vidéo utilisé dans le système suivant l'invention;
- les Fig. 4 à 6 représentent des schémas
analogues à celui de la Fig. 3 d'autres configurations
de fonctionnement du processeur d'affichage;
- La Fig. 7 est un diagramme explicatif
d'une organisation de la mémoire de page du système de
visualisation, en "plans mémoire";
- la Fig, 8 montre une autre configuration
du processeur d'affichage;
- la Fig. 9 est un schema simplifié d'un
bloc de modification d'image utilisé dans le processeur
d'affichage;
- la Fig. 10 montre une autre configuration de ce processeur; et
- les Fig. llA et llB illustrent par des diagrammes la fonction réalisée par le processeur d'affichage lorsqu'il se trouve dans la configuration de la
Fig. 10.- Fig. 3 is a simplified diagram of the video display process used in the system according to the invention;
- Figs. 4 to 6 represent diagrams
similar to that of FIG. 3 other configurations
operating the display processor;
- Fig. 7 is an explanatory diagram
of an organization of the page memory of the system of
display, in "memory plans";
- Fig, 8 shows another configuration
the display processor;
- Fig. 9 is a simplified diagram of a
image modification block used in the processor
display;
- Fig. 10 shows another configuration of this processor; and
- Figs. llA and llB illustrate by diagrams the function performed by the display processor when it is in the configuration of the
Fig. 10.
Avant d'examiner en détail les figures, on rappelle tout d'abord brièvement le principe de l'af fi- chage en mode graphique sur un écran de visualisation. Before examining the figures in detail, we first briefly recall the principle of display in graphical mode on a display screen.
L'image est créée au rythme de la fréquence de trame, et chaque trame est engendrée par balayage de lignes, comme cela est bien connu dans la technique de la télévision. The image is created at the rate of the frame rate, and each frame is generated by line scanning, as is well known in the art of television.
Cependant, alors que pour le système vidéo classique, la commande des canons rouge vert, bleu) du tube image résulte de signaux purement analogiques, le système de composition des images dont il s'agit ici, commande ces canons par des signaux de nature binaire, en tout ou rien, ou éventuellement dans un système plus évolué, par un circuit numérique qui permet d 1obtenir une "palette de couleurs" avec toutes les nuances possibles de demi-teintes. However, whereas for the conventional video system, the control of the red, blue, blue barrels of the picture tube results from purely analog signals, the image composition system in question here, controls these barrels by signals of binary nature. , all or nothing, or possibly in a more advanced system, by a digital circuit which makes it possible to obtain a "palette of colors" with all the possible nuances of halftone.
Ainsi, chaque ligne de la trame est composée d'un certain nombre de points (320 dans un exemple typique) qui nécessitent chacun trois informations de cou- leur (R, V et B) sur trois bits, ce qui revient au total à 120 octets par ligne à tracer sur l'cran et 30 Koctets par trame, si huit nuances de couleur sont utilisées. Thus, each line of the frame is made up of a certain number of dots (320 in a typical example) which each require three pieces of color information (R, G and B) on three bits, which comes to a total of 120 bytes per line to be drawn on the screen and 30 kbytes per frame, if eight shades of color are used.
A chaque affichage d"une trame, synchronisé sur la base de temps vidéo, les octets contenant les données relatives à chaque point d'image sont lus dans une mémoire appelée "mémoire de page" à l'aide d'un processeur d'affichage vidéo ou V.D.P. (Vidéo Display
Processor) au moyen duquel certaines fonctions d'affi chage peuvent être opérées.La mémoire de page peut être chargée par une unité centrale de traitement appelée ciaprès C.P.U. (Central Processor Unit conformément à la désignation anglo-saxonne), en fonction des données d'en- trée qui sont exprimées dans un langage standard de diffusion de télétexte, par exemple par un canal de télévision ou par voie téléphqnique. Le V.D.P. permet également d'adapter l'une à l'autre les vitesses de traitement des organes d'affichage et du C.P.U., de sélectionner dans un flot de données d'entrée des drapeaux de magazine ou de page, et autres fonctions analogues
On a représenté sur la Fig. 1 l'architecture générale d'un tel système de visualisation. I1 comporte donc une unité centrale de traitement C.P.U. 1 qui est raccordée à une ou plusieurs sources d'information à afficher. I1 peut s'agir dVune ligne téléphonique 2 sur laquelle transite de l'information sous forme de télétexte, d'un clavier local 3 ou toute autre source possible telle que.par exemple une unité de jeux vidéo. Le
C.P.U. est raccordé à un processeur V.D.P. 4, lui-même connecté à une mémoire à accès direct 5 dont une zone de mémoire constitue la mémoire de page Le V.D.P. est con necté à l'écran d'affichage 6.La mémoire 5 communique avec le V.D.P. 4 par l'intermédiaire d'un bus d'adresses 7 et d'un bus de données 8, ce dernier étant relié à un circuit d'adaptation 9 (appelé "Didon" dans la littérature spécialisée) qui permet d'extraire d'un signal vidéo transmis par exemple par une porteuse haute fréquence de télévision par ligne hertzienne, l'information de télétexte multiplexée avec des signaux de télévision d'un canal de télévision habituel (système"Antiope" par exemple). Le circuit d'adaptation 9 reçoit son signal d'entrée d'un récepteur 10 lui-même relié à une antenne 11.Each time a frame is displayed, synchronized on the basis of video time, the bytes containing the data relating to each image point are read in a memory called "page memory" using a display processor. video or VDP (Video Display
Processor) by means of which certain display functions can be operated. The page memory can be loaded by a central processing unit called below CPU (Central Processor Unit according to the Anglo-Saxon designation), according to the data of entries which are expressed in a standard teletext broadcast language, for example via a television channel or by telephone. The VDP also makes it possible to adapt the processing speeds of the display components and the CPU to one another, to select from a stream of input data magazine or page flags, and other similar functions.
There is shown in FIG. 1 the general architecture of such a display system. I1 therefore comprises a central processing unit CPU 1 which is connected to one or more sources of information to be displayed. It can be a telephone line 2 on which information passes in the form of teletext, a local keyboard 3 or any other possible source such as, for example, a video game unit. The
CPU is connected to a VDP processor 4, itself connected to a direct access memory 5 of which a memory area constitutes the page memory The VDP is connected to the display screen 6. The memory 5 communicates with the VDP 4 via an address bus 7 and a data bus 8, the latter being connected to an adaptation circuit 9 (called "Didon" in the specialized literature) which makes it possible to extract d 'a video signal transmitted for example by a high-frequency carrier of television by hertzian line, the teletext information multiplexed with television signals of a usual television channel ("Antiope" system for example). The adaptation circuit 9 receives its input signal from a receiver 10 itself connected to an antenna 11.
Pour une description sommaire du système "Antiope" on peut se référer à un article de ltouvrage "La Technique de l'Ingénieur" Fascicule E.3129). For a summary description of the "Antiope" system, one can refer to an article in the book "The Engineering Technique" (Booklet E.3129).
Le C.P.U. 1 et le V.D.P. 4 sont interconnectés par un bus de données 12A sur lequel peuvent circuler des données t par un bus d'adresses 12B, la mémorisation des informations en provenance du C.P.U. étant commandée par le C.P.U. 1 à l'aide de ses signaux de validation de données EN (Enable) et de lecture, écriture R/W (rend/
Write), transitant sur une ligne de commande 13. Suivant l'invention, le C.P.U. peut également générer un signal d'affectation CM de certaines adresses du bus 12B, ce signal suivant son niveau 1 ou 0 permettant d'interpréter ces adresses comme une adresse proprement dite de la mé- moire 5, ou comme une commande pour le VDDPo 4.Ainsi, lorsque le signal CM est à "1", tout se passe comme si la mémoire RAM S était directement reliée au C.P.U 1 et commandée par les signaux habituels EN et R/W. Par contre, lorsque le signal CM est à 110 l'adresse chargée par les signaux habituels est interprétée comme une commande pour le V.D.P. 4.The CPU 1 and the VDP 4 are interconnected by a data bus 12A on which data t can flow by an address bus 12B, the storage of information coming from the CPU being controlled by the CPU 1 using its data validation signals EN (Enable) and read, write R / W (returns /
Write), passing on a command line 13. According to the invention, the CPU can also generate an assignment signal CM of certain addresses of the bus 12B, this signal according to its level 1 or 0 making it possible to interpret these addresses as a address itself of memory 5, or as a command for VDDPo 4. Thus, when the signal CM is at "1", everything happens as if the RAM memory S was directly connected to the CPU 1 and controlled by the usual EN and R / W signals. On the other hand, when the CM signal is at 110 the address loaded by the usual signals is interpreted as a command for the VDP 4.
La Fig. 2 montre un diagramme temporel d'un cycle de mémoire. On voit que les données 15 et les adresses 14 qui circulent sur les bus 12A et 12B, respectivement, sont commandées par les signaux R/W et EN indiqués par les références 17 et 18. Fig. 2 shows a time diagram of a memory cycle. It can be seen that the data 15 and the addresses 14 which circulate on the buses 12A and 12B, respectively, are controlled by the R / W and EN signals indicated by the references 17 and 18.
Cependant, les informations représentées par les adresses 14 provenant du C.P.U. peuvent être utilisées de deux manières
1 - Elles peuvent contenir des adresses proprement dites moyennant quoi les données associées à 17 adresse considérée sont mémorisées dans la mémoire 5 en transitant à travers le V.D.P. a et ce, à ladite adresse qui a transité à travers le bus 12B et un registre d'adresses 36 (CM à 1; Voir Fig 3). However, the information represented by the addresses 14 coming from the CPU can be used in two ways
1 - They may contain addresses proper whereby the data associated with 17 address considered are stored in memory 5 while transiting through VDP a and this, at said address which has transited through bus 12B and a register of addresses 36 (CM to 1; See Fig 3).
2 - Elles peuvent contenir des commandes de fonctions d'affichage particulières moyennant quoi le
V.D.P. est mis dans une configuration particulière pour cette fonction,les données associées à cette adresse étant alors traitées selon la fonction correspondante (CM à o). 2 - They may contain commands for particular display functions whereby the
VDP is put in a particular configuration for this function, the data associated with this address then being processed according to the corresponding function (CM to o).
La Fig. 3 montre l'architecture générale du
V.D.P. 4 capable de traiter les adresses du C.P.U. 1 en tant que commandes de fonctions d'affichage et également d'adopter une configuration transparente lorsque le C.P.U. Fig. 3 shows the general architecture of
VDP 4 capable of processing the addresses of CPU 1 as commands for display functions and also of adopting a transparent configuration when the CPU
1 fournit des adresses et des données destinées directement à la mémoire 5 ou reçoit des données de celle-ci en fonction des adresses qu'il applique directement à cette mémoire
Le V.D.P, 4 comprend un bus interne 19 sur lequel circulent tous les échanges de données qui ont lieu entre le C.P.U. 1 la mémoire 5 et le dispositif d'affichage proprement dit (écran 6).1 provides addresses and data intended directly for the memory 5 or receives data from the latter as a function of the addresses which it applies directly to this memory
The VDP, 4 comprises an internal bus 19 on which all the data exchanges which take place between the CPU 1, the memory 5 and the display device proper (screen 6) circulate.
Le bus interne 19,qui est bidirectionnel, transmet des adresses et des données en temps partagé sous la commande d'un dispositif 20 d'accès direct à une mémoire, appelé ci-après D.M.A. Ce dispositif peut être du type décrit dans la demande de brevet français nO 77.31140 déposée le 17 octobre 1977 par la Demanderesse. The internal bus 19, which is bidirectional, transmits addresses and time-sharing data under the control of a device 20 for direct access to a memory, hereinafter called D.M.A. This device can be of the type described in French patent application No. 77.31140 filed on October 17, 1977 by the Applicant.
I1 coopère avec une base de temps 21 qui est synchronisée avec le balayage de l'écran 6. Il est à noter que lorsque le bus 19 transporte des adresses, celles-ci sont élaborées dans le V.D.P. en fonction de la configuration dans laquelle celle-ci est placée par la commande provenant du C.P.U. pour exécuter des fonctions de traitement de l'image. I1 cooperates with a time base 21 which is synchronized with the scanning of the screen 6. It should be noted that when the bus 19 transports addresses, these are developed in the V.D.P. depending on the configuration in which it is placed by the command from the C.P.U. to perform image processing functions.
Le C.P.U. 1 est raccordé au V.D.P. 4 par le bus 12A qui est connecté en parallèle à un jeu de trois registres 22, 23 et 24. Le registre 22 est un registre de données dans lequel les données sont emmagasinées temporairement avant de transiter sur le bus interne 19 vers la mémoire 5. The C.P.U. 1 is connected to the V.D.P. 4 by the bus 12A which is connected in parallel to a set of three registers 22, 23 and 24. The register 22 is a data register in which the data are temporarily stored before passing on the internal bus 19 to the memory 5.
Le registre 23 est un registre de masque et est chargé notamment d'emmagasiner un nombre binaire qui est décrémenté au fur et à mesure du déroulement de l'exé- cution de la fonction considérée. The register 23 is a mask register and is responsible in particular for storing a binary number which is decremented as the execution of the function considered progresses.
Le registre 24 est un registre de contrôle. Register 24 is a control register.
Il intervient pour l'exécution d'une autre fonction dans le V.D.P., comme décrit par la suite.It intervenes for the execution of another function in the V.D.P., as described below.
Le bus 12B est relié à un registre 36 de validation d'adresses et à un décodeur 27 fournissant sélectivement à la réception d'une adresse devant- être interprétée comme une commande, des signaux de validation sur des sorties 28,qui sont raccordés aux registres du V,D.P. En d'autres termes, chaque commande reque et ac compagnée d'un signal. CM=O transitant sur une ligne 26 permet d'envoyer sur un certain nombre de sorties 28 des signaux de validation activant les registres du V.D.P. The bus 12B is connected to an address validation register 36 and to a decoder 27 selectively supplying, upon receipt of an address to be interpreted as a command, validation signals on outputs 28, which are connected to the registers from V, DP In other words, each command received and ac accompanied by a signal. CM = O passing over a line 26 enables validation signals activating the registers of the V.D.P. to be sent to a certain number of outputs 28.
qui interviennent au cours de l'exécution de la fonction représentée par la commande ayant transité à travers le bus 12B en provenance du C.P.U. 1. Le décodeur comporte une sortie particulière 29 qui est destinée à activer le
D.M.A. 20 lorsque celui-ci doit assurer le contrôle interne du V.D.P. et plus spécialement assurer le partage temporel du bus 19.which intervene during the execution of the function represented by the command having passed through the bus 12B coming from the CPU 1. The decoder comprises a particular output 29 which is intended to activate the
DMA 20 when this must ensure internal control of the VDP and more specifically ensure time sharing of bus 19.
Le registre de contrôle 24, ainsi qu'un registre d'état 30 qui contient à chaque instant l'état interne du V.D.P. et les commandes en cours d'exécution, et un double registre intermédiaire 31a, 31b, sont tous connectés au bus 12A. Le double registre 31a,3lb est connecté à l'unité arithmétique et logique 32 ou ALU coopérant avec une pile de registres 33. The control register 24, as well as a status register 30 which at all times contains the internal state of the V.D.P. and the commands being executed, and a double intermediate register 31a, 31b, are all connected to the bus 12A. The double register 31a, 3lb is connected to the arithmetic and logic unit 32 or ALU cooperating with a stack of registers 33.
Le registre de masque 23 est raccordé à un circuit de modification 34 dont l'une des entrées et la sortie sont bouclées sur le bus interne 19. Ce bus est en outre relié côté mémoire 5 aux registres de validation de données 35 ét d'adresses 36 reliés directement à la mémoire 5. The mask register 23 is connected to a modification circuit 34, one of the inputs and the output of which is looped through on the internal bus 19. This bus is also connected on the memory side 5 to the data validation registers 35 and addresses 36 directly connected to memory 5.
Une interface de sortie 37 permet d'adapter les données d'affichage transitant sur le bus interne 19 en provenance de tous les circuits du V.D.P. et également du C.P.U. i et de la mémoire 5, aux circuits d'affichage proprement dits de l'écran 6. An output interface 37 makes it possible to adapt the display data passing over the internal bus 19 coming from all the circuits of the V.D.P. and also from the C.P.U. i and from memory 5, to the display circuits proper of screen 6.
La pile de registres 33 comporte les registres suivants
B.A.p.A. - adresse de début de page
B.A.G.T. - adresse début de mémoire de ges
tion
B.A.M.T. - adresse début mémoire tampon
AC.M.T. - pointeur mémoire tampon affecté
au circuit Didon 9 (Fig. 1)
B.A.M.T.F. - pointeur de fin de mémoire
tampon
A.C.M.P. - pointeur début mémoire tampon
coté C*P.U. The stack of registers 33 includes the following registers
BApA - start of page address
BAGT - start address of management memory
tion
BAMT - start buffer address
AC.MT - assigned buffer pointer
to the Didon 9 circuit (Fig. 1)
BAMTF - end of memory pointer
buffer
ACMP - start buffer pointer
C * PU side
A.C.P.A. - pointeur lecture mémoire de page
A.C.G.T. - pointeur mémoire de gestion
P.X.ACPA - page memory read pointer
ACGT - management memory pointer
PX
P Y.
P Y.
pointeurs de traitement C.P.U.C.P.U.
I1 est à noter que le -système de visualisation comporte de préférence une mémoire composite 5 dont fait partie la mémoire de page, la mémoire de gestion et une mémoire tampon, l'ensemble étant réalisé sur un circuit intégré unique. D'ailleurs, avantageusement, les limites affectées à ces mémoires dans ce circuit intégré ne sont pas physiquement définies mais uni quement déterminées par les adresses de début et/ou de fin de mémoire, ce qui confère une grande souplesse de fonctionnement à l'ensemble du système. Les limites peuvent donc varier au cours du traitement en fonction des beso'ns de mémorisation d'information du moment. It should be noted that the display system preferably comprises a composite memory 5 of which the page memory, the management memory and a buffer memory are part, the assembly being produced on a single integrated circuit. Moreover, advantageously, the limits assigned to these memories in this integrated circuit are not physically defined but only determined by the addresses of start and / or end of memory, which gives great flexibility of operation to the assembly. of the system. The limits can therefore vary during processing depending on the needs for memorizing current information.
La mémoire tampon (Fig. 1) est notamment destinée à adapter la vitesse de traitement du circuit
Didon 9 à celle du C.P.U. 1 comme décrit dans la demande de brevet français déposée le 12 Décembre 1980 sous le nO
PV 80.26393 au nom de la Demanderesse.The buffer memory (Fig. 1) is intended in particular to adapt the processing speed of the circuit
Dido 9 to that of CPU 1 as described in the French patent application filed on December 12, 1980 under the number
PV 80.26393 in the name of the Claimant.
Pour expliquer le fonctionnement du circuit du V.D.P. 4 et de l'exploitation des fonctions d'affichage des images sur l'écran 6, on va se reporter successivement aux Fig. 3 à 8 sur lesquelles on a mis en évidence les connexions sur lesquelles transitent les informations lors de l'exécution de la fonction de composition considérée. To explain how the V.D.P. 4 and the exploitation of the functions for displaying the images on the screen 6, reference is made successively to FIGS. 3 to 8 on which the connections on which the information passes during the execution of the composition function considered have been highlighted.
A - Fig. 3 - Accès direct à la mémoire 5 par le C.P.U.A - Fig. 3 - Direct access to memory 5 by the C.P.U.
(V.D-.P. transparent). (V.D-.P. Transparent).
Cette fonction est notamment destinée à la composition d'images sous la commande directe du C.P.U., à la mise à jour de la mémoire de page lors de la modification des images à afficher et à l'exécution d'autres instructions pour lesquelles le V.D.P. n'a pas à intervenir. Le V.D.P. est donc transparent au cours de l'exécu- tion de cette fonction. This function is notably intended for composing images under the direct control of the C.P.U., updating the page memory when modifying the images to be displayed and executing other instructions for which the V.D.P. does not have to intervene. The V.D.P. is therefore transparent during the execution of this function.
Le cycle se déroule de la façon suivante. The cycle proceeds as follows.
Lors de l'apparition sur le bus 12B d'une adresse en provenance du C.P.U., devant être interprétée comme une adresse pour la RAM (CM = 1), le décodeur 27 déclenche une demande de cycle dans le D.M.A. 20 et,-dans ces conditions, les adresses sont validées à la sortie du registre 36 par les signaux de commande issus du D.M.A. When an address from the C.P.U. appears on the bus 12B, which must be interpreted as an address for the RAM (CM = 1), the decoder 27 triggers a cycle request in the D.M.A. 20 and, under these conditions, the addresses are validated at the output of the register 36 by the control signals from the D.M.A.
pour commander le cycle mémoire de la RAM 5. Quant aux données, le bus 12A est relié au bus 19 à travers le registre 22 sous le contrôle du D.M.A-. et les données sont validées à travers le registre 35 sur le bus de données 8 de la RAM 5.to control the memory cycle of the RAM 5. As for the data, the bus 12A is connected to the bus 19 through the register 22 under the control of the D.M.A-. and the data are validated through the register 35 on the data bus 8 of the RAM 5.
Bien entendu, ce processus est réversible et le C.P.U. peut aussi lire les informations dans la mémoire 5 au cours de l'exécution de cette fonction. Of course, this process is reversible and the C.P.U. can also read the information in memory 5 during the execution of this function.
B - Fig. 4- Accès aux registres "de programmation" du
V.D.P.B - Fig. 4- Access to the "programming" registers of the
VDP
La Fig. 4 représente comment le C.P.U. peut accéder aux registres 23, 24, 30, 31a et 31b pour placer le V.D.P. dans une fonction prédéterminée (CM = O). Fig. 4 shows how the C.P.U. can access registers 23, 24, 30, 31a and 31b to place the V.D.P. in a predetermined function (CM = O).
A la réception d'un champ de commande du
C.P.U., le décodeur 27 interprète ce champ et ses sorties permettent de valider l'un ou plusieurs des registres de programmation que l'on vient de mentionner.Upon receipt of a command field from the
CPU, the decoder 27 interprets this field and its outputs make it possible to validate one or more of the programming registers which have just been mentioned.
Ainsi, en fonction du contenu du champ d'adresse, les commandes suivantes peuvent être exécutées:
L.D.R.C. s lecture ou écriture du registre de com
S.T.R.C. - mande 24 de mode de fonctionnement du V.D.p. Thus, depending on the content of the address field, the following commands can be executed:
LDRC s read or write from the com register
STRC - request 24 of VDp operating mode
L.D.A. ou L.D.B. - lecture ou écriture d'une va
S.T.A. ou S.T.B. - leur dans les registres 31a ou
31b qui sont exploités par l'u-
nité arithmétique et logique 32
pour effectuer une opération
de calcul.LDA or LDB - read or write va
STA or STB - their in registers 31a or
31b which are operated by the u
arithmetic and logical nity 32
to perform an operation
Calculation.
L.D.S.T. - lecture ou écriture du registre d'état
S.T.S.T. - 30 qui reflete le fonctionnement et les
différentes étapes du traitement d'ima
ge.LDST - read or write status register
STST - 30 which reflects the operation and
different stages of ima processing
ge.
L.D.M.S.Q. - lecture ou écriture d'une valeur dans
S.T.M.S.Q. - le registre de masque 23 afin de pou
voir déterminer les commandes de modi
fication de l'affichage d'image.LDMSQ - reading or writing a value in
STMSQ - the mask register 23 in order to
see determine the modi commands
image display.
R.R.M.S.Q. - Ce signal détermine à l'aide du regis
R.L.M.S.Q. - tre de masque une rotation vers la
gauche ou vers la droite d'une position
de la valeur du masque.RRMSQ - This signal determines using the regis
RLMSQ - to mask a rotation towards the
left or right of a position
the value of the mask.
Bien entendu, dans chacune de ces opérations, c'est-à-dire au cours de chaque cycle de C.P.U., la commande est accompagnée par le contenu du bus de données destiné à transférer des données au registre qui, à l'instant considéré, est validé par le décodeur 27 ou, au contraire, à placer sur le bus de données ce que ce registre contenait auparavant. Of course, in each of these operations, that is to say during each CPU cycle, the command is accompanied by the content of the data bus intended to transfer data to the register which, at the instant considered, is validated by the decoder 27 or, on the contrary, to place on the data bus what this register previously contained.
Lorsqu'une fonction est exécutée sur la base de la Fig. 4, le V.D.P. n'est naturellement pas transparent, car le bus interne ne transmet ni données, ni adresses à la mémoire 5. When a function is executed on the basis of FIG. 4, the V.D.P. is naturally not transparent, since the internal bus transmits neither data nor addresses to memory 5.
C - Fig. 5 - Accès à la pile de registres 33 déterminant
la partie de la mémoire 5 devant être adressée.C - Fig. 5 - Access to the stack of registers 33 determining
the part of memory 5 to be addressed.
Le rôle des registres de la pile 33 a été décrit ci-dessus. Toutefois, au cours de l'exécution de cette fonction, certains seulement des registres de la pile peuvent être mis en oeuvre. Ils ont été marqués d'un astérisque sur la Fig. 5. The role of the registers in stack 33 has been described above. However, during the execution of this function, only some of the registers in the stack can be implemented. They have been marked with an asterisk in FIG. 5.
Comme précédemment, le contenu du bus 12B provenant du -C.P.U. 1 est envoyé dans le décodeur 27. As before, the content of bus 12B coming from -C.P.U. 1 is sent to the decoder 27.
Comme le contenu du bus 12A de données doit transiter sur le bus interne 19 à temps partagé, le décodeur déclenche le circuit D.M.A. 20 qui alloue un temps de transit à cette opération (le signal CM est à zéro). Le décodeur valide également l'unité arithmétique et logique 32 qui reste cependant transparente puisqu'il ne s'agit que d'inscrire des données dans l'un des registres de la pile 33. L'unité 33 effectue alors l'opération F (E.A.) qui correspond à la transparence.As the content of the data bus 12A must transit on the internal time-shared bus 19, the decoder triggers the D.M.A. circuit. 20 which allocates a transit time for this operation (the signal CM is at zero). The decoder also validates the arithmetic and logic unit 32 which however remains transparent since it is only a question of writing data into one of the registers of the stack 33. The unit 33 then performs the operation F ( EA) which corresponds to transparency.
La lecture du contenu d'un des registres de la pile 33 (en vue d'un transfert vers le C.P.U. 1) est effectuée directement sous la commande du circuit D.M.A. The content of one of the registers in stack 33 (for transfer to the C.P.U. 1) is read directly under the control of the D.M.A. circuit.
20, le contenu du registre considére étant transféré dans le registre de données 22 en attendant d'être transféré sur le bus C.P.U. 12A.20, the contents of the considered register being transferred to the data register 22 while waiting to be transferred to the bus C.P.U. 12A.
On peut exécuter différentes commandes grâce à cette configuration du V.D.P., à savoir
L.D.P.A. lecture ou écriture de l'adresse de base
S.T.P.A. -. de la page en cours d'affichage
L.D.GT. lecture ou écriture de adresse de base
S.T.G.T e de la mémoire de gestion utilisée pour
l'affichage
L.D.M.T. lecture ou écriture des adresses définis
S.T.M.T sant le début et la fin de la mémoire
L.D.M.T.F. tampon
S.T.M.T.F.We can execute different commands thanks to this VDP configuration, namely
LDPA read or write base address
STPA -. of the page being displayed
LDGT. base address read or write
STGT e of the management memory used for
display
LDMT read or write defined addresses
STMT s the beginning and the end of the memory
Buffer LDMTF
STMTF
L.D.P.X. lecture ou écriture de valeurs courantes
S.T.P.X. - stockées temporairement dans les Dointeurs
L.D.P.Y. Px et/ou Py utilisées par le C.P.U. pour
S.T.P.Y. le traitement de l'image.LDPX reading or writing current values
STPX - temporarily stored in Doints
LDPY Px and / or Py used by the CPU to
STPY image processing.
D - Fig. 6 - Commande d'accès à des adresses de la mémoi
re 5 en fonction d'un critère présélectionné.D - Fig. 6 - Command to access addresses in the memory
re 5 according to a preselected criterion.
Cette fonction est réalisée sous la commande du C.P.U. 1 à l'aide des registres Px ou Py de la pile 33, de l'unité 32 et de l'un ou l'autre des registres 31a ou 31b. Elle peut être utile pour opérer l'affichage d'une caractéristique particulière d'une image (barre verticale d'une certaine couleur, forme particulière graphique dont les caractéristiques sont contenues dans le C.P.U. ou encore une couleur particulière à visualiser sur toute ou partie de l'écran). Le signal CM est toujours à zéro. This function is performed under the control of the C.P.U. 1 using the registers Px or Py of the stack 33, the unit 32 and one or the other of the registers 31a or 31b. It can be useful for operating the display of a particular characteristic of an image (vertical bar of a certain color, particular graphic form whose characteristics are contained in the CPU or even a particular color to be displayed on all or part of screen). The CM signal is always zero.
Par exemple, si une barre verticale est à afficher, il suffit de placer toutes les adresses dans la mémoire de page 5 qui correspondent à une distance déterminée de la marge gauche de l'imagez les données correspondant à une certaine couleur. Ceci revient à placer les mêmes données à des adresses qui diffèrent d'une valeur 120 ( nombre d'octets par ligne). For example, if a vertical bar is to be displayed, it is enough to place all the addresses in the memory of page 5 which correspond to a determined distance from the left margin of the image, the data corresponding to a certain color. This is equivalent to placing the same data at addresses which differ by a value of 120 (number of bytes per line).
Si tout ou partie de l'écran doit être affiché avec une couleur identique, on peut employer cette fonction d'une façon commode I1 convient à cet égard de se reporter à la Fig 7 qui illustre une notion à laquelle rait appel cette fonction selon un aspect particulier de l'invention. Il s'agit de la notion "plan mémoire". If all or part of the screen is to be displayed with an identical color, this function can be used in a convenient manner. I1 agrees in this respect to refer to FIG. 7 which illustrates a concept to which this function would call according to a particular aspect of the invention. This is the notion "memory plan".
La Fig. 7 représente schématiquement quelques octets de la première ligne de la mémoire de page contenue dans la RAM 5, ligne qui est destinée à être matérialisee sur l'écran à la première ligne de la trame à l'instant considéré. Fig. 7 schematically represents a few bytes of the first line of the page memory contained in the RAM 5, a line which is intended to be materialized on the screen at the first line of the frame at the instant considered.
Les rectangles en haut de la figure représentent les six premiers octets d'une rangée de la mémoire (ligne de l'écran) aux adresses 01 ... 06, etc. (en hexadécimal). Chaque octet contient ainsi l'information de couleur pour huit points de l'écran, un"1" d'un bit de l'octet constituant par exemple la présence de la couleur et un "O" l'absence de celle-ci On voit que pour affi- cher le rouge à tous les points de la rangée, il suffit que les adresses des octets soient à chaque fois majorées de 3 et que le champ de données des octets contienne toujours des "1".On obtient ainsi fictivement des "plans mémoires" indiqués par des rectangles inférieurs de la
Fig. 7, chaque plan représentant une couleur donnée de l'image (rouge, vert et bleu). Cette organisation de la mémoire de page à laquelle d'ailleurs de nombreuses variantes peuvent être apportées, peut être mise en oeuvre avec avantage grâce à l'invention, l'exécution de la fonction étant décrite ci-après en se référant de nouveau à la Fig. 6.The rectangles at the top of the figure represent the first six bytes of a row of memory (line of the screen) at addresses 01 ... 06, etc. (in hexadecimal). Each byte thus contains the color information for eight points on the screen, a "1" of a bit of the byte constituting for example the presence of the color and an "O" the absence of it. sees that to display red at all points in the row, it suffices that the byte addresses are each increased by 3 and that the byte data field always contains "1". This fictitiously obtains "memory maps" indicated by lower rectangles of the
Fig. 7, each plane representing a given color of the image (red, green and blue). This organization of the page memory to which, moreover, numerous variants can be made, can be implemented with advantage thanks to the invention, the execution of the function being described below with reference again to the Fig. 6.
Sous la commande du contenu du bus 12B (CM=O), le décodeur 27 valide les registres nécessaires. L'un des registres Validés peut être le pointeur Px ou le pointeur
Py. Ensuite, il peut se produire la lecture ou l'écriture de données à l'adresse contenue dans le pointeur Px ou Py sélectionnée sur le bus interne 19, sous la commande du circuit 20 qui règle le partage de temps du bus 19.Under the control of the content of the bus 12B (CM = O), the decoder 27 validates the necessary registers. One of the Validated registers can be the Px pointer or the pointer
Py. Then, data can be read or written to the address contained in the pointer Px or Py selected on the internal bus 19, under the control of the circuit 20 which regulates the time sharing of the bus 19.
L'adresse ainsi obtenue est transférée par le bus 19 dans le registre 36 pour sélectionner l'emplacement correspon-dant dans la mémoire 5. Durant la même période, l'unité arithmétique et logique 32 calcule l'adresse du prochain accès en ajoutant la valeur A ou B au contenu du registre
Px ou Py par la fonction F = EA + A ou F = EA + B, suivant que l'unité 32 travaille sur le contenu du registre 31a ou 31b validé respectivement par le décodeur 27. Dans un deuxième temps, la donnée correspondant à l'adresse sélectionnée est transférée du registre 22 sur le bus 19 pour être chargée dans la mémoire à travers le registre 35, ou vice-versa de la RAM 5 sur le bus 19 à travers ce registre, pour être chargée dans le registre 22 en attente d'être lue par le C.P.U. 1.The address thus obtained is transferred by the bus 19 in the register 36 to select the corresponding location in the memory 5. During the same period, the arithmetic and logic unit 32 calculates the address of the next access by adding the value A or B to the contents of the register
Px or Py by the function F = EA + A or F = EA + B, depending on whether the unit 32 works on the content of the register 31a or 31b validated respectively by the decoder 27. In a second step, the data corresponding to l selected address is transferred from register 22 on bus 19 to be loaded into memory through register 35, or vice versa from RAM 5 on bus 19 through this register, to be loaded into register 22 on standby to be read by CPU 1.
En résumé, cette fonction correspond à lBexe- cution des commandes suivantes
L.D.P.X. (A) - lecture ou écriture du champ de
S.T.P.X. (A) données à l'adresse de mémoire conte
nue dans le pointeur ou registre Px
et transfert de Px + A dans ce regis
tre après accès (combinaison avec re
gistre 3la). In summary, this function corresponds to the execution of the following commands
LDPX (A) - read or write field
STPX (A) data to tale memory address
naked in the pointer or register Px
and transfer of Px + A in this regis
be after access (combination with re
gistre 3la).
Des commandes analogues L.D.P.X. (B) et S.T.P.X. (B) concernant le registre 31b peuvent être exé cutées. Similar L.D.P.X. (B) and S.T.P.X. (B) concerning register 31b can be executed.
E - Fig. 8 - Accès répétitifs aux plans mémoire.E - Fig. 8 - Repetitive access to memory plans.
Les avantages et la rapidité d'exécution obtenus grâce à l'invention se ont particulièrement sentir par la réalisation de la fonction illustrée sur la Fig. 8. The advantages and the speed of execution obtained thanks to the invention are particularly felt by the realization of the function illustrated in FIG. 8.
La commande dont il s'agit ici permet de charger dans un ou plusieurs plans mémoires de la mémoire de page une donnée constante, moyennant un nombre extrêmement réduit de cycles d'exécution du C.P.U. 1. The command in question here makes it possible to load into one or more memory plans of the page memory a constant data item, by means of an extremely reduced number of execution cycles of the C.P.U. 1.
Au cours d'une opération préalable, après réception d'une commande par le décodeur 27, le contenu du bus de données provenant du C.P.U 1 est chargé dans le registre de masque 23. Ces données contiennent le nombre de chargements répétitifs à exécuter. During a prior operation, after reception of a command by the decoder 27, the content of the data bus coming from the C.P.U 1 is loaded into the mask register 23. These data contain the number of repetitive loadings to be executed.
Les contenus du bus de données suivants sont alors traités de la façon précédemment décrite, à l'aide des pointeurs Px ou Py, de l'unité arithmétique et logique 32 et des registres 31a ou 31b, le tout sous la commande du circuit 20 qui régit le bus interne 19 à temps partage (fonction L.D.P. x (A)N). The contents of the following data bus are then processed in the manner previously described, using the pointers Px or Py, the arithmetic and logic unit 32 and the registers 31a or 31b, all under the control of circuit 20 which governs internal bus 19 sharing time (LDP x (A) N function).
Le cycle interne, sans intervention du
C.P.U., est alors répété N fois, N étant la valeur chargée au cours du cycle C.P.U. précédent dans le registre 23, comme on vient de le décrire.The internal cycle, without intervention of the
CPU, is then repeated N times, N being the value loaded during the previous CPU cycle in register 23, as just described.
A chaque accès à la mémoire, le DMA 20 décrémente par le conducteur DC le registre 23 jusqu'à ce que la valeur N devienne égale à zéro. Le conducteur sur lequel transite la valeur N = 0 est raccordé au décodeur 27 afin que celui-ci puisse supprimer la commande sur la ligne 29 de demande d'accès au DMA 20. Each time the memory is accessed, the DMA 20 decrements the register 23 by the DC conductor until the value N becomes zero. The conductor on which the value N = 0 passes is connected to decoder 27 so that it can delete the command on line 29 of request for access to DMA 20.
I1 est à noter que ce processus permet un chargement extremement rapide de la mémoire car un plan mémoire de 10 koctets demande un temps de chargement d'environ 1,5ms alors que si on utilise le chargement séquentiel avec intervention du C.P.U. à chaque adresse, il faut environ 100 ms pour le même nombre d'octets. I1 it should be noted that this process allows an extremely fast loading of the memory because a memory plan of 10 kbytes requires a loading time of approximately 1,5ms whereas if one uses the sequential loading with intervention of the C.P.U. at each address, it takes about 100 ms for the same number of bytes.
F - Fig. 9, 10, llA et 11B - transferts ou modifications
de formes.F - Fig. 9, 10, llA and 11B - transfers or modifications
of shapes.
Pour la compréhension de cette fonction, il est utile de se reporter à la Fig. 9 qui montre plus en détail le bloc de modification 34. Ce bloc comporte un circuit de traitement logique 37 dans lequel peuvent être exécutées des fonctions logiques sur 16 bits par exemple, à partir de deux signaux d'entrée sur 16 -bits également. Ces fonctions sont par exemple "vrai" (38a), ou (3Bb), ET (38c), NON-ET (38d) et "inversion" (38e). To understand this function, it is useful to refer to FIG. 9 which shows in more detail the modification block 34. This block comprises a logic processing circuit 37 in which logic functions can be executed on 16 bits for example, from two input signals on 16-bits also. These functions are for example "true" (38a), or (3Bb), AND (38c), NON-AND (38d) and "inversion" (38e).
La sélection peut être effectuée par l'intermédiaire de lignes de commande 39 qui forment des sorties du décodeur 27 (Fig. 9). The selection can be made via control lines 39 which form outputs of the decoder 27 (Fig. 9).
La première entrée 40a du circuit de traitement est raccordé au registre de masque 23 qui fournit i ce circuit l'information sur huit points d'image à afficher sur l'écran. Cette information (signal M.S.Q. The first input 40a of the processing circuit is connected to the mask register 23 which supplies this circuit with information on eight image points to be displayed on the screen. This information (signal M.S.Q.
ou M.S.Q. de Figl1B) peut provenir par exemple d'une mémoire de formes, dsun générateur de caractères ou autre source analogue faisant de préférence partie de la mémoire 5.or M.S.Q. of Figl1B) can come for example from a shape memory, from a character generator or other similar source which is preferably part of the memory 5.
L'entree 40b du circuit de traitement est connectée à un registre de mémorisation ou mémoire de lecture 41 dans lequel est chargé le contenu de deux octets de la mémoire de page (mémoire 5) sur lesquels il convient d'opérer une modification. On rappèle que chaque bit de cette mémoire de page régit un point à afficher surl'écran et que celle-ci est organisée de préférence en "plans mémoire" comme précédemment décrit. The input 40b of the processing circuit is connected to a storage register or read memory 41 in which is loaded the content of two bytes of the page memory (memory 5) on which a modification should be made. It is recalled that each bit of this page memory governs a point to be displayed on the screen and that it is preferably organized in "memory plans" as previously described.
Les sorties individuelles sur 16 bits du circuit de traitement logique 38 sont reliées à un multiplexeur 42 dont la sortie multiplexée est raccordée au bus interne 19. The individual 16-bit outputs of the logic processing circuit 38 are connected to a multiplexer 42, the multiplexed output of which is connected to the internal bus 19.
L'exécution de cette fonction de modification sera maintenant décrite à l'aide d'un exemple particulier qui consiste, wmme représenté sur la Fig. liA à superposer à un endroit donné de l'image affichée sur l'écran une lettre A, à l'information qui y apparaît à l'instant considéré. On ne décrira que la superposition de la barre supérieure horizontale de cette lettre A, l'opération étant poursuivie sur toute la zone intéressée de l'image de la manière qui va être décrite. On comprend qu'en fait cette modification est opérée dans la partie mémoire de page de la mémoire 5 sur des données qui v sont stockées. The execution of this modification function will now be described with the aid of a particular example which consists, wmme represented in FIG. liA to superimpose at a given location in the image displayed on the screen a letter A, on the information that appears there at the instant considered. We will only describe the superposition of the upper horizontal bar of this letter A, the operation being continued over the entire interested area of the image in the manner which will be described. It is understood that in fact this modification is made in the page memory part of the memory 5 on data which are stored.
Pour simplifier, la description correspond à huit points sur l'écran dont les couleurs sont définies par le rectangle C1 de la Fig. lIA, à l'aide de trois oc- tets 01, O2 et 03 appartenant respectivement aux plans
R, V et B qui, par leur combinaison, donnent sur l'écran huit points ayant les couleurs suivantes : Magenta, Cyan,
Rouge, Blanc, Bleu, Vert, Noir, Bleu. On suppose que la barre supérieure de la lettre A définie dans le rectangle
O4 de la Fig. llA doit être superposée en rouge sur les huit points de C1.To simplify, the description corresponds to eight points on the screen, the colors of which are defined by the rectangle C1 in FIG. lIA, using three bytes 01, O2 and 03 belonging respectively to the plans
R, G and B which, by their combination, give on the screen eight points having the following colors: Magenta, Cyan,
Red, White, Blue, Green, Black, Blue. We assume that the upper bar of the letter A defined in the rectangle
O4 of FIG. llA must be superimposed in red on the eight points of C1.
A l'apparition de la commande appropriée provenant du C.P.U. sur le bus 12B, le décodeur 27 valide les registres nécessaires à l'exécution de cette opération ainsi que le circuit DMA 20 qui alloue un intervalle de temps sur le bus interne 19 (CM = 0). Au cours du cycle
C.P.U. précédent, l'adresse de l'octet Ol (Fig. llB) du plan rouge, relative aux points d'image à modifier, a été introduite dans le registre Px.When the appropriate command from the CPU appears on the bus 12B, the decoder 27 validates the registers necessary for the execution of this operation as well as the DMA circuit 20 which allocates a time interval on the internal bus 19 (CM = 0). During the cycle
Previous CPU, the address of byte Ol (Fig. 11B) in the red plane, relative to the image points to be modified, was entered in the register Px.
L'information de l'octet 01, c'est-à-dire 1011.0000 est lue dans la mémoire, et transférée sur le bus interne 19 vers le registre 40 (Fig. 9) du circuit de modification 34. The information of byte 01, that is to say 1011.0000 is read in the memory, and transferred on the internal bus 19 to the register 40 (FIG. 9) of the modification circuit 34.
Les données accompagnant la commande considérée sont envoyées dans le registre de masque 23 (octet 04 - 0011 1100). La fonction logique OU étant sélectionnée par la commande dans le décodeur 27, le signal transitant sur la ligne 39, le circuit de traitement logique 38 effectue bit par bit l'opération logique OU sur les octets Ol et 04, ce qui donne l'octet 05 1011.1100. Ce résultat est ré-écrit à l'adresse Py de la pile des registres, le tout sous la commande du circuit D,M.A. 20. The data accompanying the command in question are sent to the mask register 23 (byte 04 - 0011 1100). The OR logic function being selected by the command in the decoder 27, the signal passing through the line 39, the logic processing circuit 38 performs bit by bit the OR logic operation on the bytes Ol and 04, which gives the byte 05 1011.1100. This result is rewritten at the address Py of the stack of registers, all under the control of circuit D, M.A. 20.
Puis, c'est successivement aux informations des plans mémoire Vert et Bleu d'être traitées de la même façon, cependant que les signaux M.L. et M.S.Q. sont soumis à une opération ET, ce qui donne lieu aux octets O6 et 07, respectivement. Then, it is successively to the information of the Green and Blue memory plans to be treated in the same way, however that the signals M.L. and M.S.Q. are subjected to an AND operation, which results in bytes O6 and 07, respectively.
Ensuite, lors de l'affichage sur l'écran par combinaison des octets Oi 06 et 07 on retrouve les points image dont les points intermédiaires sont tous de couleur rouge, comme représenté dans le rectangle C2 des Fig. llA et llB. Then, during the display on the screen by combination of bytes Oi 06 and 07, the image points are found, the intermediate points of which are all red in color, as shown in rectangle C2 in FIGS. llA and llB.
Bien entendu, entre les procédures relatives aux plans mémoire R, V et B, le C.P.U. 1 commande une opération de modification de l'adresse contenue dans le pointeur Py, cette modification étant réalisée par un cy cle ordinaire du C.P.U., r les données contenant la diffé- rence entre l'adresse Py initiale et la nouvelle adresse
Py. L'opération d'addition de cette différence à l'ancienne adresse Py est réalisée à l'aide des registres 31a ou 31b et l'unité arithmétique et logique 32, comme dé-.Of course, between the procedures relating to the memory planes R, G and B, the CPU 1 commands an operation of modification of the address contained in the pointer Py, this modification being carried out by an ordinary cycle of the CPU, r the data containing the difference between the initial Py address and the new address
Py. The operation of adding this difference to the old address Py is carried out using the registers 31a or 31b and the arithmetic and logic unit 32, as de-.
crit à propos de la Fig. 6. written about Fig. 6.
Après traitement des octets dans les trois plans mémoire R, V, B, correspondant au contenu des points image C1 (devenus C2), le système peut procéder au même processus sur le groupe de 8 points image situés au-dessous des points image C1 afin de superposer successivement l'ensemble des points concernant la lettre A sur les points qui ont été affichés. (I1 est à noter que dans ce qui précède, le terme "point image" désigne un point écrit à partir des trois canons R, V et B du tube image). After processing the bytes in the three memory planes R, G, B, corresponding to the content of the image points C1 (now C2), the system can carry out the same process on the group of 8 image points situated below the image points C1 so to successively superimpose all the points concerning the letter A on the points which have been displayed. (It should be noted that in the foregoing, the term "image point" designates a point written from the three canons R, G and B of the image tube).
Il est à noter également que le processus que l'on vient de décrire peut être répété N fois, comme décrit à propos de la Fig. 8, à condition de prévoir un registre de masque 23 double pour enregistrer, l'un le nombre de répétitions à exécuter et l'autre les 16 bits de la figure à ajouter ou superposer à l'image. It should also be noted that the process just described can be repeated N times, as described in connection with FIG. 8, provided that a double mask register 23 is provided for recording, one the number of repetitions to be executed and the other the 16 bits of the figure to be added or superimposed on the image.
On conçoit également que l'on peut très facilement opérer une inversion de couleur de limage en utilisant la fonction inversion" 37e du circuit de traitement logique 38 de la Fig. 9. It is also understood that it is very easy to invert the image color by using the inversion function "37e of the logic processing circuit 38 of FIG. 9.
Il est clair que d'après la description qui précède, l'invention apporte 1 avantage considérable de pouvoir exécuter pratiquement toutes les fonctions de traitement de l'image dans le V.D.P. lui-même, en ne faisant appel qu'a des commandes uniquement élaborées dans le C.P.U. par programmation. Lé C.P.U est donc déchargé de la plupart de ces fonctions et peut, pendant leur exécution, être affecté à d'autres tâches. En outre, le cycle C.P.U. étant relativement long, on peut gagner considérablement en temps d'élaboration des informations d'image, l'affichage pouvant être exécuté très rapidement et pratiquement instantanément pour l'observateur de l'écran. It is clear that from the above description, the invention provides a considerable advantage of being able to perform practically all of the image processing functions in the V.D.P. itself, using only commands only developed in the C.P.U. by programming. The C.P.U is therefore relieved of most of these functions and may, during their execution, be assigned to other tasks. In addition, the C.P.U. being relatively long, it is possible to save considerably in time for developing image information, the display being able to be executed very quickly and practically instantaneously for the observer of the screen.
Enfin, la programmation d'un magazine à afficher est considérablement allégée. Finally, the programming of a magazine to display is considerably reduced.
Claims (13)
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR8303144A FR2541806B1 (en) | 1983-02-25 | 1983-02-25 | GRAPHIC MODE VIDEO DISPLAY PROCESSOR |
US06/583,072 US4684938A (en) | 1983-02-25 | 1984-02-23 | System for displaying data on a video screen in graphical mode |
EP84400382A EP0121453B1 (en) | 1983-02-25 | 1984-02-24 | System for displaying data on a video screen in graphical mode |
DE8484400382T DE3464817D1 (en) | 1983-02-25 | 1984-02-24 | System for displaying data on a video screen in graphical mode |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR8303144A FR2541806B1 (en) | 1983-02-25 | 1983-02-25 | GRAPHIC MODE VIDEO DISPLAY PROCESSOR |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2541806A1 true FR2541806A1 (en) | 1984-08-31 |
FR2541806B1 FR2541806B1 (en) | 1985-07-19 |
Family
ID=9286284
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR8303144A Expired FR2541806B1 (en) | 1983-02-25 | 1983-02-25 | GRAPHIC MODE VIDEO DISPLAY PROCESSOR |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR2541806B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3936808A (en) * | 1974-09-03 | 1976-02-03 | Ultronic Systems Corporation | Data storage and processing apparatus including processing of repeat character sequences |
FR2391515A1 (en) * | 1977-05-17 | 1978-12-15 | Ibm | INFORMATION DISPLAY SYSTEM |
EP0038002A2 (en) * | 1980-04-10 | 1981-10-21 | Siemens Aktiengesellschaft | System for displaying characters on a screen |
-
1983
- 1983-02-25 FR FR8303144A patent/FR2541806B1/en not_active Expired
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3936808A (en) * | 1974-09-03 | 1976-02-03 | Ultronic Systems Corporation | Data storage and processing apparatus including processing of repeat character sequences |
FR2391515A1 (en) * | 1977-05-17 | 1978-12-15 | Ibm | INFORMATION DISPLAY SYSTEM |
EP0038002A2 (en) * | 1980-04-10 | 1981-10-21 | Siemens Aktiengesellschaft | System for displaying characters on a screen |
Non-Patent Citations (2)
Title |
---|
E.D.N. ELECTRICAL DESIGN NEWS, vol. 27, no. 10, mai 1982, BOSTON, MASS. (US) * |
IEEE INTERNATIONAL SOLID-STATE CIRCUITS CONFERENCE, vol. 24, février 1981, NEW YORK (US) * |
Also Published As
Publication number | Publication date |
---|---|
FR2541806B1 (en) | 1985-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FR2554256A1 (en) | APPARATUS AND METHOD FOR REGENERATING A HIGH-SPEED WORKING RANGE BUFFER | |
FR2544898A1 (en) | VIDEO DISPLAY DEVICE ON SCREEN DISPLAY SCREEN OF LINE FRAME BY LINE AND POINT BY POINT | |
FR2594241A1 (en) | DATA DISPLAY PROCESSOR ON DISPLAY SCREEN AND DATA DISPLAY METHOD USING THE DEVICE | |
FR2553913A1 (en) | IMAGE PROCESSING SYSTEM | |
FR2538588A1 (en) | DISPLAY DEVICE FOR DISPLAYING INFORMATION OF MULTIPLE INFORMATION MEDIA | |
FR2566950A1 (en) | VIDEO IMAGE POINT PROCESSOR, VIEWING SYSTEM COMPRISING APPLICATION AND METHOD FOR IMPLEMENTING SAME | |
FR2542113A1 (en) | COMPUTER GRAPHIC GENERATOR | |
FR2686438A1 (en) | CIRCUITRY FOR MANIPULATING DATA STREAMS. | |
EP0202166B1 (en) | Virtual image memory for multiple windowing | |
EP0108674B1 (en) | Graphic terminal with pixel memory using a system for writing picture texture signals in the picture memory | |
FR2665812A1 (en) | Automatic cabin for taking and developing photos and method of implementation by this cabin | |
EP0055167B1 (en) | Method and apparatus for displaying messages on a raster-scanned display system, e.g. a crt screen, using a segmented memory | |
FR2541806A1 (en) | Processor for video display in graphics mode | |
JPH07111582A (en) | Image reader | |
FR2641658A1 (en) | CONTROL SIGNAL GENERATOR FOR A VIDEO SIGNAL MIXER | |
FR2541805A1 (en) | System for visually displaying data on the video screen in graphics mode | |
EP0055168B1 (en) | Method and apparatus for displaying messages containing pages on a raster-scanned display system, e.g. a c.r.t. screen | |
EP0191656B1 (en) | Character generator and use of it in a display system | |
EP0187077A1 (en) | Processor for vector tracing | |
FR2797077A1 (en) | METHOD AND DEVICE FOR MANAGING TRANSMISSION OF PIXELS | |
EP0011543B1 (en) | Method for recording a television picture on a two-dimensional carrier and means for applying the method | |
JP2697860B2 (en) | Image processing device | |
JP2537192B2 (en) | Image playback device | |
FR2544149A1 (en) | VIDEO IMAGE PROCESSING SYSTEM | |
JP2695434B2 (en) | Image processing device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ST | Notification of lapse |