Brevet FR2632091A1 — publié le 19891201

La présente invention est du domaine de l'informatique et a plus particulièrement pour objet un procédé de memorisation électronique de donnees au moyen de cellules a deux etats et ses moyens de mise en oeuvre. La plupart des mémoires électroniques connues a' ce jour sont structurées avec un système d'adressage assurant les transferts de l'information dans des cellules mémoires et mettent en oeuvre des registres dont le cycle assure le transfert de chaque bit en deux temps. Or les memoires statiques nécessitent un rafraîchissement périodique des informations qu'elles contiennent et cette regeneration engendre une surconsommation de courant ainsi qu'une interruption du cycle de consultation de m9'moires.Pour connaître un art antérieur du domaine de l'invention, on pourra avantageusement se rapporter a' la publication : US 4.321.694. En considération des inconvénients de l'art antérieur, la présente invention a pour but de proposer- un procédé de mémorisation électronique de données présentant une integration maximale, permettant un stockage a' accès séquentiel d'informations avec un rafraîchissement continu et automatique des cellules ne nécessitant ni interruption du cycle de consultation des mémoires ni surconsommation de courant. Selon la présente invention, un procédé de mémorisation électronique de données au moyen de cellules å deux états organisées en modules constitués d'une colonne a' n niveau de cellules mémoires est caractérisé d'une manière genérale en ce que, successivement pour les cellules de deux colonnes voisines et pour ensemble des colonnes organisées de façon circulaire, on recopie l'état de la cellule (C) d'une colonne dans la cellule correspondante, c'est à dire ayant le même niveau, de la colonne directement voisine (C+1) préalablement mise a' l'état "zéro" ; on compare l'état de chacune des cellules en correspondance, puis- si la comparaison revole une analogie totale, bit à bit de même niveau des deux colonnes, on désactive toutes les cellules de la colonne (C), puis on valide les portes permettant le passage de l'information se trouvant dans la cellule (C-l) vers la cellule (C) afin de mettre chaque cellule mémoire de (C) h l'image de celle de (C-1). La présente invention a aussi pour objet un dispositif pour la mise en oeuvre du procédé permettant d'assurer la synchronisation de trois operations, ce dispositif peut être soit un compteur, soit un registre à décalage, la première opération ayant pour fonction la validation des portes pour le passage de l'information, la seconde le contrôle du contenu de la cellule d'arrivée de l'information tandis que la troisième désactive les cellules de la colonne de départ dont les informations viennent d'être transitées. Selon une caractéristique principale, lors de l'opération de comparaison des cellules de même niveau de deux colonnes successives le procédé prévoit l'émission d'un signal indiquant la concordance des etats de deux cellules (C) et (ciel) en correspondance, puis le pilote charge de désactiver les cellules de la colonne de départ est valide, un autre circuit contrôlant la mise a l'état "O" de toutes les cellules est mis en oeuvre générant un autre signal, et activant le second pilote qui validera les portes assurant la transition de (C-1) vers (C). Avantageusement pour chaque module comprenant une colonne de n niveaux de cellules (n : fixé) et un registre à décalage, ou compteur, le dispositif incorpore un circuit de détection de panne réalisé au moyen d'un pont programmable electroniquement incluant une fonction d'erreur permettant d'éliminer un éventuel module défaillant. Cette détection aura lieu si l'operation de transit ne s'effectue pas après une pèriode minimale. Ce temps peut correspondre au temps que chaque cellule nécessite avant la détérioration du niveau d'information. Selon une seconde caractéristique principale le dispositif incorpore des moyens dits interfaces, pour lléchange d'informations soit en lecture et en écriture, en série et en parallèle, a' différents niveaux (par une programmation approprié des pilotes) et sur différentes colonnes a' la fois sans pour cela affecter le temps du cycle global, ce qui a pour résultat d'autoriser des fonctions complèmentaires diverses (contrôle et validité de l'information qui a transitée). Avantageusement les interfaces d'change utilisent comme moyen d'indexage l'un des éléments du groupe d'éléments comprenant un indexage par le pilote (indexage extérieur), un indexage par un bit et un indexage par un mot de la mémoire en position M (n,c), ce qui précise l'instant de cet change, et en ce que, la concordance avec l'index choisi étant établi, le transfert de l'information est autorisé. Avantageusement encore, chaque module est constitué de deux parties comportant chacune des moyens de défilement independants, chaque partie tant constituée d'un ensemble de cellules mémoires destinées pour les unes a' contenir des informations, pour les autres à contenir un code correspondant à un element d'indexage de telle sorte que la seconde partie pourra être stoppée dans son défilement alors que le première continuera à défiler. Avantageusement encore une partie sera utilisée pour contenir des macro-instructions et l'autre les instructions dites micro-instructions que met en oeuvre la macro-instruction lors de son exécution, le dispositif mettant en oeuvre un système qui détermine par coincidence avec les index situés sur les deux parties du module l'endroit où débute la succession de micro-instructions correspondantes, la première partie pourra ainsi défiler tant qu'il y aura.coincidence d'index avec la seconde partie restant fixe. On notera que chaque macro-instruction peut aussi faire appel pour son exécution à un ensemble de sous-programmes qui sont indexés par une instruction indiquant le nombre de saut àeffectuer. La presente invention sera mieux comprise et des détails en relevant apparaîtront à la description qui va être faite d'une forme particulière de réalisation, en relation avec les figures de la planche unique annexée dans laquelle - La fig.l est un synoptique de principe montrant un fragment du dispositif, - La fig.2 est un diagramme illustrant la succession des phases du processus de transfert des informations. - La fig. 3 est une reprsenta- tion partielle schématique du dispositif par lequel, est réalisé le transfert des informations d'une cellule mémoire à une autre, - La fig. 4 est une représentation partielle schématique de la disposition des deux pilotes PO, P1 et des signaux de contrôle. - La fig. 5 est une illustration du dispositif mettant en oeuvre des modules en deux parties. - La fig. 6 est un mode de réalisation particulier de la fonction de comparaison utilisée dans le dispositif de l'invention et la fig.7 de la fonction d'éffacement. La fig. 8 est une représentation schématique du pont programmable utilisé dans l'invention. La fig. 9 est une représentation schématique illustrant l'application du procéda selon l'invention à un système de gestion de données. La fig. 10 est une illustration du spot de balayage d'un tube à lumiphore, parcourant ltécran en spirale rectangulaire. fig. -11 est une représentation schématique illustrant l'utilisation du procédé selon l'invention à la gestion d'un écran selon la fig. 10. Sur la fig.l on a représenté deux modules 5 de cellules mémoires 9 à deux étants, la cellule mémoire élémentaire étant indépendante de la technologie employée. Chaque colonne de cellules est divisée afin de constituer des modules 5 comportant un nombre défini de cellules, un registre à décalage 4 et autant de portes logiques 8 ayant pour fonction "et" qu'il y a de cellules dans le module. Chaque registre à décalage 4 comporte au moins deux pilotes Po et P1.La validation du premier pilote P1 active l'une des entrées de chaque porte " ET " 8 du même module; l'état de l'autre entrée étant définie par l'état de chaque cellule de même niveau de la colonne précé- dente, ainsi chaque cellule mémoire de la colonne C est mise à l'image de celle de C-l. Par contre Si Po est activé alors on vient mettre un état O à l'entrée de toutes les cellules 9, ce qui correspond à la fonction d'effacement après la vérification de concordance des deux cellules voisines afin de continuer le cycle et transporter les informations de la colonne C-2 à la colonne C-l. Sur la fig.2, T représente le signal autorisant le transfert d'une cellule mémoire à une autre, R est le signal de remise à zéro de la cellule, et décrit ltetat de la cellule. Le temps est représentE sur l'celle horizontale. Ainsi au temps tl, s'éffectue la remise à zéro de la cellule sur laquelle on veut transférer l'information, au temps t2, la fin de ltéffacement, au temps t3, l'autorisation de transfert, au temps t4, la cellule sur laquelle on transfert l'information prend ltetat de la cellule de la colonne précédente et sur le même niveau au temps t5, le transfert se termine et on met à zero la cellule que l'on vient de transférer. Sur a fig. 3, on observe le dispositif par lequel est réalisé le transfert dinforma- tions de cellules mémoires en cellules mémoires ; celui-ci met en oeuvre des groupes -comportant pour chacun deux portes -ET(22 et 23 pour le premier) et une porte "ou" 24 ; la ligne 26 représente le point de passage d'un module (m - 1) à un autre m. Lorsque l'information passe sur la ligne 26, elle est transmise sur la ligne 26' et 28 et si le pilote P1 connecté à la ligne 29 est initialise, la sortie de la porte 30 sera à l'image de l'information transportée par la ligne 28, et l'tat de cette sortie viendra s'inscrire dans la cellule mémoire m préalablement effacée.Un comparateur vérifie la concordance de chaque cellule mémoire des deux colonnes consecutives ; si la concordance est établie, PO (m - 1) est initialise et la sortie de la porte -ET 23 sera à ltetat "zéro" si la ligne 26 transportait un bit à l'état "un" ; si par contre elle transportait un état "zéro" alors quelque soit la valeur donnée par P0 la sortie de la porte 23 serait à "zéro" ; cette sortie à l'état "zéro" met la cellule mémoire m - 1 à l'état "zé- ro", puis, après avoir vérifié que toutes les cellules mémoires de la colonne ont été mises à "zéro" grâce à un dispositif non représente, le pilote P - 1 est initialise afin de permettre la passage de l'information du module (m-2) vers le module m - 1 ; ce processus étant répété pour l'ensemble des cellules mémoires d'une même colonne et par toutes les colonnes. Sur la fig. 4 on a représenté le schéma interne des pilotes PO et P1 constituant le registre à décalage, ces deux pilotes délivrant une sortie a l'état "un" périodiquement et successivement. Chaque pilote est constitué de deux portes -ET 31 et 33 et d'une porte -OU 32. L'information dans le registre à décalage circule dans le sens inverse du sens du transfert dans les cellules mémoires.Ainsi lorsqu'on veut transférer une information, on s'assure que la cellule mémoire sur la quelle on veut écrire est bien à l'état "zéro", si c'est le cas le dispositif représente en E(n) le t#moignant;le signal d'effacement est généré par le contrôle de la mise à zéro de l'ensemble des bits du module ; un état "un" est mis à l'entrée de la porte 33 et donc également à celle de la porte 32 ce qui initialise le pilote Pl qui vient permettre le passage d'un module (n-l) au suivant (n) puis on compare le contenu des deux cellules de départ et d'arrivée et le comparateur (n - 1) met un état "un" à une borne d'entrée de la porte 34 lorsqu'il y a concordance, ce qui initialise le pilote PO de la cellule mémoire (n-l), celui-ci mettant toutes les cellules de départ (n-l) à l'état "zéro" et ainsi de suite pour toutes les cellules mémoires d'une même colonne et pour toutes les colonnes. Sur la fig. 5, on peut observer des modules qui ont été séparés en deux parties comportant chacuns des moyens de défilement indépendants. En 36 est représentee la zone comportant par exemple, les macro-instructions et en 37 celle comportant les éléments d'indexation de cette zone 36 ; puis en 38, les élemeats d'indexation de la zone 35 qui pourra comporter les instructions dites micro-instructions.Un dispositif non décrit 39, établit la concordance, permettant lorsqu'on veut exécuter une macro-instruction 40 de stopper le défilement des zones 36, 37, qui pourront être visibles ou non, de faire défiler les parties 35, 38 jusqu'a ce qu'il y ait concordance entre les indices des deux zones d'indexation en regard 41 et 42, le défilement des zones 35,38 sera arrêté lorsque les concordances entre les zones 41et 42 ne sera plus vérifie. Sur la fig. 6, le dispositif assurant la fonction de comparaison est composé d'une porte logique 53 ayant pour fonction "et" , dont les deux entres sont reliées pour l'une à la sortie d'une porte nand 55 et pour l'autre à la sortie d'une porte 54 de fonction "et" ; les deux entrées de la porte "et" 54 sont reliées aux deux entrées de la porte "nand" 55. Sur la fig.7 la fonction d'effacement est assurée par une porte 56 ayant la fonction "nor" (c'est à dire "non ou" ). Dans un autre mode de réalisation on peut envisager l'application du procédé selon l'invention, à un système de gestion de données. Sur la fig.9, un buffer d'entrée 48 reçoit les informations sous forme de codage série. Celles-ci sont chargées dans un registre correspondant à une zone série 49 qui permet de stocker l'information temporairement, puis les données sont stockées en zone mémoire 50 aprés que l'unité logique de décision 51 ait vérifié la position et enfin les données sont disponibles en sortie 52 en parallèle.On pourra également prévoir des moyens pour faire circuler des données vers un module qui aura été selectionné pour délivrer à sa sortie les dites informations.On pourra noter que le dispositif selon l'invention pourra aussi avantageusement être applique à la gestion d'un cran.On peut en effet imaginer un dispositif de visualisation tel un tube à lumiphore dont le spot de balayage est. compose d'un seul faisceau d'électron, le dit spot parcourant l'écran en spirale rectangulaire, # fig. îO > balaye successivement la lumiphore des trois couleurs nécessaires pour la tricomie. Le registre à décalage 42 utilisé dans cette application comportera quatre etages (fig.ll) : un pour ltintensité du spot 43, un pour les coordonnées du pixel 44, deux pour le balayage verticalE 45 et horizontal 46. Il a un cycle de transfert rapide, ce qui permet d'intervenir sur la rémanance du lumiphore et ainsi éviter le scintillement. Il attaque des convertisseurs 47 logiques/analogiques dont la validation est synchrone à son cycle de transfert et qui commanderont le balayage du spot. L'acquisition des informations est multi-accès. On pourra aller de la validation en plusieurs zones de mêmes coordonnees pixels pour l'acquisition de la couleur du point jusqu'8 la réalisation d'une interface validant directement les pixels correspondant aux caractères ou figures prealablement mémorisés en mémoire annexe. Sur le premier étage du registre à décalage seront envoyés les ordres concernant le déplacement vertical du spot, sur le second, les ordres concernant le deplacement horizontal du spot ; ce qui permet la réalisation, les ordres étant envoyés de la droite vers la gauche, d'une spire rectangulaire gérant ltécran. Il est à noter que l'on pourra également établir et utiliser la concordance d'index entre deux zones en regard de deux parties d'un même module sur une partie seulement de la zone servant a l'indexation et utiliser ainsi la concordance partielle. Il est egalement à noter que l'on pourra utiliser ce type de mémoire afin d'effectuer des transcodages en divers codes. Pour cela il existe deux solutions : l'une consistant à mettre le code sur une partie du mot composant le module, la seconde consistant à indexer celui-ci à un nombre K de modules et grâce à des moyens de logique séquentielle de sortir le code après K signaux indiquant que le mot traduit est prisent sur la sortie. Ce type de mémoire permet une complementarité des instructions. En effet, dans la mémoire programme principal, le macro-programme contient des instructions dans le langage de programmation ; lorsque le programme s'exécute celles-ci sont décodées par la zone mémoire programme, ce qui permet en décodant chaque instruction, d'aller prendre toutes les micro-instructions nécessaires pour le défilement jusqu'à concordance des adresses de la zone exécutable, de rendre accessibles celles-ci directement sur le buffer de sortie et de les charger dans la mémoire principale, ce qui réduit la tâche du processeur; le programme est donc prêt à être exécuté évitant ainsi les recherches de sous-programmes devenues désormais inutiles. Ce procédé de mémorisation selon l'invention trouve ses applications dans tout système informatique mettant en oeuvre des cellules mémoires nécessitant une possibilité d'accès séquentiel et multiple, et est donc particulièrement destiné aux mémoires tampon pour écran et interface d'adaptation. Chaque code peut avoir son équivalent dans une zone mémoire. Dans le cas où le registre de transfert agira en différents points de la mémoire celui-ci autorisera des fréquences plus rapides et pourra s'appliquer aux réseaux de tflématique par exemple. Bien que l'on ait décrit et représenté des modes particuliers de réalisation de l'invention, il doit être compris que celle-ci n'est pas limitée à cette forme et à ces moyens, mais qu'elle s'étend à toute forme et à tout moyen comportant les caractéristiques générales énoncées plus haut. REVENDICATIONS 1.- Procédé de mémorisation électronique de données au moyen de cellules #9) à deux états organiSées en modules (5) constitués d'une colonne à n niveaux, caractérisé en ce que, successivement pour les cellules de deux colonnes voisines et pour l'ensem ble des colonnes organisées de façon circulaire, - on recopie l'état de la cellule d'une colonne (C) dans la cellule correspondante, c'est à dire ayant le même niveau, de la colonne directement voisine (C+l) préalablement mise à l'état "zéro'l, - on compare l'état de chacune des cellules en corres pondance, puis - si la comparaison recèle une analogie totale, bit bit, sur le même niveau des deux colonnes, on désactive toutes les cellules de la colonne (C), puis - on valide les portes permettant le passage de l'infor mation se trouvant dans la cellule (C-l) dans la cellule (C) afin de mettre chaque cellule mémoire de (C) à l'image de celle de (C-l); 2.- Dispositif pour la mise en oeuvre de procédé selon la revendication 1 caractérisé : en ce qu'il comprend, pour assurer la synchronisation de toutes les operations un des éléments du groupe comprenant un registre à décalage (4) et un compteur, cet élement étant un registre à décalage, est constitué d'au moins deux pilotes (4' et 4"), l'un ayant pour fonction la validation des portes pour le passage de l'information, et le contrôle du contenu de la cellule d'arrivée de l'information tandis que l'autre désactive les cellules de la colonne de départ dont les informations viennent d'être transitées 3.- Procédé selon la revendication 1 caractérisé en ce que lors de l'opération de comparaison C(n) des cellules de même niveau de deux colonnes successives, - un signal indiquant la concordance des états de deux cellules (C) et (C+1) en correspondance est émis, - le pilote chargé (4") de désactiver les cellules de la colonne de départ est validé, et en ce qu'un autre circuit con trôlant la mise à L'étant "O" de toutes les cellules est mis en oeuvre générant un signal, et activant le second pilote (4') qui validera les portes assurant la transition de (C-l) vers (C) 4.- Dispositif pour la mise en oeuvre du procédé selon la revendication 1 caractérisé en ce que pour chaque module (5) comprenant une colonne de cellule à n niveaux (n fixé) et un registre à décalage (4), ou compteur, il incorpore un circuit de détection de panne réalisé au moyen d'un pont programmable électroniquement, intégrant une fonction d'erreur permettant d'éliminer un éventuel module défaillant 5 - Dispositif pour la mise en oeuvre du procédé selon la revendication 1 caractérisé :: en ce qu'il incorpore des moyens, dit interfaces, pour l'échange d'informations soit en lecture soit en écriture, en série et en parallèle, à différents niveaux (par une programmation appropriée des pilotes) et sur différentes colonnes à la fois sans pour cela affecter le temps du cycle global, ce qui a pour résultat d'autoriser des fonctions complèmentaires diverses (contrôle, validité) 6.- Dispositif selon la revendication 5 caractérisé:: en ce que les interfaces (10) d'échange utilisent pour moyen d'indexage l'un des éléments du groupe d'éléments comprenant un indexage par le pilote (indexage extérieur), un indexage par un bit et un indexage par un mode la mémoire en posi tion M (n,c) ce qui précise l'instant de cet rechange, et en ce que, la concordance avec l'index choisi étant établi, le transfert de l'informa tion est autorise ~ 7.- Dispositif selon la revendication 4, caractérisé en ce que chaque module (5) est constitue de deux parties (5') et (5") comportant chacune des moyens de défilements indépendants, chaque partie tant constitue d'un ensemble de cellules mémoi- res destinées pour les unes à contenir des informations, pour les autres à contenir un code correspondant à un élément d'indexage, de telle sorte que la seconde partie pourra être stoppée dans sson défilement alors que la première continuera à défiler ; 8.- Dispositif selon la revendication 7, caractérisé en ce qu'une partie sera utili see pour contenir des macro-instructions et l'autre les instructions dites microrinstructions qui met en oeuvre la macro-instruction lors de son exécution, le dispositif mettant en oeuvre un système qui détermine par coîncidence avec les index situés sur les deux parties du module l'endroit où débute la succession de micro-instructions correspondantes, la première partie (5') pourra ainsi défiler tant qu'il y aura coîncidence d'index avec la seconde partie (5") restant fixe 9.- Application d'un procédé et d'un dispositif conforme à l'une quelconque des revendications 1 à 8, à un sys tème de gestion de données, caractérisee en ce qu'un buffer d'entre (48) reçoit les informations sous forme de codage "série", puis en ce que lesdites informations sont charges dans un registre (49) correspondant à une zone surie, puis en ce que lesdites informations sont stockées dans une mémoire (50) après que l'unité logique (51) ait vérifiée leur position, puis enfin en ce que lesdites informations sont rendues disponibles à une sortie (52) en parallè- le 10.-Application d'un procédd et d'un dispositif conforme à l'une quelconque des revendications 1 à 8, à la ges tion d'un écran, caractérisée par un registre à décalage (42) comportant quatre étages : : - un (43) pour l'intensitd du spot, - un (44) pour les coordonnées du pixel (44), - deux (45,46) pour respectivement le balayage vertical et le balayage horizontal, par un cycle de transfert rapi de, et par des convertisseurs (47) attaqués par le registre à décalage, lesdits convertis seurs entant du type numerique/analogique dont la valida tion est synchrone à son cycle de transfert, lesdits convertisseurs dotant destinés à commander le balayage du spot.