Brevet FR2807599A1 — publié le 20011012

La présente invention se rapporte à une cellule élémentaire d'un filtre linéaire pour traitement d'image, ainsi qu'à un module, un composant et un procédé associés. On connaît des structures d'architectures systoliques permettant d'effectuer de manière modulaire et flexible du filtrage spatial linéaire. De telles structures comprennent des cellules élémentaires en cascade. Chacune d'entre elles est pourvue d'un registre permettant d'imposer un retard d'un point, d'une mémoire capable de stocker des coefficients multiplicateurs, d'un multiplieur pour effectuer des multiplications par ces coefficients des données reçues et d'un additionneur destiné à ajouter séquentiellement les produits obtenus à la somme des produits provenant des cellules aval. On trouvera de telles réalisation dans l'article Real-Time Systolic Array Processor for 2-D Spatial Filtering , d'Aboulnasr et Steenaart, IEEE Transactions on Circuits and Systems, Vol.35, N.4, avril 1988, pp.451-455 et dans l'article High-Speed Architectures for Two-Dimensional State-Space Recursive Filtering , de Zhang et Steenaart, IEEE Transactions on Circuits and Systems, Vol.37, N.6, juin 1990, pp.831-836. La présente invention a pour objet une cellule élémentaire à la base d'une nouvelle architecture de filtre linéaire, qui rend possible une diminution du nombre de cellules requises et une amélioration sensible de l'efficacité de traitement, notamment en terme de consommation, en présence de symétries horizontales et/ou verticales dans les coefficients de filtrage. La présente invention concerne également une telle cellule pouvant autoriser des expansions et des compressions d'image en offrant les avantages ci- dessus, notamment dans le cadre d'une interpolation polyphase. La cellule de l'invention peut aussi être adaptée à des accès aléatoires, notamment pour de l'interpolation avec compensation de mouvement. L'invention concerne en outre un module de filtrage linéaire fondé sur de telles cellules, ainsi qu'un composant de filtrage linéaire reposant sur la coopération de plusieurs modules. Le composant de l'invention peut autoriser la mise en oeuvre d'un filtrage spatio-temporel, horizontal et/ou vertical, avec une efficacité accrue. L'invention a de plus pour objet un procédé de filtrage linéaire ayant les avantages mentionnés ci-dessus. A cet effet, l'invention concerne une cellule élémentaire d'un filtre linéaire pour traitement d'image, comprenant - une entrée, destinée à recevoir séquentiellement des données relatives à des pixels d'une image à traiter, - une sortie de circulation, destinée à transmettre séquentiellement ces données avec un retard, - une sortie de calcul, destinée à transmettre séquentiellement des résultats obtenus par un traitement de ces données dans ladite cellule, - une ligne à retard principale ayant une entrée capable d'être reliée à l'entrée de la cellule et une sortie capable d'être reliée à la sortie de circulation et à la sortie de calcul de la cellule, - une mémoire de coefficients, prévue pour contenir au moins un coefficient multiplicateur, et - un multiplieur connecté à la mémoire de coefficients, ayant une entrée et une sortie capables d'être reliées respectivement à la sortie de la ligne à retard et à la sortie de calcul de la cellule, ce multiplieur étant destiné à effectuer des multiplications sur les données reçues en entrée du multiplieur par au moins un des coefficients multiplicateurs de la mémoire de coefficients et à transmettre par la sortie du multiplieur le résultat obtenu. Selon l'invention, la ligne à retard principale est capable de produire un décalage maximal correspondant à au moins deux pixels de l'image à traiter et la cellule comprend aussi - une ligne à retard auxiliaire ayant une entrée et une sortie capables d'être reliées respectivement à l'entrée de la cellule et à la sortie de circulation de la cellule, - un additionneur ayant une première et une seconde entrées capables d'être reliées respectivement à l'entrée de la cellule et à la sortie de la ligne à retard principale, et une sortie capable d'être reliée au multiplieur, - des moyens de sélection de ligne à retard ayant un premier et un second état, ces moyens étant destinés à relier l'entrée de la cellule à la sortie de circulation de la cellule par l'intermédiaire de la ligne à retard principale dans le premier état et par l'intermédiaire de la ligne à retard auxiliaire dans le second état, - et des moyens de sélection de calcul ayant au moins deux états, ces moyens étant destinés à relier l'entrée de la cellule et/ou la sortie de la ligne à retard principale aux entrées correspondantes de l'additionneur, dans respectivement ces états. Par ligne à retard , on entend tout système pouvant imposer un retard d'un ou plusieurs pixels dans le flux séquentiel de données, y compris un registre. Ainsi, la cellule de l'invention diffère notamment de celles de l'état de la technique par la présence d'une ligne à retard principale qui permet d'imposer des retards supérieurs à un pixel. Contrairement aux cellules existantes, elle autorise la prise en compte de symétries horizontales et/ou verticales grâce à l'utilisation possible de deux lignes à retard en parallèle et à la présence d'un additionneur susceptible de faire la somme des données en entrée et en sortie de la ligne à retard principale. Cette cellule permet donc d'imposer un retard correspondant à la symétrie considérée, dans la ligne à retard principale, tout en imposant un autre retard correspondant à la transmission des données en aval de la cellule (par exemple d'un pixel ou d'une ligne) dans la ligne à retard auxiliaire. II convient de noter qu'avec l'amélioration des rendements dans la fabrication de mémoires RAM dynamiques et l'apparition de technologies plus fines, il est possible d'en inclure dans les composants en quantité significative pour les mémoires de ligne, et en quantité plus limitée pour les mémoires de trame. De tels RAM sont avantageusement utilisées pour les lignes à retard principales, et éventuellement auxiliaires, des cellules de l'invention. Celles-ci autorisent ainsi une architecture flexible, permettant d'accéder à une multitude de structures de filtres spatio-temporels, classiquement rencontrées dans les applications de traitement vidéo, par simple reconfiguration des interconnexions entre opérateurs mis en oeuvre. La cellule de l'invention permet de bâtir un réseau re-configurable permettant de satisfaire, par simple paramétrage, des applications incluant du filtrage spatio-temporel ou de l'interpolation de trame à compensation de mouvement. Selon une implémentation préférée, la cellule de l'invention est adoptée pour un circuit ASIC à développement unique, pouvant cibler un nombre important d'applications faisant appel à du filtrage. Selon une autre implémentation préférée, la cellule de l'invention est exploitée dans un circuit VLSI, qui présente l'avantage d'être plus optimisé en matière de surface silicium. Une structure particulière parmi celles possibles est alors avantageusement sélectionnée, de manière à définir une et une seule configuration d'interconnexion satisfaisant une application unique ciblée. Dans ces deux implémentations, le réseau de cellules obtenu et le système d'interconnexion associé, de par leur régularité, conduisent à une simplicité du placement/routage qui repose sur une répétition de blocs identiques. Par ailleurs, le nombre de cellules utilisées est modulable, et peut être réduit ou augmenté. Selon encore une autre implémentation avantageuse, la cellule de l'invention est utilisée dans un circuit FPGA (Field Programmable Gate Array). La cellule de l'invention présente l'avantage de pouvoir exercer des fonctions de filtrage spatio-temporel et d'accès aléatoire. Elle répond donc particulièrement aux besoins d'interpolation de trames rencontrée en conversion de normes vidéo, de conversion de rythme de trames (upconversion pour téléviseur ou PC) et de conversion de format d'image (par exemple du format TV vers le format TVHD). Le filtrage dans l'axe vertical ou horizontal de l'image ou l'axe temporel d'une séquence, qu'impliquent ces applications, engendre l'utilisation de mémoires de ligne et/ou de trame dont le nombre et la gestion sont préférentiellement optimisés. L'architecture reposant sur la cellule de la présente invention autorise cette optimisation, ce qui évite toute nouvelle investigation sur le plan conceptuel. Préférentiellement, au moins une des lignes à retard comprend au moins une RAM dynamique. De manière avantageuse, la seconde entrée de l'additionneur est capable d'être reliée non seulement à la sortie de la ligne à retard principale, mais aussi à la sortie de la ligne à retard auxiliaire. Les moyens de sélection de calcul rendent alors possible la connexion correspondante. Dans une première forme avantageuse de réalisation des lignes de retard, les lignes à retard principale et auxiliaire sont respectivement capables de produire des décalages maximaux d'au moins une ligne et d'un point, la ligne à retard auxiliaire comprenant préférentiellement un registre. Cette réalisation est adaptée à la prise en compte de symétries horizontales. Elle présente l'avantage de ne mettre en #uvre qu'un simple registre pour la ligne à retard auxiliaire. A titre d'exemple, la capacité de décalage de la ligne à retard principale est de dix lignes. Selon une seconde forme avantageuse de réalisation des lignes de retard, les lignes à retard principale et auxiliaire sont respectivement capables de produire des décalages maximaux d'au moins deux lignes et d'au moins une ligne. Cette réalisation est quant à elle adaptée à la fois à la prise en compte de symétries horizontales et verticales, mais elle nécessite l'utilisation de deux lignes avec mémoires FIFO suffisantes (pouvant en particulier comprendre des RAMs). En présence de symétries purement verticales (filtre vertical pur, filtre rectangulaire sans symétries horizontales), le filtre obtenu à partir de telles cellules offre des gains en consommation. A titre d'exemple, les capacités de décalage des lignes à retard principale et auxiliaire sont respectivement de dix lignes et une ligne. En présence de symétries à la fois horizontales et verticales, les symétries horizontales sont préférentiellement privilégiées par la mise en oeuvre de la première forme de réalisation. Ce choix est en effet économique. Cependant, la mise en oeuvre de la seconde forme de réalisation peut rester avantageuse en présence de symétries verticales sans conflit avec des symétries horizontales (filtre en croix, colonne centrale d'un filtre rectangulaire ayant aussi des symétries horizontales). Les données relatives à chaque pixel correspondent aux composantes considérées pour ce pixel. Ainsi, un pixel peut être notamment associé à une seule composante, de luminance ou de chrominance, par l'utilisation d'un mot (par exemple de 10 bits). II peut aussi être associé à trois composantes (une de luminance et deux de chrominance), par l'utilisation de trois mots. Avantageusement, la mémoire de coefficients est constituée d'une mémoire destinée à stocker une banque de coefficients et la cellule comprend des moyens de sélection d'un de ces coefficients. Ainsi, les coefficients peuvent n'être téléchargés qu'une fois lors de l'initialisation du système, et être sélectionnés pour chacune des cellules au moment du filtrage. Dans un mode préféré de réalisation, la cellule comprend des moyens de gel de décalage d'au moins une des lignes à retard. Ces moyens de gel rendent possible une expansion d'image, par des blocages temporels des données en circulation dans les cellules, pouvant correspondre à des gels de point et/ou de ligne. Les moyens de sélection de calcul comprennent avantageusement - un premier multiplexeur ayant une première entrée reliée à l'entrée de la cellule, une deuxième entrée reliée au zéro et une sortie reliée à la première entrée de l'additionneur correspondant à l'entrée de la cellule, et - un second multiplexeur ayant une première entrée reliée à la sortie de la ligne à retard principale, une deuxième entrée reliée au zéro et une sortie reliée à la seconde entrée de l'additionneur correspondant à la sortie de la ligne à retard principale. Par ailleurs, la cellule comprend préférentiellement au moins une ligne de commande destinée à télécharger des informations de commande à au moins un élément de la cellule, les lignes de commande étant choisies parmi: - au moins une ligne d'adressage de coefficients multiplicateurs destinés à la mémoire de coefficients, - au moins une ligne d'adressage de paramètres de sélection de coefficients, destinés à la mémoire de coefficients, ces paramètres consistant préférentiellement en des bits d'adresse, - au moins une ligne d'adressage de données d'activation et de désactivation des moyens de gel de décalage, ces données comprenant préférentiellement des informations sur le gel de décalage en ligne et en point, - au moins une ligne d'adressage de paramètres de sélection de retard, destinés à au moins une des lignes à retard, - au moins une ligne d'adressage de paramètres de sélection d'états, destinés aux moyens de sélection de ligne à retard et/ou de calcul, ces paramètres consistant préférentiellement en des bits de commande d'états, - et une combinaison quelconque de ces lignes d'adressage. Les moyens de sélection de ligne à retard et/ou de calcul comprennent avantageusement des commutateurs, tels que des multiplexeurs, c'est à dire des éléments ayant des fonctions d'aiguillage. De plus, l'invention a pour objet un module d'un filtre linéaire pour traitement d'image, comprenant au moins deux cellules conformes à l'invention. Ces cellules sont disposées en cascade dans le module et consistent en une cellule d'entrée, des cellules intermédiaires et une cellule de sortie. Le module comprend aussi des moyens d'addition reliés aux sorties de calcul des cellules et ayant une entrée reliée à l'entrée de la cellule d'entrée, une sortie de circulation reliée à la sortie de circulation de la cellule de sortie et une sortie de calcul en aval des moyens d'addition. Avantageusement, les cellules sont identiques et/ou au nombre de quatre. De préférence, pour la somme de résultats provenant de plus de deux cellules, les moyens d'addition comprennent des additionneurs ayant chacun deux entrées et une sortie, disposés en série en plusieurs strates, de manière pyramidale. Selon un mode de réalisation avantageux, le module comprend des moyens de sélection d'accès aléatoire, en particulier pour compensation de mouvement, ayant un premier et un second états. Ces moyens sont destinés à relier l'entrée de chacune des cellules à la première entrée de l'additionneur de cette cellule dans le premier état, et la sortie d'au moins une des lignes à retard de chacune des cellules à la première entrée de l'additionneur de l'une de ces cellules dans le second état. Ce mode de réalisation est utilisable en particulier pour de l'interpolation compensée en mouvement. Par la mise en cascade de plusieurs cellules selon l'invention, on aménage en effet une fenêtre glissante dans laquelle on peut accéder à des pixels à une position quelconque et non séquentielle. Dans une forme avantageuse de cette réalisation avec accès aléatoire, la ligne à retard principale de chaque module est associée à une RAM double port, qui permet d'accroître les capacités d'accès. Dans une autre forme de réalisation avantageuse, mettant en oeuvre des mémoires de ligne de capacité suffisante, ces lignes à retard servent elles-mêmes à obtenir les accès voulus. Dans une variante de réalisation, les lignes à retard auxiliaires sont également utilisées pour l'accès aléatoire, préférentiellement en parallèle des lignes à retard principales. L'aménagement des mémoires de lignes pour l'accès aléatoire est flexible et permet de faire varier la dimension de la fenêtre d'accès en fonction des besoins, par exemple de l'amplitude des vecteurs mouvement dans un filtre compensé en mouvement. De plus, selon une réalisation avantageuse, les mémoires de ligne et éventuellement les RAM associées sont prévues pour autoriser une répartition sur deux trames vidéo adjacentes, ce qui permet l'accès simultané à ces deux trames. L'invention concerne aussi un composant de filtrage linéaire pour traitement d'image, comprenant au moins deux modules conformes à l'invention, ce composant comprenant aussi des moyens d'addition reliés aux sorties de calcul d'au moins deux des modules. On voit ainsi que le composant de l'invention peut présenter les divers avantages suivants, séparément ou en combinaison selon les modes de réalisation concernés - offrir une architecture polyvalente et flexible permettant d'accéder à une multitude de structures de filtres spatio-temporels et d'interpolateurs à compensation de mouvement par simple re-programmation software de certains paramètres, - être à la base d'une architecture utilisant un nombre limité de types d'éléments différents réduisant ainsi le temps de développement, - autoriser une architecture utilisant un nombre optimisé d'entrées-sorties, ce qui représente une contrainte forte lorsque l'on cible un composant, - permettre une régularité de l'architecture conduisant à un p lace mentlroutage rapide, dû notamment aux modules de base répétitifs. Avantageusement, les modules sont disposés en cascade et le composant comprend aussi des moyens de sélection d'entrée ayant un premier et un second états, disposés entre au moins un des modules, dit module amont, et le module consécutif, dit module aval. Ces moyens de sélection d'entrée sont destinés à relier l'entrée du module amont à la sortie de circulation du module aval dans le premier état, et à une ligne d'entrée additionnelle dans le second état. Cette réalisation autorise de manière souple la mise en oeuvre de filtrages spatiaux-temporels. En effet, la mise en série de modules permet la circulation d'un signal vidéo successivement à travers ces modules pour un filtrage spatial, tandis que la mise en parallèle de modules permet l'introduction de plusieurs signaux vidéo associés à différents instants et autorise ainsi un filtrage temporel. Avantageusement, les modules du composant sont identiques et/ou au nombre de quatre. De préférence, pour la somme de résultats provenant de plus de deux modules, les moyens d'addition comprennent des additionneurs ayant chacun deux entrées et une sortie, disposés en série en plusieurs strates, de manière pyramidale. L'invention s'applique également à un procédé de filtrage linéaire pour traitement d'image, dans lequel - on envoie séquentiellement sur des entrées de cellules élémentaires en cascade des données relatives à des pixels d'une image à traiter, en imposant respectivement dans ces cellules des retards en transmission de ces données, - on effectue des multiplications par des coefficients multiplicateurs dans au moins une partie de ces cellules sur les données reçues par ces cellules, de façon à obtenir des produits, et on additionne ces produits. Selon l'invention, dans au moins une des cellules - on impose un retard principal et un retard auxiliaire inférieur au retard principal aux données reçues par la cellule, au moyen de deux lignes à retard respectivement principale et auxiliaire en parallèle, - on additionne les données reçues par la cellule, en amont et en aval de la ligne à retard principale de façon à obtenir des sommes et on effectue les multiplications sur ces sommes, et - on transmet en aval de la cellule les données reçues par cette cellule, avec le retard auxiliaire. L'invention sera mieux comprise et illustrée au moyen des exemples suivants de réalisation et de mise en oeuvre, nullement limitatifs, en référence aux figures annexées sur lesquelles - la Figure 1 représente une réalisation particulière d'une cellule élémentaire conforme à l'invention ; - la Figure 2 montre un module de base formé à partir de quatre cellules telles que celle de la figure 1 ; - la Figure 3 montre un réseau final mis en ceuvre dans un composant, formé à partir de quatre modules tels que celui de la figure 2 ; - la figure 4 représente des éléments d'implémentation complémentaires de formatage et de multiplexage du composant de la figure 3 ; - la figure 5 schématise sous forme synoptique un premier exemple de configuration du composant de la figure 4, pour un filtre horizontal et vertical à symétrie horizontale ; - la figure 6 schématise sous forme synoptique un deuxième exemple de configuration du composant de la figure 4, pour un filtre vertical temporel ; - la figure 7 schématise sous forme synoptique un troisième exemple de configuration du composant de la figure 4, pour un filtre horizontal à symétrie impaire; - la figure 8 montre une configuration du composant de la figure 4 pour une expansion horizontale et verticale ; - la figure 9 montre une configuration du composant de la figure 4 pour une compression horizontale et verticale (sous- échantillonnage) ; - la figure 10 illustre une interpolation bilinéaire dans une trame T à partir de deux trames T1 et T2 l'encadrant, - la figure 11 représente un module de base complété par rapport à celui de la figure 2, pour autoriser un accès aléatoire pour compensation de mouvement; - la figure 12 est un schéma bloc montrant le dispositif de génération d'adresse utilisé dans un composant pour accès aléatoire fondé sur quatre modules tels que celui de la figure 11 ; - la figure 13 illustre les éléments d'accès pixel sans interpolation dans un composant pour accès aléatoire fondé sur quatre modules tels que celui de la figure 11 ; - la figure 14 schématise sous forme synoptique un premier exemple de configuration du composant des figures 12 et 13, pour un accès aléatoire à une seule entrée vidéo (accès aléatoire sur 32 lignes) ; - la figure 15 schématise sous forme synoptique un deuxième exemple de configuration du composant des figures 12 et 13, pour un accès aléatoire à deux entrées vidéo (double accès aléatoire sur 16 lignes) ; et - la figure 16 schématise sous forme synoptique un troisième exemple de configuration du composant des figures 12 et 13, pour un accès aléatoire à quatre pixels sans interpolation. Le contenu de ces figures doit être considéré non seulement comme illustrative, mais aussi comme complémentaire de la description. Sur les figures, des éléments identiques ou similaires sont désignés par les mêmes références. Les représentations synoptiques des figures 5 à 7 et 14 à 16 montrent seulement les éléments nécessaires à la compréhension des exemples. Elles sont obtenues en construisant différents filtres par des configurations appropriées des multiplexeurs du système. Ainsi, notamment, ces représentations ne tiennent pas compte du fait que chaque multiplieur est associé à une banque de coefficients et les opérations de décalage et d'arrondi sur les résultats ne sont pas représentées. La présente description comprend une première partie développant des modes de réalisation centrés sur le filtrage linéaire (en référence aux figures 1 à 9), et une seconde partie consacrée à l'accès aléatoire pour compensation de mouvement (en référence aux figures 10 à 16). Les modes de réalisation de la seconde partie sont dérivés de ceux de la première partie, par l'ajout d'éléments spécifiques à certains blocs. Dans tout ce qui suit, un module désigne une entité fonctionnelle fondée sur un assemblage de cellules élémentaires, et un réseau , une entité fonctionnelle fondée sur un assemblage de modules (donc de cellules) et étant à la base d'un composant. Dans les exemples décrits, les cellules d'un réseau sont toutes identiques, et interconnectées entre elles par des multiplexeurs et des additionneurs. De plus, par pixel ou point , on entend ci-après pour simplifier les données relatives à un pixel, transmises par une ligne vidéo. Les exemples d'architecture qui suivent mettent en oeuvre seize cellules de base, les pixels étant représentés par des mots de 10 bits. Dans des variantes de réalisation, le nombre de cellules élémentaires est plus élevé et/ou les largeurs de mot sont différentes. Selon une réalisation avantageuse, plusieurs réseaux sont mis en cascade, l'implémentation d'un réseau se limitant par exemple à seize cellules. Cette réalisation est applicable respectivement aux deux fonctionnalités de filtrage linéaire et d'accès aléatoire. Elle permet de résoudre les problèmes de limitation d'encombrement ou de surface de chaque composant, tout en autorisant l'obtention de filtres plus larges en filtrage linéaire, et d'amplitudes de vecteur plus importantes en accès aléatoire. Une cellule élémentaire 1 (aussi appelée cellule de base) conforme à l'invention (Figure 1) a une entrée 2 d'un signal vidéo (ligne IN VIDEO), une sortie 3 d'un signal vidéo après retard (ligne OUT VIDEO) et une sortie 4 d'un résultat de calcul (ligne OUT CALC). Elle comprend 1 ligne à retard (LAR) 5 gelable (par une ligne 12 de commande WE_LIGNE, avec WE pour Write Enable : validation ou non en écriture) de capacité allant de 1 point à 2055 points sur 10 bits, 1 registre 16 gelable (par une ligne 13 de commande WE POINT) en parallèle avec la LAR 5, qui forme une ligne à retard auxiliaire 6, 1 additionneur 7 à deux entrées 21 et 22 à 10 bits et à une sortie 23 à 11 bits, 2 registres 31 et 32 de 10 bits en tête de l'additionneur 7 (respectivement entrées 21 et 22), 1 registre 33 de 11 bits en sortie 23 de l'additionneur 7, 1 multiplexeur MUX4 pour générer (sortie 53) le signal en sortie 3 de la cellule 1, à partir du registre 16 (entrée 51) ou de la LAR 5 (entrée 52), 1 multiplexeur MUX3 pour générer (sortie 49) une vidéo issue de la LAR 5 (entrée 47) ou du registre 16 (entrée 48), 1 multiplexeur MUX5 permettant de sélectionner en sortie 56 le signal d'entrée (entrée 54) ou un retour pour accès aléatoire (entrée 55), 2 multiplexeurs MUX1 et MUX2, MUX1 ayant une première entrée 41 reliée à la sortie 56 de MUX5, une seconde entrée 42 à 0 et une sortie 43 reliée à l'additionneur 7 et MUX2 ayant une première entrée 44 reliée à la sortie 49 de MUX3, une seconde entrée 45 à 0 et une sortie 46 reliée à l'additionneur 7, permettant de forcer les vidéos à 0 en entrées 21 et 22 de l'additionneur 7, 1 multiplieur 8 de 11 bits (entrée 24) par 12 bits (entrée 25) avec sortie 26 de 23 bits vers la sortie 4 de la cellule 1, 1 banque RAM 9 de 64 coefficients sur 12 bits reliée à l'entrée 25 du multiplieur 8 et adressable par une ligne d'adressage 19 ADR COEF à 6 bits, cette banque 9 comprenant une RAM double port 64x12, 1 registre 12 bits en sortie de la banque 9 des coefficients et 1 registre 34 de 23 bits en sortie du multiplieur 8. La ligne à retard 5 est obtenue à partir de l'association 15 de deux mémoires RAMs à simple port 512x20. Cette association 15 fonctionne (pour le filtrage linéaire) comme un bloc unique dont le retard est compris entre 1 et 2048 cycles d'horloge et est complétée par des registres et des multiplexeurs (qui conduisent à un retard de 2055 points). Dans d'autres modes de réalisation, elle est remplacée par toute autre mémoire de ligne organisée en FIFO, dont la profondeur est programmable. Cette cellule 1 de base réalise le produit entre un pixel vidéo et un des coefficients issus de la banque 9. Les multiplexeurs MUX1 et MUX2 définissent l'entrée vidéo, ou les entrées vidéo additionnées, du multiplieur 8. Le multiplexeur MUX4 définit la vidéo utilisée sur la cellule suivante, le multiplexeur MUX3 dirige la vidéo utilisée sur l'entrée 22 de l'additionneur 7 et le multiplexeur MUX5 dirige la vidéo utilisée sur l'entrée 21 de l'additionneur 7. Pour configurer cette cellule 1, on a besoin des cinq bits de multiplexage, de la valeur de retard programmée dans la LAR 5 et des coefficients contenus dans la banque 9. La configuration de la cellule 1 s'effectue notamment au niveau des cinq multiplexeurs MUX1, MUX2, MUX3, MUX4 et MUX5 sur 10 bits. Cinq bits de positionnement sont donc nécessaires, répartis sur un seul octet. Les coefficients font aussi partie de la configuration : ils sont téléchargés pendant une phase d'in itialisation, tout comme les bits de positionnement des multiplexeurs, et restent les mêmes durant toute la phase de fonctionnement correspondant à la cette configuration. Pendant la phase de fonctionnement, un certain nombre de bits de contrôle sont commutables dynamiquement au rythme pixel. C'est le cas pour - des bits d'adressage (ligne 19) de la banque 9 de coefficients : permettent d'affecter le coefficient adéquat au pixel près, - des bits WE LG (ligne 12) et WE_PT (ligne 13) : permettent de geler le décalage en ligne et en point de la vidéo, nécessaire en particulier dans des filtres d'expansion de format d'image dans la direction verticale et/ou horizontale. La cellule 1 de base exposée est polyvalente et flexible : elle permet de composer des filtres de configuration variable selon les dimensions horizontale et verticale de l'image, ou selon la dimension temporelle. L'interconnexion des cellules de base repose sur trois étapes: formation de modules regroupant chacun quatre cellules de base, association des modules dans un réseau final et sélection et formatage des signaux destinés à être dirigés vers la sortie du réseau. Chaque module 60 (figure 2) comprend 4 cellules 61, 71, 81 et 91 de base en série (ayant respectivement des entrées 62, 72, 82 et 92, des sorties de circulation 63, 73, 83 et 93 et des sorties de calcul 64, 74, 84 et 94), 2 additionneurs 101 et 102 ayant des entrées 23 bits 102 et 103 (additionneur 101) et 106 et 107 (additionneur 105) respectivement reliées aux sorties de calcul 64, 74, 84 et 94 des cellules 61, 71, 81 et 91 et des sorties 24 bits 104 (additionneur 101) et 108 (additionneur 105) et 1 additionneur 110 ayant des entrées 24 bits 111 et 112 respectivement reliées aux sorties 104 et 108 des additionneurs 101 et 105 et une sortie 25 bits 113. On obtient en sortie 114 (sortie de calcul provenant de la sortie de calcul 113 de l'additionneur 110) de ce module 60, la somme des résultats additionnés de quatre multiplieurs 68, 78, 88 et 98 respectivement des cellules 61, 71, 81 et 91. On dispose également (sortie 93 de circulation) de la vidéo d'entrée retardée de la somme des retards produits dans chacune des cellules du module 60. Ce module 60 de quatre cellules est prévu pour ne disposer que d'une seule entrée vidéo 62, mais il peut être configuré indifféremment en mode vertical ou horizontal. Un réseau final 120 (Figure 3) dispose de quatre modules 130, 140, 150 et 160 de quatre cellules de base chacun. L'association de ces modules peut permettre d'obtenir un filtre à 16 coefficients, mais on peut également disposer des quatre résultats des quatre modules séparément ou encore de deux résultats provenant de la somme de deux modules. Le réseau 120 de l'exemple illustré comprend 4 modules 130, 140, 150 et 160 de filtre en cascade, ayant respectivement des entrées 132, 142, 152 et 162, des sorties vidéo directes (sorties de circulation) 133, 143, 153 et 163 et des sorties de calcul 134, 144, 154 et 164, 4 registres 138, 148, 158 et 168 de 10 bits respectivement en sorties de circulation 133, 143, 153 et 163 (sorties vers des lignes OUT VIDE01...4), 4 registres 139, 149, 159 et 169 de 25 bits respectivement en sorties de calcul 134, 144, 154 et 164 163 (sorties vers des lignes OUT CALC1...4), 3 multiplexeurs 141, 151 et 161 associés respectivement aux trois modules 140, 150 et 160, ayant chacun respectivement une sortie 147, 157 et 167 reliée à l'entrée 142, 152 et 162 du module correspondant, une première entrée 145, 155 et 165 sur 10 bits, reliée à la sortie de circulation 133, 143 et 153 du module amont 130, 140 et 150 et une seconde entrée 146, 156 et 166 sur 10 bits, pour des lignes d'entrée vidéo IN VIDE02, IN VIDE03 et IN VIDE04, 2 additionneurs 170 et 175 de 25 bits additionnant deux à deux les résultats de calcul des modules 130 et 140 d'une part (entrées 171 et 172 de l'additionneur 170) et des modules 150 et 160 d'autre part (entrées 176 et 177 de l'additionneur 175), de manière à produire des sommes sur 26 bits (respectivement sorties 173 et 178), 2 registres 174 et 179 de 26 bits respectivement en sorties 173 et 178 des additionneurs 170 et 175 (sorties vers des lignes OUT CALC12 et OUT CALC34), 1 additionneur 180 de 26 bits ayant des entrées 181 et 182 respectivement reliées aux registres 174 et 179, produisant en sortie 183 la somme OUT1234 des résultats de calcul des quatre modules 130, 140, 150 et 160, 1 multiplexeur 195 pour la sélection d'une entrée cascade (ligne IN CASCAD) en provenance d'un réseau amont (entrée 196), ou de la masse (entrée 197), ayant une sortie 198, 1 ensemble 184 de quatre registres de 26 bits en sortie 183 de l'additionneur 180, pour le recalage de OUT1234 sur l'entrée cascade, 1 multiplexeur 185 donnant en sortie 188 la somme OUT1234, soit par connexion directe à la sortie 183 de l'additionneur 180 (entrée 186), soit par l'intermédiaire de l'ensemble 184 de registres (retard pour entrée cascade, entrée 187), 1 additionneur 190 de 30 bits permettant de cascader les réseaux de filtres, ayant une première entrée 191 reliée à la sortie 198 du multiplexeur 195, une seconde entrée 192 reliée à la sortie 188 du multiplexeur 185 et une sortie 193 et 1 registre de 30 bits en sortie 193 de l'additionneur 190 de cascade (sortie vers une ligne OUT CASCAD). Les nouveaux paramètres de configurations nécessaires sont ceux relatifs aux multiplexeurs 141, 151 et 161 (sélections d'entrées vidéo) et au multiplexeur 195 (prise en compte d'un réseau amont). Le formatage et le multiplexage des signaux est effectué de manière à obtenir une répartition des entrées/sorties représentant un compromis entre flexibilité d'accès aux données et nombre d'entrées-sorties. Ce dernier nombre est en général une contrainte forte, notamment dans le cas d'une implémentation VLSI. De manière générale, le nombre et la disposition des multiplexeurs sont optimisés de manière à accéder à différentes combinaisons de filtres prévues par la structure. Dans le mode de réalisation exposé, le réseau 120 complété par des informations de formatage et de multiplexage (comme illustré sur la figure 4) comprend en entrées les lignes suivantes - IN CASCAD : entrée cascade de 30 bits permettant d'associer plusieurs réseaux, - IN VIDEO 1...4 : quatre trains vidéo, permettant d'accéder respectivement aux modules 130, 140, 150 et 160, - ADR COEFF1..2 : adressage des coefficients pré-chargés dans les banques, avec commutation dynamique (au rythme @ pixel), chaque ligne étant commune à deux modules (respectivement modules 130 et 140 d'une part, et 150 et 160 d'autre part), - WE_POINT1..2 ET WE_LIGNE1..2 : gel du décalage en point et en ligne, commun à deux modules (respectivement modules 130 et 140 d'une part, et 150 et 160 d'autre part), - IN VECTX et IN VECTY : entrées vecteur pour l'application accès i aléatoire, - IN TELECHARGEMENT : bus de téléchargement de la configuration incluant le positionnement des multiplexeurs et les coefficients des seize cellules. De plus, le réseau 120 comprend en sortie (figure 4) quatre bus OUT1...OUT4 de 10 bits chacun. Ces derniers correspondent à un multiplexage et à un formatage dont la configuration dépend des besoins de l'application. Ainsi, dans toutes les configurations, il ne peut pas y avoir plus de 40 bits de sortie. Les quatre bus OUT1...OUT4 sont reliés aux sorties OUT VIDE01...OUTVIDE04, OUT CALC1...OUT CALC4, OUT CALC12, OUT CALC34 et OUT CASCAD par des multiplexeurs 200 (entrées OUT VIDE01 et OUT VIDE02), 201 (entrées OUT CALC2 et OUT CALC12), 202 (entrées OUT CALC3 et OUT CALC34), 203 (entrées OUT VIDE03 et OUT VIDE04), 204 (entrées: sortie du multiplexeur 200 et OUT CALC1), 205 (entrées : sorties des multiplexeurs 202 et 203), 206 (entrées : sorties des multiplexeurs 201 et 204), 207 (entrées : sortie du multiplexeur 205 et OUT CALC4), 208 (entrées: sortie du multiplexeur 206 et OUT CASCAD), 209 (entrées: sortie du multiplexeur 201 et OUT CASCAD) et 210 (entrées OUT CALC4 et OUT CASCAD). De plus, des unités de décalage et d'arrondi 211-215 respectivement suivies de registres 216-220 sont respectivement interposées entre les sorties de calcul (OUT CALC1, sortie du multiplexeur 201, OUT CASCAD, OUT CALC4, sortie du multiplexeur 202) et les entrées correspondantes des multiplexeurs 204-210. Dans les exemples d'utilisation ci-dessous, à chaque configuration de filtre correspond une programmation dédiée du formatage et du multiplexage. Par exemple, pour une utilisation en cascade, la sortie présente le signal OUT CASCAD de 30 bits accompagné d'un signal de vidéo source de 10 bits retardé (OUT VIDEO 3 ou 4), ces deux signaux réunis conduisant à un mot de 40 bits. Pour l'utilisation du réseau 120 en filtre temporel, des mémoires de trames organisées en FIFO sont employées dans la constitution du filtre. Selon une forme avantageuse de réalisation, ces mémoires sont intégrées à l'architecture globale. Dans une autre forme avantageuse, elles sont considérées comme des éléments externes insérés seulement en cas de besoin. Les exemples de filtres suivants (exemples 1 à 3) sont obtenus à partir du réseau 120, configuré et paramétré de manières particulières par téléchargement. Exemple 1 : Filtre horizontal-vertical symétrique Les propriétés d'un tel filtre, représenté sur la Figure 5 et référencé 120A, sont les suivantes 1 entrée (IN VIDE01), 1 sortie (OUT VIDE04), 5*5 coefficients à symétrie impaire (C12,C13,C14,C13,C12, C9,C10,C11,C10,C9, C6,C7,C8,C7,C6, C3,C4,C5,C4,C3, CO,C1,C2,C1,CO) # somme des coefficients 1024, # 800 points par 600 lignes, # arrondi et écrêtage actifs. Les symétries horizontales sont prises en compte grâce aux retards appliqués aux LAR 5 des cellules 1 des quatre modules 130, 140, 150 et 160 du réseau 120 (un retard de n points dans une LAR est indiqué sur la figure 5 par la notation n pts dans la LAR). Pour chaque cellule 1 utilisée pour exploiter une symétrie horizontale, l'additionneur 7 reçoit en entrées 21 et 22 respectivement l'entrée et la sortie de la LAR 5, cette dernière produisant un retard égal à l'écart horizontal entre deux points ayant les mêmes coefficients. Par exemple, la première cellule 1 du module 130 a sa LAR 5 qui impose un retard de 4 points et sa banque 9 de coefficients qui est associée au coefficient C0. De plus, la sortie de circulation 3 reçoit la sortie du registre 16 (décalage d'un point). Pour chacune des cellules 1 de saut de ligne (coefficients C2, C5, C8, C11 et C14), l'additionneur 7 reçoit en entrée 21 l'entrée 2 de la cellule 1 et rien en entrée 22. La sortie de circulation 3 reçoit quant à elle la sortie de la LAR 5, cette dernière produisant un retard de positionnement sur la ligne suivante. Par exemple, la troisième cellule 1 du module 130 a sa LAR 5 qui impose un retard de 798 points et sa banque 9 de coefficients qui est associée au coefficient C2. Quant à la dernière cellule 1 (quatrième cellule du module 160), ses fonctions d'addition sont désactivées, les entrées 21 et 22 de l'additionneur 7 étant mises à zéro. Exemple 2 : Filtre vertical temporel Les propriétés d'un tel filtre, représenté sur la Figure 6 et référencé 120B, sont les suivantes 4 entrées IN VIDE01...IN VIDE04, 1 sortie OUT CASCAD, 4*4 coefficients (sans symétrie particulière) (CO,C1,C2,C3, C4,C5,C6,C7, C8,C9,C10,C11, C12,C13,C14,C15) somme des coefficients 1024, 800 points par 600 lignes, arrondi et écrêtage actifs. Les additionneurs de toutes les cellules 1 reçoivent en entrées 22 les sorties des LAR 5 et rien en entrées 21, les LAR 5 imposant des retards de 800 points. De plus, les sorties de circulation 3 reçoivent elles aussi les sorties des LAR 5. Exemple 3 : Filtre horizontal à symétrie impaire Les propriétés d'un tel filtre, représenté sur la Figure 7 et référencé 120C, sont les suivantes 1 entrée IN VIDE01, 1 sortie OUT CASCAD, # 31 coefficients à symétrie impaire (CO,C1,..,C15,..,C1,C0), # somme des coefficients 1024, # 800 points par 600 lignes, # arrondi et écrêtage actifs. Toutes les cellules 1 sont porteuses de symétries horizontales, excepté la cellule 1 associée au point central (coefficient C15). A part cette dernière, les cellules 1 ont donc leurs additionneurs recevant respectivement en entrées 21 et en sorties 22 les entrées et les sorties des LAR 5, et leurs sorties de circulation 3 recevant les sorties des registres 16. Ces LAR 5 imposent des retards dont le plus élevé vaut 30 pour la cellule 1 amont (du module 130), et décroissant de deux points à chaque passage à la cellule 1 suivante, jusqu'à la valeur de 2 points. La dernière cellule 1 (du module 160), associée au coefficient C15, n'est associée à aucune symétrie. Son additionneur 7 reçoit en entrée 21 l'entrée 2 de la cellule 1 et rien en entrée 22, et sa sortie de circulation 3 reçoit la sortie du registre 16. Dans d'autres modes de réalisation du réseau, la LAR 5 est capable de produire des retards de plusieurs lignes. Le réseau ainsi obtenu peut servir à prendre en compte des symétries verticales, avec une amplitude verticale de traitement des symétries correspondant au nombre de lignes de cette LAR. Celle-ci est donc avantageusement capable de générer un retard (au moins) égal au nombre total de lignes de l'image. Dans une variante de réalisation, la capacité de la LAR est inférieure au nombre total de lignes d'une image, et est adaptée à la hauteur maximale des filtres utilisés en pratique dans les applications visées. Préférentiellement, dans les modes de réalisation dans lesquels la LAR 5 est capable de produire des retards de plusieurs lignes, le registre 16 est remplacé par une ligne à retard, ayant avantageusement une capacité d'au moins une ligne. Les performances du filtre pour les passages d'une ligne à une autre peuvent être ainsi améliorées. Exemple 4 : Filtre d'expansion de format d'image Un tel filtre 230, représenté sur la figure 8, met en oeuvre les fonctions de gel à partir d'une architecture fondée sur des modules M1 -M4 identiques à celui 60 de la figure 2, disposés en un réseau 120D. Le filtre 230 comprend - les quatre modules M1 à M4 de quatre coefficients chacun, les modules M1 et M2 étant destinés à une interpolation horizontale et les modules M3 et M4 à une interpolation verticale; - une mémoire de tête 231 pour conversion de rythme, disposée en amont des modules M1-M4, - deux entrées d'horloge H _SOURCE et H -SORTIE dans la mémoire de tête 231, prévues pour donner respectivement les rythmes de l'image source et de l'image de sortie, - des lignes de gel point WE POINT reliées aux modules M1 et M2 et des lignes de gel ligne WE-LIGNE reliées aux modules M3 et M4. La sortie OUTVIDE02 du module M2, correspondant à l'interpolation horizontale, est connectée à l'entrée INVIDE03 du module M3, qui conduit à une interpolation verticale. La séparation des signaux de gel de point et de ligne par groupe de deux modules permet de réaliser dans un même composant une expansion en horizontal et en vertical en une seule passe de traitement. La mémoire de tête 231 permet de générer un changement de rythme pixel ou horloge pixel, qui correspond à celui résultant d'un changement de format d'image. L'écriture dans cette mémoire 231 est réalisée au rythme de l'image source (donné par H _SOURCE), tandis que la lecture de cette mémoire est réalisée au rythme de l'image de sortie (donné par H _SORTIE). De la sorte, seuls les pixels utiles à l'opération de filtrage sont mémorisés. Dans une mise en oeuvre particulière, on effectue un zoom centré sur le milieu de l'image. Le facteur d'expansion dans chaque direction est de 2 et le filtre 230 interpolateur utilise 8 coefficients dans chaque direction. Pour l'interpolation horizontale, pratiquée dans les modules M1 et M2, un gel point est effectué tous les pixels entrant dans le filtre 230 ou tous les deux pixels sortant du filtre 230. La lecture de la mémoire de tête 231 et aussi le décalage pixel dans le filtre 230 sont alors bloqués par le signal WE_POINT. On obtient ainsi en sortie des modules M1 et M2 deux fois plus de pixels qu'en entrée. Pour l'interpolation verticale, le processus est similaire, mais avec un blocage par le signal WE_LIGNE du décalage en ligne, pour chaque nouvelle ligne entrante ou toutes les deux lignes sortant des modules M3 et M4. La conversion de rythme en vertical est aussi assurée par la mémoire de tête 231, ce qui implique la répétition de l'interpolation horizontale pour chaque ligne gelée. Le gel de ligne est en fait effectué dans la mémoire de tête 231 sur les pixels de l'image source. Dans une application particulière de conversion de format d'image, on effectue le passage d'un signal TV vers TVHD. L'image TV est alors mémorisée dans la mémoire de tête 231 au rythme d'horloge TV et elle est relue au rythme TVHD pour réaliser des expansions horizontale et verticale. Exemple 5 : Filtre de sous-échantillonnage (compression) Un tel filtre 240 de compression, représenté sur la figure 9, est également obtenu à partir d'une architecture fondée sur des modules M1-M4 identiques à celui 60 de la figure 2, mais comprend une mémoire de sortie 241 ayant une fonction de conversion de rythme. Cette mémoire 241 dispose d'une entrée WE PT LG de gel de point et de ligne, qui permet une sélection des points et des lignes utiles. Elle comprend également les entrées d'horloge H -SOURCE et H -SORTIE, donnant respectivement les rythmes d'écriture (informations en provenance des modules) et de lecture (image réduite de sortie) de cette mémoire 241. Les fonctions des modules M1 à M4 sont similaires à celles exposées dans l'exemple 4 pour l'expansion. Ce filtre 240 de sous-échantillonnage permet de réduire la taille de l'image en nombre de points et de lignes, cette opération étant accompagnée d'un filtrage qui permet de respecter la loi de Shannon Le filtre 240 fonctionne au rythme de l'image source et il réalise plus d'interpolations que nécessaire, car il fournit un pixel à sa sortie pour chaque pixel d'entrée et une ligne pour chaque ligne d'entrée. La mémoire de sortie 241 effectue la sélection des points et des lignes utiles (signal d'entrée WE PT LG) et est ensuite lue au rythme de l'image réduite de sortie. La partie qui suit de la description est consacrée aux fonctions d'accès aléatoire, qui peuvent être mises en oeuvre au lieu d'un filtrage linéaire à partir de composants similaires à ceux exposés plus haut, moyennant des adaptations simples. Une application particulièrement intéressante de l'accès aléatoire est la compensation de mouvement. Dans une opération correspondante d'accès pixel, illustrée sur la figure 10, l'adresse courante est portée par une trame T en cours d'interpolation, située entre deux trames précédente T1 et suivante T2 (accès aléatoire bidirectionnel). L'interpolation d'un point M de la trame T courante fait appel aux pixels des deux trames T1 et T2 adjacentes, qui sont situés dans l'environnement proche des points d'impact d'un vecteur V d'interpolation. Le point M est calculé par pondération des valeurs des deux points d'impact en fonction d'un coefficient a (compris entre 0 pour T placé sur T1 et 1 pour T placé sur T2) donnant la position relative de la trame T par rapport à T1 et T2. Les points d'impact sont eux-mêmes calculés par interpolation à partir des pixels de leurs environnements. Dans les exemples exposés, on effectue une interpolation bilinéaire en utilisant seulement les quatre pixels A1, B1, C1 et D1 pour T1 et A2, B2, C2 et D2 pour T2 encadrant respectivement chacun des points d'impact M1 et M2. De plus, on définit une précision d'interpolation allant jusqu'au quart de pixel, en utilisant une précision des adresses d'impact au quart de pixel. Ceci conduit à distinguer une partie fractionnaire de ces adresses, représentée par une partie fractionnaire de deux bits. Cette partie fractionnaire détermine les coefficients de l'interpolation faite à partir des quatre pixels encadrant l'impact du vecteur V, respectivement sur les trames T1 et T2. La succession des opérations effectuées est la suivante - Calcul des adresses d'impact A1 et A2 respectivement dans les trames T1 et T2 en fonction d'un vecteur V référencé de T2 vers T1 V1(x,y) = a * V(x,y) V2(x,y) = (1 -a) * V(x,y) ; les quadruplets sont alors repérés par les adresses des pixels A1 et A2 Al (x,y) = M(x,y) + Ent[V1(x,y)] A2(x,y) = M(x,y) + Ent[V2(x,y)] où Ent correspond à l'extraction de la partie entière ; - Interpolation des points d'impact M1 et M2 M1 = A1 * (1-Fr[V1(x)]) * (1-Fr[V1(y)]) + B1 * Fr[V1(x)] * (1-Fr[V1(y)]) + C1 * (1-Fr[V1(x)]) * Fr(V1(y)] + D1 * Fr[V1(x)] * Fr[V1(y)] M2 =A2 * (1-Fr[V1(x)]) * (1-Fr[V1(y)]) + B2 * Fr[V1(x)] * (1-Fr[V1(y)]) + C2 * (1-Fr[V1(x)]) * Fr[V1(y)] + D2 * Fr[V1(x)] * Fr[V1(y)] où Fr représente l'extraction de la partie fractionnaire d'une composante du vecteur ; - Interpolation du point M M=(1-a)*M1 +a*M2. Un composant utilisé pour ces opérations, représenté sur les figures 11 à 13, repose sur l'utilisation de quatre modules 250 similaires à celui 60 de la figure 2. Les modules 250 (figure 11) comprennent chacun quatre cellules 261, 271, 281 et 291 et sont modifiés de la manière suivante - séparation de chaque mémoire de ligne (lignes à retard 265, 275, 285 et 295 respectivement des cellules 261, 271, 281 et 291) de 2048 pixels en deux mémoires RAMs 301 et 302 de 1024 pixels chacune (une RAM de retard une ligne 4 à 1028) conduisant à un total de 32 lignes, - association de RAMs d'accès 256-259 de 64 mots (RAMs double ports 64x40) respectivement aux lignes à retard 265, 275, 285 et 295 des cellules 261, 271, 281 et 291. Ces compléments permettent de disposer d'une profondeur de RAM égale à l'excursion maximum du vecteur en X et en Y, requise pour l'introduction de la fonction aléatoire. Ces excursions maximales du vecteur sont généralement fixées à 31 points et 15 lignes pour la plupart des systèmes à compensation de mouvement. Elles imposent donc de disposer d'un espace mémoire d'une profondeur de 64 points sur 32 lignes. Ces RAMs d'accès 256-259, de plus faible capacité que les lignes à retard 265, 275, 285 et 295 et disposées en parallèle de ces lignes, permettent de remédier à des problèmes de limitation de temps d'accès qui seraient posés par l'utilisation exclusive des RAMs des lignes à retard 265, 275, 285 et 295. Elles sont uniquement utilisées pour l'accès aléatoire. Pour supporter la taille maximum en X du vecteur, il faut des RAMs de 64 points. Cependant, on a avantageusement recours à une duplication de la RAM d'accès, car on peut ainsi accéder en un cycle d'horloge, à deux points consécutifs d'une même ligne, ceux-ci étant écrits à la même adresse. On utilise donc des RAMs d'accès de 64*20 mots par ligne. Les cellules de base 261, 271, 281 et 291 possédant deux lignes de 1024 pixels, il faut lui associer deux RAMs de 64*20, ce qui peut se traduire par une RAM 64*40. Le module 250 est donc enrichi des RAMs 256-259 de 64 mots de 40 bits et de nouveaux multiplexeurs dédiés à la fonction d'accès aléatoire (figure 11) - MUXA et MUXB, qui ont chacun deux sorties respectivement connectées aux RAMs d'accès 256 et 257, - MUXC et MUXD, qui ont chacun deux sorties respectivement connectées aux RAMs d'accès 258 et 259, - MUXE, qui a deux sorties respectivement connectées aux entrées des multiplexeurs MUXA et MUXC, - MUXF, qui a deux sorties respectivement connectées aux entrées des multiplexeurs MUXB et MUXD, - MUXG, qui a une sortie connectée à l'entrée de MUXE et une autre à zéro, - et MUXH, qui a une sortie connectée à l'entrée de MUXF et une autre à zéro. L'écriture dans la RAM d'accès 256-259 se fait en mode pipeline à la fréquence d'horloge de la vidéo d'entrée. A chaque écriture, on écrase la valeur écrite 64 coups d'horloge plus tôt. Au niveau de la relecture, pour obtenir une maille carrée telle que requise, on calcule l'adresse pointée par le vecteur qui sert à sélectionner la paire de pixels suivant l'axe X et la paire de lignes suivant l'axe Y. Dans un autre mode de réalisation pour accès aléatoire, la fonction d'acquisition de pixels fait partie intégrante des mémoires de retard LARs 265, 275, 285 et 295. Celles-ci autorisent dans ce cas des temps de lecture/écriture suffisamment faibles pour permettre le nombre d'accès lecture/écriture total nécessaire à la fois à la fonction de retard et à la fonction d'accès aléatoire. Le principe global ne change pas, les sorties des LARs 265, 275, 285 et 295 étant redirigées respectivement vers les multiplexeurs MUX5, qui accueillent les données d'accès aléatoire. Les modules 250 sont avantageusement agencés de manière à réaliser deux types d'accès - l'accès bidirectionnel, tel qu'illustré par la figure 10, dans lequel deux modules 250 sont affectés à chaque trame T1 et T2; ces deux modules composent alors un bloc: BLOC1 pour la trame T1 et BLOC2 pour la trame T2 ; l'excursion verticale du vecteur est dans ce cas limitée à 7 lignes ; selon une réalisation avantageuse, cette excursion est étendue en cascadant plusieurs réseaux ; - l'accès mono-directionnel, qui consiste à accéder à une seule trame à laquelle toutes les lignes sont allouées ;l'excursion verticale du vecteur est alors maximale et égale à 15 lignes pour un seul réseau. Le réseau reste donc structuré en modules comme dans le cas du filtrage, chaque module 250 prenant en charge soit la totalité de l'interpolation bilinéaire quand le quadruplet de pixels est entièrement issu de ses RAMs, soit une moitié de l'interpolation quand seulement la moitié des pixels proviennent de ses RAMs. L'interpolation avec accès aléatoire comporte finalement deux étapes : la sélection du quadruplet de pixels et l'interpolation bilinéaire. La première étape, sélection du quadruplet, est effectuée grâce à un ensemble de génération d'adresses 310 du réseau 320 considéré (figure 12). Cet ensemble 310 comprend - une unité de base de temps 311, recevant un signal de synchronisation FIELD SYNC et produisant des informations sur un point courant, - une unité d'écriture 312 modulo 64, recevant les informations de point courant de l'unité de base de temps 311 et écrivant des données d'écriture modulo 64 dans les RAMs des cellules, - une unité de calcul 313, recevant les composantes Vx et Vy du vecteur V et le coefficient a respectivement par les lignes IN VECX, IN VECY et ALPHA et générant des produits des composantes Vx et Vy par les facteurs (x ou (a-1), - un additionneur 314 modulo 64, recevant les informations de point courant de l'unité de base de temps 311 et les produits a.Vx et (a-1).Vx de l'unité de calcul 313, et générant des données d'adressage des RAMs contenues dans les blocs BLOC1 et BLOC2 par respectivement deux lignes RAM BLOC1 et RAM-BLOC2, - une unité de décodage partie entière 315, recevant les produits a.Vy et (a-1).Vy de l'unité de calcul 313, et générant des données d'adressage des multiplexeurs MUXA à MUXH des quatre modules du réseau, par respectivement quatre lignes MODULE1 - MODULE4, et - une unité de décodage partie fractionnaire 316, recevant les produits (x.Vx , a.Vy, (a-1).Vx et (a-1).Vy de l'unité de calcul 313, et générant des coefficients destinés aux banques 9 des blocs BLOC1 et BLOC2, par respectivement deux lignes COEFF BLOC1 et COEFF BLOC2. L'étape de sélection du quadruplet met en jeu - une sélection suivant l'axe X, qui s'effectue par l'adressage des RAMs d'accès 256-259 de 64 mots (par l'additionneur 314) ; pour cet adressage, tous les modules 250 et les cellules affectés à une même trame sont adressés de façon identique ; et - une sélection suivant l'axe Y, qui s'effectue à l'aide des multiplexeurs MURA à MUXH de chaque module 250 (par l'unité de décodage partie entière 315) ; si les lignes stockées dans un des modules 250 ne contiennent aucun pixel du quadruplet, alors les multiplexeurs MUXG et MUXH dirigent une valeur nulle sur les multiplieurs 8 ; si elles ne contiennent que deux pixels du quadruplet, alors un seul des deux multiplexeurs MUXG et MUXH est validé; cela signifie que les états des multiplexeurs MURA à MUXF peuvent être communs à tous les modules 250, tandis que ceux des multiplexeurs MUXG et MUXH doivent être dédiés aux modules 250. La seconde étape, l'interpolation bilinéaire, est réalisée au moyen des multiplieurs 8 associés aux banques 9 de coefficients. Le coefficient adressé à chaque multiplieur 8 (par l'unité de décodage partie fractionnaire 316) correspond à la contribution que doit avoir le pixel dans l'opération d'interpolation bilinéaire. L'adressage de la banque 9 de coefficients est donc calculé à partir des parties fractionnaires des adresses d'impact dans T1 et T2, ainsi que des contributions a et (a-1). Le réseau formé à partir des modules 250 correspond par exemple au réseau 120 (figures 3 et 4) utilisé en filtrage linéaire. La configuration décrite ci-dessus s'applique aux cas les plus courants d'utilisation de l'architecture en accès aléatoire, qui font appel à une interpolation bilinéaire. Une réalisation particulière du réseau, référencée 320 et représentée sur la figure 13, s'applique aussi à des cas moins usuels, qui nécessitent des interpolations et manipulations de pixels plus sophistiquées, ne pouvant pas être anticipées et prévues dans une version de base de l'architecture décrite plus haut. Cette réalisation permet de sortir simplement les quatre pixels encadrant le point d'impact sans plus de traitement. Ce fonctionnement s'applique à un accès mono-trame disposant des 32 lignes en vertical, les quatre pixels étant alors présentés respectivement sur les quatre sorties OUT1...OUT4. La réalisation du réseau 320 permet de conserver intacte l'architecture décrite plus haut (fondée sur celle du réseau 120 utilisé en filtrage linéaire), en fa complétant au moyen d'un ensemble 321 d'éléments additionnels pour accès pixel. L'ensemble 321 comprend des multiplexeurs disposés en parallèle sur cette architecture, autorisant l'implémentation de cette fonctionnalité. Pour faciliter la lecture de la figure 13, la série de multiplexeurs 204 à 210 du réseau 320 est rassemblée dans un bloc de sortie 330. L'ensemble 321 comprend trois niveaux de multiplexage - un premier niveau de multiplexage comportant quatre portes OU 335-338 à quatre entrées chacune, recevant respectivement des sorties de calcul tronquées OUT-Cl ...16 constituées des 10 bits de poids les plus faibles des sorties de calcul 4 des seize cellules du réseau 320 ;les quatre entrées de chacune des portes OU 335-338 reçoivent respectivement une des sorties tronquées OUT-Cl ...16 des quatre modules 250 du réseau 320, les portes OU 335-338 recevant respectivement les sorties de la première (261), la deuxième (271), la troisième (281) et la quatrième (291) cellules de chacun des quatre modules 250, - un deuxième niveau de multiplexage comportant quatre multiplexeurs 331-334 de ré-ordonnancement des pixels dans un ordre souhaité, commandés par une commande 322 déterminée par le poids faible de la partie entière de la composante Y de l'adresse du point d'impact M1 ou M2, ces multiplexeurs 331-334 ayant pour entrées respectives les sorties des portes 335 et 337, 336 et 338, 335 et 337, et 336 et 338, - et un troisième niveau de multiplexage comportant quatre multiplexeurs 341-344 de sélection de sortie, commandés par une commande 323 de sélection de sortie, ayant chacun pour première entrée une sortie du bloc de sortie 330 correspondant à un mode de sortie interpolée, ayant pour secondes entrées respectivement les sorties des multiplexeurs 334, 333, 332 et 331, correspondant à un mode de sortie quatre pixels, et ayant pour sorties respectivement des lignes de sortie OUT1-OUT4 sur 10 bits chacune. En fonctionnement d'extraction des pixels encadrant le point d'impact (mode de sortie quatre pixels), les cellules 261, 271, 281, 291... de base fonctionnent de manière similaire au mode de sortie interpolée, mais les multiplieurs 8 sont positionnés en transparent par la sélection d'un coefficient égal à l'unité dans toutes les banques 9 de coefficients. Les portes OU 335 338 dirigent alors par la fonction logique OU les sorties adéquates des cellules vers les quatre sorties OUT1...OUT4 du réseau 320 global. Le ré- ordonnancement est quant à lui effectué par les multiplexeurs 331-334 suivant la parité de la composante Y de l'adresse d'impact. Des exemples d'application de l'accès aléatoire sont donnés ci-dessous (en référence aux figures 14 à 16). Ils sont obtenus à partir de configurations particulières du réseau 320, dont les quatre modules sont référencés respectivement 251-254 et dont les multiplexeurs MUXA-MUXH d'adressage sont représentés sous la forme de barres de multiplexage, respectivement référencées 351-354 pour les modules 251-254. Les figures 14 et 15 montrent les différents chemins empruntés par les données en mode de sortie interpolée et la figure 16, ceux empruntés en mode de sortie quatre pixels. Dans tous les cas présentés, les premières entrées 21 des additionneurs 7 sont connectées aux sorties des multiplexeurs MUXG (première et deuxième cellules) et MUXH (troisième et quatrième cellules) de leurs modules 250 d'appartenance respective, via les multiplexeurs MUX5 de leurs cellules 1, et leurs secondes entrées 22 sont mises à zéro. La maille considérée comporte quatre points A, B, C et D, répartis de la manière suivante A B C D Sur les figures 14 à 16, on a indiqué les pixels obtenus respectivement en sorties des cellules du premier module 351. La lettre de gauche correspond à une valeur paire de la composante Y de l'adresse et celle de droite à une valeur impaire. Les pixels de sorties des quatre cellules du module 351 sont ainsi respectivement D, C, B et A pour Y pair, et B, A, D et C pour Y impair. Le ré-ordonnancement, uniquement vertical, est effectué en mode de sortie interpolée par une sélection adéquate des coefficients dans la banque 9, et en mode de sortie quatre pixels, par les multiplexeurs 331-334. Le mode de sortie interpolée peut se programmer selon deux formes d'implémentation : une première forme avec une seule entrée vidéo et un vecteur pouvant aller de + ou - 15 lignes, et une seconde forme avec deux entrées vidéo et un vecteur d'excursion + ou - 7 lignes. Ces deux situations sont respectivement illustrées dans les exemples 6 et 7 ci-dessous. Exemple 6 - Accès aléatoire sur 32 lignes La configuration du réseau 320 du présent exemple, référencée 320A et représentée sur la figure 14, fait intervenir une seule entrée vidéo IN VIDE01 et une sortie de calcul OUT CASCAD. Les coefficients C0, C1, C2 et C3 sont communs aux quatre modules 251-254. On effectue une analyse sur les deux termes a.Vx et a.Vy. L'adresse des coefficients C0, C1, C2 et C3 est fonction de la partie fractionnaire des valeurs a.Vx et a.Vy et les positionnements des multiplexeurs MUXA-MUXH dépendent de la partie entière de la valeur a.Vy. Pour une valeur de a.Vy = 12,5, par exemple, on accède aux lignes -13 et -12. Exemple 7 - Double Accès aléatoire sur 16 lignes Dans cet exemple, la configuration du réseau 320, référencée 320B et représentée sur la figure 15, repose sur l'utilisation de deux entrées vidéo IN VIDE01 (entrée du module 251) et IN VIDE03 (entrée du module 253) et de la sortie de calcul OUT CASCAD. On calcule au niveau du composant (tel qu'un ASIC), les termes (x.Vy, a.Vx, (a-1).Vx et (a-1).Vy. En effet, lorsque deux accès sont demandés, ils sont tous les deux fonctions d'un même vecteur mais dans des directions opposées. On effectue ainsi une analyse sur les quatre termes ci-dessus, ce qui requiert un double décodage. Exemple cc =0,3,Vx=25,Vy=-5 a.Vy = -1,5 , a.Vx = 7,5 , (a-1).Vx = -17,5 et (a-1).Vy = 3,5. Au niveau des coefficients des multiplieurs 8, deux cas sont possibles suivant l'application. Dans une première forme de mise en oeuvre, on réalise deux interpolations bilinéaires et on garde les deux résultats. Dans ce cas, on télécharge les banques 9 de coefficients CO-C3 et C4-C7 avec les mêmes valeurs. Dans une seconde forme de mise en oeuvre, on réalise une interpolation temporelle entre les deux interpolations bilinéaires. Pour ce faire, on applique sur les coefficients CO-C7 un terme de correction suivant la phase à calculer. Exemple 8 - Accès aléatoire à 4 pixels sans interpolation Dans une telle réalisation, la configuration du réseau 320, référencée 320C et représentée sur la figure 16, permet de récupérer en sortie les quatre points de la maille 2*2 pointée par le vecteur. Le composant comprend 40 broches de sortie, qui rendent possible cette extraction d'informations. En fonctionnement, on applique un coefficient égal à 1 dans toutes les banques 9 de coefficients et on aiguille en sortie les points A, B, C et D, au moyen des sorties tronquées OUT C1-OUT C16 respectivement disposées sur les dix bits de poids les plus faibles des sorties de calcul 4, vers les portes OU 335-338 de l'ensemble 321. On gère le ré-ordonnancement de la maille considérée en fonction de la parité de la composante Y de l'adresse du point d'impact, au moyen des multiplexeurs 331-334. REVENDICATIONS 1. Cellule élémentaire (1 ; 61, 71, 81, 91 ; 261, 271, 281, 291) d'un filtre linéaire pour traitement d'image, comprenant - une entrée (2), destinée à recevoir séquentiellement des données relatives à des pixels d'une image à traiter, - une sortie de circulation (3), destinée à transmettre séquentiellement lesdites données avec un retard, - une sortie de calcul (4), destinée à transmettre séquentiellement des résultats obtenus par un traitement desdites données dans ladite cellule (1 ; 61, 71, 81, 91 ; 261, 271, 281, 291), - une ligne à retard principale (5) ayant une entrée capable d'être reliée à l'entrée (2) de la cellule et une sortie capable d'être reliée à la sortie de circulation (3) et à la sortie de calcul (4) de la cellule, - une mémoire de coefficients (9), prévue pour contenir au moins un coefficient multiplicateur, et - un multiplieur (8) connecté à la mémoire de coefficients (9), ayant une entrée (24) et une sortie (26) capables d'être reliées respectivement à la sortie de la ligne à retard principale (5) et à la sortie de calcul (4) de la cellule, ledit multiplieur (8) étant destiné à effectuer des multiplications sur lesdites données reçues en entrée dudit multiplieur par au moins un desdits coefficients multiplicateurs de la mémoire de coefficients (9) et à transmettre par la sortie (26) dudit multiplieur (8) le résultat obtenu, caractérisée en ce que la ligne à retard principale (5) est capable de produire un décalage maximal correspondant à au moins deux pixels de l'image à traiter et en ce que ladite cellule (1 ; 61, 71, 81, 91 ; 261, 271, 281, 291) comprend aussi - une ligne à retard auxiliaire (6) ayant une entrée et une sortie capables d'être reliées respectivement à l'entrée (2) de la cellule et à la sortie de circulation (3) de la cellule, - un additionneur (7) ayant une première et une seconde entrées (21, 22) capables d'être reliées respectivement à l'entrée (2) de la cellule et à la sortie de la ligne à retard principale (5), et une sortie (23) capable d'être reliée au multiplieur (8), - des moyens de sélection de ligne à retard (MUX4) ayant un premier et un second état, lesdits moyens étant destinés à relier l'entrée (2) de la cellule à la sortie de circulation (3) de la cellule par l'intermédiaire de la ligne à retard principale (5) dans le premier état et par l'intermédiaire de la ligne à retard auxiliaire (6) dans le second état, - et des moyens de sélection de calcul (MUX1, MUX2) ayant au moins deux états, lesdits moyens étant destinés à relier l'entrée (2) de la cellule et/ou la sortie de ladite ligne à retard principale (5) aux entrées correspondantes (21, 22) de l'additionneur (7), dans respectivement lesdits états. 2. Cellule selon la revendication 1, caractérisée en ce que les lignes à retard principale (5) et auxiliaire (6) sont respectivement capables de produire des décalages maximaux d'au moins une ligne et d'un point, la ligne à retard auxiliaire (6) comprenant préférentiellement un registre (16). 3. Cellule selon la revendication 1, caractérisée en ce que les lignes à retard principale et auxiliaire sont respectivement capables de produire des décalages maximaux d'au moins deux lignes et d'au moins une ligne. 4. Cellule selon l'une quelconque des revendications précédentes, caractérisée en ce que la mémoire de coefficients (9) est constituée d'une mémoire destinée à stocker une banque de coefficients et en ce que la cellule (1 ; 61, 71, 81, 91 ; 261, 271, 281, 291) comprend des moyens de sélection (19) d'un desdits coefficients. 5. Cellule selon l'une quelconque des revendications précédentes, caractérisée en ce que la cellule (1 ; 61, 71, 81, 91 ; 261, 271, 281, 291) comprend des moyens de gel de décalage (WE_LIGNE, WE_POINT) d'au moins une desdites lignes à retard (5, 6). 6. Cellule selon l'une quelconque des revendications précédentes, caractérisée en ce que lesdits moyens de sélection de calcul comprennent - un premier multiplexeur (MUX1) ayant une première entrée (41) reliée à l'entrée (2) de la cellule, une deuxième entrée (42) reliée au zéro et une sortie (43) reliée à la première entrée (21) de l'additionneur (7) correspondant à l'entrée (2) de la cellule, et - un second multiplexeur (MUX2) ayant une première entrée (44) reliée à la sortie de la ligne à retard principale (5), une deuxième entrée (45) reliée au zéro et une sortie (46) reliée à la seconde entrée (22 de l'additionneur (7) correspondant à la sortie de la ligne à retard principale (5). 7. Cellule selon l'une quelconque des revendications précédentes, caractérisée en ce que ladite cellule (1 ; 61, 71, 81, 91 ; 261, 271, 281, 291) comprend au moins une ligne de commande destinée à télécharger des informations de commande à au moins un élément de ladite cellule, lesdites lignes de commande étant choisies parmi - au moins une ligne d'adressage de coefficients multiplicateurs (19) destinés à ladite mémoire de coefficients (9), - au moins une ligne d'adressage de paramètres de sélection de coefficients (19), destinés à ladite mémoire de coefficients (9), lesdits paramètres consistant préférentiellement en des bits d'adresse, - au moins une ligne d'adressage de données d'activation et de désactivation desdits moyens de gel de décalage (WE_LIGNE, WE POINT), lesdites données comprenant préférentiellement des informations sur le gel de décalage en ligne et en point, - au moins une ligne d'adressage de paramètres de sélection de retard, destinés à au moins une desdites lignes à retard (5), - au moins une ligne d'adressage de paramètres de sélection d'états, destinés aux moyens de sélection de ligne à retard (MUX4) et/ou de calcul (MUX1, MUX2), - et une combinaison quelconque desdites lignes d'adressage. 8. Module (60; 130, 140, 150, 160; Ml-M4; 250; 251-254) d'un filtre linéaire pour traitement d'image, comprenant au moins deux cellules (61, 71, 81, 91 ; 261, 271, 281, 291) conformes à l'une quelconque des revendications 1 à 7, lesdites cellules étant disposées en cascade dans le module et consistant en une cellule d'entrée (61, 261), des cellules intermédiaires (71, 81 ; 271, 281) et une cellule de sortie (91, 291), ledit module comprenant aussi des moyens d'addition (101, 105, 110) reliés aux sorties de calcul (4) desdites cellules et ayant une entrée (132, 142, 152, 162) reliée à l'entrée (62) de la cellule d'entrée (61, 261), une sortie de circulation (133, 143, 153, 163) reliée à la sortie de circulation (93) de la cellule de sortie (91, 291) et une sortie de calcul (134, 144, 154, 164) en aval des moyens d'addition (101, 105, 110). 9. Module (60; 130, 140, 150, 160; Ml-M4; 250; 251-254) selon la revendication 8, caractérisé en ce qu'il comprend des moyens de sélection d'accès aléatoire (MUX5); en particulier pour compensation de mouvement, ayant un premier et un second états, lesdits moyens étant destinés à relier l'entrée (2) de chacune desdites cellules (1 ; 61, 71, 81, 91 ; 261, 271, 281, 291) à la première entrée (21) de l'additionneur (7) de ladite cellule dans le premier état, et la sortie d'au moins une desdites lignes à retard (5, 6) de chacune desdites cellules à la première entrée (21) de l'additionneur (7) de l'une desdites cellules dans le second état. 10. Composant de filtrage linéaire (120, 320) pour traitement d'image, comprenant au moins deux modules (60 ; 130, 140, 150, 160 ; MI-M4; 250; 251-254) conformes à l'une des revendications 8 ou 9, ledit composant comprenant aussi des moyens d'addition (170, 175, 180, 190) reliés aux sorties de calcul (134, 144, 154, 164) d'au moins deux desdits modules. 11. Composant selon la revendication 10, caractérisé en ce que lesdits modules (60; 130, 140, 150, 160; M1-M4 ; 250; 251-254) sont disposés en cascade et en ce que ledit composant (120, 320) comprend aussi des moyens de sélection d'entrée (141, 151, 161) ayant un premier et un second états, disposés entre au moins un desdits modules (130, 140, 150), dit module amont, et le module consécutif (140, 150, 160), dit module aval, lesdits moyens de sélection d'entrée (141, 151, 161) étant destinés à relier l'entrée (142, 152, 162) du module aval (140, 150, 160) à la sortie de circulation (133, 143, 153) du module amont (130, 140, 150) dans le premier état, et à une ligne d'entrée additionnelle (IN VIDE02, IN VIDE03, IN VIDE04) dans le second état. 12. Procédé de filtrage linéaire pour traitement d'image, dans lequel - on envoie séquentiellement sur des entrées (2) de cellules élémentaires (1 ; 61, 71, 81, 91 ; 261, 271, 281, 291) en cascade des données relatives à des pixels d'une image à traiter, en imposant respectivement dans lesdites cellules des retards en transmission desdites données, - on effectue des multiplications par des coefficients multiplicateurs dans au moins une partie desdites cellules sur les données reçues par lesdites cellules, de façon à obtenir des produits, et on additionne lesdits produits, caractérisé en ce que dans au moins une desdites cellules - on impose un retard principal et un retard auxiliaire inférieur audit retard principal aux données reçues par ladite cellule, au moyen de deux lignes à retard respectivement principale (5) et auxiliaire (6) en parallèle, - on additionne les données reçues par ladite cellule, en amont et en aval de la ligne à retard principale (5) de façon à obtenir des sommes et on effectue lesdites multiplications sur lesdites sommes, - on transmet en aval de ladite cellule les données reçues par ladite cellule, avec ledit retard auxiliaire.