Brevet FR2491651A1 — publié le 19820409

La présente invention concerne des terminaux à affichage vidéo et plus précisément un organe de commande des processeurs vidéo destinés à des ensembles d'affichage à tubes à rayons cathodiques mettant en oeuvre un micro- processeur. On connait déjà des terminaux vidéo de diverses configurations qui sont très utilisés. Depuis l'introduc- tion du microprocesseur, les terminaux vidéo sont devenus "intelligents", c'est-à-dire que le fonctionnement des terminaux vidéo ne repose plus entièrement sur un proces- seur à distance pour les caractéristiques d'introduction de données, de manipulation de données et de gestion de terminal, telles que l'introduction d'un trait de souligne- ment, le clignotement d'un tel trait, l'affichage vidéo inverse, la division de l'écran, etc. Les premiers ensembles formant un terminal. vidéo ont nécessité au moins 100 dispositifs intégrés à moyenne échelle et à petite échelle pour la mise en oeuvre d'un nombre relativement faible de caractéristiques. Un exemple d'un tel terminal ancien est le terminal ADM-3 "Lear-Seigler". Les ensemblesd'affichage à terminal vidéo de la seconde génération ont commencé à utiliser un microprocesseur avec des organes de commande vidéo intégrés à grande échel- le, donnant de nombreuses fonctions nécessaires telles que la synchronisation et l'adressage de la mémoire, effec- tuées auparavant dans des circuits intégrés à moyenne échelle et à petite échelle. Un exemple d'un tel organe de commande vidéo de la seconde génération est le tube à rayons cathodiques SMC 5027 de Standard Microsystems Corporation, Hauppauge, New-York. L'utilisation d'un micro- processeur avec un organe de commande vidéo intégré à grande échelle permet aussi la formation d'un dispositif tel que les caractéristiques d'intelligence, parexemple l'édition des caractères et des lignes ou d'autres carac- téristiques de traitement de textes, peuvent être incorpo- rées à l'ensemble d'affichage. Ces ensembles d'affichage de la seconde génération continuent cependant à poser de nombreux problèmes non résolus. On considère maintenant quelques uns de ces problèmes. Le premier problème est celui de la concurrence pour l'accès à la mémoire. Le microprocesseur et l'organe de commande vidéo d'un ensemble d'affichage doivent tous deux avoir accès à la même mémoire utilisée pour la conservation des données avant l'affichage. L'organe de commande vidéo doit avoir accès constamment à la mémoire pour le rafral- chement de l'affichage et le microprocesseur doit avoir accès à la mémoire pour la remise à jour ou la modifica- tion des emplacements de la mémoire en vue de l'affichage d'informations sur l'écran. Il arrive que le microprocesseur et l'organe de commande demandent simultanément l'accès à la mémoire. La solution à ce problème de concurrence dans l'ac-- cès à la mémoire doit assurer la continuité et l'intégrité d'affichage sur l'écran tout en permettant un accès rapide à la mémoire. Les organes connus de commande vidéo n'ont pas été efficaces dans leur résolution de ce problème de concurrence en permettant au microprocesseur de remettre à jour les-données uniquement pendant les périodes de retour vertical ou horizontal, si bien que la fréquence d'intro- duction de données dans l'ensemble est limitée, ou en né- cessitant des circuits extérieurs très- importants pour as- surer un débit raisonnable du microprocesseur. Les organes de commande vidéo connus ne disposent que d'un petit nombre de possibilités de résolution de cette mise en concurrence si bien que la souplesse de conception de l'ensemble est limitée. Un autre problème est-celui de la facilité d'uti- lisation et de la souplesse des circuits matériels et du logiciel. Les organes de commande vidéo connus mettent en oeuvre essentiellement un procédé d'accès séquentiel à la mémoire pour le renouvellement de l'affichage. Il faut donc que toutes les données à afficher se trouvent dans des em- placements consécutifs de la mémoire. Selon ce procédé, lorsqu'une opération d'édition doit être entreprise, par exemple une suppression de ligne, la moitié des données de l'ensemble de l'écran doit être en moyenne déplacée dans la mémoire. Le microprocesseur est donc surchargé si bien que le débit est réduit. En outre, il est parfois souhaitable que des lignes de données d'état informant l'opérateur des conditions d'un état spécial de l'ensemble, soient affichées avec simultané- ment enlèvement de l'écran de lignes de données autres que des données d'état lors de la mise en mémoire de nouvelles données (provenant par exemple d'un circuit tampon de com- munication). Des organes connus de commande vidéo nécessi- tent la mise en oeuvre d'un logiciel long et délicat et/ou de circuits matériels supplémentaires pour la mise en oeuvre de ces fonctions. Un autre problème est posé par un affichage divisé verticalement. Dans les appareils connus, la formation d'un écran divisé verticalement, c'està-dire d'un affichage pouvant comprendre deux ou plusieurscolonnes indépendantes, a été difficile. Un exemple de cette application est l'écran à tube à rayons cathodiques pour traduction, le côté gauche donnant des indications en une langue telle que l'anglais alors que le côté droit les donne dans une autre langue, par exemple le français. Dans ces applications, il est souhai- table que chaque côté de l'écran puisse être modifié indé- pendamment. Jusqu'à présent, cette caractéristique a été obtenue avec difficulté car, dans les organes actuels de commande vidéo, l'ensemble de l'écran doit être manipulé pour l'échange d'une partie de l'affichage. Un autre problème posé est celui d'un glissement régulier. Les organes actuels de commande n'assurent pas la réalisation efficace des déplacements réguliers. Un dé- placement régulier est la possibilité d'un déplacement de l'affichage vers le haut ou vers le bas d'une quantité aus- si faible qu'une ligne de trame par image. Certaines appli- cations nécessitent aussi un déplacement régulier d'une partie seulement de la page affichée. Des quantités impor- tantes de circuits supplémentaires sont nécessaires pour l'obtention de ces caractéristiques de glissement régulier dans les organes actuels de commande vidéo, si bien que le coût de l'ensemble est accru. Un autre problème posé est celui de la manipula- tion des attributs. Actuellement, les attributs des carac- tères sont essentiellement de deux types, les attributs in- corporés et les attributs invisibles. Les attributs incorpo- rés correspondent à la création d'attributs par introduction (incorporation) de caractères d'attributs dans le courant de caractères d'affichage. Un espace d'affichage sur l'écran est occupé pour chaque changement d'attribut et le nouvel attri- but est utile jusqu'au changement suivant d'attribut. Dans le cas des attributs incorporés, il n'est pas possible de manipuler les attributs représentant par exemple la cou- leur, le clignotement, l'affichage vidéo inverse ou la formation d'un soulignement, sous une forme de traitement caractère par caractère. Les attributs invisibles n'occu- pent pas un espace d'affichage mais la largeur du bit de chaque caractère en mémoire est élargie afin qu'elle per- mette le logement d'un bit pour chaque attribut indépendant. Ainsi, la mémoire de caractères elle-même, lorsqu'elle doit contenir trois attributs, doit être élargie de trois bits. Ces caractéristiques nécessitent une utilisation importante du temps du système à microprocesseur, surtout lors de l'utilisation d'un système classique à microprocesseur à 8 bits. Enfin, un autre problème important est posé par l'affichage de lignes de double hauteur ou de double lar- geur. Les organes actuels de commande vidéo ne permettent pas la formation de lignes de caractères ayant une double largeur ou une double hauteur ou un glissement régulier de ces lignes. Il faut des circuits et des logiciels très im- portants et coûteux pour l'obtention de ces caractéristiques. L'invention concerne un organe de commande vidéo permettant la résolution des problèmes précités posés par les organes vidéo de commande connus, sans que les circuits et le logiciel aient une plus grande complexité. Elle concerne aussi une ensemble d'affichage vidéo dans lequel différentes caractéristiques qui n'existent pas dans les ensembles connus peuvent être facilement obtenues dans un terminal. Plus précisément, l'invention concerne un ensemble d'affichage vidéo à tube à rayons cathodiques, comprenant un microprocesseur, une mémoire, un organe de commande et processeur vidéo, un bus de données reliant l'organe de com- mande au microprocesseur et à la mémoire et un bus d'adresse reliant l'organe de commande et processeur au microproces- seur et à la mémoire. Selon l'invention, l'organe de commande et proces- seur vidéo comporte plusieurs registres programmables de mémorisation, une première partie de l'ensemble des registres étant reliée au bus de données et une seconde partie à la fois au bus de données et au bus d'adresse. Selon une autre caractéristique de l'invention,cha- cun des registres de mémorisation est programmable par le microprocesseur afin qu'il conserve des caractères choisis d'adresse et de commande. Selon une autre caractéristique de l'invention, l'organe de commande et processeur vidéo a accès aux re- gistres de mémorisation par l'intermédiaire du bus d'adresse et du bus de données et il utilise les caractères conservés pour la restitution d'une information choisie dans la mé- moire en vue de son affichage sur le tube à rayons cathodi- ques de l'ensemble d'affichage. Elle concerne aussi un ensemble d'affichage vidéo qui comprend un générateur de caractères permettant l'affi- chage des caractères sur le tube à rayons cathodiques, et un circuit tampon de données monté entre la mémoire et le géné- rateur de caractères. Selon une autre caractéristique de l'invention, l'organe de commande et processeur vidéo retrouve l'in- formation dans la mémoire, la mémorise dans le circuit tam- pon de données et la transmet au générateur de caractères sans autre accès à la mémoire de l'organe de commande et processeur vidéo. D'autres caractéristiques et avantages de l'inven- tion ressortiront mieux de la description qui va suivre, fai- te enréférence aux dessins annexés sur lesquels - la figure l est un diagramme synoptique d'un en- semble d'affichage vidéo à tube à rayons cathodiques compre- nant un microprocesseur; - la figure 2 est un diagramme synoptique d'un or- gane de commande et processeur vidéo selon l'invention; - la figure 3 représente une opération d'adressage séquentiel de la mémoire, selon l'invention; - les figures 4 et 5 sont des schémas montrant com- ment la table de lignesest adressée selon l'invention; - les figures 6 et 7 sont des schémas illustrant la mémorisation des attributs selon l'invention; et - - la figure 8 est un diagramme synoptique d'un au- tre mode de réalisation d'organe de commande et processeur vidéo selon l'invention. La figure l est un diagramme synoptique d'un en- semble d'affichage vidéo à tube à rayons cathodiques mettant en oeuvre un microprocesseur, selon l'invention. L'informa- tion à afficher sur un tube à rayons cathodiques (non repré- senté) est conservée dans une mémoire vidéo 10 qui est une mémoire à accès direct à semi-conducteur disponible dans le commerce. Cette mémoire peut être adressée par un micro- processeur 20 ou par un organe 40 de commande et processeur vidéo. L'information peut être conservée dans la mémoire 10 par l'intermédiaire d'un clavier local (non représenté) ou- d'une source de données placée à distance. Le courant de données échangé avec la mémoire 10 est commandé par l'organe 40 par l'intermédiaire du bus 70 d'adresse et du bus 60 de données. Le microprocesseur 20 assure des fonctions de com- mande et de gestion de données du terminal vidéo, n'entrant pas dans le cadre de l'invention. Le circuit tampon 30 de données est un circuit de couplage monté entre la mémoire 10 et le générateur 50 de caractères et il est commandé par l'organe de commande et processeur vidéo. Le circuit tampon de données remplit un certain nombre de fonctions diverses comme décrit dans la suite, mais il assure essentiellement la mémorisation tem- poraire des données provenant de la mémoire en transmettant simultanément les données reçues antérieurement au générateur de caractères. Ce circuit tampon de données permet la récep- tion d'informations provenant de la mémoire à une vitesse inférieure à la vitesse nécessaire à la transmission des données au générateur de caractères et au tube à rayons ca- thodiques. Le rôle du générateur 50 de caractères est de transformer les données conservées dans la mémoire vidéo en caractères affichés sur le tube à rayons cathodiques. L'opé- ration est réaliséesous la commande de l'organe de commande et processeur vidéo. Un tube à tayons cathodiques peut être constamment rafraîchi afin qu'il donne une présentation vi- déo stable. En conséquence, l'organe de commande.doit adres- ser constamment la mémoire à accès direct vidéo et doit di- riger constamment des données provenant de cette mémoire vers le circuit tampon de données, et provenant de ce *der- nier vers le générateur de caractères afin que les données de l'écran soient constamment rafraîchies. Des générateurs de caractères sont bien connus dans la technique, l'un d'en- tre eux étant du type CRT 8002 de Standard Microsystems Corporation, Hauppauge, New-York. Le coeur de l'ensemble est constitué par l'organe de commande et processeur vidéo. Ce dispositif transmet tous les signaux nécessaires de synchronisation, par exemple de synchronisation verticale et horizontale et de suppression, nécessaires à la commande du tube à rayons cathodiques. En outre, cet organe de commande résout avantageusement les problèmesposés par les organes de commande vidéo du type con- nu et donne des caractéristiques vidéo très élaborées qu'on considère successivement dans la suite du présent mémoire. On considère d'abord le problème posé par la concurrence pour l'accès à la mémoire. L'organe de commande et processeur vidéo selon l'invention résout ce problème de concurrence de plusieurs manières différentes. L'une d'elles met en oeuvre le circuit tampon externe 30 de données représenté sur la figure 1. A la première ligne de balayage de chaque nouvelle ligne de don- nées, l'organe de commande 40 demande un accès direct à la mémoire au microprocesseur 20, par l'intermédiaire d'un bus d'accès direct à la mémoire. Le microprocesseur doit sa- tisfaire cette demande d'accès avant le début de l'affichage vidéo réel, habituellement en quelques microsecondes. Lors- que le microprocesseur donne cet accès, les adresses vidéo sont présentées à la mémoire 10 par l'organe de commande 40 pendant la première ligne de balayage de la ligne de données. Lorsque ces adresses sont présentées à la mémoire à la fré- quence des caractères d'affichage, les caractères lus dans la mémoire sont transmis au circuit tampon 30 de données et si- multanément au générateur 50 de caractères. A la fin de la première ligne de balayage de la ligne de données, toutes les données ont été écrites dans le circuit tampon de données. L'organe de commande rend alors la ligne de demande d'accès direct à la mémoire au microprocesseur et permet à celui-ci d'abord accès à la mémoire pour d'autres opérations. Pendant les N-i lignes de balayage restantes, N représentant le nombre de lignes de balayage par ligne de données, les données de rafraîchissement de l'écran sont lues dans le circuit tampon de données sans accès supplé- mentaire à la mémoire. Ceci permet un accès non limité à la mémoire pendant N-i lignes de balayage des N lignes de ba- layage au total par ligne de données. Dans un exemple d'af- fichage ayant 12 lignes de balayage par ligne de données, l'organe de commande 40 a donc accès à la mémoire pendant 8 % seulement du temps total disponible du cycle de la mé- moire, et le microprocesseur dispose des 92 % restants du cycle de la mémoire. Cette disposition permet une très bon- ne utilisation de la largeur de bande du bus, un débit important du microprocesseur et une faible charge de l'en- semble par l'organe de commande. Ce procédé de résolution du problème de la con- currence pour l'accès à la mémoire donne satisfaction dans de nombreuses applications. Cependant, dans certaines autres, il n'est pas souhaitable d'empêcher l'accès du microprocesseur à la mémoire pendant un temps aussi long qu'une ligne de ba- layage (50 à 60 microsecondes par exemple). Ce type de con- dition peut se présenter lorsque le microprocesseur travaille avec un périphérique à grande vitesse tel qu'un disque souple qui peut nécessiter un accès à la mémoire pour la lecture ou l'écriture de données aussi souvent qu'un octet toutes les 14 microsecondes. Dans ces conditions, l'organe de commande dispose d'un second procédé de résolution de ce problème de la concurrence pour l'accès à la mémoire. Ce second procédé met en oeuvre un logiciel de programmation de l'organe de commande par le microprocesseur afin qu'il fonctionne avec un circuit tampon externe (non représenté) correspondant à deux lignes. Un tel circuit tampon à deux lignes est pra- tiquement identique au circuit tampon 30 mais peut conserver deux lignes de données. Dans le cas d'un tel circuit tampon à deux lignes, la première ligne de données est chargée dans le circuit tampon pendant l'intervalle de retour vertical puis, alors que la première ligne est affichée, la seconde ligne est chargée dans l'autre moitié du circuit tampon. L'organe de commande dispose ainsi au total de N lignes de balayage (N étant le nombre de lignes de balayage par ligne de données) pour charger le contenu d'une ligne de données dans la seconde moitié du circuit tampon. L'organe de com- mande peut être programmé en mode d'accès direct à la mé- moire par salves avec retard si bien que le signal de de- mande d'accès direct à la mémoire n'est transmis que pendant M cycles, M étant un nombre programmable, et n'ayant pas d'action pendant P cycles, P étant aussi un nombre program- mable, afin que d'autres dispositifs puissent avoir accès au bus et à la mémoire pendant ces P intervalles. Un exemple d'opération correspond à des salves d'accès direct à la mé- moire de 16 cycles de caractères, suivis par un retard d'ac- cès de 8 cycles avant une salve suivante de 16 cycles. Un ensemble qui travaille avec une durée de caractère de 500 ns permet ainsi un accès externe par un dispositif tel qu'une mémoire à disque souple, aussi souvent que toutes les 8 mi- crosecondes. Comme les cycles d'accès direct à la mémoire ont lieu par salves et non pas de façon continue, le charge- ment de la ligne de données dans le circuit tampon nécessite plus d'une ligne de balayage. Cependant, comme le fonctionne- ment est assuré alors avec un circuit tampon à deux lignes de données, l'organe de commande dispose de N lignes de balaya- ge au maximum pour terminer le chargement. En plus des procédés décrits précédemment pour la résolution du problème posé par la concurrence pour l'accès à la mémoire, mettant en oeuvre un circuit tampon à une seule ou à deux lignes de données, l'organe de commande et proces- seur vidéo peut aussi fonctionner sans aucun circuit tampon. Dans ce mode de fonctionnement, il présente des adresses à la mémoire toutes les lignes de balayage. Cependant, le microprocesseur peut intervenir pour lire et écrire rapide- ment dans la mémoire et un utilisateur doit donc prendre des précautions lorsqu'un circuit tampon n'est pas utilisé. Bien que l'élimination du circuit tampon permette une réduction des circuits, cette façon de procéder limite le débit de l'ensemble, à moins que des circuits supplémentaires soient utilisés, par exemple une mémoire multiphase, ou à moins qu'un clignotement occasionnel de l'écran ou une perte de données vidéo soit acceptable au cours du fonctionnement. Le cligno- tement de l'affichage ou la perte de données vidéo apparaît parce que, lorsque le microprocesseur a accès à la mémoire en même temps que l'organe de commande veut y avoir accès, l'écran présente un défaut temporaire de rafraîchissement lorsque le microprocesseur a la priorité. Un autre procédé comprend la limitation de l'interruption du rafraîchisse- ment de l'affichage lors de l'utilisation d'une configura- tion sans circuit tampon, l'accès du microprocesseur à la mémoire étant réduit (par des circuits extérieurs) aux seuls moments o l'organe de commande n'a pas accès à la mémoire, c'est-à-dire pendant les intervalles de synchronisation ho- rizontale et verticale. Cependant, ce procédé réduit le débit. On considère maintenant les procédés permettant l'adressage souple des circuits et du logiciel. L'organe de commande et processeur vidéo transmet les adresses à la mémoire 10 afin que les données vidéo soient lues dans la mémoire et permettent le rafraîchissement de l'affichage. Plusieurs procédés d'adressage de la mémoire sont mis en oeuvre et donnent une grande souplesse au réali- sateur de l'ensemble, à la fois pour les circuits matériels et pour le logiciel. Ces procédés mettent en oeuvre un adressage séquentiel et un adressage par ligne. La figure 2 représente les registres et les bus internes de l'organe de commande et processeur vidéo. Plu- sieurs registres 201, 202,... programmables par l'utilisateur sont destinés à contenir certaines informations de commande et d'adresse décrites plus en détail dans la suite du présent mémoire. Chaque registre peut être préréglé à un état prédé- terminé par le microprocesseur, lorsqu'il est convenablement programmé par l'utilisateur du terminal. Les registres sont avantageusement disposés de manière qu'ils soient accessibles à partir du bus 210 de données et du bus 206 d'adresse. Un circuit 203 assure la synchronisation et la commande de l'or- gane de commande et processeur vidéo mais ce circuit n'en- tre pas dans le cadre de l'invention et on ne le décrit donc pas en détail. On considère maintenant-le mode d'adressage sé- quentiel vidéo; un registre gauche 205 d'adresse de début est programmé afin qu'il contienne l'adresse dans la mémoire du premier caractère de la première ligne de données sur l'écran. En mode séquentiel, les caractères sont lus succes- sivement dans la mémoire à partir du caractère qui se trouve à l'adresse donnée par le registre 205. Lorsque l'affichage est par exemple à 25 lignes de 80 caractères, il y a 2000 caractères sur l'écran. Si l'adresse du registre 205 est 1000, l'adresse du dernier caractère dans le dernier re- gistre est 2999, c'est-à-dire que les caractères occupent des emplacements successifs dans la mémoire. La figure 3 représente un adressage séquentiel de la mémoire. L'adresse 24916S1 du registre 205 est transmise à la mémoire par le bus 206 d'adresse et, à la suite de l'adresse, des mots de données sont extraits de la mémoire et transmis au générateur de caractères puis affichés. Un registre-compteur 208 fait progresser l'adresse du registre 205 chaque fois que des données sont reçues en provenance de la mémoire afin que les données soient prélevées successivement à des emplace- *ments consécutifs de la mémoire. Le registre 205 d'adresse de début, un second re- gistre 213 appelé registre I d'adresse auxiliaire et un troi- sième registre 212 appelé registre I de rupture de séquence, sont utilisés afin que l'adressage de la mémoire d'affichage puisse être décalé ou déporté et puisse permettre la ré- ception de nouvelles données dans la mémoires provenant-par exemple d'une ligne de communication et destinées à apparaî- tre à la partie inférieure de l'écran, les anciennes données étant repoussées à la partie supérieure de l'écran. A cet effet, le registre I d'adresse auxiliaire est mis à l'adres- se du début de la mémoire, c'est-à-dire au début de la mé- moire d'affichage, à l'endroit o l'information reçue doit être conservée, et le registre 205 est réglée à l'adresse du début de la ligne qui doit être affichée en haut de la page d'affichage. Le registre I de rupture de séquence pro- voque la commutation de la commande d'adresse du registre 205 au registre I d'adresse auxiliaire,à la ligne désignée par le registre I de rupture de séquence. Ainsi, dans le cas d'un affichage à 24 lignes, lorsque l'affichage doit être déplacé d'une ligne, le registre I de rupture de sé- quence doit être réglé à 23 et le registre 205 à l'adresse qui correspond normalement à la seconde ligne de données affichées. Dans ce mode de fonctionnement, lorsque la comman- de d'adresse se trouve dans le registre 205, l'adresse pro- gresse sous la commande du registre-compteur 209 comme dé- crit précédemment afin que l'accès à la mémoire soit sé quentiel. Lorsque la commande d'adresse est transmise au registre I d'adresse auxiliaire, l'adresse conservée dans cette mémoire progresse sous la commande du registre-compteur 211 de la même manière que le registre 208 fait progresser l'adresse de la mémoire. Les adresses sont transférées à la mémoire par l'intermédiaire du bus 206 d'adresse et la com- mande revient au registre 205 lorsqu'une nouvelle page d'af- fichage commence. Le mode de fonctionnement séquentiel peut encore être amélioré. En plus de l'opération décrite précédemment de décalage par exemple d'une ligne, une ligne d'état peut être maintenue sous une forme constante à la partie infé- rieure ou à la partie supérieurede l'écran alors que les autres lignes se déplacent. L'opération peut être réalisée à l'aide d'un registre 202 appelé registre II d'adresse auxiliaire, et d'un registre 214 appelé registre II de rup- ture de séquence. Lorsque ce dernier registre est réglé au numéro de la dernière ligne de données (par exemple 24 dans un affichage à 25 lignes) et lorsque le registre II d'adresse auxiliaire est réglé à l'emplacement de la mé- moire qui correspond aux données à afficher dans la ligne d'état, la commande d'adresse est transférée au registre II d'adresse auxiliaire lorsque la dernière ligne de données doit être affichée. En conséquence, la ligne d'état est lue et introduite dans la position de la dernière ligne de don- nées sur l'écran. Le mode séquentiel de fonctionnement de l'organe de commande et processeur vidéo comme décrit pré- cédemment donne à l'utilisateur d'appareils de bas et-de milieu de gamme, un procédé perfectionné de réalisation d'un affichage de données séquentielles, pouvant être mis en oeuvre facilement à l'aide du logiciel ou des circuits. En mode d'adressage vidéo commandé par une table de lignes, chaque ligne de données destinée à afficher est désignée par sa propre adresse. De cette manière, l'utilisa- teur a une plus grande souplesse que dans l'adressage sé- quentiel puisque les lignes de caractères sont enchaînées par des pointeurs au lieu de se trouver dans des emplace- ments de mémoire séquentielle. Les opérations telles que l'introduction, la suppression et la reproduction d'une ligne de données sont facilement réalisées par manipulation de pointeurs à la place de lignes entières. La table de don- nées peut être conservée en mémoire en format contigu ou sous forme de listes chaînées. Ces deux formats sont décrits dans la suite du présent mémoire, en référence aux figures 4 et 5 respectivement. Dans le mode piloté par une table de lignes, chaque ligne de données qui se trouve sur l'écran a sa propre adresse de début, et il existe dans la mémoire une table de lignes qui contient l'adresse de début de chaque ligne de données. Dans le cas d'un affichage à 24 lignes de données par exemple, la table de lignes comprend 24 adresses à 14 bits indiquant cha- cune la position du premiercaractère de la ligne correspon- dante de données. En format à table de lignes contiguës représenté sur la figure 4, les adresses de la table de li- gnes sont conservées à des emplacements contigus, c'est-a- dire successifs de la mémoire et l'utilisateur programme le registre 205 d'adresse de début avec l'adresse du début de la table de lignes contigiles. Lorsque l'organe de commande et processeur vidéo est prêt pour le début de l'affichage d'une nouvelle ligne de données, l'adresse dans le registre 205 est transmise à la mémoire par l'intermédiaire du bus 206 d'adresse et la première moitié de la première adresse de ligne (adresse A sur la figure 4) est restituée et conservée dans le re- gistre 201 par l'intermédiaire du bus 210 de données. La seconde moitié de l'adresse de la première ligne (adresse B sur la figure 4) est ensuite retrouvée et conservée dans le registre 201 par l'intermédiaire du bus 200. L'adresse complet de la première ligne est alors transmise à la mé- moire vidéo par l'intermédiaire du registre-compteur 211 d'adresse vidéo et du bus 206 d'adresse et en conséquence, le premier caractère de la première ligne de données (voir figure 4) est retiré de la mémoire et affiché. Le registre- compteur 211 fait progresser l'adresse afin qu'il retire successivement de la mémoire les 80 caractères de la pre- mière ligne de données. Lorsque cette dernière a été affichée, l'adresse de début de la seconde ligne de données est extrai te, conservée dans le registre 201 et donne lieu au processus décrit pour l'affichage de la seconde ligne. Les lignes res- tantes présentées par l'écran sont affichées de la même ma- nière. L'utilisation de ce mode de fonctionnement piloté par une table de lignes présente de nombreux avantages. Par exemple, lorsqu'une ligne de données doit être effacée, le réalisateur du logiciel a simplement à changer le pointeur de table de lignes dans la mémoire pour cette ligne parti- culière, en le dirigeant sur une ligne de données de la mé- moire qui a été effacée. Si tout l'affichage doit être effa- cé, une seule ligne de données peut être indiquée dans la mémoire par chaque adresse de ligne de la table de lignes. Dans une variante par exemple, une nouvelle ligne peut être introduite dans l'affichage et la ligne inférieure peut être chassée par déplacement de tous les pointeurs d'un cran vers le bas dans la mémoire après la ligne à introduire, et par introduction du nouveau pointeur de ligne dans l'es- pace ouvert dans-la table de lignes. Ainsi, dans ce mode de fonctionnement, l'effacement de l'affichage ne nécessite pas le déplacement de tout l'affichage de données mais la seule manipulation de la table de lignes elle-même. Dans le format à listes chaînées de la table de lignes de la figure 5, le registre 205 d'adresse de début indique l'adresse dans la mémoire qui correspond au début du processus complet d'adressage. A la fin de la première ligne de données, les deux premiers octets lus par l'organe de commande constituent l'adresse de la ligne suivante de données. Cette adresse est conservée à l'intérieur. Le troisième octet lu successivement représente le premier caractère à afficher pour la ligne considéréede données. Le reste de la ligne est lu successivement. Chaque ligne successive de données contient l'adresse de départ de la ligne suivante de données. Dans de nombreux types d'orga- nisations, ce procédé d'adressage de la mémoire permet une réalisation simple du logiciel, puisque l'introduction d'une ligne de données par exemple ne nécessite la manipulation que des adresses de table de lignes correspondant à la li- gne qui se trouve au-dessus de la ligne à introduire et à la ligne à introduire elle-même. Aucune autre adresse de table de lignes n'a à être modifiée, puisque ces adresses sont déjà associées à des données à afficher. Dans les deux formats à table de lignes contigUes et à table à listes chaînées, un perfectionnement supplé- mentaire peut être utilisé, par utilisation du registre I de rupture séquentielle et du registre I d'adresse auxiliai- re qui permettent la détermination d'une ou plusieurs lignes d'état à la partie supérieure ou à la partie inférieure de l'écran. Par exemple, dans un affichage à 25 lignes de don- nées, lorsque le registre I de rupture séquentielle est pla- cé à 21, la commande d'adresse est commutée au registre I d'adresse auxiliaire à la 22ème ligne de données. Toutes les lignes de données suivant la 2làme sont adressées suc- cessivement à l'aide du registre I d'adresse auxiliaire. Ce perfectionnement permet une commutation et un affichage rapides par mise en oeuvre du logiciel. Il est particulière- ment utile lorsque les données à transmettre à un dispositif d'affichage ou à un terminal, par une source de données à grande vitesse ayant un ordre hiérarchique élevé, doivent être immédiatement affichées sur l'écran. On considère maintenant le problème posé par la formation d'un affichage divisé verticalement. La division verticale de l'affichage assure la formation de plusieurs colonnes verticales séparées d'in- formations. La division la plus simple est une simple di- vision médiane de l'écran, avec un même nombre de carac- tères de part et d'autre. Ce fonctionnement avec division de l'écran peut être commandé entièrement par le logiciel, par manipulation de tout le contenu de l'écran, chaque fois qu'une remise à jour d'une partie ou d'une autre de l'écran divisé est voulue. Cependant, l'utilisation de circuits ma- térielsest essentielle pour obtenir une division efficace de l'écran avec une complexité minimale du logiciel et avec un débit maximal dans l'ensemble. Un affichage à simple divi- sion verticale en deux parties, utile pour des opérations telles que la traduction côte à côte en deux langues et l'affichage de colonnes de journaux, peut être obtenu à l'aide d'un registre 200 de limite de parties d'affichage, d'un registre 207 d'adresse de début droit et d'un registre 205 d'adresse de début gauche, comme indiqué sur la figure 2. Lors du fonctionnement, le registre de limite de parties d'affichage donne l'emplacement de l'adresse de la sépara- tion. Par exemple, dans un écran à 80 caractères, les carac- tères sont numérotés de 0 à 79. Si le registre de limite est mis à 40, le transfert de la commande du registre 205 d'adresse de début gauche au registre 207 d'adresse de dé- but droit a lieu au 40ème caractère. De cette manière, des opérations séparées peuvent être exécutées sur les données à gauche de l'écran et à droite de celui-ci sans modification des données sur l'ensemble de l'écran. L'incorporation de registres d'adresse auxiliaire suffisant à droite et à gau- che et de registres de rupture gauche et droit permet le traitement des opérations de division de l'écran sous forme de deux entités séparées, c'est-à-dire comme s'il s'agaissait de deux affichages séparés. Le registre-compteur 209 fonc- tionne de la même manière que le registre-compteur 208 et fait progresser l'adresse contenue par le registre 207 lors- que la commande a été transmise au registre d'adresse de dé- but droit. Le nombre de colonnes ou d'affichages verticaux qui peut être réalisé n'est limité que par le nombre de re- gistres incorporés. Par exemple, on peut obtenir quatre par- ties verticales à l'aide de trois registres de limite. Lors- que chaque nouvelle limite est rencontrée, la commande d'adresse est transmise d'un registre d'adresse de début au suivant. Des registres d'adresses auxiliaires doivent évi- demment être associés à chaque nouvelle partie de l'affi- chage. On considère maintenant le problème posé par le déplacement régulier de l'affichage. Il est souvent souhaitable que des données déjà affichées remontent progressivement vers le haut de l'écran alors que de nouvelles données sont introduites régulièrement à la partie inférieure de l'écran afin que le contact psycho- logique avec l'ensemble à tube à rayons cathodiques soit bon. Cette caractéristique diffère du procédé de déplacement par sauts dans lequel toute une ligne pénètre instantanément à la partie inférieure de l'affichage et une ligne entière est supprimée à la partie supérieure. Le déplacement régu- lier nécessite un déplacement de l'affichage ligne par ligne de balayage. La vitesse de déplacement des données et sa régularité relative peuvent être réglées par variation du nombre de lignes d'affichage par image qui sont retirées de l'écran. En outre, la région de déplacement régulier peut être limitée à un emplacement de l'écran afin que ce dépla- cement soit régulier. Ainsi, une opération de déplacement régulier dans une partie de page peut être utilisée de ma- nière que des lignes qui se trouvent au-dessus et au-dessous de la région qui se déplace restent constantes alors que les lignes de données de la région qui se déplace continuent à se déplacer. Deux registres programmables par l'utilisateur per- mettent à ce dernier de déterminer la ligne de données de dé- but et de fin pour cette opération de déplacement régulier, comme indiqué sur la figure 2. Le registre 216 de lignes de données de début indique des lignes de données de début alors que le registre II de rupture successif est utilisé pour l'indication de la ligne de données finale. L'intervention du programme est nécessaire à chaque image. L'organe de com- mande des processeurs vidéo fixe une interruption pendant l'intervalle de retour vertical pour la demande de traitement par le microprocesseur. Ce dernier charge alors un registre 204 de déplacement régulier du numéro de ligne de balayage, indiquant l'effet de la ligne initiale de balayage de la première ligne de données de la zone qui se déplace régu- lièrement. Une vitesse dc déplacement régulier d'une ligne de balayage par image peut être obtenue par programmation du registre 204 avec un décalage nul dans la première image, égal à un dans la seconde, à deux dans la troisième et ainsi de suite, jusqu'au déplacement de N lignes de balayage, N représentant le nombre de lignes de balayage par ligne de données. A ce moment, le déplacement de la zone mobile a porté sur une ligne entière de données et la table de lignes doit alors alors être manipulée afin que chacune des lignes restantes de données remonte d'une position. Le registre de déplacement régulier est ramené à 0 et la séquence peut re- commencer lorsque d'autres lignes de données doivent être déplacées. Lorsque le registre de déplacement régulier ré- gresse au lieu de progresser, on peut obtenir un déplace- ment régulier vers le bas sur l'écran.. Comme un déplacement régulier peut faire apparaître temporairement une ligne par- tielle de données contenant une seule ligne de balayage, le chargement dans le registre tampon 30 (figure 1) des lignes de début et de fin pendant une opération de déplace- ment régulier doit avoir lieu en une seule ligne de balayage. Cette condition a priorité sur les demandes de transmission par salves et retardées d'accès direct programmable à la mémoire, comme décrit précédemment. On considère maintenant les problèmes posés par l'assemblage des attributs. La création d'attributs vidéo tels qu'un affichage en sens inverse, un clignotement, la formation d'un souligne- ment, un renforcement ou d'autres modes qui doivent changer caractère par caractère, nécessite dans les appareils connus, l'association à chaque caractère à afficher d'un bit pour chaque attribut indépendant. Habituellement, on doit utili- ser une mémoire vidéo dont la largeur de bit est égale au nombre de bits nécessaires pour chaque caractère. Par exem- ple, lors de l'affichage d'un caractère ASTII avec les at- tributs de clignotement, d'affichage vidéo inverse, de sou- lignement et d'une ou deux couleurs, nécessite il bits par caractère. Il y a 7 bits pour la détermination du caractère R4916S1 et 4 supplémentaires pour les quatre attributs indépendants soit 11 bits au total. Lorsqu'on utilise un microprocesseur courant à 8 bits dans l'ensemble d'affichage, le chargement et la manipulation d'une mémoire avec des données supérieures à 8 bits posent des problèmes gênants et peuvent nécessiter des circuits supplémentaires. Les modes d'assemblage d'attri- buts assurés par l'organe de commande et processeur vidéo résolvent ce problème en permettant la mémorisation des données et des attributs dans une mémoire à 8 bits, et l'as- semblage des attributs avec le caractère juste avant l'affi- chage des données. Deux modes d'assemblage des attributs sont possi- bles et sont représentés dans le mode de réalisation de la figure 8. Dans le premier mode, les données et les attributs sont conservés à des emplacements d'octets consécutifs dans la mémoire comme indiqué sur la figure 6. Lorsque l'organe de commande lit l'emplacement adressé dans la mémoire (par mise en oeuvre de la table de ligne ou par adressage sé- quentiel), le premier octet lu dans la mémoire est consi- déré comme un attribut qui est chargé dans une mémoire in- terne d'attributs (non représentée) de l'organe de commande du processeur vidéo. Ce dernier déplace alors le second oc- tet dans la mémoire. Cet octet constitue l'octet de carac- tère associé à l'octet d'attribut déjà ju. Pendant le même cycle d'horloge, l'organe de commande isole son bus du bus de l'ensemble du système par l'intermédiaire d'un circuit tampon externe 800 à trois états comme indiqué sur la fi- gure 8 et il transmet l'octet d'attribut contenu dans la bascule d'attribut à un circuit tampon 801 de données à deux lignes. Simultanément, le bus de données principales qui contient l'octet du caractère ASCII est relié à un second circuit tampon 802 de données à deux lignes. Les deux octets d'information (attribut et caractère) sont chargés dans les circuits tampons respectifs de deux lignes. L'organe de commande a alors accès à l'attribut et à l'octet de données suivants et les charge dans les circuits tampons. L'opéra- tion se poursuit jusqu'à ce que toute la ligne de données ait été lue dans la mémoire et soit assemblée dans les deux circuits tampons 801 et 802. A la limite suivante de ligne de données, lorsque la ligne de données ainsi assemblée doit être affichée, les données et les attributs sont lus simultanément dans les deux circuits tampons et forment un ensemble complet à 16 bits de données avec les divers attributs associés. En fait, deux octets ayant des positions successives dans la mémoire ont été assemblés et transmis au générateur de caractères et à l'affichage vidéo sous forme d'un seul mot de 16 bits. Ce mode de fonctionnement nécessite l'association de deux octets à chaque caractère. Ainsi, pour un affichage ayant une largeur de 80 caractères, l'adressage de chaque ligne de données nécessite 160 octets. Dans le second mode d'assemblage d'attributs, les octets d'attributs sont placés dans une mémoire à 8 bits seulement uniquement lorsque les attributs doivent changer dans l'affichage comme indiqué sur la figure 7. Ainsi, lors- qu'un mot complet doit être souligné par exemple, un octet d'attribut apparaît dans la mémoire juste avant les octets du mot de données. Cet octet d'attribut contient les attri- buts convenant au mot suivant. Cependant, il peut contenir seulement 7 bits puisque le bit le plus significatif est utilisé dans un but particulier comme décrit dans la suite. Les octets de données ASCII peuvent alors suivre cet octet d'attribut dans la mémoire. Lors du fonctionnement, l'organe de commande lit chaque octet conservé dans la mémoire et il détermine s'il s'agit d'un octet d'attribut ou de données d'après le bit le plus significatif. Lorsque ce dernier est un 1, il indi- que un octet d'attribut. Ce dernier est alors mis dans la bascule interne de l'attribut de l'organe de commande et y reste jusqu'à ce qu'un nouvel octet d'attribut soit ob- tenu. Chaque fois qu'un octet de données est lu dans la mémoire comme indiqué par un bit le plus significatif égal à 0, l'octet de données et l'attribut associé présents dans la bascule sont placés dans les circuits tampons de données 801, 802 à deux lignes. Ce mode nécessite que le processeur réserve uniquement l'espace de mémoire nécessaire au nombre maximal d'attributs prévu par ligne de données. Il y a en général moins d'espace occupé dans la mémoire que dans le mode d'assemblage d'attributs décrit précédemment. On considère maintenant le problème posé par les lignes de données ayant une double hauteur et une double largeur. On utilise les registres 201 et 202 comme registres d'adresse gauche et droit respectivement dans ce mode de fonctionnement. Les deux registres sont du type à 16 bits contenant une adresse de mémoire à 14 bits pour la table de lignes (décrite précédemment) et de bits pour les attributs de lignes. Ces deux bits d'attributs sont codés de la manière suivante 00 = haute et largeur normales 01 = hauteur normale double largeur = double hauteur double largeur-haut 11 = double hauteur double largeur-bas Dans un affichage divisé verticalement, les registres 201 et 202 doivent contenir les mêmes bits de hauteur et de lar- geur. Lorsqu'une ligne à double hauteur est indiquée par un code "10" ou "11", l'organe de commande fait avancer les signaux des lignes de balayage pour une ligne de balayage horizontale sur deux et non à chacune. De cette manière, la même information de ligne de balayage est lue dans la mé- moire pendant deux lignes de balayage successives si bien que la hauteur de la ligne de données est doublée en fait. Un organe de commande d'adresse interne de l'organe de com- mande et processeur vidéo continue à adresser la mémoire com- me s'il adressait deux lignes de données ordinaires dans la mémoire et ainsi, pour une ligne de double hauteur, une se- conde adresse de mémoire de table de ligne est lue dans la moitié inférieure de la ligne de données. Le microprocesseur doit assurer la direction du pointeur de la moitié inférieure sur les données de mémoire représentées pour la moitié supé- rieure de la. ligne de données. Dans le mode d'adressage sé- quentiel, les données de la moitié supérieure de la ligne doivent être transmises en double au cours de la lecture de la moitié inférieure de la ligne de données dans la mémoire. Habituellement, la moitié inférieure de la ligne de double hauteur est lue juste après la moitié supérieure de la ligne de double hauteur afin que la ligne corresponde réellement à une double hauteur. Cependant,certains réalisateurs peu- vent souhaiter obtenir des essais spéciaux par lecture uni- quement de la moitié supérieure ou de la moitié inférieure de la ligne de données. L'opération peut être réalisée uni- quement avec une configuration à registres tampons à deux lignes de données comme décrit précédemment. Dans ce cas, un dessin de bit "10" ou "11" peut être placé dans les po- sitions des bits les plus significatifs du registre de pointeur de table de lignes pour la lecture de la moitié supérieure ou inférieure d'une ligne de double hauteur res- pectivement. Le mode d'affichage de lignes de données à double largeur est indiqué par le code "01", "10" ou "11", dans les positions des bits les plus significatifs du pointeur de ta- ble lues pour chaque ligne de données. Dans chaque ligne de double largeur, l'adresse transmise à la mémoire est changée à un caractère pour deux si bien que les mêmes données sont adressées pendant deux durées consécutives de caractères. Ces données sont alors présentées (à l'aide d'un circuit tampon ou non) au générateur externe de caractères vidéo qui a pour tâche d'afficher chaque point sur l'écran sous forme d'un point de double largeur si bien que le caractère affiché occupe deux positions d'un caractère de largeur nor- male. Un signal convenable de double largeur peut être con- servé dans un basculeur externe et utilisé pour la prépara- tion du générateur de caractères au traitement de tels caractères de largeur double. Il faut noter que, comme les caractères ont une double largeur, une ligne de données qui a normalement une largeur de 80 caractères n'affiche que les premiers caractères dans cet espace d'adressage de la mémoire. Le reste n'est pas obtenu par l'organe de commande. Il est bien entendu que l'invention n'a été dé- crite et représentée qu'à titre d'exemple préférentiel et qu'on pourra apporter toute équivalence technique dans ses éléments constitutifs sans pour autant sortir de son cadre. REVENDICATIONS 1. Ensemble d'affichage vidéo à tube à rayons catho- diques, du type qui comprend un microprocesseur (20), une mémoire (10), un organe de commande et processeur vidéo (40), un bus de données reliant l'organe de commande au micro- procsseur et à la mémoire, et un bus d'adresse reliant l'or- gane de commande au microprocesseur et à la mémoire, ledit ensemble étant caractérisé en ce que l'organe de commande et processeur vidéo (40) comprend plusieurs registres programmables de mémorisation (200, 201, 202, 204,...) dont une première partie (200, 204, ) est reliée au bus de données (210) et dont une seconde partie (201, 202,...) est reliée à la fois au bus de données (210) et au bus d'adresse (206), chacun des registres pou- vant être programmé par le microprocesseur (20) afin qu'il conserve des caractères choisis d'adresse et des caractères choisis de commande, et un dispositif destiné à accéder auxregistres pro- grammables par l'intermédiaire du bus d'adresse (206) et du bus de données (210) et à utiliser les caractères d'adresse choisis et les caractères de commande choisis conservés dans le registre afin que l'information de la mémoire (20) soit restituée et affichée sur le tube à rayons cathodiques de l'ensemble d'affichage vidéo. 2. Ensemble selon la revendication 1, caractérisé en ce qu'il comporte en outre un générateur (50) de caractères commandé par l'organe de commande et processeur vidéo (40), ce générateur de caractères étant destiné à afficher les caractères sur le tube à rayons cathodiques en fonction de l'information retirée de la mémoire (10). 3. Ensemble selon la revendication 2, caractérisé en ce que chaque ligne de-données affichée sur le tube à rayons cathodiques comprend N lignes d'affichage de données, l'or- gane de commande et processeur vidéo (40) comprenant en outre un dispositif destiné à retirer de la mémoire une ligne complète de données pendant l'intervalle d'une pre- mière ligne de balayage et conserver cette ligne complète dans un circuit tampon de données (30), et un dispositif destiné à transmettre la ligne complète de données au géné- rateur de caractères (50) pendant les intervalles des N-1 lignes restantes de balayage. 4. Ensemble selon la revendication 3, caractérisé en ce que l'organe de commande et processeur vidéo (40) comprend en outre un dispositif destiné à restituer une première li- gne de données retirée de la mémoire pendant un intervalle de retour vertical, et à mémoriser la première ligne dans le circuit tampon de données (30), un dispositif destiné à transmettre la première ligne de données au générateur de caractères (50) pendant un premier intervalle de ligne de données, et un dispositif destiné à retirer une seconde ligne de données de la mémoire (10) et à la conserver dans le circuit tampon de données (30) pendant l'intervalle de la première ligne de données. 5. Ensemble selon la revendication 4, caractérisé en ce que le premier et le second dispositif destinés retirer des lignes de données comprennent un dispositif destiné à re- tirer les lignes de données de la mémoire suivant une sé- quence continue et répétitive, cette séquence comprenant un intervalle de restitution prédéterminée suivi par un re- tard prédéterminé, l'intervalle de restitution étant infé- rieur au temps nécessaire à la restitution d'une ligne complète de données.