Brevet FR2955195A1 — publié le 20110715

DOMAINE DE L'INVENTION Le domaine de l'invention est celui des dispositifs semi-conducteurs, et plus particulièrement celui des mémoires adressables par contenu réalisées sur un substrat semi-conducteur sur isolant (substrats SeOI selon la terminologie anglo-saxonne « Semiconductor On Insulator). L'invention concerne plus précisément un dispositif de comparaison de données dans une mémoire adressable par contenu, un procédé de commande d'un tel dispositif de comparaison ainsi qu'une mémoire adressable par contenu. ARRIERE PLAN DE L'INVENTION La mémoire adressable par contenu (CAM selon la terminologie anglo-saxonne « Content-Addressable Memory ») est un type de mémoire informatique utilisé dans certaines applications de recherche à très haute vitesse. Contrairement aux mémoires informatiques standards (du type random access memory RAM, notamment) pour lesquelles l'application utilisatrice fournit une adresse mémoire et la RAM retourne la donnée stockée à cette adresse, une mémoire CAM est conçue de manière à ce que l'application utilisatrice fournisse un mot de donnée et la CAM cherche dans toute sa mémoire pour déterminer si ce mot y est stocké. Si le mot est trouvé, la CAM retourne une liste d'une ou plusieurs adresses où le mot a été trouvé. Parce qu'une mémoire CAM est conçue pour chercher dans toute sa mémoire en une seule opération en réalisant de multiples opérations en parallèle, cette mémoire est plus rapide que la RAM dans toutes les applications de recherche. Mais au contraire de la RAM qui présente des cellules de stockage simples (la RAM a pour unique fonction le stockage), la CAM doit également assurer la fonction de comparaison. Chaque cellule de mémoire individuelle doit ainsi disposer de son propre circuit de comparaison pour détecter une correspondance entre le bit stocké dans la cellule et un bit d'entrée proposé. La taille physique d'une cellule CAM (notamment en termes d'unités de surface occupées) est donc plus importante que celle d'une cellule RAM. On a représenté sur la figure 1 une cellule CAM de type NOR classique. Un telle cellule est constituée de dix transistors et occupe typiquement environ 300 unités de surface (300 F2). Une mémoire CAM de ce type est dite binaire en ce qu'elle utilise la recherche systématique de données ne contenant que des 1 et O. On connaît également une mémoire CAM ternaire permettant un troisième état de correspondance appelé "X" ou "quelconque" pour un ou plusieurs bits dans le mot de donnée stocké, permettant l'ajout de flexibilité dans la recherche. On a représenté sur la figure 2 une cellule CAM ternaire de type NOR classique. Cette cellule est constituée de 16 transistors et occupe typiquement 500 unités de surface. On aura compris qu'une cellule CAM conventionnelle occupe ainsi une surface importante. Or un besoin récurrent dans le domaine d'application de l'invention est celui de la miniaturisation des dispositifs semi-conducteurs. Par ailleurs, ne serait-ce que du fait du nombre important de transistors ainsi que par la nécessité de prévoir une ligne d'alimentation dans la matrice mémoire CAM, une mémoire CAM conventionnelle présente l'inconvénient de consommer beaucoup de puissance. BREVE DESCRIPTION DE L'INVENTION L'invention a pour objectif de remédier aux inconvénients précités, et propose à cet effet, selon un premier aspect, un dispositif de comparaison de données dans une mémoire adressable par contenu, comprenant : - une cellule mémoire formée d'un premier transistor stockant un bit de donnée et d'un second transistor stockant le complémentaire du bit de donnée, les transistors étant réalisés sur un substrat semi-conducteur sur isolant et chacun des transistors disposant d'une grille de contrôle avant et d'une grille de contrôle arrière apte à être commandée pour bloquer le transistor ; - un circuit de comparaison configuré pour : o opérer le premier et second transistors en mode de lecture en appliquant à la grille de contrôle avant de chacun des transistors une tension nominale de lecture, tout en contrôlant la grille de contrôle arrière de chacun des transistors l'une avec le bit proposé l'autre avec le complémentaire du bit proposé pour bloquer le transistor passant parmi lesdits transistors en cas de correspondance entre le bit proposé et le bit stocké; et o détecter la présence ou l'absence de courant sur une ligne de source 1 o reliée à la source de chacun des transistors pour indiquer si le bit proposé et le bit stocké sont identiques ou non. Certains aspects préférés, mais non limitatifs, de ce dispositif sont les suivants : ù le circuit de comparaison est configuré pour fournir à la grille de 15 contrôle arrière du premier transistor le complémentaire d'un bit proposé et pour fournir à la grille de contrôle arrière du second transistor le bit proposé; ù le substrat semi-conducteur sur isolant comprend une couche mince de matériau semi-conducteur séparée d'un substrat de base par une couche isolante, et la grille de contrôle arrière d'un transistor est disposée dans le 20 substrat de base sous la couche isolante en regard du canal dudit transistor ; ù la grille de contrôle arrière de chacun des transistors est isolée dans le substrat de base par un caisson de polarisation opposée ; ù la grille de contrôle arrière de chacun des transistors présente une fonction de travail ; 25 - le circuit de comparaison est en outre configuré pour réaliser une opération ternaire au cours de laquelle le bit proposé est ignoré ; ù au cours d'une opération ternaire, le circuit de comparaison opère le premier et le second transistors en mode lecture tout en contrôlant la grille de contrôle arrière de chacun des transistors avec une même tension choisie de 30 manière à bloquer le transistor normalement passant ; 4 ù il comprend en outre un circuit de commande de la cellule mémoire configuré pour opérer les transistors dans des modes de lecture, programmation et effacement en contrôlant la grille de contrôle arrière de chacun des transistors avec une même tension choisie de sorte que le transistor passant n'est pas bloqué ; ù le circuit de commande est en outre être configuré pour opérer les transistors dans un mode de maintien en contrôlant la grille de contrôle arrière de chacun des transistors avec une même tension choisie de sorte que le transistor passant est bloqué ; ù le dispositif comprend deux lignes de grille arrière parallèles entre elles, chacune des lignes de grille arrière étant reliée à la grille de contrôle arrière de l'un des transistors ; ù une ligne de mot relie les grilles de contrôle avant des transistors, la ligne de mot étant perpendiculaire aux lignes de grille arrière ; ù les transistors sont des transistors FET à grille flottante, et la grille de contrôle arrière d'un transistor est disposée dans le substrat de base en étant séparée du canal dudit transistor par la couche isolante ; ù les transistors sont des transistors FET à canal flottant, et la grille de contrôle arrière d'un transistor est disposée dans le substrat de base en étant séparée du canal dudit transistor par la couche isolante ; Selon un autre aspect, l'invention concerne une cellule mémoire à contenu adressable comprenant un premier transistor destiné à stocker un bit de donnée et un second transistor destiné à stocker le complémentaire du bit de donnée, les transistors étant réalisés sur un substrat semi-conducteur sur isolant et chacun des transistors disposant d'une source, d'un drain, d'une grille de contrôle avant et d'une grille de contrôle arrière apte à être commandée pour bloquer le transistor, cellule dans laquelle une ligne de source est reliée à la source de chacun des transistors, une ligne de grille arrière est associée à la grille de contrôle arrière de chacun des transistors, 3o les lignes de grille arrière étant parallèles entre elles et perpendiculaires à la ligne de source. Une ligne de mot parallèle à la ligne de source peut en outre être reliée à la grille de contrôle avant de chacun des transistors. Selon encore un autre aspect, l'invention concerne une matrice mémoire comprenant une pluralité de cellules mémoires conformes à l'invention. Selon encore un autre aspect, l'invention concerne un procédé de comparaison de données dans une mémoire adressable par contenu, la mémoire comprenant une cellule mémoire formée d'un premier transistor stockant un bit de donnée et d'un second transistor stockant le complémentaire du bit de donnée, les transistors étant réalisés sur un substrat semi-conducteur sur isolant et chacun des transistor disposant d'une grille de contrôle avant et d'une grille de contrôle arrière apte à être commandée pour bloquer le transistor, le procédé comprenant les étapes consistant à : opérer le premier et le second transistors en mode lecture en appliquant à la grille de contrôle avant de chacun des transistors une tension nominale de lecture, tout en contrôlant la grille de contrôle arrière de chacun des transistors l'une avec le bit proposé, l'autre avec le complémentaire d'un bit proposé pour bloquer le transistor passant parmi lesdits transistors en cas de correspondance entre le bit proposé et le bit stocké; détecter la présence ou l'absence de courant sur une ligne de source reliée à la source de chacun des transistors pour indiquer si le bit proposé et le bit stocké sont identiques ou non. BREVE DESCRIPTION DES DESSINS D'autres aspects, buts et avantages de la présente invention apparaîtront mieux à la lecture de la description détaillée suivante de formes de réalisation préférées de celle-ci, donnée à titre d'exemple non limitatif, et faite en référence aux dessins annexés sur lesquels : les figures 1 et 2 déjà discutées précédemment, représentent des cellules CAM de type NOR conventionnelles, respectivement binaire et ternaire, dans lesquelles les transistors d'accès ne sont pas représentés par souci de clarté ; la figure 3 est un schéma représentant un mode de réalisation possible d'une cellule mémoire CAM à deux transistors conforme à l'invention ; la figure 4 représente une topologie préférentielle d'une matrice mémoire CAM conforme à l'invention ; la figure 5 représente un équivalent schématique d'une cellule mémoire CAM conforme à l'invention ; les figures 6-8 illustre une opération de comparaison entre un mot proposé de 4 bits et un mot stocké dans 4 cellules mémoire CAM conformes à l'invention, dans le cas respectivement d'une correspondance entre le mot proposé et le mot stocké, d'une non identité entre le mot proposé et le mot stocké et d'une non-recherche d'identité pour l'un des bits du mot proposé. les figures 9a et 9b représentent deux modes de réalisation possibles d'un transistor de type Flash pouvant être utilisé dans une mémoire CAM conforme à l'invention ; les figures 10a-10e représentent différents modes de réalisation possible d'une grille de contrôle arrière. DESCRIPTION DETAILLEE DE L'INVENTION L'invention concerne selon un premier aspect un dispositif de comparaison de données dans une mémoire à contenu adressable comprenant une cellule mémoire stockant un bit de données BIT et un circuit de comparaison configuré pour détecter si un bit proposé DATA est identique au bit stocké BIT. En référence à la figure 3, on a représenté un mode de réalisation possible d'une cellule mémoire utilisée dans un dispositif de comparaison de données selon le premier aspect de l'invention. La cellule mémoire comprend deux transistors : un premier transistor Ti stocke le bit de donnée BIT et un second transistor T2 stocke le complémentaire du bit de donnée BITb. L'un des transistors est ainsi normalement passant (celui stockant la valeur logique « 0 »), tandis que l'autre est normalement bloqué (celui stockant la valeur logique « 1 »). Les transistors sont réalisés sur un substrat semi-conducteur sur isolant et chacun des transistors dispose d'une grille de contrôle avant CG (Control Gate) et d'une grille de contrôle arrière BG1, BG2 (Back Gate) apte à être commandée pour bloquer le transistor. Le substrat semi-conducteur sur isolant comprend une couche mince de matériau semi-conducteur séparée d'un substrat de base par une couche isolante. Le substrat semi-conducteur sur isolant est par exemple un substrat Silicium sur isolant SOI (« Silicon On Insulator ») Selon un mode de réalisation préférentiel, la couche isolante est une couche d'oxyde enterrée (BOX ù Buried Oxide Layer). La couche isolante est par exemple réalisée en SiO2. Chaque transistor Ti, T2 dispose d'une région de source S, d'une région de drain D et d'un canal C s'étendant entre la région de source et la région de drain. La grille de contrôle avant CG s'étend de manière classiquement 3o connue en soi en surface du substrat, au-dessus du canal C. Dans le cadre de l'invention, la grille de contrôle arrière BG1, BG2 d'un transistor est disposée dans le substrat de base sous la couche isolante BOX en regard du canal dudit transistor. La grille de contrôle arrière est typiquement réalisée par implantation de dopants sous la couche isolante. Les régions de drain D et de source S sont préférentiellement en contact avec la couche isolante BOX de sorte que le transistor est totalement déplété (« fully depleted » selon la terminologie anglo-saxonne). La source S peut ainsi être partagée entre deux cellules mémoires adjacentes (cf. les deux cellules adjacentes Cl et C2 sur la figure 4). Un tel partage permet de réduire la surface occupée par une cellule mémoire. On comprendra que l'invention n'est pas limitée à une cellule mémoire totalement déplétée mais s'étend également à une cellule mémoire sur SeOI partiellement déplétée. De manière classiquement connue en soi, il s'avère alors nécessaire d'isoler les cellules le long d'une ligne de la matrice mémoire afin d'isoler entre eux les canaux de cellules adjacentes. Cela est classiquement réalisé par l'intermédiaire de tranchées d'isolation latérales (selon la technique STI - « Shallow Trench Isolation » - désignant une isolation par tranchées peu profondes) s'étendant en profondeur depuis la surface du substrat jusqu'au BOX. Selon un mode de réalisation préférentiel de l'invention, la cellule mémoire est formée de deux transistors Flash à grille flottante. Selon une première variante représentée sur la figure 9a, les transistors Flash sont planaires : la grille flottante 12 est agencée en surface de la couche mince du substrat SeOI et est isolée du canal C qui s'étend dans la couche mince par l'intermédiaire d'une couche diélectrique de grille 13. La grille de contrôle avant 10 est formée au-dessus de la grille flottante 12 en étant isolée de celle-ci par l'intermédiaire d'une couche diélectrique inter-grilles 11. Selon une seconde variante représentée sur la figure 9b, les transistors Flash sont du type à grille flottante enfoncée : la grille flottante 22 est formée 3 o dans une tranchée pratiquée dans le canal C, et isolée du canal par l'intermédiaire d'une couche diélectrique de grille 23 disposée sur les parois 9 de la tranchée. La grille de contrôle avant 20 est formée en surface du substrat tout en étant isolée de la grille flottante 22 par l'intermédiaire d'une couche diélectrique inter-grilles 21. L'invention n'est toutefois pas limitée à l'utilisation de transistors Flash, mais s'étend également à l'utilisation de transistors de type DRAM sur SeOI à canal flottant. Selon une variante préférentielle, la grille de contrôle avant des transistors DRAM vient s'enfoncer dans le canal flottant de manière à en augmenter la longueur apparente, tout en étant isolée du canal par l'intermédiaire d'une couche diélectrique de grille. On définit ainsi des transistors de type RCAT selon la terminologie anglo-saxonne « Recess Channel Array Transistor ». On a représenté à gauche de la figure 3 une vue de dessus d'une cellule CAM à deux transistors Ti, T2 (ici de type Flash à grille flottante enfoncée) selon l'invention avec les différentes lignes d'accès ou de contrôle aux différentes régions des transistors : ligne de source SL reliant les régions de source S de chacun des transistors, lignes de bit BL1, BL2 permettant d'adresser la région de drain de chacun des transistors, ligne de mot WL reliant la grille de contrôle avant de chacun des transistors, lignes de grille arrière BG1, BG2 permettant d'adresser la grille de contrôle arrière de 2 0 chacun des transistors. On a représenté à droite de la figure 3, une vue en coupe selon l'axe AA' du transistor Ti illustrant l'agencement des différentes régions de source S, de drain D, de canal C, de la grille de contrôle avant CG et de la grille de contrôle arrière BG1 et des différentes lignes d'accès BL1, WL, SL. 25 Les zones actives des deux transistors sont arrangées selon deux bandes parallèles. Une ligne de mot WL (Word Line) est reliée à la grille de contrôle avant CG de chacun des transistors, tandis qu'une ligne de source SL (Source Line) est reliée à la source S de chacun des deux transistors. La ligne de mot WL et la ligne de source SL sont perpendiculaires aux 30 bandes de zone active, tandis que le drain de chaque transistor est adressé par une ligne de bit BL1, BL2. Les grilles de contrôle arrière BG1, BG2 sont parallèles aux lignes de bit. Elles sont ainsi perpendiculaires à la ligne de source SL ce qui permet de pouvoir comparer en parallèle tous les bits d'un même mot proposé (la ligne de source est en effet commune à tous les bits d'un mot stocké). Elles sont également ainsi perpendiculaires à la ligne de mot WL ce qui permet de pouvoir comparer simultanément le mot proposé avec plusieurs mots stockés sur des rangées différentes (comparaison sélective par sélection d'une rangée via la ligne de mot WL correspondante). Le dispositif de comparaison de données selon le premier aspect comprend en outre un circuit de circuit de comparaison (non représenté) configuré pour opérer le premier et second transistors en mode lecture en appliquant à la grille de contrôle avant des transistors une tension nominale de lecture, tout en contrôlant la grille de contrôle arrière de chacun des transistors, l'une avec un bit proposé DATA, l'autre avec le complémentaire DATAb du bit proposé de manière à bloquer le transistor passant parmi lesdits transistors en cas de correspondance entre le bit proposé et le bit stocké. Ainsi, on vient agir sur la grille de contrôle arrière du transistor normalement passant (celui stockant la valeur logique « 1 ») pour le bloquer en mode lecture en cas de correspondance entre BIT et DATA, et le laisser passant en cas de non-correspondance entre BIT et DATA. Un transistor dont le canal présente une conductivité de type N et une grille de contrôle arrière de conductivité P (on parle alors de grille de contrôle arrière avec fonction de travail) présente une tension seuil très élevée. Cette tension de seuil peut être réduite en appliquant une tension positive sur la grille de contrôle arrière. Un transistor dont le canal présente une conductivité de type N et une grille de contrôle arrière de conductivité N (on parle alors de grille de contrôle arrière sans fonction de travail) présente une tension seuil nominale qui peut être réduite en appliquant une tension positive sur la grille de contrôle arrière. Cette variation de la tension de seuil du transistor via la grille de contrôle arrière peut être formulée selon Vth = Vto ù a.VBG, où Vth représente la tension de seuil du transistor, VBG la tension appliquée à la grille arrière, Vto la tension de seuil nominale (qui peut être décalée par la fonction de travail selon que l'on utilise une grille de contrôle arrière de type N ou P), et a un coefficient lié à la géométrie du transistor. Le coefficient a peut notamment être modélisé selon a = 3't°xl , où tsi +3.ç2 tox1 désigne l'épaisseur de la couche diélectrique de grille séparant la grille de contrôle avant du canal, tox2 désigne l'épaisseur de la couche isolante 1 o séparant la grille de contrôle arrière du canal et ts; désigne l'épaisseur de la couche mince. A titre d'exemple, l'épaisseur de la couche diélectrique de grille tox1 est de l'ordre de 15 A ou moins pour les technologies courantes ou futures, l'épaisseur de la couche mince ts; est de l'ordre de 25 A ou moins, et 15 l'épaisseur de la couche isolante tox2 est de l'ordre de 50 A ou moins. On notera qu'avec une épaisseur de couche isolante plus importante, il peut être difficile de bloquer complètement un transistor via sa grille de contrôle arrière. Mais il reste cependant possible d'en détecter le courant résiduel de sorte que le principe à l'origine de l'invention trouve également 20 application dans un tel cas de figure. Dans le cadre de l'invention, on choisit préférentiellement d'agir avec la fonction de travail de manière à réduire les contraintes d'épaisseur, de dopage, etc. sur le transistor. On choisit ainsi d'appliquer une tension nulle à la grille de contrôle 25 arrière d'un transistor normalement passant en vue de le bloquer (la grille de contrôle arrière est alors OFF). La tension de seuil du transistor est effectivement alors très élevée. L'application d'une tension positive à la grille de contrôle d'un transistor (la grille de contrôle arrière est alors ON) permet de diminuer la tension de seuil du transistor, de sorte qu'un transistor normalement passant ne sera pas bloqué par la grille de contrôle arrière. Ceci impose d'appliquer à la grille de contrôle arrière du premier transistor stockant le bit de donnée BIT le complémentaire DATAb du bit proposé, et d'appliquer à la grille de contrôle arrière du second transistor stockant le complémentaire BITb du bit de donnée avec le bit proposé DATA. Ainsi si BIT=1, la grille de contrôle arrière du premier transistor est : - OFF en cas de correspondance entre BIT et DATA, de sorte que ce transistor est alors bloqué et ne délivre pas de courant, - ON en cas de non correspondance entre BIT et DATA, de sorte que ce transistor reste passant et délivre du courant. On comprendra que l'invention n'est pas limitée à l'utilisation de la fonction de travail, mais s'étend au cas sans fonction de travail. L'invention n'est pas ailleurs pas limitée à l'utilisation d'une tension de grille de contrôle arrière nulle ou positive mais s'étend également à l'utilisation d'une tension de grille de contrôle arrière nulle ou négative. On détaille en référence aux figures 10aû10e différents modes de réalisation possible d'une grille de contrôle arrière. On notera que sur ces figures, seule la partie qui s'étend en-dessous de la couche isolante a été représentée. D'une manière générale, la grille de contrôle arrière est formée par implantation de dopants sous la couche isolante. Selon un premier mode de réalisation représenté sur les figures 10c et 10e, la grille de contrôle arrière BG s'étend sous toute la largeur de la cellule. Selon un autre mode de réalisation représenté sur les figure 10a, 10b et 10d, la grille de contrôle arrière BG est localisée de manière à ne s'étendre qu'en regard du canal flottant (cas DRAM) ou de la grille flottante (cas Flash). Comme représenté sur la figure 10a, la grille de contrôle arrière BG est isolée du substrat de base 1 par un caisson W (« well » dans la terminologie anglo-saxonne) de polarisation opposée (caisson de type N- pour une grille de contrôle arrière P+ avec fonction de travail pour un transistor de type N). 13 La tension du caisson est choisie de façon à ce que la diode parasite créé par le noeud électrique entre la grille de contrôle arrière et le caisson soit toujours en inverse, la diode isolant la grille de contrôle arrière du caisson et de tout ce qu'il peut contenir (autres grilles de contrôles arrière notamment) Dans le cas où la grille de contrôle arrière s'étend sur toute la largeur de la cellule, il s'avère en outre nécessaire de prévoir des régions d'isolations latérales 20 s'étendant en profondeur dans le substrat de base 1 de manière à isoler la grille de contrôle arrière du substrat de base. Sur la figure 10c, les 1 o régions d'isolation latérales 20 sont enterrées sous la couche isolante BOX. Sur la figure 10e, les régions d'isolation latérales 20 s'étendent depuis la surface, à travers la couche isolante BOX. De telles régions d'isolation latérales 20 peuvent être également être prévues lorsque la grille de contrôle arrière est localisée en contribuant ainsi 15 à l'isolation des caissons. En particulier, on peut dans ce cas de figure n'avoir à réaliser des caissons que pour une seule polarisation de grille de contrôle arrière (par exemple caisson N- d'isolation d'une grille de contrôle arrière P+ alors qu'une grille de contrôle arrière N+ serait agencée directement dans le substrat de base polarisé P-). Sur la figure 10b, les 20 régions d'isolation latérales 20 sont enterrées sous la couche isolante BOX. Sur la figure 10d, les régions d'isolation latérales 20 s'étendent depuis la surface, à travers la couche isolante BOX. Selon une variante de réalisation non représentée, une seconde couche isolante, agencée dans le substrat de base en dessous de la couche 25 isolante BOX, peut contribuer, totalement ou en partie, à isoler une grille de contrôle arrière du substrat de base. Revenant à la description du dispositif de comparaison de données selon le premier aspect de l'invention, le circuit de comparaison est en outre configuré pour détecter la présence ou l'absence de courant sur la ligne de 30 source SL reliée à la source de chacun des transistors pour indiquer si le bit proposé DATA et le bit de donnée BIT sont identiques ou non. Plus précisément, l'absence de courant signifie une correspondance entre BIT et DATA (le transistor passant à bien été bloqué de sorte que la cellule à deux transistors ne fournit aucun courant sur la ligne de source), tandis que la présence de courant signifie que le DATA est différent de BIT (le transistor passant n'a pas été bloqué et la cellule fournit du courant sur la ligne de source). On notera que pour les mémoires CAM conventionnelles des figures 1 et 2, une ligne spécifique (généralement désignée par le terme de « match line ») est prévue pour fournir le résultat de la comparaison. Cette ligne est 1 o différente de la masse. Elle nécessite en outre la réalisation d'interconnections, ce qui est rendu possible par la taille relativement importante de la cellule (10 ou 16 transistors). Dans le cadre de l'invention, on utilise la ligne de source (qui sert généralement de masse pour les cellules) en tant que « match line ». 15 Cela permet d'éviter de devoir réaliser des interconnections, alors que la cellule ne comprend que deux transistors et présente donc un encombrement minimum. Par ailleurs, la ligne de source est parallèle à la ligne de mot, et donc commune à tous les bits d'un mot stocké. On peut ainsi réaliser une 20 comparaison entre un (ou plusieurs) mot(s) stocké(s) et un mot proposé, en parallèle sur tous les bits du mot. Etant donné que la fonction électrique de la ligne de source dans la cellule est sensiblement de constituer la masse, la tension de la ligne de source est à OV (ou aussi proche que possible) en toutes circonstances pour 25 assurer le fonctionnement correct des cellules. En revanche, on peut mesurer la présence ou l'absence de courant dans cette ligne, le passage de courant pouvant se faire à n'importe quelle tension, pourvu que la ligne ait une relativement basse impédance. La présence de courant sur la ligne de source peut être due à n'importe 3o quel bit du mot, ce qui correspond à une différence entre le mot stocké et le 15 mot proposé à la comparaison. Seule l'identité parfaite de tous les bits induit une absence de courant dans la source line. On a représenté sur la figure 4 une topologie préférentielle d'une matrice mémoire CAM conforme à l'invention. Sur cette figure, les pointillés identifient deux cellules mémoires CAM Cl et C2 adjacentes telles que décrites précédemment. On relèvera que de manière avantageuse, la ligne de source SL est commune aux deux cellules Cl et C2 adjacentes le long d'une bande de zone active (la cellule Cl étant adressée par la ligne de mot WL1, la cellule C2 étant adressée par la ligne de mot WL2). L'activation 1 o sélective de WL1 ou de WL2 permet ainsi de comparer un bit proposé avec l'un ou l'autre des bits stockés dans les cellules Cl et C2. On a représenté à droite sur la figure 5 un équivalent électrique de la cellule CAM conforme à l'invention. Dans la mesure où chaque transistor dispose de deux grilles de 15 contrôle (une grille de contrôle avant et une grille de contrôle arrière), chaque transistor fonctionne comme deux transistors en série. La cellule opère ainsi comme une cellule à quatre transistors. L'intérêt d'utiliser des transistors disposant d'une grille de contrôle arrière est que ceux-ci sont bien plus petits que deux transistors en série. 20 En référence à la figure 6, on a représenté un exemple de comparaison d'un mot proposé (comprenant quatre bits : 0100) avec un mot stocké dans quatre cellules CAM conformes à l'invention agencées sur une même ligne d'une matrice mémoire de sorte que les transistors de ces cellules partagent la même ligne de mot WL et la même ligne de source SL. 25 Lorsque le bit proposé (DATA3-DATA2-DATAI-DATAO) est identique au bit stocké (BIT3-BIT2-BIT1-BITO), aucun courant ne circule sur la ligne de source SL. Prenant l'exemple du bit proposé DATAO=O. Le premier transistor de la cellule stocke BITO=O, tandis que le second transistor de la cellule stocke le 30 bit complémentaire BITOb=l. En opération de lecture normale (via l'application d'une tension de lecture nominale VDD sur la ligne de mot WL, 16 et d'une tension de l'ordre de VDD/2 sur la ligne de bit BL1, BL2 de chacun des premier et second transistors), le premier transistor est bloqué, tandis que le second est passant. Dans le cas où l'on agit avec la fonction de travail, le circuit de comparaison selon l'invention est configuré pour réaliser cette opération de lecture normale tout en appliquant sur la grille de contrôle arrière du premier transistor la valeur DATAb et sur la grille de contrôle arrière du second transistor la valeur DATA. Le second transistor est alors bloqué par sa grille de contrôle arrière (cette dernière est OFF car contrôlée par DATAO=O). Il en découle que cette cellule ne délivre aucun sur la ligne 1 o de source SL. Si une parfaite identité est observée entre tous les bits du mot proposé et les bits stockés, aucun courant ne circule sur la ligne de source. On relèvera qu'il n'y a aucune contrainte sur la largeur (nombre de bits) du mot proposé. 15 En référence à la figure 7, on a représenté le même exemple de comparaison d'un mot proposé de 4 bits 0100. Sur cette figure 6, il n'y a a pas d'identité entre le bit DATA2=0 du mot proposé et le bit stocké BIT2=1. Prenant l'exemple du bit proposé DATA2=0. Le premier transistor de la cellule stocke BIT2=1, tandis que le second transistor de la cellule stocke le 20 bit complémentaire BIT2b=0. En opération de lecture normale, le premier transistor est passant, tandis que le second est bloqué. Le circuit de comparaison selon l'invention est configuré pour réaliser cette opération de lecture normale tout en appliquant sur la grille de contrôle arrière du premier transistor la valeur DATAb et sur la grille de contrôle arrière du second 25 transistor la valeur DATA. Le premier transistor reste alors passant (sa grille de contrôle arrière est ON car contrôlé à DATA2b=1). Cette cellule délivre alors du courant sur la ligne de source SL. La présence du courant, pouvant être due à n'importe quel bit du mot, correspond ainsi à une différence entre le mot proposé et le mot stocké. 30 En référence à la figure 8, on a représenté une comparaison ternaire correspondant à un « peu importe » (« don't care » selon la terminologie 17 anglo-saxonne) sur le bit proposé DATAI. Pour une telle comparaison ternaire, les grilles de contrôle arrière de la cellule CAM correspondante (stockant BIT1) sont forcées à OFF, de sorte que le transistor passant devient bloqué et qu'aucun courant n'est alors délivré sur la ligne de source. On a ainsi bloqué la comparaison sur le bit BIT1. Une telle comparaison ternaire correspond par exemple à une recherche sur des mots incomplets ou contenant des fautes. En variante, les deux transistors peuvent être commandés pour chacun stocker un « 0 ». La comparaison sur le bit est alors bloquée, aucun courant ne pouvant être délivré sur la ligne de source par cette paire de transistors. Une telle variante correspond par exemple à une recherche dans une base de données pouvant contenir des « fautes d'orthographe ». On a décrit dans ce qui précède une opération de comparaison entre un bit proposé et le bit stocké dans la cellule CAM conforme à l'invention On décrit ci-après les opérations de lecture, programmation, effacement et maintien de cette cellule. Ces opérations se déroulent de manière classiquement connues en soi pour ce qui concerne les tensions à appliquer à la grille de contrôle avant et au drain de chaque transistor. Pour ce qui concerne les modes de lecture, programmation et effacement, un circuit de commande contrôle en outre la grille de contrôle arrière de chacun des transistors avec une même tension choisie de manière à ce que le transistor passant ne soit pas bloqué. Dans l'exemple ici présenté, la grille de contrôle arrière de chacun des deux transistors est ainsi ON lors de ces opérations. Sans que cela ne soit obligatoire, on peut prévoir un fonctionnement différent pour le mode de maintien, le circuit de commande étant alors configuré pour contrôler la grille de contrôle arrière de chacun des transistors avec une même tension choisie de sorte que le transistor passant soit bloqué. Dans l'exemple ici présenté, la grille de contrôle arrière de chacun des deux transistors serait ainsi OFF de manière à réduire la consommation de puissance lors de cette opération de maintien. Une table de vérité d'une cellule CAM conforme à l'invention est ainsi la suivante. DATA DATAb BIT BITb MODE X X 1 1 Interdit (ce mode est techniquement possible, mais on l'évite car il créerait systématiquement un résultat de non- identité dans les modes de comparaison) 1 1 - - Lecture, Programmation, Effacement 0 0 - - Maintien 0 0 X X Ternaire « peu importe » X X 0 0 Ternaire Comparaison « peu importe » 0 1 0 1 Identité 1 0 0 1 Non-identité 0 1 1 0 Non-identité 1 0 1 0 Identité On aura compris que l'invention n'est pas limitée au dispositif de comparaison selon son premier aspect, mais s'étend également à une cellule mémoire adressable par contenu, à un procédé de comparaison de données dans une mémoire adressable par contenu mettant en oeuvre les principes présentés ci-dessus, ainsi qu'à une mémoire adressable par contenu comprenant une pluralité de cellules à deux transistors conforme à l'invention agencées en lignes et colonnes. L'invention offre en particulier les avantages suivants. • Tout d'abord, en limitant à deux le nombre de transistors nécessaires pour remplir la fonction de comparaison, on réduit considérablement la 19 surface occupée par la cellule CAM. Selon le process technologique utilisé, la cellule CAM de l'invention occupe de l'ordre de 8 F2 en processus mémoire, et moins 30 F2 en processus logique (à comparer à 300 F2 pour la cellule CAM binaire conventionnelle, et à 500 F2 pour la cellule CAM ternaire conventionnelle). • Par ailleurs, dans le cadre de l'invention, la même cellule peut être utilisée pour réaliser une comparaison binaire ou une comparaison ternaire. • La vitesse de comparaison est similaire à celle des cellules conventionnelles. • La mémoire CAM selon l'invention ne nécessite pas de ligne d'alimentation de puissance de sorte qu'on n'observe ni fuites ni pertes de puissance dans la matrice mémoire. • La comparaison est sélective via la ligne de mot, ce qui n'est pas possible avec les cellules conventionnelles. On peut donc choisir simplement le nombre de mots comparés simultanément sans être contraint par l'architecture du circuit mémoire (taille des matrices en particulier). • La cellule CAM selon l'invention fonctionne à faible puissance. • La mémoire CAM est relativement aisée à concevoir : elle ne comprend en effet que de longues zones rectilignes pour toutes les couches, les contacts s'établissant selon des matrices régulières. • Lorsque la cellule CAM selon l'invention utilise des transistors Flash, la programmation initiale est relativement lente comparée à une cellule CAM à transistors SRAM. Mais la cellule CAM selon l'invention consomme moins et présente des dimensions réduites. La cellule CAM peut en outre n'être utilisée que pour des informations qui sont peu fréquemment adressées. Lorsque la cellule CAM selon l'invention utilise des transistors DRAM, un rafraichissement périodique du contenu est nécessaire, mais la programmation est nettement plus rapide qu'avec des transistors Flash. Cette variante de réalisation peut avantageusement être utilisée pour réaliser les tampons mémoire (appelés habituellement Caches L1, L2, L3) d'un microprocesseur. REVENDICATIONS1. Dispositif de comparaison de données dans une mémoire adressable par contenu, comprenant : - une cellule mémoire formée d'un premier transistor (Ti) stockant un bit de donnée (BIT) et d'un second transistor (T2) stockant le complémentaire du bit de donnée (BITb), les transistors étant réalisés sur un substrat semi-conducteur sur isolant et chacun des transistors disposant d'une grille de 1 o contrôle avant (CG) et d'une grille de contrôle arrière (BG1, BG2) apte à être commandée pour bloquer le transistor ; - un circuit de comparaison configuré pour : o opérer le premier et le second transistors en mode de lecture en appliquant à la grille de contrôle avant de chacun des transistors une 15 tension nominale de lecture, tout en contrôlant la grille de contrôle arrière de chacun des transistors l'une avec le bit proposé (DATA) l'autre avec le complémentaire du bit proposé (DATAb) pour bloquer le transistor passant parmi lesdits transistors en cas de correspondance entre le bit proposé (DATA) et le bit stocké (BIT); et 20 o détecter la présence ou l'absence de courant sur une ligne de source (SL) reliée à la source de chacun des transistors pour indiquer si le bit proposé (DATA) et le bit stocké (BIT) sont identiques ou non. 2. Dispositif selon la revendication 1, dans lequel le circuit de comparaison 25 est configuré pour fournir à la grille de contrôle arrière (BG1) du premier transistor le complémentaire d'un bit proposé (DATAb) et pour fournir à la grille de contrôle arrière (BG2) du second transistor le bit proposé (DATA). 3. Dispositif selon l'une des revendications précédentes, dans lequel le 30 substrat semi-conducteur sur isolant comprend une couche mince de matériau semi-conducteur séparée d'un substrat de base par une couche isolante, et la grille de contrôle arrière d'un transistor est disposée dans le substrat de base sous la couche isolante en regard du canal dudit transistor. 4. Dispositif selon l'une des revendications précédentes, dans lequel la grille de contrôle arrière de chacun des transistors est isolée dans le substrat de base par un caisson de polarisation opposée. 5. Dispositif selon l'une des revendications précédentes, dans lequel la grille de contrôle arrière de chacun des transistors présente une fonction de travail. 6. Dispositif selon l'une des revendications précédentes, dans lequel le circuit de comparaison est en outre configuré pour réaliser une opération ternaire au cours de laquelle le bit proposé est ignoré. 7. Dispositif selon la revendication 6, dans lequel au cours d'une opération ternaire, le circuit de comparaison opère le premier et le second transistors en mode lecture tout en contrôlant la grille de contrôle arrière de chacun des transistors avec une même tension choisie de manière à bloquer le transistor normalement passant. 8. Dispositif selon l'une des revendications précédentes, comprenant en outre un circuit de commande de la cellule mémoire configuré pour opérer les transistors dans des modes de lecture, programmation et effacement en contrôlant la grille de contrôle arrière de chacun des transistors avec une même tension choisie de sorte que le transistor passant n'est pas bloqué. 9. Dispositif selon l'une des revendications précédentes, comprenant en outre un circuit de commande de la cellule mémoire configuré pour opérer les transistors dans un mode de maintien en contrôlant la grille de contrôle arrière de chacun des transistors avec une même tension choisie de sorte que le transistor passant est bloqué. 10. Dispositif selon l'une des revendications précédentes, comprenant deux lignes de grille arrière parallèles entre elles, chacune des lignes de grille arrière étant reliée à la grille de contrôle arrière de l'un des transistors. 11. Dispositif selon la revendication 10, dans lequel une ligne de mot relie les grilles de contrôle avant des transistors, la ligne de mot étant perpendiculaire aux lignes de grille arrière. 12. Dispositif selon l'une des revendications 1 à 11, dans laquelle les transistors sont des transistors FET à grille flottante, le substrat semi-conducteur sur isolant comprend une couche mince de matériau semi- conducteur séparée d'un substrat de base par une couche isolante, et la grille de contrôle arrière d'un transistor est disposée dans le substrat de base en étant séparée du canal dudit transistor par la couche isolante. 13. Dispositif selon l'une des revendications 1 à 11, dans laquelle les transistors sont des transistors FET à canal flottant, le substrat semi-conducteur sur isolant qui comprend une couche mince de matériau semi-conducteur séparée d'un substrat de base par une couche isolante, et la grille de contrôle arrière d'un transistor est disposée dans le substrat de base en étant séparée du canal dudit transistor par la couche isolante. 14. Cellule mémoire à contenu adressable comprenant un premier transistor (Ti) destiné à stocker un bit de donnée (BIT) et un second transistor (T2) destiné à stocker le complémentaire du bit de donnée (BITb), les transistors étant réalisés sur un substrat semi-conducteur sur isolant et chacun des transistors disposant d'une source, d'un drain, d'une grille de contrôle avant (CG) et d'une grille de contrôle arrière (BG1, BG2) apte à être 23 commandée pour bloquer le transistor, cellule dans laquelle une ligne de source (SL) est reliée à la source de chacun des transistors, une ligne de grille arrière (BG1, BG2) est associée à la grille de contrôle arrière de chacun des transistors, les lignes de grille arrière étant parallèles entre elles et perpendiculaires à la ligne de source. 15. Cellule selon la revendication 14, dans laquelle une ligne de mot (WL) est reliée à la grille de contrôle avant de chacun des transistors, la ligne de mot étant parallèle à la ligne de source. 16. Mémoire à contenu adressable comprenant une pluralité de cellules mémoires selon l'une des revendications 14 ou 15 agencées en lignes et en colonnes. 15 17. Procédé de comparaison de données dans une mémoire adressable par contenu, la mémoire comprenant une cellule mémoire formée d'un premier transistor stockant un bit de donnée (BIT) et d'un second transistor stockant le complémentaire du bit de donnée (BITb), les transistors étant réalisés sur un substrat semi-conducteur sur isolant et chacun des transistor 20 disposant d'une grille de contrôle avant et d'une grille de contrôle arrière apte à être commandée pour bloquer le transistor, le procédé comprenant les étapes consistant à : opérer le premier et second transistors en mode lecture en appliquant à la grille de contrôle avant de chacun des transistors une tension 25 nominale de lecture, tout en contrôlant la grille de contrôle arrière de chacun des transistors l'une avec le bit proposé (DATA), l'autre avec le complémentaire d'un bit proposé (DATAb) pour bloquer le transistor passant parmi lesdits transistors en cas de correspondance entre le bit proposé (DATA) et le bit stocké (BIT);10détecter la présence ou l'absence de courant sur une ligne de source reliée à la source de chacun des transistors pour indiquer si le bit proposé (DATA) et le bit stocké (BIT) sont identiques ou non.