Brevet FR2614121A1 — publié le 19881021

COMPARATEUR PROGRAMMABLE NUMERIOUE ET CONTROLEUR GRAPHIOUE UTILISANT UN TEL COMPARATEUR L'invention concerne un comparateur programmable numérique destiné à effectuer la comparaison entre une donnée d'entrée numérique ai ... an et une donnée numérique de référence b1 ... bn comprenant n cellules d'entrée C1 ... Cn qui comparent chacune un couple de bits aibi ... anbn pour fournir des données de comparaison ci ... cn dans lesquelles des groupements de bits sont sélectionnés afin de fournir des résultats de comparaison propres auxdits groupements de bits à l'aide de moyens de commande. Ce comparateur programmable trouve son application plus particulièrement dans le domaine des contrôleurs graphiques afin de déterminer des masques destinés à valider des données pour colorier des éléments d'image. D'une manière plus générale il est utilisable chaque fois que l'on désire effectuer la comparaison de deux données numériques par groupements de 2k bits et ceci d'une façon programmable par le choix de la valeur k. Les comparaisons effectuées sur ces groupements ainsi isolés vont permettre d'effectuer des opérations logiques relatives à ces groupements. Les comparateurs courants dont on dispose opèrent sur des données de longueur fixe. Pour réaliser une structure de comparateur programmable par groupement de 1, 2, 4, 8, 16 bits, etc ... opérant sur deux données par exemple de 16 bits, il est nécessaire d'effectuer autant de comparaisons qu'il y a de groupements et de multiplexer en sortie celles des configurations voulues par exemple 8 groupenents de 2 bits ou 4 groupements de 4 bits. Une telle structure n'est pas optimale lorsque l'on se pose le problème de la conception d'un comparateur programmable numérique intégré. Elle est même plutôt inadap tée, car la surface utilisée par les éléments constitutifs et les interconnexions devient vite prohibitive. Un comparateur programmable ayant une structure beaucoup plus compacte est fourni par l'art antérieur du document DE-0-3149926. Ce comparateur permet d'effectuer là comparaison de deux données numériques mais elle ne peut être effectuée que sur certaines configurations de sortie. Il est ainsi possible d'ignorer la comparaison de un ou plusieurs bits des deux données numériques. Mais le principe qui est retenu ne permet pas d'ignorer isolément une quelconque de toutes les configurations numériques autorisées par la longueur des données d'entrée.Le comparateur de cet art antérieur, et ceci est essentiel pour l'invention, ne résout pas le problème posé qui est de pouvoir programmer dans une donnée d'entrée de longueur 2P+q bits des comparaisons par tranches de 2k bits, p et q étant des nombres entiers strictement positifs et k appartenant au domaine qui comprend la valeur 0 et les valeurs entières allant de p à p+q. Ainsi avec une donnée d'entrée de 16 bits par exemple il faut pouvoir programmer la comparaison de tranches de 1, 2, 4, 8, 16 bits, pris successivement dans la donnée numérique d'entrée, avec une donnée numérique de référence. Un autre problème est que le comparateur programmable doit présenter une structure très facilement intégrable. Il est également souhaité que cette structure s'adapte facilement aux moyens d'intégration mis en oeuvre et permette une intégration compacte. Pour cela l'invention telle que définie dans le préambule est remarquable en ce que les groupements de bits sont des tranches constituées de bits successifs de la donnée d'entrée et en ce que le comparateur prograflable permet sur des données d'entrée de n = 2P+q bits, p et q étant des nombres entiers strictement positifs, d'effectuer des comparaisons sur des tranches de taille 2k bits, k appartenant au domaine qui comprend la valeur 0 et les valeurs entières allant de p à p+q, le comparateur comprenant un générateur de commandes ayant plusieurs rangs d'opérateurs ET, 2P étant la taille minimale de la tranche du premier rang et 2q étant le nombre de tranches de longueur 2P dans n les moyens de commande comprenant des commandes qui déterminent la taille 2k des tranches de comparaison choisies afin de programmer le générateur de commande qui comprend - un premier rang d'ordre z=1 de 2q opérateurs logiques ET 1 1 qui délivrent des données numériques e1 ... e2q telles que e11 = c1 & c2 & .. & RTI ID=3.4 HE=6 WI=2 LX=741 LY=906 où ( & représente la fonction logique ET, - q-1 rangs suivants d'ordre z de 2q Z+1 opérateurs logiques ET qui délivrent des données numériques el ... e2q-z+l tel les que :: ez = ez-1 & ez-1 jusqu'à ez = ez-1 & ez-1 1 1 2 =(2q-z+2)-1 2q-z+2 - un dernier rang d'ordre z=q+1, de 1 opérateur logique ET qui délivre une donnée numérique e1q+1 eq & BR délivrent des données si ... 52q en sélectionnant à la sortie de chaque opérateur ET de rang z=k pour k diffé rent de O, et forcées à un état logique déterminé pour k=0 lorsque la taille des tranches est de 1 bit, ces données s1 ... 52q en sortie du générateur de commandes entrant respectivement avec les données c1...cn dans n opérateurs ET pour fournir un masque numérique m1... mn, chaque don née s1... s2q concernant simultanément 2P opérateurs ET tel que si opère sur les 2P premières données c1... c2p et ainsi de suite jusqu'à 52q qui opère sur les 2P der nières données cn ... Cn-2p-1. Selon un mode préférentiel de réalisation, pour résoudre le problème posé par la compacité de l'intégration, l'invention est également remarquable en ce que le générateur de commandes qui comprend les (2q+1-1) opérateurs logiques ET et les 2q sélecteurs est constitué par la mise en série de points d'un réseau à logique programmée (appelé PLA) asso ciés entre eux par des portes de transfert. Selon un premier mode particulier de réalisation la taille élémentaire des tranches de bits du premier rang est égale à 2 bits (p=1). Dans un second mode particulier de réalisation la taille élémentaire des tranches de bits du premier rang est égale à 4 bits (p=2). Dans ce dernier cas l'invention est également remarquable en ce que, les tranches ayant une taille de 4 bits, les quatre premières données ci, c2, Cg, cx agissent chacune sur un point PLA, les quatre points PLA étant reliés entre eux -en série pour former un opérateur logique ET à quatre entrées et à une sortie t1 afin de constituer un premier module, un second, un troisième et un quatrième module analogue au premier module étant formés respectivement avec les données (cs ce C7 ce), (cg clo c11 ci#), (c13 c14 cis c16) ayant pour sortie respectivement t2, t3 ti, les séries de quatre points de chaque module étant reliées entre elles également en série se Ion l'ordre des données ci ... cn par respectivement trois portes de transfert P1, P2, P3 qui sont contrôlées par des commandes qui permettent la programmation du nombre de tranches de comparaison, un signal de forçage f agissant sur quatre portes NON-OU, qui reçoivent respectivement les données de sortie t1, t2, t31 ts, - la sortie de la première porte NON-OU agissant sur quatre portes NON-OU qui reçoivent respectivement les signaux ci, c2, c3, cs, - la sortie de la deuxième porte NON-OU agissant sur quatre portes NON-OU qui reçoivent respectivement les signaux cs, C6, c7, ce, - la sortie de la troisième porte NON-OU agissant sur quatre portes NON-OU qui reçoivent respectivement les signaux cg, Crof cil, C121 - la sortie de la quatrième porte NON-OU agissant sur quatre portes NON-OU qui reçoivent respectivement les signaux c13, c14, cils, c16. Ce comparateur programmable numérique peut être utilisé dans un contrôleur graphique de sorte que le masque numérique mi ... mn est utilisé pour valider ou non selon son état logique chaque bit de chaque tranche de bits de la donnée d'entrée numérique ai ... an. Le comparateur programmable peut opérer sur des données d'entrée de 2P+q bits par exemple 4, 8, 16 bits. Il va pouvoir délivrer en sortie un résultat de comparaison sur des tranches 2k bits par exemple 1, 2, 4, 8, 16 bits. il est possible d'avoir par exemple dans une donnée de 8 bits (n=8) - p > q :avec 2 tranches Selon l'écriture adoptée p ne peut être nul car il s'agit d'une comparaison sur 1 bit dont le résultat est fourni par les données ci ... cn validées par les données 5ni2 De même q ne peut être nul car il s'agirait alors d'une comparaison sur une tranche unique où la programmation aurait disparu. Le paramètre k définit la taille 2k des tranches de bits que l'on peut sélectionner en sortie du comparateur programmable. Ce paramètre k a pour valeurs extrêmes - k = O tranche de 1 bit, - k > p taille minimale de tranches prévue à la conception - et k conception. Le masque mi ... mn obtenu en sortie va fournir le résultat de la comparaison sous la forme de 2p+q-k tranches de ~1t ou de #O#. En effet par exemple si entre deux positions quelconques i et j les éléments de tous les couples aibi...ajbj d'une même tranche sont égaux deux à deux, les données Si ... s(j-i+1)/2 sont toutes égales par exemple à "1" logique. Réciproquement si les éléments de tous les couples aibi ... ajbj d'une même tranche ne sont pas égaux deux à deux, donc il existe au moins un couple dont les éléments ne sont pas égaux entre eux, alors les données Si ... 5 les données Ci ... cj respectives. Ainsi lorsque les comparaisons effectuées sur une tranche indiquent l'égalité ou la non-égalité bit à bit les données Ci ... cj et les données Si 5(j-i+1)/2 sont respectivement toutes dans un état logique donné ou dans un état logique inverse. Les opérateurs logiques ET placés en sortie permettent que chaque donnée si valide ou inhibe deux données Ci et ci+1. Ceci permet au comparateur programmable de pouvoir opérer à la fois sur des tranches de 1 bit et sur des tranches de taille supérieure. Pour le cas des tranches de 1 bit la donnée Si valide les deux données Ci et ci+1 et les bits de masque mi et mi+1 obtenus dépendront dans ce cas respectivement des données Ci et ci+1 qui peuvent être différentes et de la donnée si. Les opérateurs logiques ET qui effectuent les fonctions logiques ET peuvent être constitués de portes logiques ET ou d'autres portes logiques par exemple NON-OU en utilisant des signaux logiques inverses. Mais pour satisfaire le problème de la grande compacité du comparateur en vue de son intégration, les opérateurs logiques ET sont constitués préférentiellement par des points de réseau à logique programmée (PLA : Programmable Logic Arrays en langue anglaise). Pour assurer la comparaison par tranches de 2, 4, ... 2P+q bits l'invention permet de déduire le résultat d'une rangée quelconque z (z > 1) en associant deux résultats consécutifs de la rangée z-1 à l'aide d'un sélecteur formé d'une porte de transfert. Chaque porte est constituée par un transistor MOS. Un tel comparateur programmable peut être utilisé pour comparer deux données numériques dans des traitements numériques. Plus particulièrement il peut être utilisé dans un contrôleur graphique. Ainsi dans une donnée d'entrée ai.. .an certaines tranches peuvent être substituées à d'autres pour constituer une donnée numérique transformée selon l'application poursuivie. L'invention sera mieux comprise à l'aide des figures suivantes données à titre d'exemple non limitatif qui représentent Figure 1 : un schéma d'un comparateur selon l'art antérieur. Figure 2 : une illustration de la structure du comparateur programmable selon l'invention avec un premier rang à deux données. Figure 3 : un schéma du comparateur programmable selon l'in vention dans le cas d'une donnée numérique d1en trée de 8 bits. Figure 4A: un schéma électrique d'un point de logique pro grammée PLA. Figure 4B: le symbole de représentation du point de logique programmée PLA de la figure 4A. Figure 5 : le schéma de la mise en série de points de logi que programmée PLA par des portes de transfert. Figure 6 : un schéma du comparateur programmable de la figu re 3 représenté à l'aide de points de logique programmée PLA et de portes de transfert. Figure 7 : une illustration de la structure du comparateur programmable selon l'invention avec un premier rang à quatre données. Figure 8 : un schéma correspondant au cas de la figure 7. Figure 9 : une illustration de la structure du comparateur programnable selon l'invention avec un premier rang à 8 entrées. La figure 1 représente un comparateur selon l'art antérieur. Les bits ai, a2, as de la donnée d'entrée entrent respectivement dans des portes NON-OU exclusives 11, 12, 13 qui délivrent respectivement une donnée ci, c2, C3. Ces portes reçoivent également respectivement les bits b11 b21 b3 d'une donnée de référence en provenance d'un générateur de référence 14. Les bits de la donnée ci, c2, cs entrent respectivement dans des portes OU 15, 16, 17 qui reçoivent respectivement une donnée de commande ri, r2, r3 en provenance d'un générateur de commande 18. Les sorties des portes OU 15, 16, 17 entrent dans une porte ET 19 qui délivre le résultat de la comparaison.Selon la donnée ri, r2, r3 il est donc possible de fournir en sortie le résultat de la comparaison de ai, a2, a3 avec b11 b21 b3 selon un groupement de bits à la fois. Dans cette situation chaque bit de la donnée de commande ri, r2, r3 est à l'état logique 1 ou O et il n'est pas possible d'isoler tous les groupements de bits que la configuration à 3 bits ai, a2, a3 devrait permettre. De même, ce comparateur ne permet pas de faire la comparaison de plusieurs tranches de la même donnée d'entrée. il ne fournit qu'un résultat d'ensemble pour la donnée d'entrée ai, a2, a3. Les portes 15, 16, 17 sont commandées individuellement par la donnée de commande ri, r2, r3 et non par tranches. De plus la structure ainsi proposée n'indique rien sur un mode de mise en oeuvre qui serait particulièrement bien adapté à la réalisation d'un comparateur intégré de grande capacité et de faible surface. La figure 2 donne une illustration de l'architecture d'une partie du comparateur programmable selon l'invention. Les données numériques d'entrée ai ... an sont codées sur n bits avec n=2P+q. Elles sont comparées à des données de référence b1 ... bn codées sur n bits également. Un premier niveau de comparaison est effectué entre les couples de bits arbi, a2b2 ... anbn fournissant un résultat de comparaison ci ... cn. Sur la figure 2 à titre d'exemple n=16 bits. Dans les équations logiques précédentes la fonction ET a été représentée par le symbole & Sur les figures 2, 7 et 9 la même fonction est représentée par le symbole (.). Les couples successifs ci c2, c3 c4,...cn-1 cn agissent sur des opérateurs ET 211 ... 2116, par exemple des portes ET ou des portes NON-OU en logique inverse, pour four i i nir des données el ... es soit n/2 données. Celles-ci agissent à nouveau sur des opérateurs ET 221 ... 224 pour four données 2 2 nir des données el ... er. Celles-ci agissent à nouveau sur 3 3 des opérateurs ET 231, 232 pour fournir des données ei, e2 qui agissent sur un opérateur ET 241 pour fournir une donnée el. Cette structure est utilisée dans le comparateur programmable selon l'invention.Selon la programmation le comparateur va permettre de sélectionner en sortie soit les données i i 2 -2 3 3 e11 ...e81 soit les données el ... es soit les données er, e2 soit la donnée el. il est bien sûr possible en cassant cette structure ou en la regroupant avec d'autres d'effectuer un mélange des sorties de type e1 avec celles de type e2 ou autres selon l'application envisagée. Cette structure est représentée par un schéma sur la figure 3, mais toujours à titre d'exemple pour des données de 8 bits pour faciliter l'exposé. Dans ce cas les paramètres préalablement définis sont p=1, q=2, 1 2 2 teurs ET 221, 222 qui délivrent les données et, e2 qui entrent dans l'opérateur ET 23t qui délivre la donnée ei. Les sélecteurs D1f- D2, D31 D, vont pouvoir sélectionner de la manière suivante i sélectionne 2 3 D1 sélectionne ei, e12, ei ou f D2 sélectionne e2, er, et ou f 3 D3 sélectionne e31, e22, e13 ou f 1 2 3 D4 sélectionne e4, e2,e1 ou f. La position f sert à forcer un état logique dé terminé pour permettre au comparateur programmable d'opérer sur des tailles de tranches de 1 bit (k=O). La commande des sélecteurs vient des commandes 32. Les sélecteurs D1, D2, D3, D4 délivrent respectivement les données si, 52, SJ, S4. La plus petite tranche de bits du premier rang étant dans cet exemple choisie à 2 bits, il s'ensuit que la donnée Si agit - sur un opérateur ET 331 qui reçoit aussi ci - et sur un opérateur ET 332 qui reçoit aussi c2. De la même manière les données 52, s3 et ss agissent respectivement sur les portes ET 333 et 33r, 335 et 336, 337 et 33e Les opérateurs ET 331 à 338 délivrent au cours d'une comparaison une donnée mi à me qui constitue le masque de la comparaison. Les opérateurs 211 à 214, 221, 222, 231 et les sélecteurs D1 à Ds constituent le générateur de commandes 34. Ce n'est que pour la commodité du dessin que les traits représentant les données ci à ce tranversent le schéma de ce générateur de commandes pour activer les portes ET 331 à 338. Ainsi dans cet exemple selon la position des sélecteurs la comparaison de la donnée d'entrée de 8 bits peut être effectuée par tranches de 2, 4 ou 8 bits, ou 1 bit par la position f des sélecteurs. La figure 4A représente une ligne de PLA formée de 2 points PLA de logique programmée. Les données ci et c2 introduites sous leur forme logique inverse ci et c2 agissent respectivement sur les grilles de deux transistors MOS 41 et 42. Les drains des deux transistors sont réunis à une connexion commune 43. De même les sources sont réunies à la connexion 44 reliée à la masse par un autre transistor MOS dont la grille 45 est commandée par un signal de validation. La connexion 43 est reliée à l'alimentation électrique +5 volts par un transistor de précharge 46 qui permet de faire monter le potentiel de la connexion 43 afin d'accroître la vitesse d'exécution dans le cas d'une logique programmée dynamique. Une connexion 47 reliée à la connexion 43 permet de prélever la donnée de sortie. Cette ligne PLA permet de réaliser l'opération ET logique sous un très faible encombrement. La figure 4B représente le même point PLA sous la forme symbolique utilisée ci-après. La figure 5 représente la mise en série de plusieurs points PLA. Les connexions 431 et 432 de deux points consécutifs sont reliées entre elles par une porte de transfert P1 constituée d'un transistor MOS 511. De même le transistor 512 relie les connexions 432 et 433 et le transistor 513 relie les connexions 433 et 434. Les grilles G1, G2, G3 des transistors 511, 512, 513 sont commandées pour contrôler la mise en série ou non des points PLA. Ainsi lorsque simultanément on rend passantes les portes Pi et P3 et que l'on bloque la porte P2, on créé 2 tranches de comparaison, formées chacune de 4 points PLA. De même si simultanément P1, P2 et P3 sont passantes, la tranche de comparaison est formée de 8 points PLA. Le schéma déjà décrit représenté sur la figure 3 peut être réalisé à l'aide de portes logiques de type connu. Mais préférentiellement il est réalisé à l'aide du schéma de commandes de la figure 5. En effet de cette manière les opérateurs ET 21i à 21s, 221, 222, 231 ainsi que les sélecteurs D à Ds peuvent être réalisés sous une forme compacte issue du schéma de la figure 5. Ceci est représenté sur le schéma de la figure 6. Les mêmes éléments y sont indiqués avec les mêmes repères. La sélection étant effectuée dans ce cas par les commandes 321 à 32s selon la valeur choisie pour k. Les sélecteurs 611 à 614 permettent d'effectuer la comparaison soit sur des tranches de 1 bit (position f) soit sur les autres tailles programmées pour les autres positions. La figure 7 est une illustration de la structure du comparateur programmable dans le cas où le premier rang du circuit de commandes opère directement sur une taille de quatre données qui forme alors la taille minimale de la tranche. De même la figure 9 illustre la structure lorsque le premier rang opère sur une taille de 8 données qui forme alors la taille minimale de la tranche. Dans les deux cas le rang suivant opère sur deux données seulement. Pour assurer le fonctionnement sur 4 ou sur 8 données il suffit alors d'éliminer la ou les portes de transfert intermédiaires selon l'application envisagée. La compacité de la structure est ainsi accrue. Un exemple particulier de réalisation est représenté sur la figure 8 dans le cas d'une donnée d'entrée de 16 bits ai ... aie avec 4 bits de taille minimale de la tranche de bits. Dans ce cas les paramètres préalablement définis sont les suivants : p=2, q=2, 2 Les données arbi ... aiebie entrent respectivement dans des portes OU-exclusif 811 à 8116 dont les sorties sont reliées respectivement aux entrées de points PLA 821 à 8216 et à des portes NON-OU 831 à 83ive. Trois portes de transfert P1, P2, P3 relient respectivement les points 82s et 825, 829 et 829, 8212 et 8213. Les grilles de ces portes de transfert sont activées par les commandes 321 à 323. Le signal de forçage f 324 est relié à des portes NON-OU 841 à 894 qui re çoivent également les signaux de sortie t11 t21 t31 ts des lignes de PLA 821 à 8216, propres à chaque tranche de 4 bits, respectivement sur les connexions 881 à 88*, pour fournir la validation du masque mi ... mie obtenu en sortie des portes 831 à 8316. REVENDICATIONS 1. Comparateur programmable numérique destiné à effectuer la comparaison entre une donnée d'entrée numérique ai ... an et une donnée numérique de référence b1 ... bn comprenant n cellules d'entrée C1 ... Cn qui comparent chacune un couple de bits aibi ... anbn pour fournir des données de comparaison c1... cn dans lesquelles des groupements de bits sont sélectionnés afin de fournir des résultats de comparaison propres auxdits groupements de bits à l'aide de moyens de commande caractérisé en ce que les groupements de bits sont des tranches constituées de bits successifs de la donnée d'entrée et en ce que le comparateur programmable permet sur des données d'entrée de n=2P+q bits, p et q étant des nombres entiers strictement positifs, d'effectuer des comparaisons sur des tranches de taille 2k bits, k appartenant au domaine qui comprend la valeur O et les valeurs entières allant de p à p+q, le comparateur comprenant un générateur de commandes (34) ayant plusieurs rangs d'opérateurs ET, 2P étant la taille minimale de la tranche du premier rang et 2q étant le nombre de tranches de longueur 2P dans n, les moyens de commande comprenant des commandes (32) qui déterminent la taille 2k des tranches de comparaison choisies afin de programmer le générateur de commandes (34) qui comprend - un premier rang d'ordre z=1 de 2g opérateurs logiques ET (211 à 212q) qui délivrent des données numériques e1 ... e2q1 telles que 2q e1 = ci & c2 & ... & c2p jusqu'à e#q = cn-2p-1 & ... & cn où ( & représente la fonction logique ET, - q-1 rangs suivants d'ordre z de 2q Z 1 opérateurs logi ques ET (221, 222...) qui délivrent des données numéri ques z ... e2q~z+1 telles que ez = ez-1 & ez-1jusqu'à ez = ez-1 & ez-1 1 1 2 2q-z+1 (2q-z+2)-1 2q-z+2 - un dernier rang d'ordre z=q+1, de 1 opérateur logique ET (231) qui délivre une donnée numérique e1#+1 = e1q & ezq , - et 2q sélecteurs D1 ...D2q qui, pour chaque valeur de k, délivrent des données s1 ... s2q en sélectionnant la sortie de chaque opérateur ET de rang z=k pour k différent de O et forcées à un état logique déterminé pour k=O lorsque la taille des tranches est de I bit, ces données si ... 52q en sortie du générateur de commandes entrant respecti vement avec les données ci ... cn dans n opérateurs ET (331 à 33n) pour fournir un masque numérique mi ... mn, chaque donnée sl ... 52q concernant simultanément 2P opérateurs ET tel que s1 opère sur les 2P premières don nées c1 ... c2p et ainsi de suite jusqu'à saq qui opère sur les 2p dernières données cn ... cn-2p-1. 2. Comparateur programmable numérique selon la revendication 1, caractérisé en ce que le générateur de commandes (34) qui comprend les (29+1-1) opérateurs logiques ET et les 2q sélecteurs D1 ... D2q est constitué par la mise en série de points d'un réseau à logique programmée (appelé PLA) associés entre eux par des portes de transfert. 3. Comparateur programmable numérique selon une des revendications 1 ou 2, caractérisé en ce que la taille élémentaire des tranches de bits du premier rang est égale à 2 bits (p=1). 4. Comparateur programmable numérique selon une des revendications 1 ou 2, caractérisé en ce que la taille élémentaire des tranches de bits du premier rang est égale à 4 bits (p=2 > . 5. Comparateur programmable selon la revendication 4, caractérisé en ce que, les tranches ayant une taille de 4 bits, les quatre premières données ci, c2, C3, cs agissent chacune sur un point PLA, les quatre points PLA étant reliés entre eux en série pour former un opérateur logique ET à quatre entrées et à une sortie tl (881) afin de constituer un premier module, un second, un troisième et un quatrième module analogue au premier module étant formés respectivement avec les données (C5 ce C7 cs), (cs C10 c11 ci#), (c13 ci, c15 c16) ayant pour sortie respectivement t2 (882), t3(883), ts(884), les séries de quatre points de chaque module étant reliées entre elles également en série selon l'ordre des données c1...cn par respectivement trois portes de transfert P1, P2, P3 qui sont contrôlées par des commandes (32) qui permettent la programmation du nombre de tranches de comparaison, un signal de forçage f agissant sur quatre portes NON-OU (841 à 844) qui reçoivent respectivement les données des sorties t1, t2, t3, tir - la sortie de la première porte NON-OU (84i) agissant sur quatre portes NON-OU (831 à 834) qui reçoivent respective ment les signaux ci, c21 , c3, cs, - la sortie de la deuxième porte NON-OU (842) agissant sur quatre portes NON-OU (835 à 838) qui reçoivent respective ment les signaux cs, ce, c71 ce, - la sortie de la troisième porte NON-OU (843) agissant sur quatre portes NON-OU (839 à 8312) qui reçoivent respective ment les signaux cs, clo, cli, ciz, - la sortie de la quatrième porte NON-OU (84s) agissant sur quatre portes NON-OU (8313 à 8316) qui reçoivent respecti vement les signaux c131 c141 c1sl cive. 6. Contrôleur graphique caractérisé en ce qu'il comprend un comparateur programmable numérique selon une des revendications 1 à 5, le masque numérique mi ... mn étant utilisé pour valider ou non selon son état logique chaque bit de chaque tranche de bits de-la donnée d'entrée numérique ai ... an.