Brevet FR2800503A1 — publié le 20010504

La présente invention concerne les dispositifs de mémorisation à semiconducteur et, plus particulièrement, un dispositif de mémorisation à mémoire semiconductrice rémanente, qui stocke des informations de plusieurs bits par cellule. On peut classer les dispositifs de mémorisation à circuit intégré rémanents suivant les catégories suivantes: les mémoires mortes (ROM) élaborées par masque; les mémoires mortes électriquement programmables (EPROM); les mémoires mortes programmables et effaçables électriquement (EEPROM); et les mémoires mortes programmables et effaçables instantanément (EEPROM instantanée, dite aussi EEPROM flash). Parmi ces dispositifs de mémorisation, on a récemment discuté de l'utilisation des EEPROM instantanées comme mémoires permanentes pour les ordinateurs personnels du fait que ces mémoires peuvent réaliser une conversion électrique d'informations en même temps qu'elles effacent les données stockées, en un éclair. Dans les dispositifs de mémorisation rémanents classiques, les cellules de mémoire peuvent prendre l'un de deux états de stockage d'informations, à savoir l'état "activé" et l'état "non activé". Un bit d'informations est défini par l'état activé ou non activé d'une cellule de mémoire respective. Pour stocker des données de N bits (N étant un nombre entier naturel de valeur 2 ou plus) dans les dispositifs de mémorisation classiques ci-dessus mentionnés, il faut N cellules de mémoire indépendantes. Lorsqu'on doit augmenter le nombre de bits de données à stocker dans un dispositif de mémorisation possédant des cellules de mémoire à un seul bit, il faut augmenter de façon correspondante le nombre de ces cellules de mémoire. L'information stockée dans une cellule de mémoire à un seul bit classique est déterminée par l'état programmé de la cellule de mémoire, o la programmation sert à stocker l'information voulue dans la cellule de mémoire. L'état de stockage d'informations de la cellule de mémoire est déterminé par la tension de seuil, qui est la tension minimale à appliquer entre les bornes de grille et de source du transistor contenu dans la cellule de mémoire afin de faire commuter le transistor de la cellule dans son état activé. En d'autres termes, les cellules de mémoire ont des états de stockage d'informations différents qui sont fonction de leurs tensions de seuil différentes. Dans le cas des EPROM, des EEPROM et des EEPROM instantanées, on obtient la différence de tension de seuil pour les transistors des cellules en stockant des quantités de charge différentes dans les grilles flottantes des cellules de mémoire. En particulier, chaque transistor de cellule de mémoire possède deux grilles comportant des couches supérieure et inférieure disposées en stratification sur une région de canal située entre des régions de source et de drain. La grille supérieure est appelée la grille de commande. Une partie de stockage de charge est entourée par un matériau isolant se trouvant entre la grille de commande et la région de canal. Cette partie de stockage de charge est appelée une grille flottante. Par conséquent, l'état d'informations stocké dans chaque cellule de mémoire peut être distingué par la tension de seuil de cette cellule de mémoire. Pour lire les informations stockées dans les cellules de mémoire d'un dispositif de mémorisation, il est nécessaire de contrôler l'état de stockage d'informations des cellules de mémoire programmées. Dans ce but, des signaux nécessaires à la lecture de l'information d'état dans une cellule de mémoire sélectionnée sont appliqués à des circuits associés à la cellule de mémoire sélectionnée grâce à l'utilisation d'un circuit décodeur. De ce fait, un signal de courant ou de tension, indicatif de l'information stockée dans la cellule de mémoire, peut être obtenu sur une ligne de bit. De cette manière, l'information programmée d'une cellule de mémoire peut être trouvée par mesure du signal de courant ou de tension obtenu. Ces dispositifs de mémorisation peuvent avoir une structure de groupement de cellules de mémoire du type NI ou du type NON-ET, selon la connexion des cellules de mémoire aux lignes de bit respectives. Dans un groupement de cellules de mémoire du type NI, chaque cellule de mémoire est connectée entre une ligne de bit et une ligne de terre électrique. Dans un groupement de cellules de mémoire du type NON-ET, plusieurs cellules de mémoire sont connectées en série entre les lignes de bit et une ligne de terre électrique. Un groupe de cellules de mémoire connectées en série à une ligne de bit avec les transistors de sélection utilisés pour sélectionner ces cellules de mémoire est appelé une chaîne. Les transistors de sélection peuvent comporter un premier transistor (ou transistor de sélection de chaîne) disposé entre les cellules de mémoire connectées en série et la ligne de bit associée, et un deuxième transistor (ou transistor de sélection de terre électrique) disposé entre les cellules de mémoire connectées en série et une ligne de terre électrique. Lors de la lecture d'informations stockées dans un dispositif de mémorisation du type NON-ET, un transistor sélectionné dans une chaîne sélectionnée commute dans l'état activé. De plus, une tension supérieure à celle appliquée à la grille de commande de la cellule de mémoire sélectionnée est appliquée aux grilles de commande de cellules de mémoire non sélectionnées. De ce fait, les cellules de mémoire non sélectionnées ont une résistance équivalente faible par comparaison avec la cellule de mémoire sélectionnée. L'intensité du courant qui circule dans la chaîne en provenance de la ligne de bit associée dépend donc de l'information stockée dans la cellule de mémoire sélectionnée de la chaîne. La tension ou le courant correspondant à l'information stockée dans chaque cellule de mémoire sélectionnée est mesurée par un circuit de mesure qui est généralement un amplificateur de lecture. De nombreux schémas ont été proposés pour augmenter la capacité de stockage d'informations des dispositifs de mémorisation sans pour autant amener une augmentation de la taille de la puce. Par exemple, les informations d'au moins deux bits peuvent être stockées dans chaque cellule de mémoire. Classiquement, une cellule de mémoire ne stocke qu'un seul bit d'information. Toutefois, lorsque deux bits d'informations sont stockés dans une cellule de mémoire, cette cellule de mémoire est programmée à l'aide de l'une des données suivantes: "00", "01", "10" et "11". Par conséquent, un dispositif de mémorisation peut stocker deux fois plus d'informations avec un même nombre de cellules de mémorisation, par comparaison avec un dispositif de mémorisation dans lequel un seul bit est stocké dans une cellule de mémoire. Lorsqu'on stocke deux bits par cellule de mémoire, on obtient un dispositif de mémorisation à plusieurs états dans lequel la tension de seuil de chaque cellule de mémoire peut être programmée de façon à présenter l'une de quatre valeurs différentes. Puisque la capacité de mémorisation par cellule de mémoire est doublée, on peut réduire la taille de la puce tout en offrant la même capacité de mémorisation. Lorsque le nombre de bits stockés par cellule de mémoire augmente, la capacité de stockage de données du dispositif de mémorisation à plusieurs états augmente. La figure 1 est un schéma de circuit montrant un dispositif de mémorisation classique dans lequel deux bits d'informations par cellule de mémoire sont stockés au moyen de cellules d'une mémoire EEPROM instantanée du type NON-ET. Le dispositif de mémorisation de la figure 1 est décrit dans le brevet des Etats-Unis d'Amérique n 5 768 188 sous le titre "MULTI-STATE NON-VOLATILE SEMICONDUCTOR MEMORY AND METHOD FOR DRIVING THE SAME", auquel on pourra se reporter pour obtenir des renseignements complémentaires. Le dispositif de mémorisation décrit dans le brevet des EUA n 5 768 188 comporte deux chaînes de cellules de mémoire possédant chacune plusieurs cellules de mémoire connectées en série. Deux lignes de bit, associées aux chaînes de cellules de mémoire respectives sont représentées, ces lignes de bit appartenant à des groupes différents. Comme l'homme de l'art le comprendra, on peut utiliser de plus grands nombres de chaînes de cellules de mémoire et de lignes de bit respectives. Sur la figure 1, les cellules de mémoire de chaque chaîne sont désignées respectivement par T1-2 à T1-5 et Tl-8 à T1-11. Un transistor de sélection, T1-1 ou T1-7, est couplé entre chaque chaîne et la ligne de bit associée. Le transistor de sélection commute de façon sélective dans l'état conducteur afin de coupler ensemble la chaîne et la ligne de bit associées. Un autre transistor de sélection, T1-6 ou Tl-12, est disposé entre chaque chaîne et une ligne de source commune CSL afin d'effectuer la commutation sélective de la connexion entre la chaîne et la ligne de source commune CSL. Un transistor du type appauvrissement, Dl-I ou D1-2, est également couplé à chaque ligne de bit afin d'empêcher l'application d'une tension haute. Un transistor de sélection de ligne de bit, S 1-1 ou S 1-2, est également connecté à chaque ligne de bit. Chaque transistor de sélection de ligne de bit sélectionne une ligne de bit respective en réponse à un signal de sélection de ligne de bit, A9 ou A9b. Une ligne de signaux BLLVL est connectée à chacune des lignes de bit via des transistors de transmission TMl-1 et TM1-2. Chaque transistor de transmission applique un signal BLLVL, en provenance de la ligne de signaux BLLVL, à la ligne de bit associée en réponse aux signaux de sélection de ligne de bit A9 et A9b qui leur sont appliqués lorsque la ligne de bit n'est pas sélectionnée. Le signal BLLVL fournit une tension d'empêchement de programmation (par exemple, la tension d'alimentation Vcc) à la ligne de bit non sélectionnée pendant les opérations de programmation et de lecture tandis qu'il y a flottement pendant l'opération d'effacement. Un transistor TI- 13 est également connecté aux lignes de bit afin de fournir un courant statique à la ligne de bit sélectionnée pendant l'opération de lecture. Le dispositif de mémorisation de la figure 1 comporte également des amplificateurs de lecture du type à verrouillage 11-1 et 11-2 (ou I1-3 et 11-4) associés à chaque ligne de bit. Les amplificateurs de lecture verrouillent les données appliquées depuis l'extérieur pendant l'opération de programmation, fournissent une tension correspondant aux données verrouillées à la ligne de bit associée, et verrouillent les données lues pendant l'opération de lecture. Plusieurs transistors T1-17, T1-18, Tl-19, T1-20, T1-21, T1-22 et T1-23 sont prévus, et ces transistors inversent ou maintiennent les états de verrouillage des amplificateurs de lecture en fonction du niveau de ligne de bit sélectionné pendant l'opération de lecture. Cette opération est commandée par des signaux de validation de verrouillage V2,)V1 et 0Rl. Ces signaux de validation de verrouillage sont validés sous la forme d'une impulsion à l'instant o une inversion de l'état de verrouillage est demandée après qu'un temps prédéterminé s'est écoulé depuis le début de l'opération de lecture. Un transistor T 1-15 est également connecté aux lignes de bit. Le transistor TI-15 initialise les dispositifs de verrouillage juste avant l'exécution de l'opération de lecture tout en maintenant les lignes de bit dans l'état de la tension de terre électrique. Le transistor T1-15 est commandé par un signal DCB. Des transistors Tl-14 et T1-16 sont couplés aux lignes de bit respectives. Ces transistors Tl-14 et Tl-16 passent dans l'état conducteur lorsque l'opération de programmation est exécutée, de manière à transmettre les données verrouillées aux lignes de bit respectives. Les transistors T1-14 et T1-16 sont respectivement commandés par des signaux de commande PGM1 et PGM2. La figure 2 montre la distribution des tensions de seuil d'une cellule de mémoire en fonction des données programmées. Comme on peut le voir sur la figure 2, une cellule de mémoire programmée possède une distribution de tensions de seuil prise parmi une distribution de tensions de seuil (indiquant des données à 2 bits de valeur "11") inférieure à -2,0 V, une distribution de tensions de seuil (indiquant des données à 2bits de valeur "10") entre 0,4V et 0,8V, une distribution de tensions de seuil (indiquant des données à 2 bits de valeur "01") entre 1,6 V et 2,0 V, et une distribution de tensions de seuil (indiquant des données à 2 bits de valeur "00") entre 2,8 V et 3,2 V. Les données peuvent être stockées dans quatre états différents dans une seule cellule de mémoire sur la base de ces distributions de tensions de seuil. On se reporte maintenant aux figures 3 et 4, o sont représentées des formes d'ondes de signaux associées aux opérations de programmation et de vérification de la programmation. Le cycle de programmation comporte une opération de programmation, au cours de laquelle des électrons sont injectés dans les grilles flottantes des cellules de mémoire, et une opération de vérification de programmation, au cours de laquelle il est vérifié si chaque cellule de mémoire programmée possède ou non une tension de seuil voulue. Les opérations de programmation et de vérification de programmation se répètent jusqu'à ce que toutes les cellules de mémoire sélectionnées aient des tensions de seuil voulues. On peut limiter le nombre des répétitions de ces opérations à une valeur appropriée, déterminée de façon interne dans le dispositif de mémorisation. Pour exécuter une programmation utilisant l'effet tunnel de Fowler-Nordheim dans une cellule de mémoire sélectionnée, une tension haute faisant fonction d'une tension de programmation prédéterminée (par exemple de 14 à 19 V) est appliquée à la grille de la cellule tandis que le canal de la cellule est maintenu au niveau de la tension de terre électrique. Par conséquent, un champ électrique relativement intense est appliqué entre la grille flottante et le canal. Du fait de ce champ électrique, un effet tunnel apparaît entre la grille flottante et le canal au travers d'une pellicule d'oxyde formée entre la grille flottante et le canal. Les électrons présents dans le canal migrent donc en direction de la grille flottante, de sorte que ces électrons s'accumulent dans la grille flottante. L'accumulation d'électrons dans la grille flottante conduit à une augmentation de la tension de seuil de la cellule. Dans le cas d'un dispositif de mémorisation consistant en plusieurs cellules de données, les opérations de programmation relatives aux cellules de données ne sont pas effectuées une à une, mais sont effectuées simultanément. Toutefois, les cellules de mémoire peuvent demander des tensions de seuil différentes, à savoir des degrés programmés différents. Pour cette raison, il peut être nécessaire de vérifier si les cellules de mémoire ont ou non atteint leurs états voulus, après l'exécution d'une opération de programmation (vérification de la programmation), et d'exécuter une autre opération de programmation pour les cellules de mémoire qui ont été incomplètement programmées, sans que ceci affecte les cellules de mémoire complètement programmées (empêchement de programmation). Ces opérations de programmation et de vérification de programmation se répètent jusqu'à ce que toutes les cellules de mémoire sélectionnées aient atteint leurs tensions de seuil voulues. Dans le dispositif de mémorisation de la figure 1, seule une moitié des cellules de mémoire connectées à une ligne de mot sélectionnée est programmée de la manière ci-dessus discutée. L'opération de programmation et l'opération de vérification de la programmation selon la technique antérieure vont être décrites en liaison avec le diagramme temporel de la figure 3. Comme l'homme de l'art le sait bien, avant l'opération de programmation, toutes les cellules de mémoire présentent une tension de seuil négative suite à un schéma d'effacement, qui est décrit dans le brevet des Etats-Unis d'Amérique n0 5 841 721 intitulé "MULTI-BLOCK ERASE AND VERIFICATION IN A NONVOLATILE SEMICONDUCTOR MEMORY DEVICE AND A METHOD THEREOF". Lorsque l'une des deux lignes de bit est sélectionnée en fonction des signaux de sélection de ligne de bit A9 et A9b, la tension d'alimentation Vcc venant de la ligne BLLVL est appliquée à la ligne de bit non sélectionnée, ce qui empêche la programmation de cellules de mémoire associées à la ligne de bit non sélectionnée, mais connectées à la ligne de mot sélectionnée. Cette technique d'empêchement de la programmation, qui comporte l'application d'une tension d'alimentation à des lignes de bit non sélectionnées est bien connue de l'homme de l'art. Des données devant être programmées sont chargées au niveau de dispositifs de verrouillage Q2 et Q1 qui sont associés à la ligne de bit sélectionnée BL1. On suppose que les données de valeur "00" sont chargées sur les dispositifs de verrouillage Q2 et Q1. Dans ces conditions, si un premier cycle (A) de programmation commence, un signal PGM 1 servant à sélectionner le dispositif de verrouillage Q1 effectue une transition d'un niveau logique bas à un niveau logique haut. Ainsi, la ligne de bit sélectionnée possède un niveau de tension de terre électrique via le transistor T1-16. Une tension haute est appliquée à la ligne de mot à laquelle une cellule de mémoire sélectionnée est connectée. Après qu'un certain temps s'est écoulé, est effectuée l'opération de vérification de la programmation, afin qu'il soit vérifié que la cellule de mémoire sélectionnée a été programmée jusqu'à une tension de seuil voulue (par exemple de 0,4 V à 0, 8 V). Lorsqu'une opération de lecture, c'est-à-dire de mesure, servant à la vérification de la programmation est exécutée, les signaux PGM1, PGM2 et PGM3 sont respectivement maintenus à un niveau logique bas. Si la cellule de mémoire sélectionnée n'est pas suffisamment programmée, la ligne de bit BLI continue d'être maintenue au niveau du potentiel de terre, suite à l'opération de lecture. A ce moment, puisque les états logiques de la ligne de bit sélectionnée BL1 et du dispositif de verrouillage Q1 sont à un niveau logique bas, les transistors T1-19 et T1-20 passent dans l'état non conducteur. Ainsi, comme représenté sur la figure 3, l'état logique du dispositif de verrouillage Q1 ne s'inverse pas, même si le signal d'activation de verrouillage qV1 s'active sous la forme d'une impulsion au cours d'une période de vérification de programmation. L'opération de programmation et l'opération de vérification de programmation qui sont associées au dispositif de verrouillage QI recommencent avec une fréquence de programmation prédéterminée ou jusqu'à ce que la cellule de mémoire sélectionnée ait été programmée suffisamment. Après que le premier cycle (A) de programmation a pris fin, la cellule de mémoire sélectionnée possède une distribution de tensions de seuil de 0,4 V à 0,8 V, correspondant à "10", comme représenté sur les figures 6C et 6D. Si le deuxième cycle (B) du programme de la figure 3 commence, le signal PGM2 servant à sélectionner le dispositif de verrouillage Q2 possédant l'état "0" effectue une transition de l'état logique bas à l'état logique haut. La ligne de bit sélectionnée BLl possède le niveau du potentiel de terre via le transistor T1- 14. Une tension haute est appliquée à la ligne de mot sélectionnée, à laquelle la cellule de mémoire sélectionnée est connectée. Après qu'un certain temps s'est écoulé, est exécutée l'opération de vérification de programmation servant à vérifier si la cellule de mémoire sélectionnée a été programmée jusqu'à une tension de seuil voulue (par exemple de 1,6 V à 2,0 V). Lorsque l'opération de lecture relative à la vérification de la programmation est exécutée, les signaux PGM 1, PGM2 et PGM3 sont respectivement maintenus au niveau logique bas. Si la cellule de mémoire sélectionnée a été programmée suffisamment, la ligne de bit BL1 continue d'être maintenue au niveau de la tension d'alimentation, suite à l'opération de lecture, de façon à faire passer dans l'état conducteur le transistor Tl-17. Si un signal d'activation de verrouillage OV2, comme illustré sur la figure 3, a été activé sous la forme d'une impulsion pendant la période de vérification de programmation du deuxième cycle (B) de programmation, l'état logique du dispositif de verrouillage Q2 s'inverse de "0" en "1". D'autre part, si la cellule de mémoire sélectionnée n'a pas été suffisamment programmée, la ligne de bit sélectionnée BL1 est maintenue au niveau du potentiel de terre, si bien que l'état du dispositif de verrouillage Q2 ne s'inverse pas. Dans ce cas, l'opération de programmation et l'opération de vérification de programmation qui sont associées au dispositif de verrouillage Q2 recommencent avec une fréquence de programmation prédéterminée ou jusqu'à ce que la cellule de mémoire sélectionnée ait été suffisamment programmée. Une fois que le deuxième cycle (B) de programmation a pris fin, la cellule de mémoire sélectionnée possède une distribution de tensions de seuil de 1,6 V à 2,0 V, correspondant à "01", comme représenté sur les figures 6C et 6D. Enfin, si le troisième cycle (C) de programmation de la figure 3 commence, le signal PGM 1 servant à sélectionner le dispositif de verrouillage Q 1, possédant le niveau "0", effectue une transition du niveau logique bas au niveau logique haut. La ligne de bit sélectionnée BL1 possède le niveau du potentiel de terre via le transistor Tl-16. Une tension haute est appliquée à la ligne de mot sélectionnée à laquelle la cellule de mémoire sélectionnée est connectée. Après qu'un certain temps s'est écoulé, est exécutée l'opération de vérification de la programmation afin que soit vérifié si la cellule de mémoire sélectionnée a été programmée jusqu'à une tension de seuil voulue (par exemple de 2,8 V à 3, 2 V). Lorsqu'une opération de lecture servant à la vérification de la programmation est exécutée, les signaux PGM 1, PGM2 et PGM3 sont respectivement maintenus au niveau logique bas. Si la cellule de mémoire sélectionnée est programmée de façon suffisante, la ligne de bit BL1 continue d'être maintenue au niveau de la tension d'alimentation, suite à l'opération de lecture, de manière à mettre dans l'état conducteur le transistor Tl-17. A ce moment, puisque l'état du dispositif de verrouillage Q2 est "1", le transistor T 1-20 passe dans l'état conducteur. Ainsi, si le signal d'activation de verrouillage qVI, comme représenté sur la figure 3, est activé sous la forme d'une impulsion au cours d'une période de vérification de programmation du troisième cycle (C) de programmation, l'état logique du dispositif de verrouillage 1 s'inverse de "0" en "1". Une fois que le troisième cycle (C) de programmation a pris fin, la cellule de mémoire sélectionnée possède une distribution de tensions de seuil de 2,8 à 3,2 V, correspondant à "00", comme représenté sur les figures 6C et 6D. Dans le cas o des données de valeur "01" sont chargées sur les dispositifs de verrouillage Q2 et Q1, l'opération de programmation et l'opération de vérification de programmation sont comme suit. Tout d'abord, si un premier cycle (A) de programmation commence, le signal PGM 1 servant à sélectionner le dispositif de verrouillage Q1 effectue une transition du niveau logique bas au niveau logique haut. Ainsi, la ligne de bit sélectionnée possède un niveau de tension d'alimentation vers le transistor Tl-16. Puisque la ligne de bit BL1 est maintenue sur le niveau de la tension d'alimentation d'un état d'empêchement de programmation, la cellule de mémoire sélectionnée est empêchée d'être programmée pendant le premier cycle (A) de programmation. De ce fait, après le premier cycle (A) de programmation, la tension de seuil de la cellule de mémoire sélectionnée est maintenue de façon à présenter un état d'effacement, c'est-à-dire une distribution de tensions de seuil de -3 V à -2 V, correspondant à "11". Si le deuxième cycle (B) de programmation de la figure 3 commence, le signal PGM2 servant à sélectionner le dispositif de verrouillage Q2 possédant le niveau "0" effectue une transition du niveau logique bas au niveau logique haut. La ligne de bit sélectionnée BL1 possède le niveau du potentiel de terre via un transistor Tl-14. Une tension haute est appliquée à la ligne de mot sélectionnée à laquelle la cellule de mémoire sélectionnée est connectée. Après qu'un certain temps s'est écoulé, est exécutée l'opération de vérification de programmation servant à vérifier si la cellule de mémoire sélectionnée a été programmée jusqu'à une tension de seuil voulue (par exemple de 1,6 V à 2,0 V). Lorsqu'une opération de lecture servant à la vérification de programmation est exécutée, les signaux PGM1, PGM2 et PGM3 sont respectivement maintenus à un niveau logique bas. Si la cellule de mémoire sélectionnée est programmée de façon suffisante, la ligne de bit BL1 continue d'être maintenue au niveau du potentiel d'alimentation, suite à l'opération de lecture, afin de faire passer dans l'état conducteur le transistor T1 -17. Si un signal d'activation de verrouillage 4V2, comme représenté sur la figure 3, est activé sous la forme d'une impulsion au cours de la période de vérification de programmation du deuxième cycle (B) de programmation, l'état logique du dispositif de verrouillage Q2 s'inverse de "0" en "1". Inversement, si la cellule de mémoire sélectionnée n'a pas été programmée de façon suffisante, la ligne de bit sélectionnée BL1 est maintenue au niveau du potentiel de terre, si bien que l'état du dispositif de verrouillage Q2 ne s'inverse pas. Dans ce cas, l'opération de programmation et l'opération de vérification de programmation associées au dispositif de verrouillage Q2 recommencent avec une fréquence de programmation prédéterminée ou jusqu'à ce que la cellule de mémoire sélectionnée ait été programmée de façon suffisante. Une fois que le deuxième cycle (B) de programmation a pris fin, la cellule de mémoire sélectionnée possède une distribution de tensions de seuil de 1,6 V à 2,0 V, correspondant à "01", comme représenté sur les figures 6C et 6D. De façon continue, si un troisième cycle (C) de programmation de la figure 3 commence, le signal PGM 1 servant à sélectionner le dispositif de verrouillage Q1 effectue une transition du niveau logique bas au niveau logique haut. La ligne de bit sélectionnée PLI possède le niveau du potentiel d'alimentation via le transistor Tl-16. Puisque la ligne de bit sélectionnée BLi est maintenue au niveau du potentiel d'alimentation de l'état d'empêchement de programmation, la cellule de mémoire sélectionnée est empêchée d'être programmée pendant le troisième cycle (C) de programmation. De ce fait, après que le troisième cycle (C) de programmation a pris fin, la cellule de mémoire sélectionnée possède une distribution de tensions de seuil de 1,6 V à 2,0 V, correspondant à "01", comme illustré sur la figure 6C et 6D. Dans le cas o des données de valeur "11" sont chargées sur les dispositifs de verrouillage Q2 et Q1, puisque la ligne de bit sélectionnée BL1 est maintenue au niveau du potentiel d'alimentation au cours de chacundes premier, deuxième et troisième cycles (A, B et C) de programmation, la cellule de mémoire sélectionnée est maintenue dans l'état effacé. Ainsi, la cellule de mémoire sélectionnée possède une distribution de tensions de seuil de -3 V à -2 V, comme illustré sur les figures 5A et 5B. Dans le cas o des données de valeur "10" sont chargées sur les dispositifs de verrouillage Q2 et Q1, l'état du dispositif de verrouillage Q1 s'inverse de "0" en "1", comme décrit pour l'opération de programmation de "00". Ainsi, la cellule de mémoire sélectionnée est empêchée d'être programmée au cours des deuxième et troisième cycles (B et C) de programmation. De ce fait, la cellule de mémoire sélectionnée possède une distribution de tensions de seuil de 0,4 V à 0,8 V. Sur les figures 5A à 5D et 6A à 6D, est illustrée une variation de la distribution de tensions de seuil en fonction des données programmées d'une cellule de mémoire sélectionnée pendant l'opération de programmation ci-dessus décrite. Comme on peut le voir sur les figures 6A et 6B, qui représentent la variation de tension de seuil de "01", puisque la cellule de mémoire sélectionnée est empêchée d'être programmée au cours du premier cycle (A) de programmation, la tension de seuil de la cellule de mémoire sélectionnée est décalée de la distribution de tension de seuil de -3 V à -2 V à la distribution de tensions de seuil de 1,6 V à 2,0 V lorsque le deuxième cycle (B) de programmation est effectué. Ainsi, la tension de seuil de la cellule de mémoire sélectionnée est directement décalée, depuis la distribution de tensions de seuil de "11" à la distribution de tensions de seuil de "01" sans avoir été décalée jusque dans la distribution de tensions de seuil de "10". Pour cela, le temps nécessaire pour programmer des données de valeur "01" est plus long que celui d'une cellule de mémoire devant être programmée séquentiellement ou graduellement (par exemple, on se reportera à la description des données de valeur "00"). Ainsi, comme indiqué par une ligne en trait interrompu sur les figures 6A et 6B, la distribution de tensions de seuil (de 1,5 V à 2,1 V) d'une cellule de mémoire devant être programmée avec "01" est élargie par comparaison avec la distribution de tensions de seuil voulue (de 1,6 V à 2,0 V), si bien que la marge entre les distributions de tensions de seuil est diminuée. Par exemple, il y a réduction de la marge entre la distribution de tensions de seuil correspondant à "10" et la distribution de tensions de seuil correspondant à "01", ou bien de la marge entre la distribution de tensions de seuil correspondant à "01" et la distribution de tensions de seuil correspondant à "00". Ceci amène une défaillance de lecture. C'est donc un but de l'invention de produire un dispositif de mémorisation à semiconducteur rémanent qui est en mesure de maintenir de façon constante la marge entre distributions de tensions de seuil après la programmation. Un autre but de l'invention est de produire un dispositif de mémorisation à semiconducteur rémanent qui fait que la tension de seuil d'une cellule de mémoire est séquentiellement décalée en une tension de seuil correspondant à chaque donnée de programmation lors de la programmation de la cellule de mémoire jusqu'à une tension de seuil voulue. Ces buts, avantages et particularités ainsi que d'autres buts, avantages et particularités de la présente invention sont fournis par un dispositif de mémorisation du type mémoire instantanée, qui comprend un circuit de stockage servant à stocker des informations (par exemple des données de deux bits) devant être programmées dans une cellule de mémoire, et un circuit de prise de décision portant sur les données de programmation servant à prendre une décision relativement aux états logiques de bits de données stockés dans le circuit de stockage. Le circuit de prise de décision portant sur les données de programmation décide si au moins un des bits de données stockés dans le circuit de stockage indique la programmation d'une cellule de mémoire, et positionne une ligne de bit au moyen d'une tension de programmation (par exemple, le niveau du potentiel de terre) ou au moyen d'une tension d'empêchement de programmation (par exemple le niveau de tension d'alimentation) en fonction du résultat de la décision. Avec ce dispositif de mémorisation, la cellule de mémoire peut être programmée au moyen d'une tension de seuil voulue à chaque cycle de programmation indépendamment des états logiques des bits des données stockés dans le circuit de stockage. La description suivante, conçue à titre d'illustration de l'invention, vise à donner une meilleure compréhension de ses caractéristiques et avantages; elle s'appuie sur les dessins annexés, parmi lesquels: la figure 1 représente un dispositif de mémorisation à semiconducteur rémanent selon la technique antérieure; la figure 2 montre la distribution des tensions de seuil d'une cellule de mémoire en fonction des données programmées; la figure 3 est un diagramme temporel montrant les signaux de commande associés à une opération de programmation et à une opération de vérification de programmation du dispositif de mémorisation de la figure 1 la figure 4 est un diagramme temporel montrant la tension appliquée à une ligne de mot sélectionnée pendant une opération de programmation et une opération de vérification de programmation; les figures 5A à 5D et 6A à 6D montrent des données de programmation et des variations des tensions de seuil d'une cellule de mémoire pendant la programmation; la figure 7 montre un dispositif de mémorisation à semiconducteur rémanent selon l'invention; la figure 8 est un diagramme temporel montrant des signaux de commande associés à une opération de programmation et une opération de vérification de programmation du dispositif de mémorisation de la figure 7; et les figures 9A à 9D et 10A à 10D montrent des données de programmation et des variations des tensions de seuil d'une cellule de mémoire pendant la programmation. Sur la figure 7, est présenté un schéma de circuit montrant un dispositif de mémorisation selon l'invention qui stocke des informations de 2 bits par cellule de mémoire au moyen de cellules d'une mémoire EEPROM instantanée du type NON-ET. Le dispositif de mémorisation de la figure 7 comprend deux chaînes de cellules de mémoire possédant plusieurs cellules de mémoire connectées en série. Sur la figure 7, les cellules de mémoire de chaque chaîne sont appelées MCI-1 à MC1-4 ou MC1-5 à MC1-8. Des transistors ST1 et ST2 de sélection de chaîne sont connectés respectivement entre des chaînes correspondantes et des lignes de bit correspondantes. Les transistors de sélection de chaîne ST1 et ST2 sont rendus conducteurs ou non conducteurs en fonction de l'état logique d'un signal SSL de ligne de sélection de chaîne venant d'un circuit décodeur de rangée, et ils connectent électriquement des chaînes correspondantes à des lignes de bit correspondantes, respectivement. Des transistors GT1 et GT2 de sélection de potentiel de terre sont chacun disposés entre une chaîne correspondante et une ligne de source commune CSL, et ils passent chacun dans l'état conducteur ou non conducteur en fonction de l'état logique d'un signal de ligne de sélection de potentiel de terre GSL venant du circuit décodeur de rangée 100. Un transistor du type appauvrissement DTi ou DT2 est destiné à empêcher qu'une tension haute ne soit appliquée à une ligne de bit correspondante. Des transistors BLST1 et BLST2 de sélection de ligne de bit sont connectés respectivement à des lignes de bit correspondantes BLI et BL2. Chacun des transistors de sélection de ligne de bit BLST1 et BLST2 sélectionne une ligne de bit correspondante en réponse à un signal A9 ou A9b de sélection de ligne de bit. Une ligne de signaux BLLVL est connectée aux lignes de bit BL1 et BL2 via des portes de transfert TG1 et TG2. Chaque porte de transfert TG1 et TG2 applique un signal venant de la ligne de signaux BLLVL à une ligne de bit non sélectionnée en réponse aux signaux de sélection de ligne de bit A9 et A9b. La ligne de signaux BLLVL fournit une tension d'empêchement de programmation (par exemple un potentiel d'alimentation Vcc) à la ligne de bit non sélectionnée pendant la programmation et la lecture, et elle est maintenue dans un état flottant pendant l'effacement. Les transistors BLST1 et BLST2 et les portes de transfert TG1 et TG2 constituent un circuit de sélection de ligne de bit. Un transistor PMOS (métal-oxyde-semiconducteur à canal p) MP1 faisant fonction de transistor de charge est connecté en commun avec les lignes de bit BL1 et BL2 de façon à fournir un courant constant à une ligne de bit sélectionnée sur la base d'une tension de référence Vref pendant la lecture. Un exemple d'un circuit permettant de produire la tension de référence Vref est décrit dans le brevet des Etats-Unis d'Amérique n 5 748 529 sous le titre "INTEGRATED CIRCUIT MEMORY DEVICES HAVING DIRECT READ CAPABILITY", auquel on pourra se reporter pour obtenir des renseignements complémentaires. Le dispositif de mémorisation selon l'invention comprend en outre des circuits de verrouillage LT2 et LT1, qui correspondent respectivement aux lignes de bit BL1 et BL2, et deux inverseurs verrouillés (INV1 et INV2) et (INV3 et INV4). Chacun des circuits de verrouillage LT2 et LT1 verrouillent les données appliquées depuis l'extérieur pendant la programmation et verrouillent les données lues dans une cellule de mémoire sélectionnée pendant la lecture. Des noeuds QN 1 et QN2 des circuits de verrouillage LT1 et LT2, qui sont connectés à des lignes d'entrée/sortie correspondantes 1/O1 et I02, sont initialisés via des transistors NMOS (métal-oxyde-semiconducteur à canal n) MN8 et MN9 juste avant une opération de lecture. Les transistors MN8 et MN9 sont rendus conducteurs ou non conducteurs en fonction de l'état logique d'un signal d'initialisation PBset. Les circuits de verrouillage LT1 et LT2 forment un circuit de stockage. Dans le dispositif de mémorisation de la figure 7, plusieurs transistors NMOS, nommés MN1 à MN7, sont en outre prévus, et constituent un circuit de commande de stockage. Le circuit de commande de stockage inverse ou maintient l'état de verrouillage des circuits de verrouillage LT 1 et LT2 en fonction du niveau de tension de la ligne de bit qui est sélectionnée pendant la lecture. Cette fonction est commandée par des signaux d'activation de verrouillage "V2, qV1 et)R1. Les signaux d'activation de verrouillage sont produits sous forme d'impulsions au moment o l'inversion d'un état de verrouillage est nécessaire après qu'une opération de lecture a commencé et qu'un certain temps s'est écoulé. Le dispositif de mémorisation selon un mode de réalisation préféré de l'invention comprend une porte NI, notée NOR, et un transistor NMOS, noté MN10, qui forment un circuit de prise de décision se rapportant aux données de programmation. Une borne d'entrée de la porte NI notée NOR est connectée à un noeud QN1 du circuit de verrouillage LT1, et son autre borne d'entrée est connectée à un noeud QN2 du circuit de verrouillage LT2. La source du transistor NMOS noté MNO10 est connectée aux lignes de bit BL1 et BL2 via les transistors BLST1 et BLST2, son drain est connecté à la borne de sortie de la porte NI notée NOR, et sa grille est connectée à une ligne de signal SLT. Le signal SLT est maintenu au niveau logique haut au cours de la période de programmation de chaque cycle de programmation, pendant qu'une opération de programmation est effectuée. Avec cette configuration, lorsqu'au moins l'un des bits de données QN2 et QN i à programmer se trouve au niveau logique bas (lorsqu'une cellule sélectionnée doit être programmée), une ligne de bit sélectionnée est positionnée à une tension de programmation, à savoir au niveau de potentiel de terre électrique, via la porte NI notée NOR et le transistor NMOS noté MNO10 lorsque l'opération de programmation de chaque cycle de programmation est effectuée. Lorsque tous les bits de données à programmer se trouvent au niveau logique haut (lorsqu'une cellule sélectionnée doit être empêchée d'être programmée), la ligne de bit sélectionnée est positionnée à une tension d'empêchement de programmation, c'est-à-dire un potentiel d'alimentation, par le circuit de prise de décision se rapportant aux données de programmation lorsque l'opération de programmation de chaque cycle de programmation est effectuée. La manière dont on doit former le circuit de prise de décision se rapportant aux données de programmation pour réaliser la fonction décrite ci-dessus, au moyen d'autres portes logiques, est évidente. Bien que deux lignes de bit soient représentées sur la figure 7, un plus grand nombre de lignes de bit sont prévues. De plus, il est évident que les éléments constituants associés aux lignes de bit non représentées sont configurées de la même manière que celles de la figure 7. L'opération de programmation et l'opération de vérification de programmation du dispositif de mémorisation selon l'invention vont maintenant être décrits de manière plus détaillée en liaison avec les dessins annexés. La figure 8 est un diagramme temporel permettant de décrire l'opération de programmation et l'opération de vérification de programmation de l'invention. Comme cela est bien connu de l'homme de l'art, toutes les cellules de mémoire sont effacées au moyen d'un schéma d'effacement bien connu, de façon qu'il y ait une tension de seuil négative. Après cela, on réalise la programmation d'une cellule de mémoire sélectionnée comme suit. Tout d'abord, lorsque l'une des lignes de bit BL1 et BL2, à savoir la ligne BL1, est sélectionnée en fonction des signaux A9 et A9b de sélection de ligne de bit, le potentiel d'alimentation Vcc est fourni à la ligne de bit non sélectionnée BL2 à partir de la ligne de signaux BLLVL, de façon qu'une cellule de mémoire associée à la ligne de bit non sélectionnée BL2 soit empêchée d'être programmée. Des bits de données QN2 et QN1 devant être programmés sont chargés sur les circuits de verrouillage LT2 et LT1 associés à la ligne de bit sélectionnée BL1 Opération de programmation et opération de vérification de programmation pour les données "11" On suppose que les données "11" ont été chargées sur les circuits de verrouillage LT2 et LT 1. Dans ces conditions, si un premier cycle (A) de programmation commence, le signal SLT effectue une transition du niveau logique bas au niveau logique haut, comme représenté sur la figure 8. Ceci fait passer le transistor NMOS noté MN10 dans l'état conducteur, si bien que la borne de sortie de la porte NI notée NOR se connecte à la ligne de bit sélectionnée BLi. Puisque les bornes d'entrée de la porte NI notée NOR sont connectées aux noeuds QN2 et QN1 ayant des états de verrouillage d'un niveau logique bas, le signal de sortie de la porte NOR passe au niveau logique haut. De ce fait, la ligne de bit sélectionnée BL1 est mise à la tension d'empêchement de programmation, c'est-à- dire au potentiel d'alimentation, via la porte NOR et le transistor MN 10. Après cela, une tension haute est appliquée à la ligne de mot sélectionnée à laquelle est connectée la cellule de mémoire sélectionnée. Après qu'un certain temps s'est écoulé, la cellule de mémoire sélectionnée est maintenue dans l'état effacé, puisque la ligne de bit BL1 présente la tension d'empêchement de programmation Vcc. Par conséquent, en résultat de l'opération de vérification de programmation, les noeuds QN2 et QN 1 des circuits de verrouillage LT2 et LT 1 sont maintenus dans les états logiques initialement chargés "11". De même que pour le premier cycle (A) de programmation, la ligne de bit sélectionnée BL1 présente la tension d'empêchement de programmation lors des deuxième et troisième cycles (B et C) de programmation, de sorte que les noeuds QN2 et QN1 des circuits de verrouillage LT2 et LT1 sont maintenus dans les états logiques initialement chargés "11". Ainsi, la cellule de mémoire sélectionnée présente une tension de seuil correspondant aux données " 11 ", comme représenté sur les figures 9A et 9B. Opération de programmation et opération de vérification de programmation des données "10" Dans le cas o des bits de données QN2 et QN1 de valeur "10" ont été chargés sur les circuits de verrouillage LT2 et LT1, les opérations de programmation et de vérification sont les suivantes. Tout d'abord, lorsqu'un premier cycle (A) de programmation commence, le signal SLT effectue une transition de l'état logique bas à l'état logique haut, de sorte que le transistor NMOS noté MN10 passe dans l'état conducteur. A ce moment, la borne de sortie de la porte NI notée NOR est connectée à la ligne de bit BL1. Puisque les bornes d'entrée des portes NI notées NOR sont connectées aux noeuds QN2 et QN1 possédant un niveau logique bas et un niveau logique haut, le signal de sortie de la porte NOR passe au niveau bas. De ce fait, la ligne de bit sélectionnée BLi se positionne sur le niveau de potentiel de terre (c'est-à-dire la tension de programmation) via la porte NOR et le transistor MN10. Après cela, une tension haute est appliquée à la ligne de mot sélectionnée à laquelle est connectée la cellule de mémoire sélectionnée. Après qu'un certain temps s'est écoulé, est effectuée l'opération de vérification de programmation servant à vérifier si la cellule de mémoire sélectionnée a été programmée de façon à passer de la tension de seuil (par exemple, de -3 V à -2 V) de l'état effacé à la tension de seuil voulue (par exemple, de 0,4 V à 0,8 V). Lorsqu'une opération de mesure (appelée aussi opération de lecture) se rapportant à la vérification de la programmation est effectuée, les signaux SLT et BLLVL sont maintenus respectivement au niveau logique bas. Si la cellule de mémoire sélectionnée est programmée de manière suffisante, la ligne de bit BLI est maintenue au potentiel d'alimentation du fait de l'opération de mesure. Puisque la ligne de bit sélectionnée BLI et le noeud QN2 du circuit de verrouillage LT2 sont maintenus au niveau du potentiel d'alimentation, les transistors MN3 et MN4 passent dans l'état conducteur. Dans ces conditions, lorsqu'un signal d'activation de verrouillage V1 est produit sous forme d'impulsion lors de la période de vérification de programmation du premier cycle (A) de programmation, l'état logique du noeud QN1 du circuit de verrouillage LT 1 s'inverse en passant de "0" à "1". Inversement, si la cellule de mémoire sélectionnée n'est pas programmée de façon suffisante, la ligne de bit BL1 est maintenue au niveau du potentiel de terre, en résultat de l'opération de mesure. Puisque la ligne de bit sélectionnée BL1 et le noeud QN2 du circuit de verrouillage LT2 ont respectivement un niveau logique bas et un niveau logique haut, le transistor MN3 passe dans l'état non conducteur et le transistor MN4 passe dans l'état conducteur. Dans ces conditions, bien que le signal d'activation de verrouillage V1 ait été produit sous forme d'impulsion pendant la période de vérification de programmation du premier cycle (A) de programmation, l'état logique du noeud QN1 du circuit de verrouillage LT1 ne s'inverse pas. Les opérations de programmation et de vérification se rapportant au circuit de verrouillage LT1 recommencent jusqu'à ce que la cellule de mémoire sélectionnée ait été programmée de façon suffisante (ou bien avec une fréquence de programmation prédéterminée). Une fois que le premier cycle (A) de programmation a été achevé, les états de verrouillage QN2 et QN1 des circuits de verrouillage LT2 et LT1 changent en passant de "10" à "11". Ceci amène la cellule de mémoire sélectionnée à être empêchée d'être programmée lors des deuxième et troisième cycles (B et C) de programmation, comme décrit ci-dessus. De ce fait, après que les premier, deuxième et troisième cycles de programmation ont été effectués, la cellule de mémoire sélectionnée possède une distribution de tensions de seuil de 0,4 V à 0,8 V, comme représenté sur les figures 9C et 9D. Opération de programmation et opération de vérification de programmation des données "01" Après que les données "01" ont été chargées dans les circuits de verrouillage LT2 et LT1, un premier cycle (A) de programmation commence lorsque le signal SLT effectue une transition de l'état logique bas à l'état logique haut. Le transistor NMOS noté MN10 devient conducteur en fonction de la transition du niveau bas au niveau haut du signal SLT, de sorte que la borne de sortie de la porte NI notée NOR se connecte à la ligne de bit sélectionnée BL1 via le transistor NMOS noté BLST1. Puisque les noeuds QN2 et QN1 des circuits de verrouillage LT2 et LTi ont respectivement un niveau logique haut et un niveau logique bas, la ligne de bit sélectionnée BLl présente le niveau de potentiel de la terre électrique. Après cela, on applique une tension haute à la ligne de mot sélectionnée de façon que la cellule de mémoire sélectionnée soit programmée jusqu'à la tension de seuil voulue (par exemple, de 0,4 V à 0, 8 V), à partir de la tension de seuil de l'état effacé (par exemple, de -3 V à -2 V). Ici, puisque le noeud QN1 du circuit de verrouillage LT1 présente un niveau logique haut, il est décidé que la cellule de mémoire sélectionnée est une cellule suffisamment programmée lors de l'opération de vérification de programmation, qui est effectuée lors d'un premier cycle (A) de programmation (bien que celui-ci ne soit pas représenté sur la figure, la décision est le fait d'un circuit bien connu de prise de décision du type passe/échec). Alors, l'opération de vérification de programmation du premier cycle (A) de programmation n'est pas effectuée. Une fois que le premier cycle (A) de programmation a pris fin, la cellule de mémoire sélectionnée présente une tension de seuil de 0,4 V à 0,8 V, comme illustré sur les figures O10A et 10B. Si le deuxième cycle (B) de programmation associé aux données "01" commence, le transistor NMOS noté MN10 passe dans l'état conducteur en liaison avec une transition du niveau bas au niveau haut du signal SLT. A ce moment, la borne de sortie de la porte NI notée NOR est connectée à la ligne de bit BL1 via le transistor NMOS noté BLST1. La sortie de la porte NOR passe au niveau bas du fait que les bornes d'entrée de la porte NOR sont connectées aux noeuds QN2 et QN1 ayant respectivement le niveau logique haut et le niveau logique bas. De ce fait, la ligne de bit BL1 présente le niveau du potentiel de terre via la porte NI notée NOR et le transistor NMOS noté MN10. Après qu'une tension haute a été appliquée à la ligne de mot sélectionnée et qu'un certain temps s'est écoulé, l'opération de vérification de programmation est exécutée afin de vérifier si la cellule de mémoire sélectionnée a été programmée jusqu'à la tension de seuil voulue (par exemple, de 1,6 V à 2,0 V). Lors de l'opération de mesure associée à la vérification de programmation, les signaux SLT et BLLVL passent au niveau bas. Si la cellule de mémoire sélectionnée est suffisamment programmée, la ligne de bit BLI présente le niveau du potentiel d'alimentation du fait de l'opération de mesure. Ceci fait passer dans l'état conducteur le transistor NMOS noté MN1. Dans ces conditions, lorsque le signal d'activation de verrouillage qV2 est produit sous forme d'impulsion lors de la période de vérification de programmation du deuxième cycle (B) de programmation, l'état de verrouillage QN2 du circuit de verrouillage LT2 s'inverse en passant de "0" à "1". Inversement, si la cellule de mémoire sélectionnée n'a pas été programmée de façon suffisante, la ligne de bit BL1 continue d'être maintenue au niveau logique bas du fait de l'opération de mesure. Puisque la ligne de bit BL1 possède un niveau logique bas, le transistor NMOS noté MN1 passe dans l'état non conducteur. Dans ces conditions, bien que le signal d'activation de verrouillage "V2 soit produit sous forme d'impulsion dans la période de vérification de programmation du deuxième cycle (B) de programmation, l'état de verrouillage QN2 du circuit de verrouillage LT2 ne s'inverse pas. Les opérations de programmation et de vérification qui sont associées au circuit de verrouillage LT2 recommence jusqu'à ce que la cellule de mémoire sélectionnée ait été suffisamment programmée (ou bien avec une fréquence de programmation prédéterminée). Une fois le deuxième cycle (B) de programmation achevé, les états de verrouillage QN2 et QN1 des circuits de verrouillage LT2 et LTI1 changent en passant de "01" à "11", de sorte que la cellule de mémoire sélectionnée est empêchée d'être programmée dans le troisième cycle (C) de programmation. Ainsi, après que l'ensemble des cycles de programmation (A, B et C) associés aux données "01" a été exécuté, la cellule de mémoire sélectionnée possède une distribution de tensions de seuil de 1,6 V à 2,0 V, comme représenté sur les figures 10A et 10B. En fonction de l'opération de programmation et de l'opération de vérification de programmation qui sont associées aux données "01", comme on l'aura compris en observant les figures O10A et 10B, la tension de seuil de la cellule de mémoire sélectionnée est déplacée jusqu'à une distribution de tensions de seuil de 0,4 V à 0,8 V correspondant aux données "10" lors du premier cycle de programmation (A), puis est déplacée jusqu'à la distribution de tensions de seuil de 1,6 V à 2,0 V correspondant à la donnée "01" pour le deuxième cycle de programmation (B). Ainsi, dans le cas de l'invention, la cellule de mémoire sélectionnée est programmée via une distribution de tensions de seuil qui correspond aux données "10" de façon à avoir la distribution de tensions de seuil voulue, par comparaison avec la technique antérieure. On empêche que la durée de programmation soit allongée et on empêche que la distribution des tensions de seuil ne soit élargie en faisant en sorte que la tension de seuil d'une cellule de mémoire soit déplacée séquentiellement. De ce fait, il est constamment maintenu une marge entre les distributions des tensions de seuil correspondant chacune à "10" et "01" et correspondant chacune à "01" et "00". Opération de programmation et opération de vérification de programmation des données "00" On suppose que les données "00" ont été chargées dans les circuits de verrouillage LT2 et LT 1. Dans ces conditions, si un premier cycle de programmation (A) commence, le signal SLT effectue une transition du niveau logique bas au niveau logique haut, de sorte que le transistor NMOS noté MN10 passe dans l'état conducteur. Ceci fait que la borne de sortie de la porte NI notée NOR est connectée à la ligne de bit sélectionnée BLI via le transistor NMOS noté BLST1. Puisque les noeuds QN2 et QN1 des circuits de verrouillage LT2 et LT1 ont tous le niveau logique haut, la ligne de bit sélectionnée BL1 présente le niveau du potentiel de terre. Après cela, on applique une tension haute à la ligne de mot sélectionnée. Après qu'un certain temps s'est écoulé, l'opération de vérification de programmation est effectuée pour décider si la cellule de mémoire sélectionnée a été programmée pour passer de la tension de seuil de l'état effacé (par exemple, de -3 V à -2 V) à une tension de seuil voulue (par exemple, de 0,4 V à 0, 8 V). Lors de l'opération de mesure associée à la vérification de la programmation, les signaux SLT et BLLVL passent au niveau bas. Si la cellule de mémoire sélectionnée n'est pas programmée de façon suffisante, la ligne de bit BL1 continue d'être maintenue au niveau logique bas du fait de l'opération de mesure. Puisque la ligne de bit BL1 et le noeud QN2 du circuit de verrouillage LT2 ont tous le niveau logique bas, les transistors NMOS notés MN3 et MN4 passent dans l'état non conducteur. Par conséquent, bien que le signal d'activation de verrouillage ait été produit sous forme d'impulsion lors de la période de vérification de programmation du premier cycle de programmation (A), comme illustré sur la figure 8, l'état de verrouillage Q1 du circuit de verrouillage LT1 ne s'inverse pas. Les opérations de programmation et de vérification qui sont associées au circuit de verrouillage LT 1 recommencent jusqu'à ce que la cellule de mémoire sélectionnée ait été programmée de façon suffisante (ou bien avec une fréquence de programmation prédéterminée). Après que le premier cycle (A) de programmation a pris fin, la cellule de mémoire sélectionnée possède une distribution de tensions de seuil de 0,4 V à 0,8 V correspondant aux données "10", comme illustré sur les figures 10C et 10D. Si le deuxième cycle de programmation (B) commence, le transistor NMOS noté MNO10 passe dans l'état conducteur en fonction d'une transition du niveau bas au niveau haut du signal SLT. De même que pour le premier cycle de programmation (A), puisque les bornes d'entrée de la porte NOR sont connectées aux noeuds QN2 et QN 1 ayant chacun un niveau logique haut, le signal de sortie de la porte NOR passe au niveau bas. De ce fait, la ligne de bit BL1 présente le niveau du potentiel de terre via la porte NI notée NOR et le transistor NMOS noté MN10. Après qu'une tension haute a été appliquée à la ligne de mot sélectionnée et qu'un certain temps s'est écoulé, l'opération de vérification de programmation est exécutée afin de vérifier si la cellule de mémoire sélectionnée a été programmée jusqu'à la tension de seuil voulue (par exemple, de 1,6 V à 2, 0 V). Lors de l'opération de mesure associée à la vérification de la programmation, les signaux SLT et BLLVL passent au niveau bas. Si la cellule de mémoire sélectionnée n'a pas été programmée de façon suffisante, la ligne de bit BL1 continue d'être maintenue au niveau logique bas du fait de l'opération de mesure. Puisque la ligne de bit présente un niveau logique bas, le transistor NMOS noté MN1 passe dans l'état non conducteur. Dans ces conditions, bien que le signal d'activation de verrouillage 4V2 ait été produit sous forme d'impulsion lors de la période de vérification de programmation du deuxième cycle de programmation (B), l'état logique Q2 du circuit de verrouillage LT2 ne s'inverse pas. Les opérations de programmation et de vérification associées au circuit de verrouillage LT2 recommencent jusqu'à ce que la cellule de mémoire sélectionnée ait été programmée de façon suffisante (ou bien avec une fréquence de programmation prédéterminée). Inversement, si la cellule de mémoire sélectionnée est programmée de façon suffisante, la ligne de bit BL1 présente le niveau du potentiel d'alimentation, de sorte que le transistor NMOS noté MN 1 passe dans l'état conducteur. Lorsque le signal d'activation de verrouillage OV2 est produit sous forme d'impulsion lors de la période de vérification de programmation du deuxième cycle de programmation (B), l'état de verrouillage QN2 du circuit de verrouillage LT2 s'inverse en passant de "0" à "1". Ainsi, une fois le deuxième cycle de programmation (B) achevé, les états de verrouillage QN2 et QN1 des circuits de verrouillage LT2 et LT1 changent en passant de "00" à "10", de sorte que la cellule de mémoire sélectionnée présente la distribution de tensions de seuil de 1,6 V à 2,0 V, comme illustré sur les figures 10OC et 10D. Enfin, si le troisième cycle de programmation (C) commence, le transistor NMOS noté MNO10 passe dans l'état conducteur en fonction de la transition d'un niveau bas à un niveau haut du signal SLT. Puisque les bornes d'entrée de la porte NOR sont connectés aux noeuds QN2 et QN1 ayant chacun un niveau logique bas et un niveau logique haut, le signal de sortie de la porte NOR passe au niveau bas. De ce fait, la ligne de bit BL1 présente le niveau du potentiel de terre via la porte NI notée NOR et le transistor MNOS noté MN10. Après qu'une tension haute a été appliquée à la ligne de mot sélectionnée et qu'un certain temps s'est écoulé, l'opération de vérification de programmation est exécutée afin de vérifier si la cellule de mémoire sélectionnée a été programmée jusqu'à une tension de seuil voulue (par exemple, de 2,8 V à 3,2 V). Lors de l'opération de mesure associée à la vérification de la programmation, les signaux SLT et BLLVL passent au niveau bas. Si la cellule de mémoire sélectionnée n'a pas été programmée de façon suffisante, la ligne de bit BL1 continue d'être maintenue au niveau logique bas. Puisque la ligne de bit BL1 possède un niveau logique bas, le transistor NMOS noté MN1 passe dans l'état non conducteur. Dans ces conditions, bien que le signal d'activation de verrouillage V1 ait été produit sous forme d'impulsion lors de la période de vérification de programmation du troisième cycle de programmation (C), l'état logique QN1 du circuit de verrouillage LT1 ne s'inverse pas. Les opérations de programmation et de vérification associées au circuit de verrouillage LT1 recommencent jusqu'à ce que la cellule de mémoire sélectionnée ait été programmée de façon suffisante (ou bien avec une fréquence de programmation prédéterminée). Dans le cas o la cellule de mémoire sélectionnée a été programmée de façon suffisante, la ligne de bit BL1 présente le niveau du potentiel d'alimentation, de sorte que le transistor NMOS noté MN3 passe dans l'état conducteur. Puisque l'état logique du noeud QN2 a changé en passant de "0" à "1" lors d'un cycle de programmation (B) précédent, le transistor NMOS noté MN4 passe également dans l'état conducteur. Dans ces conditions, lorsque le signal d'activation de verrouillage qV1 est produit sous forme d'impulsion lors de la période de vérification de programmation du troisième cycle de programmation (C), l'état de verrouillage QN1 du circuit de verrouillage LT1 s'inverse en passant de "0" à "1". De ce fait, une fois le troisième cycle de programmation (C) achevé, les états de verrouillage QN2 et QN1 des circuits de verrouillage LT2 et LTi changent en passant de "00" à "10", de sorte que la cellule de mémoire sélectionnée possède une distribution de tensions de seuil de 2,8 V à 3,2 V, comme représenté sur les figures O10C et 10D. Comme décrit ci-dessus, lors de la programmation d'une cellule sélectionnée faisant passer de la tension de seuil de l'état effacé à une tension de seuil voulue, la cellule sélectionnée est programmée séquentiellement via des tensions de seuil comprises entre la tension de seuil de l'état effacé et la tension de seuil voulue. Ainsi, le dispositif de mémorisation selon l'invention empêche que le temps de programmation ne soit allongé et que la distribution des tensions de seuil visée ne soit élargie. De ce fait, une marge est constamment maintenue entre les distributions des tensions de seuil. Le dispositif de mémorisation selon l'invention peut être réalisé au moyen de ROM élaborées par masque, d'EPROM et d'EEPROM, et on peut étendre ce dispositif de façon qu'il stocke des données de 3 bits par cellule ou plus. En outre, le dispositif de mémorisation selon l'invention peut être appliqué à un schéma dans lequel la cellule de mémoire est programmée pour passer d'une tension de seuil supérieure à une tension de seuil inférieure. Bien entendu, l'homme de l'art sera en mesure d'imaginer, à partir des dispositifs dont la description vient d'être donnée à titre simplement illustratif et nullement limitatif, diverses variantes et modifications ne sortant pas du cadre de l'invention. REVENDICATIONS 1. Dispositif de mémorisation à semiconducteur rémanent, caractérisé en ce qu'il comprend: une ligne de bit (BL1); plusieurs lignes de mot (WL1 à WL16) disposées perpendiculairement par rapport à la ligne de bit; plusieurs cellules de mémoire (MC- 1 à MC-4) disposées aux interactions de la ligne de bit et des lignes de mot; un circuit de stockage possédant au moins deux circuits de verrouillage (LT 1, LT2) couplés chacun à une ligne d'entrée/sortie correspondante, et verrouillant les données; et un circuit de discrimination de données de programmation servant à mettre la ligne de bit à une tension prise entre une tension de programmation et une tension d'empêchement de programmation pendant une opération de programmation, en fonction des états logiques des données verrouillées dans les circuits de verrouillage. 2. Dispositif de mémorisation selon la revendication 1, caractérisé en ce que le circuit de discrimination de données de programmation met la ligne de bit (BL1) à la tension de programmation lorsqu'au moins l'un des états logiques des données verrouillées se trouvant dans les circuits de verrouillages respectifs (LT1, LT2) indique la programmation d'une cellule de mémoire sélectionnée, et met la ligne de bit à la tension d'empêchement de programmation lorsque les états logiques des données verrouillées dans les circuits de verrouillage respectifs indiquent l'empêchement de programmation de la cellule de mémoire sélectionnée. 3. Dispositif de mémorisation selon la revendication 2, caractérisé en ce que le circuit de discrimination de données de programmation comprend: une porte NI (NOR) dont les bornes d'entrée reçoivent chacune les données contenues dans les circuits de verrouillage respectifs, et une borne de sortie; et un transistor de commutation (MN10) qui est couplé entre la ligne de bit et la borne de sortie de la porte NI (NOR), et qui commute dans l'état conducteur ou l'état non conducteur en fonction d'un signal de commande, o le signal de commande n'est activé que pendant l'opération de programmation. 4. Dispositif de mémorisation selon la revendication 3, caractérisé en ce qu'il comprend en outre: un transistor de charge couplé entre une tension (Vcc) d'alimentation électrique et la ligne de bit (BL1), o le transistor de charge fournit un courant constant à la ligne de bit en réponse à une tension de référence (Vref) pendant une opération de vérification de la programmation; et un circuit de commande de stockage servant à inverser ou maintenir les états logiques des données verrouillées dans le circuit de stockage en fonction du niveau de tension de la ligne de bit, en réponse à des signaux de validation de verrouillage, pendant l'opération de vérification de la programmation. 5. Dispositif de mémorisation selon la revendication 4, caractérisé en ce qu'il comprend en outre: une autre ligne de bit (BL2) disposée perpendiculairement par rapport aux lignes de mot (WL 1 à WL 16); et un circuit de sélection de ligne de bit servant à sélectionner l'une des lignes de bit (BL1, BL2) en réponse à des signaux de sélection de ligne de bit, o une ligne de bit non sélectionnée est polarisée au moyen de la tension d'alimentation électrique par l'intermédiaire du circuit de sélection de ligne de bit pendant les opérations de programmation et de vérification de la programmation; et o la ligne de bit sélectionnée est mise à une des tensions que constituent la tension de programmation et la tension d'empêchement de programmation via le circuit de discrimination de données de programmation en fonction des états logiques des données verrouillées dans les circuits de verrouillage (LT1, LT2) pendant l'opération de programmation. 6. Dispositif de mémorisation selon la revendication 5, caractérisé en ce que la tension de programmation possède le niveau du potentiel de terre électrique, et la tension d'empêchement de programmation possède le niveau du potentiel d'alimentation électrique (Vcc). 7. Dispositif de mémorisation selon la revendication 6, caractérisé en ce qu'il comprend en outre des transistors d'initialisation couplés chacun aux circuits de verrouillage (LT1, LT2) et servant à initialiser les circuits de verrouillage en réponse à un signal de repositionnement avant que les bits de données à programmer ne soient chargés, respectivement, dans les circuits de verrouillage. 8. Dispositif de mémorisation selon la revendication 7, caractérisé en ce que les bits de données verrouillés dans les circuits de verrouillage (LT1, LT2) sont programmés dans une cellule de mémoire sélectionnée pendant un ensemble de cycles de programmation qui sont chacun composés de l'opération de programmation et de l'opération de vérification de la programmation. 9. Procédé de programmation d'un dispositif de mémorisation à semiconducteur rémanent à plusieurs états, caractérisé en ce qu'il comprend les opérations suivantes: charger un circuit de stockage au moyen de plusieurs bits de données d'informations à programmer dans une cellule de mémoire sélectionnée; déterminer si au moins un des bits de données se trouvant dans le circuit de stockage indique ou non la programmation de la cellule de mémoire sélectionnée; et mettre la ligne de bit sélectionnée à une tension de programmation lorsque le ou les bits de données indiquent la programmation de la cellule de mémoire sélectionnée, et à une tension d'empêchement de programmation lorsque tous les bits de données se trouvant dans le circuit de stockage indiquent l'empêchement de programmation de la cellule de mémoire sélectionnée.