Brevet FR2778012A1 — publié le 19991029

A DISPOSITIF ET PROCÉDÉ DE LECTURE DE CELLULES DE MÉMOIRE EEPROM. La présente invention concerne un dispositif et un procédé de lecture de cellules de mémoire EEPROM. Elle s'applique à tous les circuits intégrés comprenant une mémoire EEPROM. Habituellement, le dispositif de lecture associé à une mémoire EEPROM est basé sur la comparaison des courants consommés d'une part dans une cellule sélectionnée en lecture et une cellule de référence à l'état vierge, les deux cellules étant polarisées dans les mêmes conditions de tension. Chaque cellule appelle un certain courant. Selon que le courant le plus fort est celui de l'une ou de l'autre, le niveau de la sortie d'un détecteur bascule à zéro ou à un. On en déduit si la cellule sélectionnée est effacée ou programmée. Une cellule mémoire EEPROM comprend classiquement au moins un transistor MOS de sélection et un transistor MOS à grille flottante. C'est ce dernier transistor qui est effectivement écrit, l'autre transistor ne servant qu'à isoler ou permettre la sélection de la cellule mémoire dans la matrice de cellules mémoires. On sait que le principe de lecture d'une telle cellule mémoire repose sur les différentes tensions de seuil que peut avoir le transistor à grille flottante, selon qu'il est à l'état vierge, effacé ou programme. Dans une technologie classique de mémoire EEPROM, la tension de seuil VthE d'une cellule effacée sera par exemple de l'ordre de 3 volts, la tension de seuil Vthv d'une cellule vierge, de l'ordre de +0.8 volt et la tension de seuil Vthp d'une cellule programmée, de l'ordre de -2 volts. Les conditions de polarisation habituellement choisies sont telles que la cellule de référence, vierge, soit passante. La tension de polarisation de grille du transistor à grille flottante doit donc être supérieure à la tension de seuil d'une cellule vierge, c'est à dire supérieure à +0.8 volt. On notera qu'il faut donc un générateur de tension de référence de lecture. La tension de polarisation en lecture appliquée via le circuit de lecture/écriture sur la ou les lignes de bit est d'environ 1 volt, tandis que la tension de polarisation appliquée sur la ligne de mot sélectionnée est de l'ordre de Vcc. A tensions de polarisation de lecture identiques, la cellule vierge de référence consommera plus que la cellule effacée et moins que la cellule programmée. La comparaison des courants fournit une réponse binaire correspondante. Le courant appelé par chaque cellule est normalement celui imposé par le transistor à grille flottante. Mais, pour cela, il faut que les transistors de sélection associés aient la capacité de délivrer le courant correspondant. Or, à très basse tension, la capacité des transistors de sélection à délivrer du courant est réduite. Ils risquent donc de saturer, même avec des courants très faibles. Dans ce cas, ce n'est plus le transistor à grille flottante qui impose le courant dans la cellule, mais le transistor de sélection, qui ne peut fournir plus qu'un courant limite de saturation. En d'autres termes, si la tension d'alimentation Vcc est à un niveau suffisamment élevé, par exemple entre 3 et 5 volts, la cellule mémoire (comprenant le transistor de sélection et le transistor à grille flottante) peut consommer entre 0 et 40 microampères, dans les conditions de polarisation de lecture habituelles. On a donc une marge de courant suffisante pour différencier les différents états de la cellule, vierge, effacé, ou programmé. Mais lorsque la tension d'alimentation Vcc est abaissée à 2 volts, le courant ne peut plus varier autant: il est limité par le courant de saturation du transistor de sélection. I1 est par exemple limité à 2 microampères. La marge de différentiation en courant devient extrêmement réduite, d'autant plus qu'il faut intégrer les variations dues au procédé de fabrication et les dispersions dans les cellules. La lecture de cellules de mémoire EEPROM selon le procédé habituel n'est donc plus fiable aux basses ou très basses tensions. Une solution à ce problème de lecture à basse tension pourrait consister en l'utilisation d'un dispositif à pompe de charges pour la lecture, pour retrouver des conditions de polarisation habituelles, notamment pour pouvoir appliquer une tension de 5 volts sur les lignes de mot (grille du transistor de sélection). De cette manière, le transistor de sélection est capable de répondre à la demande en courant des cellules mémoires. Les temps d'accès en lecture seraient peu pénalisés, à condition d'utiliser une pompe à forte sortance, capable de porter la ligne de mot à la tension de polarisation désirée très rapidement. En outre, il faudrait que cette pompe fonctionne même en mode de veille (standby), sinon, les temps d'accès à la mémoire serait trop pénalisés. L'inconvénient d'une telle obligation est qu'elle augmente de manière non négligeable la consommation en mode de veille. Cette consommation supplémentaire est rédhibitoire pour les applications dites portables, pourtant grandes utilisatrices de mémoires EEPROM. En outre, le fait d'utiliser une pompe pour générer les tensions de polarisation de lecture risque d'entraîner des perturbations électriques très gênantes. En particulier dans le décodeur, des problèmes de couplage entre des signaux du décodeur et des signaux de l'oscillateur de la pompe sont à craindre. Une autre solution au problème de lecture à basse tension de l'invention pourrait consister à améliorer les caractéristiques du transistor de sélection, pour qu'il soit capable de délivrer suffisamment de courant à basse tension. On pourrait augmenter la sortance du transistor de sélection. Mais, qui dit améliorer la sortance, dit augmenter la taille du transistor de manière non négligeable. Ce qui pourrait passer au niveau d'un simple élément de circuit est rédhibitoire pour une application à un circuit mémoire dans lequel on a un transistor de sélection par cellule mémoire. On pourrait encore abaisser la tension de seuil du transistor de sélection. Mais on est en pratique limité par la tension de claquage que doit pouvoir supporter sans dommages le transistor de sélection, à cause des hautes tensions qui lui sont appliquées en effacement et en programmation. En outre, la tension de seuil ne peut pas non plus être inférieure à une tension limite imposée par les lois de la physique (qui peut être de millivolts pour une technologie donnée). En dessous de cette tension limite, le transistor de sélection conduirait en lecture, même si la cellule n'était pas sélectionnée (c'est la lecture à chaud). Le transistor de sélection ne serait donc plus apte à assumer sa fonction d'isolation de la cellule mémoire dans la matrice. L'invention a pour objet de résoudre le problème de la lecture de cellules de mémoire EEPROM à basse tension. Dans l'invention, on a trouvé un moyen pour effectuer une lecture fiable de cellules de mémoire EEPROM, même à basse tension. Selon l'invention, au lieu d'utiliser une cellule à l'état vierge comme cellule de référence, on utilise une cellule programmée. De cette façon, il n'y a plus qu'à discriminer entre deux états: effacé ou programmé. La marge de courant pour discriminer les deux états n'a plus à être aussi large. En outre, une cellule programmée a une tension de seuil négative, par exemple égale à - 2 volts, alors qu'une cellule effacée a une tension de seuil positive de l'ordre de 3 volts. Il suffit donc de prendre une tension de seuil inférieure à +3 volts comme tension de polarisation de lecture de la cellule (tension appliquée sur la grille du transistor à grille flottante de la cellule). Telle que caractérisée, l'invention concerne donc un dispositif de lecture de cellules d'une mémoire EEPROM, comprenant au moins une cellule de référence et un circuit de comparaison entre un courant passant dans la cellule de référence et un courant passant dans une cellule sélectionnée en lecture. Selon l'invention la cellule de référence est dans un état programmé. De manière très avantageuse, on choisit de prendre comme tension de polarisation de lecture, la tension nulle Vss. Ainsi, il n'y a pas de problème de génération d'une tension de référence particulière. Il n'y a pas de problèmes de variations de cette tension avec les paramètres habituels: tension d'alimentation, caractéristiques (tensions de seuil) du procédé de fabrication, température. Il n'y a pas de problème d'adaptation du niveau de cette tension de polarisation en fonction du niveau nominal de la tension d'alimentation utilisée (3 volts, 2 volts...), qui peut dépendre de l'application. Ainsi, quel que soit le niveau de la tension d'alimentation appliquée au circuit et quelles que soient les variations des paramètres du circuit, le dispositif de lecture selon l'invention est fiable. Dans l'invention, pour assurer la programmation de la cellule de référence, on prévoit un circuit de contrôle pour effectuer une lecture de contrôle de la ou des cellules de référence et une programmation le cas échéant. Ce circuit de contrôle est activé pendant une phase d'initialisation contrôlée par un circuit de détection de mise sous-tension du circuit intégré. De préférence, ce circuit comprend des moyens pour effectuer une précharge à Vcc d'un noeud de tension de chaque cellule de référence, le noeud de masse étant relié à la masse Vss, la tension de polarisation de lecture VCG étant appliquée sur la grille de contrôle du transistor à grille flottante de chaque cellule de référence. Le noeud de tension fournit alors un signal de déclenchement de la programmation. Avantageusement, pour effectuer le cas échéant la programmation, on déclenche la génération de la haute tension de programmation et on applique cette haute tension aux cellules de référence en utilisant les moyens de précharge. L'invention concerne aussi un procédé de lecture de cellules d'une mémoire EEPROM, utilisant la comparaison des courants passant dans une cellule de référence et une cellule mémoire sélectionnée. Selon l'invention, ce procédé consiste à préalablement programmer la cellule de référence. D'autres caractéristiques et avantages de l'invention sont détaillés dans la description suivante faite à titre indicatif et nullement limitatif et en référence aux dessins annexés, dans lesquels: - la figure 1 représente un schéma-bloc d'un exemple d'architecture d'une mémoire de type EEPROM; - la figure 2 représente un dispositif de lecture selon l'invention; - la figure 3 représente un dispositif de contrôle et programmation d'une cellule de référence selon l'invention; et - la figure 4 représente un diagramme représentant les différents signaux de séquencement d'un dispositif de contrôle et programmation comme celui représenté à la figure 3 et - les figures 5a et 5b montrent une variante de réalisation de l'invention dans le cas o l'on a plusieurs cellules de référence parallèle. La figure 1 représente un exemple d'une architecture d'une mémoire EEPROM dans un circuit intégré. Le circuit intégré peut comprendre d'autres éléments que la mémoire EEPROM, comme un microcontrôleur ou d'autres types de mémoire. Sur la figure 1, on a représenté une architecture classique de mémoire EEPROM. Cette architecture comprend un plan de cellules mémoires EEPROM 1 organisé matriciellement en lignes de mot (rangées) et lignes de bit (colonnes). Les cellules mémoires sont accessibles par un décodeur de lignes de mot DEC-X et un décodeur de lignes de bit DEC-Y associé à un circuit porte 2. Le circuit porte est connecté à un circuit de lecture/écriture 3 associé au bus d'entrée/sortie des données E/S. L'architecture comprend aussi un circuit 4 de commande du noeud de masse du plan mémoire et un circuit 5 de commande de la tension de polarisation de grille VCG du transistor à grille flottante des cellules mémoire. Il s'agit bien sûr de la tension appliquée sur la grille de contrôle de ce transistor. Chaque cellule du plan mémoire, par exemple la cellule Cl, comprend un transistor à grille flottante TFG et un premier transistor de sélection Tsl, montés en série entre la ligne de bit associée, BL1 dans l'exemple et un noeud de masse de la cellule, Mi pour la cellule Cl. Le premier transistor de sélection, Tsl dans l'exemple, est commandé sur sa grille par le signal de sélection de la ligne de mot associée, dans l'exemple selwll. Dans l'exemple représenté, la cellule mémoire EEPROM comprend un deuxième transistor de sélection, noté Ts2. Dans l'exemple, ce transistor Ts2 est commandé par le même signal de sélection de ligne de mot selwll que le premier transistor de sélection Tsl. Ce deuxième transistor de sélection Ts2 permet le cas échéant de commuter la tension de polarisation de grille VCG sur la grille de contrôle du transistor à grille flottante TFG de la cellule mémoire. Cette tension de polarisation de grille VCG est typiquement égale à O volt (Vss) en lecture ou en programmation, et à la haute tension Vpp en effacement. Enfin, le noeud de masse M1 de la cellule Cl est commandé par un transistor MOS Tcl du circuit 4 de commutation de la masse Vss. Dans l'exemple, ce circuit comprend un transistor de commutation de la masse par ligne de mot et comprend donc autant de transistors de commutation que le plan mémoire comprend de lignes de mots (p dans l'exemple). D'autres arrangements sont bien sûr possibles. Le circuit 4 de commutation est activé pour appliquer Vss sur le noeud de masse de toutes les cellules du plan mémoire. Ce circuit est notamment activé pour une lecture (Read) ou un effacement (erase) de cellules de la mémoire. Quand, il est désactivé (notamment en programmation), les noeuds de masse du plan mémoire sont alors en haute impédance. Les décodeurs DEC-X et DEC-Y reçoivent des signaux d'adresse du bus d'adresse ADR du circuit intégré et des signaux de commande de lecture ou d'écriture, notés dans l'exemple, /RE (lecture) et /WE (écriture), d'un circuit de commande ou d'un séquenceur (non représentés). Les décodeurs fournissent en sortie des signaux de sélection, notés selwll-selwlp pour le décodeur de lignes de mot et selBll-selBln pour le décodeur de lignes de bit. Les signaux de sélection de lignes de bit sont appliqués au circuit porte 2 qui comprend classiquement des transistors de commutation pour appliquer sur les lignes de bit sélectionnées des tensions de polarisation bien déterminées, commandées par le circuit de lecture/écriture 3 en fonction de l'opération à exécuter. Dans le cas des lignes de mot, la tension de polarisation est commutée sur le signal de sélection de la ligne de mot qui est adressée. En lecture, on retrouve ainsi Vcc sur la ligne de mot sélectionnée et environ 1 volt sur les lignes de bit sélectionnées. Le dispositif de lecture selon l'invention fait partie du circuit de lecture/écriture 3. Un dispositif de lecture de cellules mémoire comprend habituellement au moins une cellule de référence, un circuit de comparaison de courant et un amplificateur de sortie. La cellule de référence et la cellule mémoire sélectionnée en lecture reçoivent les mêmes tensions de polarisation, en particulier, la même tension de polarisation VCG de grille de contrôle du transistor à grille flottante TGF. Selon l'invention, pour effectuer la lecture d'une cellule mémoire, on utilise une cellule de référence programmée au lieu d'une cellule de référence vierge. Il suffit alors de choisir la tension de polarisation VCG de grille inférieure à la tension de seuil VthE d'une cellule mémoire effacée (transistor à grille flottante effacé), qui est de l'ordre de +3 volts. Avec une telle tension de polarisation de grille VCG, la cellule de référence, qui est programmée, conduit. La cellule sélectionnée en lecture conduira si elle est également dans un état programmé, mais ne conduira pas si elle est dans un état effacé. La comparaison en courant est particulièrement simple. De préférence, on choisit dans l'invention que la tension de polarisation de grille VCG est égale à zéro volt (Vss) en lecture. De cette manière, on gagne du temps en lecture, car il n'y a pas d'attente de génération et stabilisation d'une tension de référence de lecture. En outre, la référence VcG=Vss est très stable et valable quel que soit le niveau de la tension d'alimentation Vcc du circuit intégré et indépendante de la taille de la mémoire. Les autres tensions de polarisation sont habituellement d'environ 1 volt pour la ligne de bit et Vcc pour la ligne de mot. Un exemple d'un tel dispositif de lecture selon l'invention est détaillé sur la figure 2. Il comprend une cellule de référence Cref, un circuit de comparaison en courant COMP et un amplificateur de sortie AMP. L'amplificateur fournit en sortie Sout, le signal binaire correspondant à la lecture effectuée. En fait, le dispositif de lecture comprend habituellement 1 branche de référence et k branches de comparaison en courant associées à k amplificateurs de sortie, permettant la lecture de plusieurs cellules de la mémoire en même temps, appartenant à la même ligne de mot (lecture d'un octet ou d'un byte). Le dispositif de lecture peut ainsi comprendre 8 à 16 amplificateurs de sortie. Sur la figure 2, on n'a représenté qu'un seul amplificateur de sortie. Le circuit de comparaison en courant COMP représenté est tout à fait classique. Dans l'exemple simplifié représenté, il comprend une branche de référence B1 et une autre branche B2. Chaque branche comprend un générateur de courant, et un convertisseur courant-tension, connectés en série entre la tension d'alimentation Vcc et un noeud de sortie. On a prévu en outre un transistor supplémentaire dans chaque branche, TONI dans la branche B1, TON2 dans la branche B2, connecté entre la tension d'alimentation Vcc et le générateur de courant, commandé par un signal de déclenchement CKR, commandé par le signal de commande de lecture /RE. Ainsi, le circuit de comparaison n'est alimenté que pendant l'exécution d'une lecture, ce qui permet de limiter la consommation du circuit intégré. La branche de référence B1 sert à alimenter en courant et polariser (à environ 1 volt) une ligne de bit de référence Blref comprenant une cellule de référence Cref. L'autre branche, dans l'exemple B2, sert à alimenter en courant et polariser une ligne de bit Bli comprenant une cellule mémoire Ci sélectionnée en lecture. Le générateur de courant de la première branche B1 comprend dans l'exemple un transistor MOS P TI ayant sa grille reliée à son drain et sa source connectée à la tension d'alimentation Vcc via le transistor ToNi. Le générateur de courant de l'autre branche B2 comprend un transistor MOS P T2 connecté à Vcc via le transistor TON2. Sa grille est commandée par la grille du transistor Tl, en sorte que ces deux transistors forment un miroir de courant. Le convertisseur courant/tension de la première branche B1 comprend un transistor MOS N T3 connecté entre le drain du transistor T1 et le noeud de sortie Ni de la branche B1. Un inverseur Il reboucle sa source sur sa grille. Le convertisseur courant/tension de la deuxième branche est similaire, avec un transistor MOS N T4 et un inverseur I2 et un noeud de sortie N2. Le noeud de sortie N1 de la première branche est connecté sur une entrée de l'amplificateur de sortie AMP, l'entrée inverseuse - dans l'exemple, tandis que le noeud de sortie N2 est connecté sur l'autre entrée, l'entrée non inverseuse + dans l'exemple. Il s'agit ici d'un exemple de réalisation très classique d'un comparateur en courant dans un dispositif de lecture. De nombreuses variantes existent, pour améliorer les performances de vitesse, réduire la consommation en mode de veille... toutes variantes non représentées mais toutes aussi bien utilisables dans le dispositif de lecture selon l'invention. Le noeud de sortie Ni de la première branche B1 est connecté à la ligne de bit de référence Blref, comprenant la cellule de référence CREF. Le noeud de sortie N2 de l'autre branche B2 est connecté à au moins une ligne de bit de la mémoire. En fait, la sortie N2 peut être connectée à plusieurs lignes de bit, dans l'exemple, BLi, BLj. En effet, dans le cas d'une mémoire de grande capacité, on ne peut pas envisager d'avoir un dispositif de lecture par ligne de bit. Il faut partager les ressources. En lecture, seule une ligne de bit parmi les lignes Bli à Blj connectée au noeud de sortie N2 est sélectionnée. Par exemple, si la ligne Bli est sélectionnée, c'est le signal de sélection de ligne de bit correspondant selBli et le transistor du circuit porte 4 correspondant qui la relient activement au noeud de sortie N2. Les autres lignes de bit sont elles, isolées du noeud. De manière habituelle, pour que la comparaison en courant soit correcte, la ligne de bit de référence comprend les mêmes éléments que ceux qui sont activés sur la ligne de bit de la cellule mémoire sélectionnée en lecture. Si on prend la cellule Ci de la ligne de bit Bli, on retrouve entre le noeud de sortie N2 et la masse Vss un premier transistor de commutation Tci du circuit porte 2, en série avec la cellule mémoire Ci. Ce transistor de commutation est commandé par le signal de sélection selBli. La cellule mémoire Ci comprend un premier transistor de sélection Tsli, un deuxième transistor de sélection TS2i, commandés par le signal de sélection de ligne de mot correspondant, selwlz et un transistor à grille flottante TGFi. Enfin, un transistor de commutation du circuit 4 de commutation de la masse est connecté entre le noeud de masse Mi de la cellule et la masse Vss du circuit intégré. On retrouve donc tous ces éléments sur la ligne de bit de référence. La cellule de référence est connectée entre un noeud de tension B et un noeud de masse Mref. Un premier transistor MOS N de commutation, Tcref, est connecté entre le noeud Nl et le noeud de tension B de la cellule de référence CREF. La cellule de référence comprend, comme toutes les cellules du plan mémoire et agencés de la même manière, un transistor à grille flottante TGFref, un premier transistor de sélection Tslref et un deuxième transistor de sélection Ts2ref. Enfin, un deuxième transistor de commutation TMref est prévu entre le noeud de masse Mref de la cellule de référence et la masse Vss. Le premier transistor MOS N de commutation Tcref est dans l'exemple commandé par l'inverse du signal de déclenchement de lecture, soit par /CKR. Ce transistor est donc passant pendant chaque opération de lecture de cellules mémoire. Le premier transistor de sélection TSlref et le deuxième transistor de sélection TS2ref sont commandés par un signal de commande selref. Le deuxième transistor de commutation TMref est commandé par un signal de commande Readl, activé pour une lecture (Read), un effacement (erase) ou encore une lecture de contrôle (Read2) particulière à l'invention et qui sera expliquée par la suite, en relation avec la figure 3. Le fonctionnement d'un tel dispositif de lecture est bien connu. Le miroir de courant est tel que le seuil de basculement de l'amplificateur de lecture corresponde au milieu de la fenêtre de courant, c'est à dire entre 0 volt (cellule effacée) et par exemple, 2 à microampères (cellule programmée). Pour cela, dans le comparateur à deux branches B1 et B2, on choisit 1/2 comme rapport des géométries du miroir de courant (rapport entre le W/L de T1 et le W/L de T2) comme montré sur la figure 2. Dans un exemple pratique, on aura ainsi un courant Iref de 2 à 5 microampères dans la branche de référence, ce qui donne un certain niveau de tension sur le noeud Ni appliqué sur une entrée de l'amplificateur différentiel. Si la cellule mémoire à lire, par exemple Ci, est effacée, elle ne conduit pas et le noeud N2 correspondant monte à Vcc. La tension en N2 est donc supérieure à la tension en Ni, et l'amplificateur différentiel bascule dans un sens. Si la cellule mémoire Ci est programmée, on aura un courant I dans la cellule Ci égal à une demi fois le courant de référence, c'est à dire 1 à 2,5 microampères, imposé par le miroir de courant (T2 ne peut pas fournir plus que Iref/2). Le noeud N2 ne peut alors monter qu'à un niveau de tension qui sera inférieur à celui du noeud Ni. L'amplificateur différentiel bascule dans l'autre sens. Au lieu d'une seule cellule de référence, on prévoit avantageusement plusieurs cellules de référence en parallèle (voir figure 5a). Ceci permet de masquer un défaut de programmation d'une cellule de référence et améliore en conséquence la fiabilité du circuit. Le miroir de courant sera alors ajusté en conséquence. La figure 3 représente un schéma d'un circuit de contrôle et programmation de la (ou des) cellules de référence. En effet, en sortie de fabrication, les cellules mémoire sont vierges. Il faut donc prévoir la programmation de la cellule de référence pour pouvoir ensuite effectuer la lecture de cellules mémoire. Selon l'invention, on prévoit de contrôler l'état de la cellule de référence, et ensuite, le cas échéant, de la programmer, pendant la phase d'initialisation du circuit intégré. On sait que cette phase d'initialisation est déclenchée par la détection de la mise sous tension du circuit intégré. Comme représenté sur la figure 4, lorsque le niveau de la tension d'alimentation atteint un certain seuil, indiquant une mise sous tension du circuit intégré, une circuiterie particulière active un signal d'initialisation POR. Pendant que ce signal POR est actif, soit pendant une durée de quelques millisecondes, le circuit intégré est initialisé: registres, état des entrées/sorties des différents circuits internes... Tout le temps que dure cette initialisation, le circuit intégré est inaccessible en externe. Dans l'invention, on choisit d'effectuer le contrôle de lecture et la programmation éventuelle des cellules de référence pendant cette phase d'initialisation. A cet effet, on utilise deux signaux supplémentaires, POR-INIT et POR-INIT- DELAY, générés à partir du signal POR, pour effectuer la lecture au bout d'un certain temps après le début de l'initialisation, puis, si nécessaire, la programmation éventuelle, avant la fin de la phase d'initialisation. La descente du premier signal POR-INIT déclenche la lecture. La descente du deuxième signal POR-INIT-DELAY déclenche la programmation. La programmation prend fin avec la descente du signal de commande d'initialisation POR. Les signaux POR-INIT et POR-INIT-DELAY sont obtenus à partir du signal POR, par exemple, au moyen de monostables déclenchés par la montée du signal POR. Le circuit de contrôle doit aussi permettre l'application, en opérationnel, c'est à dire après la phase d'initialisation, des tensions de polarisation de lecture. La figure 3 représente donc un exemple de réalisation d'un circuit de contrôle et programmation de la cellule de référence selon l'invention, utilisant les signaux POR-INIT et POR-INIT-DELAY précédemment décrits. Ce circuit de contrôle comprend trois circuits. Un premier circuit 6 pour commander la mise à la masse du noeud de masse Mref de la cellule de référence pour effectuer la lecture de contrôle. Un deuxième circuit 7,pour appliquer d'abord une tension de polarisation de lecture sur les grilles des transistors de sélection Tslref et Ts2ref de la cellule de référence, puis une tension de programmation, si la lecture montre que la cellule n'est pas programmée. Enfin, un troisième circuit 8, pour déclencher la génération de la haute tension de programmation VPP, et permettre le cas échéant, la programmation de la cellule de référence. Ces circuits sont commandés par les signaux précédemment décrits, POR, POR-INIT et POR-DELAY (ou leurs inverses). Le signal POR est délivré par un circuit 9 de détection de la mise sous- tension de la tension d'alimentation. Un circuit 91, comprenant par exemple des monostables, permet de fournir les signaux POR-INIT et POR- INIT-DELAY à partir du signal POR: ce sont en effet des impulsions de durée calibrée, dont l'émission en sortie du circuit 9 est déclenchée par le front montant du signal POR. Le circuit 6 comprend des portes logiques, pour commander la commutation de la masse sur le noeud de masse Mref. Pour chaque cellule de référence Cref, la commutation est assurée par un transistor de commutation associé TMref, commandé sur sa grille par le signal Readl. Ce signal Readl est normalement activé par une commande de lecture /RE de cellules de la mémoire. Dans l'invention, il peut aussi être activé pendant la phase d'initialisation, pour permettre la lecture de contrôle de la cellule de référence. Le circuit 6 comprend à cet effet, un premier circuit logique 60 comprenant un inverseur 61 et une porte ET 62. L'inverseur 61 reçoit en entrée le signal POR-INIT. La sortie de l'inverseur 61 est appliquée sur une entrée de la porte ET 62, qui reçoit sur l'autre entrée le signal POR-INIT-DELAY. La porte ET 62 délivre en sortie un signal de commande de lecture de contrôle de la cellule de référence, noté Read2. Le signal Read2 obtenu est représenté sur la Figure 4. Il est activé par la descente à zéro du signal POR-INIT et désactivé avec la descente à zéro du signal POR-INIT-DELAY. Le circuit 6 comprend en outre une porte logique OU, 63, pour activer la commande de commutation Readl soit pour une lecture de contrôle (Read2) soit pour une lecture de cellules de la mémoire (Read). Ainsi, le signal de commande de lecture de contrôle Read2, un signal de commande de lecture de la mémoire, noté Read, et dérivé du signal de commande de lecture mémoire /RE et un signal de commande d'effacement de la mémoire, noté erase, et dérivé du signal de commande d'écriture /WE, sont appliqués sur la porte logique OU 63. Cette porte 63 délivre en sortie le signal de commande de commutation noté Readl, appliqué sur le transistor de commutation de la masse TMref associé à la cellule de référence. Le circuit 7 permet d'effectuer pendant la phase d'initialisation la lecture de contrôle et le cas échéant de déclencher la programmation de la cellule de référence. En opérationnel, après la phase d'initialisation, il permet d'appliquer à la cellule de référence les tensions de polarisation de lecture. Le circuit 7 est connecté d'une part au noeud de tension B de connexion de la cellule de référence à la ligne de bit de référence Blref (entre le premier transistor de commutation Tcref et la cellule de référence). Ce circuit contrôle le signal de commande selref appliqué sur les grilles des transistors de sélection de la cellule de référence. Le procédé de contrôle et programmation selon l'invention est le suivant. Pendant la phase d'initialisation, le noeud de tension B est isolé du circuit de comparaison de courant (le circuit n'est pas actif, et le transistor de commutation Tcref non plus). Le circuit 7 peut donc précharger le noeud de tension B à Vcc. Si la cellule de référence est programmée, elle est passante et tire le noeud de tension B vers la masse. Le potentiel au noeud de tension B bouge. Si la cellule de référence n'est pas programmée, elle ne conduit pas et le potentiel au noeud de tension B ne bouge pas (il reste à Vcc). C'est le fait que le noeud ne bouge pas ou bouge qui est utilisé dans l'invention pour déclencher ou non la programmation de la cellule de référence. Le circuit 7 comprend dans l'exemple, un latch 70 (deux inverseurs rebouclés). Une borne A du latch est connectée au drain d'un transistor MOS de type N 71. Ce transistor 71 a sa source connectée à la masse Vss. Il est commandé sur sa grille par le signal POR-INIT. La borne complémentaire /A du latch 70 est connectée au noeud de tension B par un transistor MOS de type N 72. La grille du transistor 72 est commandée par la sortie d'un inverseur 73 qui reçoit en entrée, l'inverse /POR du signal de commande d'initialisation POR. Le circuit 7 comprend encore un inverseur 74 qui reçoit en entrée le signal POR-INIT et qui délivre en sortie le signal selref appliqué sur les grilles des transistors de sélection de la cellule de référence. La grille du transistor à grille flottante TGFref de la cellule de référence est polarisée par la tension VCG. Cette tension de référence est la même en lecture qu'en programmation, c'est à dire égale à zéro volt. La cellule de référence n'a pas à être effacée. Le circuit 8 permet d'activer le générateur de haute tension non seulement suite à la réception d'une commande de programmation /WE, mais aussi, pour la phase de contrôle de la cellule de référence. Si la lecture de contrôle montre que la cellule de référence n'est pas programmée, le générateur de haute tension est activé pour que la programmation de cette cellule puisse être effectuée. Dans l'exemple représenté sur la figure 3, le circuit 8 comprend une première porte logique ET 80 recevant en entrées l'inverse du signal PORINIT-DELAY et la sortie /A du latch 70 du circuit 7. Il délivre en sortie un signal de commande de programmation de la cellule de référence, noté, Startprogl. Ce signal et le signal de programmation de cellules mémoire Startprog, déclenché par la réception d'une commande de programmation de la mémoire /WE, sont appliqués en entrées d'une porte logique OU 81 qui délivre en sortie le signal d'activation Start-Hv du générateur 82 de haute tension de programmation. Typiquement, ce signal Start-Hv, quand il est actif, valide l'horloge du générateur et la sortie HV du générateur de haute tension monte à VPP. Quand il n'est pas activé, l'horloge n'est pas transmise et la sortie HV du générateur de haute tension reste à Vcc. Pendant la phase d'initialisation, le fonctionnement du circuit de contrôle de lecture et programmation de la cellule de référence qui vient d'être décrit est le suivant. La première phase est une phase de précharge du latch, sur le niveau haut du signal POR-INIT. Le transistor 71 force le noeud A à 0 volt. Comme le signal POR est au niveau haut, le transistor 72 est passant, et le noeud de tension B se trouve préchargé à Vcc. La deuxième phase est la phase de lecture de contrôle. Elle est déclenchée par la descente du signal POR-INIT, le signal POR-INIT- DELAY étant lui toujours à l'état haut. Dans ce cas le signal Read2 est activé (à 1), ce qui commande la mise à la masse du noeud de masse Mref de la cellule de référence. Comme le signal POR-INIT-DELAY est toujours à un, le signal Startprogl n'est pas actif. La sortie HV du générateur de haute tension est donc à Vcc. Ce signal POR-INIT étant descendu à zéro, on a donc selref à Vcc. Comme par ailleurs La tension de polarisation de grille VCG de la cellule de référence est à 0 volt et le noeud de masse Mref aussi, si la cellule de référence est programmée, elle devient passante et tire le noeud de tension B à zéro. Si la cellule de référence n'est pas programmée, elle n'est pas passante et le noeud de tension B reste à Vcc. Si la cellule de référence est programmée, le noeud /A va basculer à 0 (et A à Vcc) avant la fin de la phase de lecture de contrôle marquée par la descente du signal POR-INIT-DELAY. Si au contraire, la cellule de référence n'est pas programmée, le noeud /A reste inchangé à Vcc pendant toute la durée de la lecture de contrôle. La descente du signal POR-INIT-DELAY marque la fin de la lecture et le début de la phase de programmation. Si le noeud /A est toujours à Vcc, le signal Startprogl passe alors à l'état actif,le signal Start-HV passe à l'état haut. Le front montant de ce signal déclenche le générateur de haute tension 82. La sortie HV du générateur passe alors de Vcc à la haute tension de programmation VPP. L'inverseur 74 commute ce niveau VPP sur le signal selref appliqué aux grilles des transistors de sélection de la cellule de référence. Le latch 70 et le transistor 72 commute le niveau Vpp sur le noeud de tension B. Comme la grille du transistor à grille flottante et le noeud de masse sont toujours 0 volt, la cellule de référence est en condition de programmation. La programmation prend fin avant la descente du signal de commande d'initialisation POR. La descente du signal POR bloque en effet le transistor 72, ce qui a pour effet d'isoler le noeud de tension B du circuit 7. Le générateur de haute tension est ensuite stoppé automatiquement par un compteur interne. Le signal POR-INIT restant à 0, le signal selref suit ensuite le niveau de la sortie HV du générateur de haute tension 82: Vcc ou VPP, si le générateur est redéclenché par un nouveau front montant sur le signal Start-HV. Le circuit de lecture et programmation de la cellule de référence selon l'invention est très avantageux, car il est exécuté pendant la durée de l'initialisation de circuit intégré, commandée par le signal POR, alors que le circuit n'est pas utilisable par l'extérieur. Il n'y a donc aucune perte sur le temps d'accès de la cellule. En outre, il y a un contrôle systématique de la cellule de référence, à chaque mise sous tension du circuit intégré. Ainsi, si la cellule de référence n'est plus programmée parce qu'elle a perdu des charges, le circuit de contrôle le détecte et reprogramme la cellule. Le dispositif de lecture selon l'invention est donc très fiable. Le procédé selon l'invention qui utilise la phase d'initialisation pour effectuer le contrôle de la cellule de référence est particulièrement astucieux. Peu de circuiterie supplémentaire est nécessaire pour le mettre en oeuvre. En outre, peu d'éléments ont à supporter la haute tension VPP: seuls le latch 70, les inverseurs 73 et 74 et les transistors 71 et 72 ont à commuter de la haute tension, pour programmer la cellule de référence. Le circuit de contrôle selon l'invention n'occupe donc que peu de place. L'invention s'applique à tout circuit intégré comprenant une mémoire EEPROM. Elle ne se limite pas à l'architecture décrite. Notamment elle s'applique à toute cellule mémoire EEPROM comprenant au moins un transistor de sélection. L'invention s'applique aussi aux architectures de mémoire EEPROM comprenant plusieurs cellules de référence. Comme représenté sur la figure 5a, on peut en effet avoir plusieurs cellules de référence en parallèle, ce qui améliore la fiabilité du dispositif (moins de rejet en sortie de fabrication notamment). Selon l'invention, on prévoit alors de contrôler toutes ces cellules en même temps. Ceci peut se faire par exemple par le même circuit de contrôle. On a ainsi représenté sur la figure 5b, trois cellules de référence Crefl, Cref2 et Cref3 avec les transistors de commutation de masse associé TMrefl, TMref2, TMref3. On a vu que la mise en parallèle de cellules de référence permet au dispositif de lecture de fonctionner correctement même si une ou plusieurs cellules de référence sont défectueuses (non programmées ou déprogrammées). Si on a n cellules de référence en parallèle, le dispositif fonctionnera correctement tant qu'il n'y aura pas plus de p cellules défectueuses, l cellules défectueuses. Pour la réalisation pratique du circuit de contrôle, il faut alors prévoir un transistor 72 par cellule de référence. On a ainsi représentés sur la figure 5b les transistors 721, 722, 723 respectivement connectés aux noeuds Bi, B2, B3 des cellules de références Crefl,Cref2, Cref3. Dans une variante, on pourrait prévoir un circuit de contrôle par cellule de référence, associé éventuellement à un circuit combinatoire pour n'autoriser la programmation des cellules défectueuses que si il y en a plus de p. Ceci permet de ne pas reprogrammer les cellules qui ne sont pas défectueuses. Le choix de l'une ou l'autre réalisation dépend des circonstances et de la place disponible sur le circuit intégré. Dans tous les cas, si on a n cellules de référence (n supérieur ou égal à 1), ces n cellules sont contrôlées en lecture, et si plus de p cellules sont défectueuses ( p compris entre 1 et n), au moins les cellules de références trouvées défectueuses sont reprogrammées. REVENDICATIONS 1. Dispositif de lecture de cellules d'une mémoire EEPROM, comprenant au moins une cellule de référence (Cref) et un circuit de comparaison (COMP) entre un courant passant dans la cellule de référence et un courant passant dans une cellule sélectionnée en lecture, caractérisé en ce que ladite cellule de référence est dans un état programmé. 2. Dispositif de lecture selon la revendication 1, une cellule de mémoire EEPROM comprenant un transistor à grille flottante (TGF) et au moins un transistor de sélection (Tsl), caractérisé en ce que la tension de grille (VCG) appliquée sur le transistor à grille flottante de la cellule de référence et sur le transistor à grille flottante de la cellule sélectionnée en lecture, est égale à 0 volt. 3. Dispositif de lecture selon la revendication 1 ou 2, caractérisé en ce qu'il comprend en outre un circuit de contrôle et programmation (6,7,8) de la cellule de référence ou des cellules de référence, et des moyens (POR-INIT, POR-INIT-DELAY) pour activer ledit circuit pendant une phase d'initialisation contrôlée par un circuit de détection de mise sous- tension (9). 4. Dispositif de lecture selon la revendication 3, caractérisé en ce que le circuit de contrôle et programmation comprend des moyens (6,7) pour précharger un noeud de tension (B) de chaque cellule de référence à la tension d'alimentation Vcc, pour connecter le noeud de masse (Mref) à la masse Vss, et pour appliquer la tension de polarisation de lecture (VCG) sur la grille de contrôle du transistor à grille flottante (TGFref) de chaque cellule de référence, le noeud de tension (B) fournissant un signal de déclenchement (/A) vers des moyens de programmation (6,8). 5. Dispositif de lecture selon la revendication 4, caractérisé en ce que les moyens de programmation comprennent des moyens (8) pour déclencher la génération de la haute tension (VPP), cette haute tension étant appliquée aux cellules de référence par les moyens de précharge (7). 6. Procédé de lecture de cellules d'une mémoire EEPROM, utilisant la comparaison des courants passant dans une cellule de référence (Cref) et une cellule mémoire sélectionnée (Ci), caractérisé en ce qu'il consiste à préalablement programmer la dite cellule de référence. 7. Procédé de lecture de cellules d'une mémoire EEPROM selon la revendication 6, caractérisé en ce qu'il consiste à appliquer une tension nulle comme tension de grille (VcG) sur le transistor à grille flottante (TGF) de chacune de ces cellules (Cref, Ci). 8. Procédé de lecture selon la revendication 6 ou 7, caractérisé en ce que la programmation des cellules de référence est effectuée pendant la phase d'initialisation (POR) du circuit, déclenchée par la détection d'une mise sous tension. 9. Procédé de lecture selon la revendication 8, pour un circuit de lecture comprenant n cellules de référence en parallèle, caractérisé en ce que la programmation est déclenchée si plus de p cellules de référence sont trouvées défectueuses, l cellules de référence trouvées défectueuses. 10. Circuit intégré comprenant une mémoire EEPROM, caractérisé en ce qu'il comprend un dispositif de lecture selon l'une quelconque des revendications 1 à 5.