FR 2566951 A1 19860103 FR 8410377 A 19840629 La présente invention est relative à un pro- cédé et un système pour l'affichage d'informations visuelles sur un écran par balayage ligne pat ligne et point par point. Des procédés et des systèmes de ce type sont décrits dans les brevets et demandes de brevets sui- vants: FR-A-2 406 250, EP-A-0 055 167, EP-A- 0 056 207, EP-A-0 055 168, EP-A-0 054 490, FR-8303142, FR-83 03 143, FR-83 03 144 et FR. 83 06 741. D'après cette technique antérieure, on con- nait déjà un procédé pour l'affichage d'information visuelle sur un écran par trames balayées ligne par ligne et point par point consistant: a) à gérer toutes les opérations de compo- sition et d'affichage des images à l'aide de champs d adresse et de champs de donnée associés, fournis par une unité centrale de traitement programmée, cette unité centrale de traitement coopérant avec une mémoire et un processeur vidéo par l'intermédiaire d un bus multiplexé d'adresses et de données à partage temporel pour la préparation de chaque trame et son affichage sur ledit écran, b) à commander les accès à ladite mémoire en fonction d'une priorité prédéterminée à l'aide d'un circuit d'accès dynamique à la mémoire, c) à affecter à certaines adresses contenues dans lesdits champs d'adresse une fonction d'instruc- tion pour le processeur vidéo afin que celui-ci puis- se utiliser le champ de donnée consécutif à cette adresse pour ses propres besoins, et; d) à répartir en fonction de l'affectation des champs d'adresse, les champs de donnée consécutifs soit à la mémoire, soit audit processeur vidéo. Dans ce procédé antérieur décrit à la deman- de de brevet précitée n' 83 03 142, un champ de donnée suivant un champ d'adresse interprété comme une ins- truction pour le processeur vidéo, peut être réutilisé autant de fois que nécessaire sans intervention de l'unité centrale de traitement, le processeur vidéo pouvant élaborer une série d'adresses consécutives à partir de l'adresse initialement fournie en les calcu- lant avec sa propre unité de calcul. Une telle opéra- tion répétitive peut être utile par exemple pour pré- parer dans la mémoire une page à afficher dont une grande partie est constituée par une couleur de fond unique. Dans ces conditions, la donnée représentant cette couleur peut être chargée dans les emplacements adjacents de la mémoire en augmentant à chaque fois l'adresse d'une unité, le tout étant commandé par le circuit de commande d'accès dynamique à la mémoire. Cette façon de procéder apporte l'avantage considérable de décharger l'unité centrale de traite- ment d'une partie de sa tâche et de gagner ainsi un temps de traitement considérable. On sait qu'une unité centrale de traitement formée par un microprocesseur a un temps de cycle de l'ordre du micro-seconde, alors que le temps d'accès à la mémoire,-s'il est assuré par le processeur vidéo se réduit à environ cent nano- secondes. D'une manière générale, il serait donc sou- haitable de décharger l'unité centrale de traitement de toutes les tâches "secondaires", qui ne sont pas directement liées à la gestion du système, comme par exemple, l'animation d'une partie de l'image, le chan- gement d'une forme, la rotation sur elle-même d'une partie de l'image, etc. L'invention a donc pour but de perfection- ner le procédé défini c-dessus afin d'augmenter les possibilités de traitement et de composition de l'i- mage par le processeur vidéo et de décharger ainsi encore d'avantage l'unité centrale de traitement pour qu'elle puisse se consacrer pratiquement exclusive- ment à la gestion du système. L'invention a donc pour objet un tel pro- cédé qui est caractérisé en ce qu'il consiste égale- ment: e) à déterminer par la valeur du champ d'a- dresse lui-même si cette adresse est un code d'ins- truction pour le processeur vidéo ou une adresse d'accès direct par l'unité centrale de traitement à la mémoire; f) à affecter à certaines desdites valeurs un mode de fonctionnement dit "de premier plan" par lequel ladite unité centrale de traitement peut placer la donnée consécutive dans ledit processeur vidéo avec une priorité élevée déterminée par ledit circuit de commande d'accès; g) à affecter à certaines autres desdites valeurs du champ d'adresse interprétées comme une instruction un mode de fonctionnement dit de "second plan" par lequel ladite unité centrale de traitement peut déclencher, grâce au contenu du champ de donnée consécutif, une série de cycles mémoire à exécuter par le processeur vidéo avec une faible priorité détermi- née par ledit circuit de commande à l'aide d'adresses que ce processeur élabore lui-même à partir des don- nées qui lui sont préalablement fournies par l'unité centrale; et h) à interrompre l'exécution de ladite série de cycles dans le processeur vidéo lorsque ladite uni- té centrale fournit de nouveau un champ d'adresse dont le contenu détermine le mode de fonctionnement de premier plan". Grâce à ces caractéristiques, il devient possible de traiter des données et des groupes de don- nées dans le processeur vidéo avec la rapidité qui lui est propre sans intervention de l'unité centrale de traitement qui, quant à lui, peut conserver l'initia- tive de la gestion du système en interrompant l'exé- cution d'une série d'opérations en cours dans le processeur vidéo, si elle-même, souhaite y accéder. Selon une autre caractéristique de l'inven- tion, le procédé consiste également lors de l'inter- ruption de l'exécution d'une série d'opérations de second plan, à mémoriser les derniers champs d'adres- se et de donnée en cours d'exécution dans le proces- seur vidéo et à reprendre la suite de cette exécution après achèvement d'un cycle commandé par ladite unité centrale en mode de premier plan. Dans ce cas, également, le processeur vidéo prend totalement en charge la poursuite de l'exécution d'une série d'opérations sans intervention de l'unité centrale. Selon encore une autre caractéristique de l'invention, le procédé consiste à charger préalable- ment une série d'instructions dans ladite mémoire et à procéder à l'exécution de ces instructions en mode de second plan dans le processeur vidéo, sans interven- tion de l'unité centrale. Cette caractéristique particulièrement utile permet de suivre des boucles de programme en un mode dit "tâche" à la vitesse de traitement du processeur vidéo, pendant que l'unité centrale peut travailler de façon indépendante avec son propre programme, par exemple pour calculer des déplacements de figures sur l'écran, des inscrustations et autres manipulations relevant directement de la gestion du système. L'invention a également pour objet un système de visualisation sur un écran vidéo en mode graphique par lequel l'information visuelle à afficher est définie sur l'écran par balayage ligne par ligne et point par point d'une trame, ce système comprenant: - une mémoire à accès direct dans au moins une zone de laquelle est stockée à un instant consi- déré l'information nécessaire à l'affichage d'une trame, - une unité centrale de traitement pour gérer la composition de l'information à afficher, - un processeur d'affichage vidéo pour traiter une partie des informations fournies par ladite unité centrale et pour, à partir de ces in- formations préparer les images à l'affichage en as- sociation avec ladite mémoire, - un bus de communication reliant entre eux ladite mémoire, ladite unité centrale e't ledit pro- cesseur d'affichage vidéo, - un circuit de commande dynamique d'accès à ladite mémoire pour répartir dans le temps tous les accès à la mémoire ainsi que le transfert des infor- mations sur ledit bus de communication, et - des moyens d'interprétation pour permettre l'interprétation des informations fournies par l'unité centrale de traitement de -manière que certains des champs d'adresse soient interprétés comme instructions pour le processeur d'affichage vidéo, - ce système étant caractérisé en ce que lesdits moyens d'interprétation de champ d'adresses comportent des moyens permettant de transformer un champ considéré soit en une instruction dite de premier plan dont l'exécution est commandée immédiatement en fonction d'un ordre de priorité fixé par ledit circuit de commande d'accès à la mémoi- re, soit en une instruction de second plan impliquant plusieurs cycles d accès successifs à la mémoire mais dont l'exécution est commandée avec une faible priori- té après exécution de toute instruction de premier plan, ledit circuit de commande d'accès étant capable d'interrompre l'exécution d'une série de cycles de second plan, lorsqu'un cycle de premier plan doit être exécuté. 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 une schéma d'ensemble sim- plifié d'un système de visualisation de données sur un écran vidéo, suivant l'invention; - les Fig.2A et 2B représentent un schéma plus détaillé de ce système; - la Fig.3 est un diagramme montrant le champ d'adresse pouvant circuler sur le bus de l'unité centrale de traitement (CPU); - les Fig.4A et 4B sont des chronogrammes illustrant le fonctionnement des modes de premier plan et de second plan affectés aux informations provenant de l'unité centrale de traitement; - les Fig. 5 à 9 représentent des schémas très simplifiés du système suivant l'inventionafin d'illustrer la circulation de l'information de données et d'adresses dans les diverses configurations d'uti- lisation de ce système; - la Fig.10 est un diagramme, reprenant en partie le schéma général du système, pour illustrer un accès direct de l'unité centrale de traitement pour écrire une donnée dans la mémoire générale du système; - les Fig.11 et 12 sont des chronogrammes illustrant le fonctionnement de l'accès direct repré- senté à la Fig.10; - la Fig.13 est un diagramme analogue à celui de la Fig.10 pour montrer le fonctionnement d'un accès en écriture au processeur d'adresses par l'unité centrale de traitement; - les Fig.14 et 15 sont des chronogrammes qui illustrent le fonctionnement de la Fîg.13; - la Fig.16 est un schéma très simplifié du système suivant l'invention illustrant un accès indi- rect de l'unité centrale de traitement à la mémoire générale du système; - la Fig.17 représente un diagramme de pro- gression des adresses lors d'un accès général à la mémoire du système; la Fig.18 est un diagramme analogue à celui de la Fig.10 montrant la circulation des infor- mations lors d'un accès à la mémoire générale confor- mément à l'illustration de la Fig.17; - les Fig.19 et 20 sont des chronogrammes relatifs au fonctionnement d'un accès selon la Fig.18; - la Fig.21 est un diagramme analogue à celui de la Fig.10 représentant le fonctionnement lors du chargement d'une instruction de second plan dans l'interface de l'unité centrale de traitement; - les Fig.22 et 23 sont des chronogrammes illustrant le fonctionnement de la Fig.21; - la Fig.24 est un diagramme montrant sché- matiquement la préparation de l'affichage d'une zone d'image dans la mémoire; - la Fig.25. est un diagramme représentant une partie du système de l'invention lors de l'ini- tialisation d'une zone mémoire d'un processeur de points pouvant être utilisé dans le système suiVant l'invention; - la Fig.26 est un chronogramme relatif au fonctionnement illustré sur la Fig.25; - la Fig. 27 en est un organigramme; - la Fig.28 illustre le mode de fonctionne- ment "tâche" du processeur vidéo ou VDP; et - la Fig.29 est un chronogramme illustrant le mode tâche". La Fig.1 représente un schéma très simpli- fié du système de visualisation suivant l'invention. Ce système comporte plusieurs unités qui sont les suivantes: - 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 n' 83 03 142 précitée; - 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 externe 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, un processeur de points 11, destiné à opérer le traitement des points ou "pix de changements de formes dans l'image. et un proces- seur d'affichage 12, ces organes communiquant tous entre eux par l'intermé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 1U3 précités, 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 6OS 741 précitée. 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 10.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. 1 1 La DRAM 5 utilisée dans le système suivant l'invention 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 Sa de mémoires de gestion de lignes et de colonnes 5b et 5c (ces concepts seront expliqués par la suite), 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'adapta- tion des diverses vitesses de traitement, notamment de l'unité centrale de traitement 1 et de la voie externe 9 (voir à ce propos le EP-A-0 005 4490 précitée), et éventuellement une mémoire d'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'in- termédiaire du dispositif d'accès dynamique à la mé- moire 15 (voir à ce propos 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'acces 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 sche- ma représenté sur les Fig.2A et 2B. L'interface 7 est destiné à relier sélecti- vement le CPU 1 au VDP 2 pour un accès indirect ou à la DRAH 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 >FFOO 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=O) 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. (Voir aussi la Fig.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. Parmi les adresses interprétées, quatre adresses sont destinées à désigner sélectivement 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é suivante: 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é 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 DMA 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 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 de valider un ou plusieurs registres des piles 24 et 25, une fonction arithmétique ou logique dans le ALU 27 et le transfert par le registre 26. Les opéra- tions de l'ALU 27 sont commandées par cinq bits des micro-instructions qui peuvent sélectionner la retenue (CI=O01 ou 2) et l'opération d'addition ou de sous- traction 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 microinstructions 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é la 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 (processeur de points 11) 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 selon la priorité établie (dans ce cas précis, il y aurait interruption puis reprise de l'éxé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 casla 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 bus 13 à des adresses transférées à travers le bus 6 et le registre 32, en provenance du processeur d'adresses 10. On va maintenant décrire les divers modes de fonctionnement du système de l'invention en se réfé- rant aux Fig.5 à 9. Puis, l'examen des Fig.10 à 24 sera consacré à un certain nombre d'exemples précis de traitement des informations et l'échange de celles-ci entre les divers organes composant le système. Sur les Fig.5 à 9, les flots des adresses et des données sont indiqués par des traits fléchés. * La Fig.5 représente un accès direct à la mémoire DRAM 5 sans que les 256 instructions du champ d'adresse réservées au VDP 2 soient utilisées. Ce mode de fonctionnement permet au CPU 1 d'exécuter directe- ment un programme écrit en language assembleur ou d'accéder directement à des données contenues dans la DRAM 5. L'adresse d'accès est directement issue des registres d adressage du CPU 1 qui déclenche son cycle comme si la DRAM 5 était reliée directement au bus du CPU. Le cycle d'accès à la DRAM 5 est généré directe- ment par le circuit DMA 15 (Fig.2A) par l'intermédiai- re du décodeur 16 et le signal , la voie choisie ayant la priorité la plus *élevée (cycle CPUFG). La Fig.6 illustre les accès par le CPU 1 aux registres du VDP 2. Le champ réservé de 256 adresses dans le champ d'adresses est interprété comme une ins- truction pour le VDP 2 et permet ainsi d'accéder en lecture ou en écriture à tous les registres internes du VDP. Le CPU 1 peut ainsi préparer les accès futurs à la mémoire DRAM (exécutés notamment en cycles BG) en chargeant les registres du VDP avec des valeurs de pointeur, les incréments d'adresse, les adresses de comparaison, etc. Il est également possible de pro- grammer les paramètres de la base de temps BT (Fig.2B) par exemple pour l'adapter à des normes de télévision à utiliser, les couleurs de base de la palette de couleur du processeur d'affichage 12, et autres afin de préparer une image à afficher sur l'écran pour initialiser le VDP au début du fonctionnement. La Fig.7 représente le mode d'accès indi- rect à la mémoire par l'intermédiaire d'un pointeur du processeur d'adresses 10. Certaines instructions du VDP 2 (champ d'adresse interprété) permettent d'accé- der à la DRAM 5 en utilisant ces pointeurs, L'instruc- tion interprétée par le décodeur 16 sélectiorne un pointeur par l'intermédiaire de la mémoire CRFGM 22 (Fig.2A) qui contient l'adresse d'accès à la DRAM 5. Durant l'exécution du cycle, le processeur d adresses calcule la prochaine adresse d'accès en fonction de l'interprétation du code de l'instruction et éventuel- lement de paramètres d'incrémentation qui ont été pré- programmé par le CPU. En écriture, la donnée envoyée par le CPU 1 est chargée dans la DRAM 5 à l'adresse sélectionnée. En lecture, la valeur lue dans la-DRAM à l'adresse indiquée est transférée en fin de cycle sur le bus 3 du CPU 1. Cet accès utilise également la voie FG> du circuit DMA 15. La Fig.8 illustre un accès en mode BG (arrière plan). Dans les trois cas (Fig.5 à 7) décrits précédemment, chaque instruction ou accès traite un seul mot de 16 bits par une utilisation monocycle. Par exemple, pour copier ou transférer un bloc de 16 mots de 16 bits, le code de l'instruction généré par le CPU i doit être répété seize fois. Le mode d'accès BG permet d'exécuter des instructions portant sur une suite de mots en ne générant, au moyen du CPU 1 qu une seule instruction. Par exemple, on peut remplir 10 mots de 16 bits avec une valeur constante ou avec une trame contenue dans le processeur de points 12 ou déplacer une zone mém- oire à une autre adresse, à l'aide d'une seule ins- truction FG commandant une procédure BG6. Avant l'exécution de l'instruction, les pa- ramètres doivent être charges dans le VDP Z. Les instructions en mode BG sont exécutées avec la plus faible priorité, c'est à dire que toutes les demandes d'accès de priorité supérieure interrom- pent son exécution. Généralement, les instructions utilisent le processeur de points 12 pour réaliser les transferts des données. On rappelle que le mode de fonctionnement BG permet d'augmenter la vitesse de traitement d'image et de réduire la charge de travail du CPU 1. La Fig.9 illustre une autre possibilité con- férée par l'agencement particulier du système suivant l'invention. En effet, dans le cas précédent, chaque instruction permettant d'exécuter des opérations à plusieurs cycles, est générée par le CPU 1. De même, avant chaque exécution, les nouveaux paramètres de l'instruction doivent être générés et chargés dans le VDP 2 par ce CPU. Le mode d'exécution de programme VDP {tâche) illustré sur la Fig.9 permet d'exécuter un programme en language VDP, directement sous la comman- de du processeur d'adresses 10. Pour cela.- un program- me doit être préchargé dans la DRAM 5 par le CPU 1, ou peut être éventuellement contenu dans des zones de bi- bliothéques de programmes ou ROM, d'une partie de la mémoire 5 du système que le CPU peut appeler (partie non illustrée sur les figures). Un code d'instruction généré par le CPU transmet au VDP 2, l'adresse de début du programme et l'ordre de début d'exécution. Le processeur d'adresses acquiert les ins- tructions VDP par un pointeur de programme PC et exécute les instructions du type BG les unes après les autres. Ces programmes ou tâches peuvent être appe- lés pour exécuter des opérations qui se répètent sou- vent dans la gestion du système. Ils permettent d'ob- tenir un gain de temps appréciable et de réduire la charge du CPU. D'autres modes d'accès à la DRAM 5 sont pos- sibles notamment par la voie externe (circuit 9) ou par la base de temps pour l'affichage. Ces modes ne sont pas décrits en détail ici. On va maintenant examiner les Fig.10 à 12 qui représentent un exemple concret d'accès direct de la DRAM 5 par le CPU 1. Comme déjà indiqué cidessus, un tel accès est déclenché lorsque le contenu du champ d adresse circulant sur le bus 3 validé par les si- gnaux AL, EN et R/W, est compris entre >0000 et >FEFF. C'est le circuit DMA 15 qui commande un tel accès. L'exemple choisi à la Fig.10 consiste à écrire à l'adresse >F37E la valeur >5555. Le dérou- lement de cette opération est le suivant. Le signal AL qui accompagne le champ d'a- dresse transitant sur le bus 3 génère par l'intermé- diaire du décodeur 16, le signal ALCPU pour le regis- tre d'adresse 17 dans lequel l'adresse >F37E est donc transférée. Le décodeur 16 génère également le signal WCPUD appliqué au registre 18, à l'apparition du si- gnal EN (validation)-, le signal R/W commandant l'écri- ture par son niveau bas. Ceci transfère le champ de donnée dans le registre 18 (>5555). A la fin de ce cycle de transfert commandé par l'intermédiaire du CPU 1, le décodeur 16 engendre le signal REQCPUF qui est appliqué au circuit DMA 15 pour que soit sélectionné un cycle d'écriture FG dans la mémoire 5 avec la priorité la plus haute. De ce fait, les opérations qui vont suivre sont maintenant commandées par le circuit DMA 15 avec C. son propre rythme d'horloge (signal 0, Fig.12), et ce après que le cycle DMA en cours soit terminé. Ceci veut donc dire que si le circuit DMA est en train de commander une séquence de cycles BG ou occupé à réali- ser une autre séquence avec une priorité plus faible, cette séquence est interrompue pour n'être reprise que lorsque le cycle FG a été achevé. Un groupe de bits du champ d'adresse trans- mis par le décodeur 16 et le registre 21, constitue une adresse de sélection d'une micro-instruction con- tenue dans la mémoire CROM 22 permettant de valider les registres nécessaires pour opérer l'écriture dans la mémoire 5. La micro-instruction est elle-même vali- dée sur la ligne 30 par le circuit DMA 15 ( signal DMA CYCLE CPUF, Fig.12) . Le signal ENCPUA fourni par le décodeur 16 transfère le contenu du registre 17 sur le bus 6, l'adresse étant ensuite placée dans le registre de transfert 32 par le signal ALD et multiplexée pour séparer les bits de rangée et de colonne. Les signaux de commande RAS et CAS fournis par le circuit DMA 15 assurent le chargement de l'adresse dans la DRAM 5 pendant que la donnée >5555 contenue dans le registre 18 est transférée via le bus 6 (signal ENCPUD) et le registre de transfert 31 sur le bus de données 13. Entretemps, la mémoire 5 reçoit le signal WD comman- dant l'écriture. En se référant maintenant aux Fig.13 à 15, on va décrire un exemple d'accès en écriture au pro- cesseur d'adresses 10. Celui-ci est accessible via le bus 6 sous la commande du circuit DMA 15 qui alloue un temps d'utilisation à la suite d'une demande d'accès REQ-CPUF. L'exemple décrit concerne la programmation de l'adresse >7002 dans le registre BAGT qui est un pointeur d'adresse de base d'une zone spécifique de la DRAM 5. Le code de l'instruction FG fournie par le champ d'adresse pour accéder au processeur 10 est le. suivant: A7 A6 A5 A4 A3 A2 A1 A0O Cod oprto %,_ ,, Code opération 4 t Adresse du registre pile N ou P Bien entendu, les huit-bits de poids le plus fort du champ d'adresse sont à 1 du fait qu'il s'agit d'un accès avec interprétation du champ d'adresse. Le signal AL mémorise et valide le champ d'adresse concerné dans le décodeur 16 afin qu'elle soit décodée par ce dernier. Elle est transférée par le signal WF1 dans le registre 21. L'instruction est validée sur le bus d'instruction 21a reliant le re- gistre 21 à la mémoire CROM 22, par le signal ENFI. Simultanément, le champ de donnée consécutif à l'a- dresse considérée (>7002) est transféré dans le re- gistre 18 par le signal WCPUD engendré dans le déco- deur 16 par les signaux EN et R/W provenant du CPU 1. Cette donnée étant chargée, le décodeur 16 génère le signal REQCPUF et le circuit DMA 15 réserve un cycle pour cette demande d'accès. Après avoir terminé le cycle en cours, le circuit DMA applique un signal de validation sur la ligne 30, de la micro-instruction adressée dans la mémoire CROM par le contenu du registre FG 21. La micro-instruction contient par exemple l'adresse PADD et valide par le signal ENCPUD, le transfert sur le bus 6 du contenu (>7002) du registre 18 qui est lui-même transféré sur le bus P 29 pour être chargé à l'adresse du pointeur BAGT par le signal WP. De la même façon, sont charges les autres registres de la pile 25, tandis que ceux de la pile 24 sont charges par le champ d'adresse NADD d'une micro-instruction correspondante de la CROM 22 obte- nue à partir du code d'instruction d'un champ d'a- dresse. Dans ce cas, la donnée correspondante est chargée dans le pointeur sélectionné par le signal WN contenu dans la micro-instruction. L'exemple qui vient d'être décrit montre que le CPU I peut cqmmuniquer avec les pointeurs du pro- cesseur d'adresses 10 moyennant un cycle de premier plan FG en utilisant le décodeur 16 et le registre FG 21. D'une façon analogue, le CPU 1 peut effectuer sur ses champs de données et les valeurs chargées dans les pointeurs des piles 24 et 25, des opérations de calcul à l'aide de l'unité ALU 27 par l'entremise des bus N et P 24 et 25. De même, il est possible d'accéder au pro- cesseur de points 11 et au processeur d. affichage 12 dont les registres peuvent être validés par des micro- instructions adressées en mode FG par le CPU 1. On va maintenant décrire un autre exemple du mode de premier plan FG à l'aide des Fig.16 à 20. Cet Z5 exemple concerne un accès indirect par le CPU 1 à la DRAM 5 à savoir par l'intermédiaire des pointeurs d'a- dresse du processeur 10. Dans cette configuration, ces pointeurs ont été chargés auparavant par le CPU 1 avec des valeurs d'adresse à l'aide desquelles le système peut accéder de différentes façons à la DRAM 5. La Fig.16 montre le principe d'un tel accès indirect. Le champ d'adresse interprété comme instruction FG dé- clenche une demande d'accès à la DRAM 5 en utilisant l'un des pointeurs du processeur d'adresses 10 sélec- tionné par le code de l'instruction. Pendant le dérou- - lement de l'accès, ce pointeur peut être incrémenté d'une valeur contenue dans un autre pointeur d.u pro- cesseur d'adresses. L adresse provenant du pointeur transféré dans l'interface 14 sélectionne un mot dans la DRAM. La donnée correspondante est transférée en lecture ou en écriture entre le CPU et la DRAM. Ce processus est commandé de la façon déjà écrite, à l'aide du circuit DMA 5. Pour illustrer l'accès indirect, on va d'abord expliquer la Fig.17 qui représente un exemple d'organisation d'une partie- de la mémoire 5 et plus particulièrement celle qui contient les informations relatives à une zone d'image à afficher (partie 5d de la Fig.1). Comme décrit dans la demande de brevet pré- citée n 83 06 741, la mémoire de zones 5d est organi- sée selon trois " axes " à savoir: - progression dans une rangée ou ligne - progression dans une colonne - progression "en profondeur". - Bien entendu, le terme profondeur n'est ici pas utilisé pour désigner une troisième dimension physique de l'image. La progression en profondeur in- dique un changement d'adresse d'un plan mémoire à un autre pour permettre l'adressage avec le code de cou- leur voulu de la mémoire de palette du processeur d'affichage 12. Les "axes " sont indiqués à gauche sur la Fig.17. Durant une progression en profondeur (A), l'adresse est incrémentée de "1" à chaque mot de 16 bits. Dans une progression par ligne (B), l'adresse est incrémentée à chaque accès du nombre de plans utilisés pour définir la zone. Dans une progression par colonne (C), l'adresse est incrémentée du nombre de plans multiplié par le nombre de mots définissant une ligne. Dans l'exemple de la Fig.17, une zone d'affichage est définie sur 6 plans, comportant chacun 10 mots par ligne (soit 16 x 10 = 160 points) et 18 lignes par colonne. L'adresse de début de zone est >1000. Les six premiers mots des plans P1 à P6 sont situés aux adresses >1000 à > 1005; ils définissent le code de couleur des 16 premiers points de la première ligne de la zone affichée. La définition des 16 points suivants commence à l'adresse >1006. La zone mémoire se remplit par tranches horizontales, comportant chacune 6x10 = 60 mots et définissant une ligne de la zone d'affichage. La tranche suivante correspondant à la ligne 2, commence.à l'adressse >103C. A chaque ac- cès, le pointeur correspondant du processeur d'adres- ses 10 est incrémenté de un. La progression par ligne correspond à la composition de la zone plan par plan. L'adresse d'ori- gine du pointeur détermine dans quel plan (P1 à P6) le VDP 2 travaille. Par exemple, pour composer la premiè- re ligne du plan P3, l'adresse du premier mot de la ligne est 1002, l'adresse du second est 1002 + 6 = 1008. L'adresse du dernier mot de la ligne est 1038. La première adresse de la ligne suivante dans le plan P3 est 103E. A chaque accès, le pointeur est incrémen- té de 6. La progression par colonne s'effectue aussi dans un même plan. Cependant, à chaque accès, le poin- teur est incrémenté de 6 plans x 10 accès lignes = 60, soit >3C. Si le premier accès correspond au plan P1 à l'adresse >1000, l'accès suivant est à l'adresse >103C et celui de la ligne'6 à l'adresse >112C. En revenant à la Fig.2A, on voit que la pile P 25 du processeur d'adresses 10 contient trois poin- teurs auxquels sont associés quatre valeurs d incré- ments dans la pile N.24 (pointeurs A à D). Les poin- teurs PM1 et PM2 sont comparés à tout moment avec des valeurs programmées dans les registres PE1 et PE2, le résultat de la comparaison apparait dans le registre d'état 19 de l'interface 6 qui est relié à la pile 25 par la ligne 33. Le champ d'adresse interprété >FFEF permet- tant de sélectionner un pointeur et son incrément est le suivant: A7 As A5 A4 A3 A2 A1 - A0, r '. - v ' À Code d'opération Sélect. du mode d'incrément Sélection du pointeur Les pointeurs PM1, PM2 et PM3, peuvent être choisis par les bits A4 et A3 pour tout type d'accès et d'incrément. Le pointeur sélectionné PM1,PM2 ou PM3, peut être incrémenté par six valeurs: - PMn + 0 ou PMn + 1 - PMn + A, + B. + C, ou + D. (A,BC et D étant ici les valeurs chargées dans les registres A,B,C et D de la pile 24). Les comparateurs inclus dans la pile P per- mettent d'indiquer l'égalité des pointeurs avec des valeurs PE1 et PE2. PM1 = PE1 PM1 = PE2 PM2 = PE2 Les trois bits d'égalité sont accessibles dans le registre d'état 19 par l'intermédiaire de la ligne 31. Pour remplir le plan P1 (Fig.17) avec une progression par ligne. I'adresse >1000 est chargée dans le registre PM1 (Fig.18). selon les processus décrits précédemment. La valeur d'incrément >0006 est chargée dans le registre A. La dernière adresse du plan est chargée dans le registre PE1 = >1431. Le premier accès est représenté sur la Fig.18 et sur les chronogrammes des Fig.19 et 20. Durant le signal AL, le champ d'adresse est interprété et son code est chargé dans le registre 21 par le signal WF1, puis validé aux entrées de la mé- moire CROM 22. Le champ de donnée est transféré dans le registre 18 par le signal WCPUD. En fin de cycle, la demande d'accès REOQ CPUF est générée vers le circuit DMA 15. Dés que celui-ci est libre, il génère un cycle CPUF qui valide le mi- crocode sélectionné par le code d'opération. Le poin- teur PM1 est validé sur le bus P 29 et sur le bus 6. L'adresse >1000 est chargée dans le multiplexeur d'adressage 32 par le signal ALD. Les signaux RAS et CAS chargent l'adresse dans la mémoire 5 et sélection- nent le mot >1000. La valeur d'incrément A = >0006 est validée sur le bus N 28. Le microcode sélectionné génère la commande du circuit ALU 27 permettant d'additionner les contenus des bus P et N; le résultat placé sur le bus 0. est chargé dans le registre PM1 par le signal d'écriture WP. Avant la transition négative de signal CAS, le signal ENCPUD valide la donnée sur le bus 6 qui est relié au bus DRAM 13 de la mémoire 5. Le si- gnal d'écriture WD étant au niveau bas, la donnée est transférée dans la mémoire 5 à l'adresse >1000. L'ac- cès suivant déclenché par le CPU s'effectue à l'adres- se >1006. Durant le même cycle, le processeur 10 cal- cule l'adresse >1006 + 6 = >100C. Au cycle correspondant à la dernière adresse du plan >1431, le signal PM1 = PE 24 est généré et appliqué au registre d'état 19. Cette information peut être éventuellement utilisée en mode FG par le CPU 1. Cependant, son but est principalement de gérer les accès multicycles BG décrits par la suite. D'après la description qui précède de quel- ques exemples du fonctionnement en mode FG de premier plan, on constate qu'à chaque accès interprété du CPU 1 correspond l'exécution d'un seul cycle CPUF (Fig. 4A). Le temps TB séparant deux accès dépend des carac- téristiques du CPU et de la complexité de son program- me à exécuter. Certaines phases du chargement d'une mémoire de zone faisant partie de la DRAM 5 peut nécessiter un grand nombre de répétitions d'un code d'instruction identique pour, par exemple, préparer un plan d'affi- chage avec une couleur uniforme ou avec une trame de points de couleurs différentes. Le mode d"accès BG de second plan réduit considérablement le temps d'éxécu- tion, chaque accès étant exécuté à la vitesse du temps de cycle "page "TP (Fig.4B) de la mémoire DRAM (soit 120 nS environ) alors que la vitesse d'exécution du mode FG est liée au temps d'exécution des boucles de programme du CPU et à ses performances. La durée du cycle TB, rarement inférieure à plusieurs microsecon- des, est donc nettement plus longue que celle du cycle TP du VDP 2. Les instructions BG utilisent les possibili- tés d'accès multiples et le mode page de la DRAM. Le nombre d'accès enchaînés peut couvrir l'ensemble de la capacité d'adressage par exemple 65536 cycles en cha- ne. Cependant, deux conditions interrompent temporai- rement l'exécution des cycles enchaines: - un débordement d'adresse colonne de la DRAM 5 - une demande d'accès d'une autre voie faite au circuit DMA 15. Le signal de débordement INT (Fig.21) est généré durant le calcul de l'adresse du prochain ac- cès. Le cycle en cours est interrompu à la remontée du signal "CAS". Il est suivi par un cycle complet qui permet de charger la nouvelle adresse rangée par le signal RAS et l'adresse colonne par le signal CAS. Avant l'exécution d'une instruction en mode DG, les pointeurs et paramètres utilisés par cette instruction doivent être chargés en mode FG dans le processeur d'adresses 10 par le CPU 1. Une instruction DG est déclenchée par le chargement du registre 23 qui est effectué par un cycle CPUF comme décrit précédemment. Le champ d'adresse du CPU contient le code de l'instruction de chargement et le champ de donnée contient le code à charger dans le registre 23. Le principe de chargement et de déclenche- ment d'une instruction BG est représenté sur les Fig.21,22 et 23. Le code de l'instruction FG exécutant le chargement du registre 23 est transféré dans le registre 21. La donnée qui n'est autre que le code de l'instruction BG est chargée dans le registre 18 par le signal WCPUD. Les demandes d'accès REQ CPUF et REQ CPUB sont générées en fin de cycle par le décodeur 16. La demande d'accès FG étant prioritaire, le cycle CPUF est exécuté en premier. Le signal CPUF valide la micro-instruction sélectionnée dans la mémoire 22 qui génére le signal ENCPUD, transférant le contenu du registre sur le bus 6 qui est lui-même chargé par le signal WBI dans le registre d'instruction 23. Le cycle CPLIB est déclenché à la fin du cycle CPUF. Durant l'exécution d'une instruction en mode BG, le CPU 1 n'a pas accès aux données traitées qui s'échangent entre la mémoire DRAM et les autres orga- nes du VDP. Les adresses sont fournies par le proces- seur d'adresses 10. Certaines instructions pouvant s'exécuter sur plusieurs centaines de cycles mémoire, le CPU accède au registre d'état 19 pour connaitre l'état d'avancement de l'instruction DG en cours. * On va maintenant examiner en détail une opération en mode DG en se référant aux Fig.24 à 27. L'exemple choisi consiste à initialiser une zone de la DRAM 5 pour préparer le fond d'une image à afficher, fond sur lequel on peut alors superposer des éléments d'image tels que du texte ou des figures. Selon l'exemple, le fond est formé par une trame de deux couleurs C1 et C2 (Fig.24) qui colorent alternative- ment et en quinconce les points de l'écran. On suppose que celui-ci comporte 512 points par 512 lignes, chaque point étant défini en une cou- leur parmi 16. La zone de mémoire doit donc définir l'information de couleur sur quatre plans comportant chacun 512 lignes de 32 mots de 16 bits. Toujours dans cet exemple, le code de la couleur C1 est P1 et P2= 1 P3 et P4 = O. Le code de la couleur C2 est P1 = 0 et P2P3 et P4=1. Par ailleurs, on suppose que la mémori- sation se fasse avec une progression en "profondeur" c'est à dire que le premier mot est chargé dans les 32 mots composant la première ligne du plan P, les deu- xième, troisième et quatrième mots sont chargés ensui- te de la même façon dans leurs plans respectifs. Chaque ligne contient 32 x 4 = 128 mots. Si l'adresse de départ de la zone de la DRAM 5 est >0000 (premier mot de Pl), la dernière adresse de la ligne est >007F (dernier mot de P4). Pour opérer ce chargement, on fait appel au processeur de points 11 qui est ici supposé comporter une mémoire RAM 34 à 16 bits dont les rangées peuvent être adressées par des adresses Y à Y - 3. Cepen- n n dant, on notera que le processeur de points peut avoir une structure bien plus complexe pour permettre l'éxé- cution de véritables manipulations des éléments d'ima- ge. Dans ce cas, on peut utiliser avantageusement le processeur décrit dans la demande de brevet déposée ce jour au nom de la Demanderesse et ayant pour titre "Processeur de points pour système vidéo à affichage par une trame balayée ligne par ligne et point par point". Avant l'exécution de l'opération BG de mémo- risation des quatre premières lignes, le processeur 11 est chargé avec les quatre mots de 16 bits aux adres- ses Y0 à Y3 comme représenté sur la Fig.25. Le processeur de points 11 du présent exem- ple comporte, outre le RAM 34, un registre 35 d'adres- sage de cette mémoire qui peut être chargé préalable- ment à partir du registre BG 23 et qui décompte son contenu à l'aide du signal CAS. Ce registre est égale- ment capable de commander un registre de transfert 36 par une ligne 37 pour transférer le contenu des adres- ses de la RAM 34 sur le bus 13 lorsque cela est néces- saire. L'instruction BG est chargée dans le regis- tre 23 selon le processus décrit précédemment. Elle charge notamment le décompteur 35 pour définir les limites d'adressage Yn à Yn-3' L'instruction utilise le pointeur PM1 du processeur d'adresses 10 qui est initialisé à la première adresse d'accès >0000, et l'incrément >0001 de progression en profondeur, chargé dans le registre A. La limite d'adressage PE1 = >0080 permet d'arrêter la génération des cycles de transfert lorsque PMI=PE1. La demande REQ CPUB déclenche le début du cycle BG. Le code de l'opération contenu dans le re- gistre 23 sélectionne un microcode dans la mémoire CROM 22 gérant les pointeurs correspondants. Le pointeur PM1 est validé sur le bus P. puis transféré sur le bus 6 vers le multiplexeur d'adresse 32 de la mémoire DRAM. Durant le premier cycle, le processeur d'adresses calcule l'adresse du prochain accès par l'opération PH1 + A. Le contenu du registre A est placé sur le bus N 38 et le résultat, sur le bus 0, est transféré dans le pointeur PM1 par le signal WP. Du côté processeur de points, le décompteur 35 sélectionne la première adresse Yn. La valeur qu'elle contient est transférée sur le bus 13 à travers le registre 36 validé par le signal de la ligne 37 issu du décompteur 35. La donnée est chargée à l'adresse sélectionnée par le signal d'écriture WD, qui se trouve au niveau bas durant le signal CAS. Les accès suivants sont exécutés successi- vement dans la mesure o le cycle en cours n'est pas interrompu par une demande plus prioritaire ou par un débordement d'adresse colonne. Durant le deuxième cycle, seul l'octet de poids faible du pointeur PM1 est chargé dans la mémoi- re DRAM par le signal CAS. Le processeur d'adresses calcule PM1 + 1 = > 0002, le processeur de points décrémente l'adresse Y. Le deuxième mot du processeur de points est chargé à l'adresse PM1 = >0001. Selon le même processus, le 3ème mot du processeur de points sélectionné par Y = Yn-2 est charge à l'adresse PM1 = >0002. Le 4ème mot sélection- né par Y = Yn-3 est chargé à l'adresse >0003. Dans le cycle suivant, le processeur de point étant à l'adresse Y = Yn-3' l'adresse Yn est rechargée dans le décompteur 35 et le transfert conti- nue de façon cyclique selon le même processus. A tout moment PM1 est comparé avec PE1. Lorsque les deux va- leurs sont égales, le signal PE1 = PMI arrête la sé- quence d'accès au 128ème cycle. Un bit du registre d'état 19 indique la fin d'exécution de l'instruction. L'algorithme d'exécution de l'instruction est indiqué sur la Fig.27. Le mode BG permet également d'une autre fa- çon de soulager le travail du CPU1 qui peut par ce moyen confier au VDP2 l'exécution d'opérations diver- ses appelées " tâches" à l'aide d'un programme d'ins- tructions qu'il peut charger préalablement dans la mé- moire DRAM 5. Ce mode "tâche" implique l'utilisation d'un pointeur particulier de la pile 24 du processeur d'adresses 10 appelé compteur de programme PC. Par ailleurs, il est prévu une bascule 38 permettant de commander l'alternance entre le chargement du registre BG 23 avec une instruction du programme " tâche et l'exécution de cette instruction dans le VDP. La bas- cule d'alternance 38 est connectée par l'une de ces sortie fournissant un signal d'acquisition IAOQ, à la mémoire CROM 22 permettant de sélectionner une micro- instruction de chargement du registre 23. Le registre d'état 19 comporte un bit qui est réservé à l'opéra- tion tâche et qui change d'état lorsque toutes les instructions de la tâche sont exécutées. Une opération tâche implique au préalatble le chargement d'un groupe d'instructions dans la DRAM 5. Ce groupe peut y être mémorisé en permanence ou être emmagasiné avec des instructions FG par le CPU 1 au cours du fonctionnement, par exemple lors de l'initia- lisation du système. Lorsque ce groupe d'instructions doit être exécuté, le CPU 1 charge dans le registre PC du pro- cesseur d adresses 10 l'adresse de la première ins- truction par un cycle de premier plan FG (voir Fig.28 et 29). L'instruction FG en question initialise la bascule 38 par l'intermédiaire d'un bit LDPC qui lui est appliqué à travers le décodeur 16 et le registre 21. Un signal REQCPUF est également généré et appli- qué au circuit DMA. La bascule étant placée dans un état d'acquisition, sélectionne une micro-instruction dans la mémoire CROM 22 permettant de transférer la donnée (première instruciton du groupe) vers le regis- tre BG 23, cette donnée se trouvant à l'adresse conte- -nue dans le registre PC. Entretemps, le processeur d'adresses incrémente le registre d'une unité à l'aide de ses bus et de l'unité ALU 27 et la valeur lue dans la mémoire est chargée dans le registre BG 23 en tant qu'instructions qui permet notamment de déclencher une demande de cycle CPUB et de changer l'état de la bascule 38. Le cycle BG est alors exécuté comme dans le cas décrit précédemment lorsqu'une telle instruc- tion est déclenchée directement. Le signal de fin de cycle appliqué au circuit DMA soit par un signal de comparaison provenant du processeur d'adresse, soit du processeur de points déclenche une nouvelle demande de cycle BG par l'intermédiaire de la bascule 38 qui a été remise à l'état initial pour fournir le signal IAQ. Le processeur s'arrête lorsque l'instruc- 256695 1 tion IDLE de fin de programme est chargée dans le re- gistre BG 23. Cette instruciton permet par l'intermé- diaire de la mémoire CROM 22 de positionner l'un des bits du registre d'état 19 à sa valeur opposée, ce qui indique que la tâche est terminée. Un processus 'tâche" peut donner lieu à l'exécution (avec la rapidité du VDP) de manipulations de zones d'image (rotation, mouvements divers, super- position), d'initialisations rapides des pointeurs, de déroulements de programmes avec des tests et des sauts pour l'éxécution de boucles de programmes, etc. REVENDICATIONS 1. Procédé pour l'affichage d'information visuelle sur un écran (8) par trames balayées ligne par ligne et point par point consistant: a) à gérer toutes les opérations de compo- sition et d'affichage des images à l'aide de champs d adresse et de champs de donnée associés, fournis par une unité centrale de traitement programmée (1), cette unité centrale de traitement coopérant avec une mé- moire (5) et un processeur vidéo (2) par l'intermé- diaire d'un bus multiplexé d'adresses et de données à partage temporel (6) , pour la préparation de chaque trame et son affichage sur ledit écran (8) , b) à commander les accès à ladite mémoire (5) en fonction d'une priorité prédéterminée à l'aide d'un circuit d'accès dynamique à la mémoire (15), c) à affecter à certaines adresses contenues dans lesdits champs d'adresse une fonction d'instruc- tion pour le processeur vidéo (2) afin que celui-ci puisse utiliser le champ de donnée consécutif à cette adresse pour ses propres besoins, et; - d) à répartir en fonction de l'affectation des champs d'adresse, les champs de donnée consécutifs soit à la mémoire, soit audit processeur vidéo, carac- térisé en ce qu'il consiste également: e) à déterminer par la valeur du champ d'a- dresse lui-meme si cette adresse est un code d'ins- truction pour le processeur vidéo (>FFOO à >FFFF) ou une adresse d'accès direct (>0000 à >FEFF) par l'unité centrale de traitement à la mémoire; f) à affecter à certaines desdites valeurs un mode de fonctionnement dit "de premier plan" par lequel ladite unité centrale de traitement peut placer la donnée consécutive dans ledit processeur vidéo avec 2566951' une priorité élevée déterminée par ledit circuit de commande d' accès; g) à affecter à certaines autres desdites valeurs du champ d'adresse interprétées comme une instruction un mode de fonctionnement dit de "second plan" par lequel ladite unité centrale de traitement peut déclencher, grâce au contenu du champ de donnée consécutif, une série de cycles mémoire à exécuter par le processeur vidéo avec une faible priorité détermi- née par ledit circuit de commande à l'aide d'adresses, que ce processeur élabore lui-même à partir des don- nées qui lui sont préalablement fournies par l'unité centrale; et h) à interrompre l'exécution de ladite série de cycles dans le processeur vidéo lorsque ladite uni- té centrale fournit de nouveau un champ d'adresse dont le contenu détermine le mode de fonctionnement de premier plan". 2. Procédé suivant la revendication 1, ca- ractérisé en ce qu'il consiste également lors de l'interruption de l'exécution d'une série d'opérations de second plan, à mémoriser les derniers champs d'adresse et de donnée en cours d'exécution dans le processeur vidéo et à reprendre la suite de cette exécution après achèvement d'un cycle commandé par ladite unité centrale en mode de premier plan. 3. Procédé suivant l'une quelconque des re- vendications 1 et 2, caractérisé en ce qu'il consiste en outre à charger préalablement une série d'instruc- tions dans ladite mémoire et à procéder à l'exécution de ces instructions en mode de second plan dans le processeur vidéo, sans intervention de l'unité centra- le. 4. Procédé suivant l'une quelconque des re- vendications 1 à 3, caractérisé en ce que chaque don- née contenue dans un champ de données consécutif à un champ d'adresse interprété comme une instruction pour le processeur vidéo (2) est utilisée pour adresser une seconde mémoire (22) dans laquelle sont contenues des micro-instructions de commande des composants dudit processeur vidéo (2). 5. Procédé suivant l'une quelconque des re- vendications précédentes, caractérisé en ce qu'il con- siste à mémoriser successivement par des cycles exe- cutés-en mode de premier plan plusieurs données conte- nues dans des champs de données consécutifs à des champs d'adresse interprétés, dans une troisième mé- moire (34), et à échanger ces données, au cours d'une série de cycles exécutés en mode de "second plan", avec la mémoire principale (5), selon une séquence de répétition prédéterminée. 6. Procédé suivant l'une quelconque des re- vendications 4 et 5, caractérisé en ce que lorsqu'un champ d'adresse présente une valeur commandant le mode de fonctionnement de premier plan, il consiste à char- ger le contenu de ce champ d'adresse dans un registre (21) dit de premier plan, à transmettre le contenu de ce registre à ladite seconde mémoire (22) pour sélec- tionner un micro-code désignant un des organes dudit processeur vidéo (2), à transmettre le contenu du champ de données appartenant à l'adresse considérée dans un second registre (18) dit de donnée, et à transmettre le contenu de ce registre (18) dans ledit organe du processeur vidéo par l'intermédiaire dudit bus multiplexé à partage de temps (6). 7. Procédé suivant l'une quelconque des re- vendications 4 à 6, caractérisé en ce que lorsqu'un champ d'adresse présente une valeur déterminant le mode de fonctionnement de second plan, à charger le contenu du champ d'adresse dans un registre (21) dit de premier plan, à transmettre le contenu de ce regis- tre à ladite seconde mémoire (22) pour sélectionner un microcode dans celle-ci permettant de valider au moins l'un des organes dudit processeur vidéo, à charger le contenu du champ de données correspondant au champ d'adresse considéré dans un second registre dit de donnée, à transférer le contenu de ce second registre dans un troisième registre (23) dit de second plan, à transmettre le contenu de ce troisième registre (23) à ladite seconde mémoire (22) pour sélectionner un mi- crocode dans celle-ci destinée à activer d'autres or- ganes dudit processeur vidéo (2), à éxécuter successi- vement les cycles de second plan à l'aide des adresses élaborées dans ce dernier, et à décompter le nombre contenu dans ledit circuit de commande d'accès (15) jusqu'à zéro, pour déterminer la fin de ladite série d'opérations. 8. Procédé suivant la revendication 7, ca- ractérisé en ce qu'il consiste à charger, au cours d'un cycle en mode de premier plan antérieur, une va- leur d'adresse dans un registre (PE1) dudit processeur vidéo, cette valeur déterminant une adresse à attein- dre dans ladite première mémoire (5), à incrémenter dans un autre registre (PM11 dudit processeur (2), la valeur d'adresse actuelle à accéder dans cette pre- mière mémoire (5) et à exécuter des cycles de second plan, jusqu'à ce qu'il y ait égalité des contenus des deux registres (PE1, PM1). 9. Procédé suivant la revendication 7, ca- ractérisé en ce qu'il consiste au cours d'un cycle en mode de premier plan antérieur, à mémoriser un nombre correspondant à un nombre consécutif de cycles à exé- cuter en mode de second plan, et à décompter ce nom- bre mémorisé au fur et à mesure de cette exécution jusqu'à zéro. 10. Système de visualisation sur un écran vidéo en mode graphique par lequel l'information visuelle à afficher est définie sur l'écran par balayage ligne par ligne point par point d'une trame, ce système comprenant: - une mémoire à accès direct (5) dans au moins une zone de laquelle est stockée à un instant considéré l'information nécessaire à l'affichage d'une trame, - une unité centrale de traitement (1) pour gérer la composition de l'information à afficher, - un processeur d'affichage vidéo (2) pour traiter une partie des informations fournies par ladite unité centrale et pour, à partir de ces in- formations préparer les images à l'affichage en as- sociation avec ladite mémoire (5), - un bus de communication (6) reliant entre eux ladite mémoire, ladite unité centrale -(1) et ledit processeur d'affichage vidéo (2), - un circuit de commande dynamique d'accès à ladite mémoire (15) pour répartir dans le temps tous les accès à la mémoire ainsi que le transfert des informations sur ledit bus de communication, et - des moyens d'interprétation (7) pour permettre l'interprétation des informations fournies par l'unité centrale de traitement de manière que certains des champs d'adresse soient interprétés comme instructions pour le processeur d'affichage vidéo, - ce système étant caractérisé en ce que lesdits moyens d'interprétation de champ d'adresses (7) comportent des moyens permettant de transformer un 2566951' champ considéré soit en une instruction dite de pre- mier plan dont l'éxécution est commandée immédiatement en fonction d'un ordre de priorité fixé par ledit circuit de commande d'accès à la mémoire, soit en une instruction de second plan impliquant plusieurs cycles d'accès successifs à la mémoire mais dont l'exécution est commandée avec une faible priorité après exécution de toute instruction de premier plan, ledit circuit de commande d'accès (15) étant capable d'interrompre l'exécution d'une série de cycles de second plan, lorsqu'un cycle de premier plan doit être exécuté. 11. Système suivant la revendication 10, ca- ractérisé en ce que lesdits moyens d'interprétation (7) comprennent un décodeur (16) dont les entrées sont reliées à l'unité centrale de traitement (1) et qui comprend une série de sorties auxquelles apparaissent des signaux de validation dont l'état est fonction du contenu des champs d'adresse qui lui sont appliqués par ladite unité centrale, lesdits moyens d'interpré- tation comprenant en outre un premier registre (21), de premier plan connecté à plusieurs sorties parmi les sorties dudit décodeur, un second registre (17) d'a- dresses connecté entre l'unité centrale (1) et ledit bus de communication (6) pour le transfert direct des adresses entre l'unité centrale et la mémoire (5), un troisième registre (18) de données pour le transfert de données de l'unité centrale (1) sur ledit bus (6) et un quatrième registre (23) de second plan destiné à recevoir par l'intermédiaire dudit troisième registre (18) le contenu d'un champ de données utilisé comme instruction de second plan dans ledit processeur vi- déo, à la suite de la réception d'un champ d'adresse corresponant dont le contenu commande l'exécution d une série d'instructions de second plan, adresse qui est interprétée comme une instruction de premier plan, lesdites sorties du décodeur (16) étant sélectivement connectées auxdits registres (17,18,21,23) pour les activer en écriture ou en lecture en fonction du contenu de ce champ d'adresse. 12. Système suivant la revendication 11, ca- ractérisé en ce que lesdits premier et quatrième re- gistres (21,23) sont connectés à une seconde mémoire (22) dans laquelle sont mémorisées des micro-instruc- tions de commande des organes du processeur vidéo (2), micro-instructions qui sont destinées à être adressées sélectivement par le contenu desdits premier et qua- trième registres (21,23). 13. Système suivant l'une quelconque des revendications 11 et 12, caractérisé en ce que deux sorties (REQCPUF, REQCPUB) parmi les sorties du déco- deur (16) sont raccordées audit circuit de commande d'accès à la mémoire (15) pour permettre l'allocation de temps d'accès à la première mémoire (5) correspon- dant respectivement aux cycles de premier plan et de second plan, et en ce que les sorties dudit circuit de commande (15) établissant les priorités d'accès (CPUF, EXT, GES, VISU, PAF, CPUB) sont raccordées à des en- trées de ladite seconde mémoire (22) pour la valida- tion sélective des micro-instructions sélectionnées par le contenu desdits premier et quatrième registres (21 et 23).