FR2682503A1 - Procede de reparation de cellules sur-effacees contenues dans une memoire flash. - Google Patents

Procede de reparation de cellules sur-effacees contenues dans une memoire flash. Download PDF

Info

Publication number
FR2682503A1
FR2682503A1 FR9211876A FR9211876A FR2682503A1 FR 2682503 A1 FR2682503 A1 FR 2682503A1 FR 9211876 A FR9211876 A FR 9211876A FR 9211876 A FR9211876 A FR 9211876A FR 2682503 A1 FR2682503 A1 FR 2682503A1
Authority
FR
France
Prior art keywords
cell
over
erased
programming
voltage level
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR9211876A
Other languages
English (en)
Other versions
FR2682503B1 (fr
Inventor
Mielke Neal
Gregory E Atwood
Merchant Amit
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of FR2682503A1 publication Critical patent/FR2682503A1/fr
Application granted granted Critical
Publication of FR2682503B1 publication Critical patent/FR2682503B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/816Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout
    • G11C29/82Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout for EEPROMs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3404Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3404Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
    • G11C16/3409Circuits or methods to recover overerased nonvolatile memory cells detected during erase verification, usually by means of a "soft" programming step
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/025Detection or location of defective auxiliary circuits, e.g. defective refresh counters in signal lines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/88Masking faults in memories by using spares or by reconfiguring with partially good memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2545CDs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C2029/5006Current

Landscapes

  • Read Only Memory (AREA)

Abstract

Procédé de réparation de cellules sur-effacées contenues dans un réseau de mémoire flash (320) incluant une colonne comportant une première cellule et une seconde cellule. La réparation commence par une détermination de si oui ou non une première cellule est sur-effacée et par l'application d'une impulsion de programmation s'il en est ainsi. Puis la seconde cellule est examinée pour déterminer si oui on non elle est sur-effacée. Une impulsion de programmation est appliquée à la seconde cellule si elle est sur-effacée. Ensuite, si l'une ou l'autre des cellules a été sur-effacée, alors le niveau de tension d'impulsion de programmation est incrémenté. Ces étapes sont répétées jusqu'à ce qu'aucune des cellules de la colonne ne soit identifiée comme étant sur-effacée.

Description

i La présente invention concerne un procédé de réparation de cellules
sur-effacées dans des mémoires flash Plus particulièrement, la présente invention concerne un procédé de réparation de cellules de mémoire flash sur-effacées en utilisant une programmation du type canal-électrons chauds. Un type de mémoire semiconductrice non volatile de l'art antérieur est constitué par la mémoire morte programmable et effaçable électriquement de type flash ("mémoire flash") Une mémoire flash peut être programmée par un utilisateur et une fois qu'elle est programmée, la mémoire flash conserve ses
données jusqu'à ce qu'elles soient effacées.
Les cellules de mémoire flash sont typiquement programmées en utilisant une injection d'électrons chauds dans le canal et elles sont effacées par application d'une tension élevée à la jonction de source des cellules Les algorithmes d'effacement appliquent typiquement des impulsions d'effacement à la totalité du réseau jusqu'à ce que la cellule à effacer la plus lente s'efface au-dessous de la tension de seuil maximum acceptable Les cellules effacées au-dessous d'un seuil
acceptable minimum sont classiquement appelées cellules sur-
effacées Les cellules sur-effacées peuvent induire un courant de fuite sur leurs lignes de bit associées, ce qui provoque des erreurs lors de la lecture d'autres cellules situées sur la même
ligne de bit.
Les fabricants de mémoires flash ont tenté de réduire l'incidence d'un sur-effacement de cellule en utilisant une certaine variété de techniques Une optimisation du processus de fabrication de circuit intégré et un contrôle de la qualité de fabrication sont typiquement utilisés L'élimination complète du sur-effacement en utilisant ces procédés est cependant peu probable. La sensibilité d'une mémoire flash à un sur-effacement peut être minimisée en optimisant des schémas de détection de lecture Les schémas de détection de lecture optimisés souffrent de deux inconvénients Tout d'abord, ils ne peuvent pas éliminer un sur-effacement En second lieu, ils nécessitent des
compromis en termes de vitesse et de performance.
Les fabricants de mémoires flash ont également tenté d'éliminer le sureffacement en testant les mémoires et soit en remplaçant les cellules défectueuses par des éléments
redondants soit en mettant simplement au rebut la mémoire.
Le test fabricant présente cependant un certain nombre d'inconvénients Tout d'abord, la fabrication d'éléments redondants augmente le coût, la complexité et les retards de vitesse de lecture pour les mémoires flash En second lieu, les mémoires flash qui contiennent plus de cellules défectueuses que d'éléments redondants doivent être mises au rebut Pour finir, le test fabricant ne garantit pas que des cellules qui s'effacent normalement pendant le test ne deviendront pas défectueuses après des cycles d'effacement-programmation répétés. Des codes de correction d'erreur, tels que des schémas de code Hamming, sont également utilisés pour éliminer des erreurs provoquées par un sur-effacement Malheureusement, l'utilisation de codes de correction d'erreur nécessite typiquement l'ajout de cellules de mémoire supplémentaires à la
mémoire flash, ce qui augmente son coût.
Un objet de la présente invention consiste à réparer un
sur-effacement dans des mémoires flash.
Un autre objet de la présente invention consiste à proposer un procédé de réparation de sur-effacement qui soit optimisé du point de vue de la vitesse et de la consommation
d'énergie.
Un autre objet de la présente invention consiste à proposer un procédé de réparation de cellules sur-effacées qui
évite la mise au rebut de mémoires défectueuses.
Un autre objet de la présente invention consiste à proposer un procédé de réparation de cellules sur-effacées qui
n'utilise pas d'éléments redondants.
Encore un autre objet du procédé de la présente invention consiste à réparer un sur-effacement dans des mémoires flash
sans augmenter la surface allouée aux cellules de code d'erreur.
Un procédé de réparation de cellules sur-effacées dans un réseau de mémoire flash est décrit Un réseau flash inclut au moins une colonne comportant au moins deux cellules La réparation du réseau commence par la détermination de si oui ou non la première cellule est sur- effacée et par l'application d'une unique impulsion de programmation s'il en est ainsi Puis la seconde cellule est examinée pour identifier si oui ou non elle est sur-effacée Une impulsion de programmation est appliquée à la seconde cellule si elle est sur-effacée Ensuite, le niveau de tension de programmation est augmenté d'une première valeur si
l'une ou l'autre des cellules a été identifiée comme étant sur-
effacée Ces étapes sont répétées jusqu'à ce qu'aucune cellule ne
soit identifiée comme étant sur-effacée.
Encore un autre objet de la présente invention consiste à proposer un procédé de réparation de cellules sur-effacées qui
soit efficace même après que le test fabricant a été terminé.
D'autres objets, caractéristiques et avantages de la
présente invention apparaîtront à la lumière de la description
détaillée qui suit que l'on lira en relation avec les dessins annexés. La présente invention est illustrée au moyen d'exemples représentés sur les figures des dessins annexés dans lesquels des index de référence identiques indiquent des éléments similaires, ces exemples ne constituant en aucun cas une limitation de l'invention, et parmi ces dessins: la figure 1 est un schéma fonctionnel d'une mémoire flash, la figure 2 est une représentation schématique d'une partie d'un réseau de mémoire; la figure 3 est un schéma fonctionnel d'un circuit destiné à une réparation de sur-effacement; la figure 4 est un organigramme d'un algorithme de réparation de sur-effacement; la figure 5 est un schéma fonctionnel d'un circuit de vérification de sur-effacement; la figure 6 est un graphique d'un taux de programmation de cellules de mémoire en fonction d'une tension de commande; la figure 7 est un schéma fonctionnel d'une mémoire flash qui incorpore une machine d'état d'écriture; la figure 8 est un schéma fonctionnel d'une machine d'état d'écriture; et la figure 9 est un organigramme d'un algorithme de réparation de sur-effacement qui utilise une machine d'état
d'écriture.
Une partie 20 d'une mémoire flash est représentée sur la figure 1 La partie 20 inclut un réseau 90, un décodeur X 78, un décodeur Y 94 ainsi que des amplificateurs de détection et des décodeurs de sortie 96 Des données sont stockées dans le réseau 90 Le réseau 90 est accédé via le décodeur X 78 et le décodeur Y 94. Comme décrit de façon plus détaillée ci-après, un procédé itératif est utilisé pour réparer des cellules sur-effacées du réseau 90 Des cellules situées sur une colonne sont tout d'abord
examinées pour déterminer si oui ou non elles sont sur-effacées.
Les cellules sur-effacées reçoivent une unique impulsion de programmation de niveau de tension bas Des cellules situées sur la colonne sont examinées de façon répétée et elles se voient appliquer une unique impulsion de programmation jusqu'à ce qu'il
n'y ait plus de cellules qui soient identifiées comme étant sur-
effacées et jusqu'à ce que toutes les cellules soient réparées.
Vpp 36 est l'alimentation d'effacement/programmation pour la mémoire flash 20 En l'absence d'un niveau de tension haut sur Vpp, la mémoire flash se comporte comme une mémoire morte Les données stockées au niveau d'une adresse indiquée par des lignes d'adresse 57 et 82 sont rendues accessibles via des
lignes de données 59.
Le réseau 90 peut être effacé ou programmé en augmentant Vpp 36 jusqu'à 12 volts en conjonction avec la séquence de commande appropriée. Les données souhaitées contenues dans le réseau 90 sont
sélectionnées en utilisant des signaux d'adresse AX 57 et AY 82.
Le décodeur X 78 sélectionne la rangée appropriée dans le réseau en réponse à AX 57 Pour cette raison, le décodeur X 78 est appelé également décodeur de rangée 78 Le décodeur X 78 active la rangée indiquée du réseau 90 via un bus 83 De façon similaire, en réponse à AY 82, le décodeur Y 94 sélectionne la colonne appropriée dans le réseau 90 Du fait de sa fonction, le décodeur Y 94 est également appelé décodeur de colonne 94 Le décodeur Y 94 sélectionne la colonne indiquée en utilisant un bus 97. Des données lues dans le réseau 90 sont émises en sortie sur le décodeur Y 94 via le bus 97 Le décodeur Y 94 passe les
données du bus 97 à des amplificateurs de détection 100-107.
Les amplificateurs de détection 100-107 déterminent si oui ou non une cellule est chargée de façon négative Les amplificateurs de détection 100-107 émettent en sortie des données via un bus 59. Une partie 200 du réseau 90 est représentée sur la figure 2 La partie 200 inclut des cellules de mémoire 150-185 dont
chacune est un transistor à effet de champ Les cellules 150-
sont formées au niveau des intersections de lignes de mot I-206 et de lignes de bit 111-116, comme il est de pratique courante. Les lignes de mot 201-206 sont également appelées lignes X ou lignes de rangée Chacune des lignes de mot 201-206 est couplée aux grilles des cellules de mémoire d'une rangée particulière Par exemple, la ligne de mot 201 est couplée aux
grilles des cellules de mémoire 150-155.
Les lignes de bit 111-116 sont également appelées lignes de colonne ou lignes Y Chacune des lignes de bit 111-116 est couplée à une colonne de cellules de mémoire Par exemple, la ligne de bit 11 est couplée aux drains des cellules de mémoire 150, 156, 162, 168, 174 et 180 Les lignes de bit 111-116 sont
également couplées au décodeur Y 94.
Une ligne de source commune 141 est couplée à un commutateur de source qui régule la valeur de la tension appliquée aux sources des cellules de mémoire 150-185 La ligne de source commune 141 est également couplée à des premières lignes de source locales 121-126 et à des secondes lignes de source locales 131-135 Chaque première ligne de source locale 121-126 est couplée à une rangée particulière du réseau 90 De façon similaire, chaque seconde ligne de source locale 131-135
est couplée à une colonne particulière Les lignes de source 121-
126, 131-135 et 141 constituent ensemble une voie
d'application de tensions aux sources des cellules 105-185.
Comme il est de pratique courante, les cellules de mémoire 150-185 sont programmées en appliquant un potentiel d'approximativement 12 volts aux lignes de mot 201-206, un potentiel d'approximativement 7 volts aux lignes de bit 111-116
et en reliant la ligne de source commune 141 à la masse.
Les cellules de mémoire 150-185 sont effacées en appliquant un potentiel d'approximativement 12 volts à la ligne de source commune 141, en reliant les lignes de mot 201-206 et en permettant aux lignes de bit 111- 116 de flotter Des cellules de mémoire correctement effacées présentent une tension de
seuil positive qui se situe quelque part entre O volt et 3 volts.
L'effacement de la cellule 90 est réalisé en utilisant un algorithme commandé par un dispositif logique agencé sur puce ou par un microprocesseur agencé hors puce Ces algorithmes appliquent typiquement de façon répétée des impulsions d'effacement au réseau 90 jusqu'à ce que la cellule d'effacement la plus lente du réseau 90 s'efface au-dessous de la tension de
seuil maximum acceptable.
Le réseau 90 peut contenir un certain nombre de cellules de mémoire défectueuses qui s'effacent beaucoup plus rapidement que les autres cellules de mémoire Ces cellules de mémoire défectueuses peuvent être effacées à des tensions de seuil inférieures à la tension d'effacement acceptable minimum, typiquement zéro volt, dans le temps nécessaire pour abaisser la tension de seuil des cellules d'effacement les plus lentes jusqu'à un niveau acceptable, c'est-à-dire jusqu'à approximativement 3 volts Ces cellules de mémoire défectueuses peuvent alors induire un courant de fuite sur leurs lignes de bit associées 111-116, même avec leurs grilles reliées à la masse Il résulte de cela que pendant une vérification de sur-effacement de cellules effacées correctement, le courant détecté par les amplificateurs de détection 100- 107 est la somme du courant de cellules effacées correctement et du courant de fuite de ligne de bit De ce fait, des cellules effacées correctement peuvent être identifiées à tort comme étant sur-effacées En d'autres termes, en tant que résultat d'un courant de fuite de ligne de bit, la tension de seuil de cellules effacées correctement est identifiée
comme étant inférieure à zéro volt.
Une identification à tort de cellules effacées correctement comme étant sur-effacées a pour danger que la cellule sera sur-réparée du fait de l'augmentation de sa tension de seuil lors d'une tentative de mise en oeuvre d'une passe de vérification sur la cellule Une sur-réparation se produit lorsqu'une tension de seuil de cellule est augmentée au- dessus
de la limite supérieure acceptable pour l'effacement.
La figure 3 représente un circuit 300 destiné à réparer des mémoires flash sur-effacées Le circuit 300 inclut un testeur 310 et une mémoire flash 320 qui doit être réparée, laquelle inclut une partie 20 Le testeur 310 est de préférence commandé par calculateur Un équipement moins sophistiqué peut également être cependant utilisé La fonction du testeur 310 peut également être réalisée en utilisant une machine d'état
d'écriture, comme discuté ci-après.
Le testeur 310 génère toutes les entrées nécessaires pour la mémoire flash 320 et il lit les données émises en sortie au niveau de la mémoire 320 Des signaux d'adresse en provenance du testeur 310 sont appliqués aux bus 57 et 82 Le testeur 310 génère également et commande une tension de programmation/effacement, soit Vpp 36 Le testeur 310 fait varier le niveau de tension de Vpp 36 selon les besoins pour réparer des cellules sur-effacées Sur le bus 59, le testeur 310 lit des données émises en sortie par la mémoire flash 320 Le testeur 310 répare les cellules sur-effacées en utilisant
l'algorithme de la figure 4.
Pour résumer, le procédé de réparation de cellules sur-
effacées est un processus itératif qui utilise une vérification de
sur-effacement et une programmation de niveau de tension bas.
La réparation commence par la sélection d'une colonne et par l'examen de chaque cellule de cette colonne afin de déterminer si oui ou non une quelconque cellule est sur-effacée Cette
procédure est classiquement appelée vérification de sur-
effacement Une cellule est identifiée comme étant sur-effacée lorsqu'elle laisse passer un courant supérieur au courant attendu pour la tension de seuil acceptable la plus faible La réparation s'effectue en appliquant une unique impulsion de programmation de niveau bas à la cellule sur-effacée Le niveau de l'impulsion de programmation est suffisamment bas pour assurer que la cellule n'est par sur-réparée indépendamment des autres conditions de fonctionnement Les cellules restantes de la colonne sont examinées de la même façon Si une quelconque cellule de la colonne sélectionnée est identifiée comme étant sur-effacée, chaque cellule de la colonne est vérifiée quant à son état de sur-effacement une seconde fois Les cellules identifiées comme étant sur-effacées sont à nouveau programmées au moyen d'une unique impulsion de niveau bas Le niveau de tension de l'impulsion de programmation pour la passe de réparation courante est augmenté cependant par comparaison avec la passe de réparation précédente Ces étapes sont répétées jusqu'à ce qu'aucune des cellules de la colonne ne soit identifiée
comme étant sur-effacée.
Le présent procédé de réparation peut tolérer un courant de fuite de ligne de bit maximum de plusieurs centaines de micro-ampères Cette robustesse est due en partie au choix approprié du niveau de tension de programmation initial et à la différence de comportement entre des cellules défectueuses et des cellules normales Supposons qu'une colonne inclut une cellule sévèrement sur-effacée avec une tension de seuil VT d'approximativement 5 volts La cellule sévèrement sur-effacée tire un courant suffisant pour provoquer l'échec du test de vérification de sur- effacement pour toutes les autres cellules de la même colonne Selon le présent procédé de réparation, chaque cellule de la colonne est programmée une fois à un niveau de tension très bas La tension de l'impulsion de programmation initiale est choisie pour être suffisamment basse pour garantir qu'aucune des cellules de la colonne n'est sur- réparée En général, une programmation à canal-électrons chauds dépend de façon exponentielle de la tension de commande (VG VT) O' VG est la tension de grille utilisée lors de la programmation et VT est la tension de seuil de la cellule qui est programmée Avec VG égal à 5 volts, une cellule effacée correctement avec une tension VT de 2 volts se programme très lentement A l'opposé, la cellule sévèrement sur- effacée se programme très rapidement Ainsi, l'impulsion de programmation de niveau bas initiale a peu d'effet sur des cellules correctement effacées mais un effet considérable sur la cellule sévèrement sur-effacée En tant que conséquence de la passe initiale de programmation/réparation, le courant de fuite de ligne de bit pendant la passe de programmation/réparation suivante est réduit Le procédé de réparation par passes multiples contribue à éliminer les erreurs provoquées par un courant de fuite et il contribue à réduire le
risque de sur-réparation.
Le fait de commencer une réparation à un niveau de
tension de grille faible est avantageux pour une autre raison.
Aucune tension spécifique n'est optimale pour réparer chaque mémoire flash ou éventuellement la même mémoire flash pendant toute sa durée de vie du fait que la caractéristique de programmation à canal-électrons chauds varie avec la température, avec les conditions de fabrication et avec le taux d'utilisation Ainsi, en commençant à un niveau de tension bas, le présent procédé de réparation de sur-effacement s'accommode
d'un large spectre de tensions optimum spécifiques.
Le présent procédé de réparation offre d'autres avantages.
Au moyen de l'utilisation du présent procédé, des mémoires
défectueuses peuvent être réparées au lieu d'être mises au rebut.
Le présent procédé de réparation ne nécessite pas l'utilisation d'éléments redondants coûteux du fait que les cellules défectueuses sont réparées plutôt qu'être dérivées En outre, le présent procédé de réparation permet la réparation de cellules
sur-effacées après le test fabricant.
La figure 4 représente le présent procédé de réparation en détail La réparation commence au niveau d'une étape 400 o le testeur 310 établit un signal d'adresse Ay 82 à la première colonne du réseau 90 La première colonne du réseau 90 est
choisie seulement par souci de commodité.
Après établissement du signal d'adresse Ay 82, le testeur 310 passe à une étape 402 Au niveau de l'étape 402, un compteur appelé COUNT est initialisé à zéro Le testeur 310 utilise COUNT pour garder une trace du nombre de passes de programmation/réparation qui ont été réalisées pour la colonne
présentement adressée.
Depuis l'étape 402, le testeur 310 passe à une étape 404.
Lors de l'étape 404, le testeur 310 établit un indicateur, soit BADCOLUMN, à faux BADCOLUMN indique si oui ou non l'une quelconque des cellules de la colonne présentement adressée a été identifiée comme étant sur-effacée Sur la base de BADCOLUMN, le testeur 310 décide ultérieurement si oui ou non une autre passe de programmation/réparation de la colonne
présentement adressée doit être effectuée.
Le testeur 310 passe à une étape 406 depuis l'étape 404.
Au niveau de l'étape 406, le testeur 310 établit un signal
d'adresse Ax 57 à la première cellule de la colonne sélectionnée.
A nouveau, la première cellule est choisie seulement par souci de commodité. Depuis l'étape 406, le testeur 310 parvient à une étape 408 Au niveau de l'étape 408, le testeur 310 examine la tension de seuil de la cellule présentement adressée pour déterminer si oui ou non cette cellule est sur-effacée Une cellule est considérée comme étant sur- effacée si sa tension de seuil est
inférieure à zéro volt.
Le testeur 310 détermine si oui ou non une cellule est sur-effacée en utilisant la commande OVERERASE-VERIFY (VERIFICATION DE SUR-EFFACEMENT) en conjonction avec une cellule de référence spéciale La commande OVERERASE-VERIFY permet aux utilisateurs d'une mémoire flash de déterminer si oui
ou non une opération d'effacement a été effectuée avec succès.
Une cellule de référence qui peut être réglée finement permet au
testeur 310 de déterminer si oui ou non une cellule est sur-
effacée en utilisant la commande OVERERASE-VERIFY.
Un circuit de vérification de sur-effacement 500 qui utilise la commande OVERERASE-VERIFY est constitué comme représenté sur la figure 5 Une cellule de réseau 502 est sélectionnée par des signaux d'adresse Ay 82 et Ax 57 La cellule 502 est couplée à une entrée d'un amplificateur de détection 504 L'autre entrée de l'amplificateur de détection 504 est reliée à une cellule de référence qui peut être réglée finement 506 Avant de commencer une vérification de sur-effacement, habituellement pendant la fabrication, la tension de seuil de la cellule de référence 506 est réglée finement à une tension qui représente la tension la plus basse acceptable pour des cellules effacées De préférence, la tension de seuil de la cellule de
référence 506 est réglée à 0,5 volt.
Pendant une vérification de sur-effacement, le même niveau de tension, soit approximativement 5 volts, est appliqué aux grilles à la fois de la cellule de réseau 502 et de la cellule de référence 506 Si la cellule 502 présente une tension de seuil inférieure à celle de la cellule de référence 506, alors l'amplificateur de détection 504 émet en sortie un " 1 " logique qui indique au testeur 310 que la cellule 502 est sur- effacée De façon analogue, un " O " logique en provenance de l'amplificateur de détection 504 indique au testeur 310 que la cellule 502 n'est
pas sur-effacée.
Selon une variante, une vérification de sur-effacement peut être effectuée en utilisant des commandes ERASE-VERIFY (VERIFICATION D'EFFACEMENT) et PROGRAM-VERIFY (VERIFICATION DE PROGRAMMATION) Toutes les commandes de vérification couplent une cellule de référence spéciale à chaque amplificateur de détection; la seule différence entre ces commandes est constituée par la tension VT de la cellule de référence spéciale Tant que la cellule de référence spéciale associée à une commande particulière est réglée finement à une
tension VR d'approximativement 0,5 V, une vérification de sur-
effacement peut être effectuée en utilisant cette commande
particulière.
Le schéma de vérification de sur-effacement de la figure identifie correctement toutes les cellules sur-effacées Un courant de fuite de ligne de bit peut cependant amener le circuit 500 à identifier à tort une cellule effacée correctement comme étant sur-effacée Le danger d'une identification à tort est que la cellule identifiée à tort sera sur-réparée Le niveau de tension de programmation initial est par conséquent choisi pour
empêcher une sur-réparation.
Si une cellule est identifiée comme étant sur-effacée au niveau de l'étape 408, le testeur 310 passe à une étape 410 Le testeur 310 tente de réparer la cellule sur-effacée au niveau de l'étape 410 en appliquant une unique impulsion de programmation La première passe abaisse la colonne adressée, le testeur 310 augmente Vpp 36 jusqu'à un niveau de tension
initial, soit VSTART, et il délivre une commande PROGRAM.
VSTART doit être suffisamment faible de telle sorte qu'une unique impulsion appliquée à une grille de cellule ne puisse pas provoquer une sur-réparation indépendamment des conditions de fonctionnement VSTART doit être également suffisamment haut pour assurer que la tension au niveau du drain de la cellule est suffisamment élevée pour permettre une programmation La tension minimum acceptable au niveau du drain de la cellule pendant la programmation est d'approximativement 4 volts, ceci sans commande indépendante des tensions de gain et de drain et étant entendu que des tensions de drain valent typiquement Vpp/2 et que VSTART la plus basse possible vaut approximativement 8 volts Dans des circuits qui permettent une commande indépendante des tensions de grille et de drain, une réparation peut s'effectuer avec des tensions de grille aussi faibles que 3 volts Une programmation à canal- électrons chauds
s'effectue de préférence avec une tension VSTART de 5 volts.
Après application d'une unique impulsion de programmation à la cellule sur-effacée, le testeur 310 passe à une étape 412 Au niveau de l'étape 412, le testeur 310 établit BADCOLUMN à vrai, ce qui indique qu'au moins une cellule de la colonne présentement adressée a été identifiée comme étant sur-effacée.
Le testeur 310 passe à une étape 414 depuis l'étape 412.
Au niveau de l'étape 414, le testeur 310 détermine si oui ou non, il a vérifié du point de vue du sur-effacement chaque cellule de la colonne présentement adressée Le testeur 310 effectue cette
détermination sur la base du signal d'adresse de rangée Ax 57.
Si toutes les cellules n'ont pas été examinées, le testeur 310 passe à une étape 416 L'adresse de rangée Ax 57 est incrémentée au niveau de l'étape 416, ce qui prépare le testeur
310 à l'examen de la cellule suivante de la colonne.
Le testeur 310 repasse à l'étape 408 depuis l'étape 416 afin de vérifier du point de vue du sur-effacement la cellule présentement adressée Si la cellule est sur-effacée, le testeur 310 déroule les étapes 410, 412, 416 et 414, comme précédemment décrit Par ailleurs, si la cellule présentement adressée n'est pas sur-effacée, le testeur 310 se branche
directement à l'étape 414 depuis l'étape 408.
Le testeur 310 passe de l'étape 414 à une étape 418 lorsque chaque cellule de la colonne présentement adressée a été vérifiée du point de vue du sur-effacement Au niveau de l'étape 418, le testeur 310 examine BADCOLUMN Si aucune cellule n'a été identifiée comme étant sur-effacée pendant la dernière passe de réparation par programmation, le testeur 310 passe à une étape 420 pour commencer une autre passe de programmation/réparation. Le testeur 310 incrémente le compteur COUNT d'une unité au niveau d'une étape 420 Le testeur 310 passe directement de
l'étape 420 à une étape 422.
Au niveau de l'étape 422, le testeur 310 détermine si oui ou non le nombre maximum de passes de programmation/réparation pour la colonne présentement adressée est dépassé Le nombre maximum de passes de réparation par programmation est établi à 750 par colonne Selon un autre mode de réalisationle nombre maximum peut être établi à un quelconque nombre arbitraire Le nombre maximum de passes de programmation/réparation par colonne peut également être modifié pour compenser des impulsions deprogrammation
de durées différentes.
Le testeur 310 passe de l'étape 422 à une étape 424 lorsque le nombre maximum de passes de programmation/réparation est atteint Au niveau de l'étape 424,
le testeur 310 indique que le schéma de réparation est un échec.
Le testeur 310 passe de l'étape 424 à une étape 425 et la
réparation se termine.
Par ailleurs, si le nombre maximum de passes de programmation/réparation n'est pas atteint, le testeur 310 passe de l'étape 422 à l'étape 404 Au niveau de l'étape 404, le testeur 310 établit BADCOLUMN à vrai en préparation de la passe
de programmation/réparation suivante.
Le testeur 310 passe de l'étape 404 à l'étape 406 Au
niveau de cette étape, l'adresse de cellule Ax 57 est ré-
initialisée à la première cellule de la colonne présentement adressée. Le testeur 310 passe de l'étape 406 à l'étape 408 Au niveau de cette étape, le testeur 310 ré-examine la première cellule pour déterminer si oui ou non elle est sur-effacée Si la cellule présentement adressée est sur-effacée, le testeur 310
passe à l'étape 410.
Le testeur 310 applique une unique impulsion de
programmation à la cellule sur-effacée au niveau de l'étape 401.
Lors des passes de programmation/réparation qui suivent la première passe, Vpp 36 est augmenté par pas depuis VSTART La
valeur de pas qui a la préférence, soit VSTEP, est de 0,5 volts.
Selon d'autres modes de réalisation, d'autres valeurs de pas
peuvent être utilisées.
Vpp est établi conformément à l'équation ( 1) ( 1) VPP = VSTART + COUNT*VSTEP Si Vpp < 7 volts;
Vpp = 7 volts sinon.
Le niveau de tension de programmation maximum est de 7 volts.
Une tension de grille maximum de 7 volts a la préférence pour éviter toute sur-réparation de cellules effacées correctement Le choix de 7 volts est issu de la caractéristique de taux de programmation de la cellule de mémoire flash, cette caractéristique étant représentée sur la figure 6 Le taux de programmation d'une cellule de mémoire flash augmente lorsque la tension de commande VG-VT augmente jusqu'à ce qu'elle atteigne Vmax, soit une tension de commande maximum, qui vaut approximativement 12 volts Au-delà de Vmax, le taux de programmation diminue lorsque la tension de commande augmente Du fait que chaque cellule d'une colonne peut présenter une tension VT différent, la caractéristique de programmation de la figure 6 constitue un facteur de hasard pour la mécanique du présent procédé de sur-effacement Considérons la réparation d'une colonne qui inclut une cellule sévèrement sur-effacée présentant une tension VT de -5 V et plusieurs cellules correctement effacées présentant une tension VTS de 1 V Le fait d'utiliser une tension VG de 8 volts pour réparer la colonne signifie que la tension de commande de la cellule sévèrement sur- effacée excède Vmax tandis que les tensions de commande des cellules correctement effacées sont inférieures à Vmax Il résulte de cela que le taux de programmation de la cellule sévèrement effacée diminue tandis que le taux de programmation des cellules correctement effacées augmente Il est par conséquent possible d'augmenter VG pour sur-réparer les cellules correctement effacées Le présent procédé évite une sur- réparation en limitant Va à un maximum de 7 volts Selon d'autres modes de réalisation, une tension VG qui excède 7 volts peut être utilisée Ces procédés de réparation sont tout simplement moins efficaces que le procédé qui a la préférence
en termes d'empêchement de sur-réparation.
Après application d'une impulsion de programmation à la cellule sureffacée, le testeur 310 passe à l'étape 412 Au niveau de l'étape 412, le testeur 310 établit BADCOLUMN à vrai, ce qui indique qu'au moins une cellule de la colonne
présentement adressée est sur-effacée.
Le testeur 310 passe de l'étape 412 à l'étape 414 S'il reste sur la colonne présentement adressée des cellules qui n'ont pas été vérifiées du point de vue du sur-effacement pendant la passe courante, alors le testeur déroule les étapes 416, 408, 410 et 412 comme précédemment décrit Une fois que chaque cellule située sur la colonne présentement adressée a été vérifiée du point de vue du sur-effacement, alors le testeur 310 déroule les étapes 418, 420, 422, 404 et 406 comme
précédemment décrit.
Si le schéma de réparation s'effectue avec succès, alors il y aura une passe de programmation/réparation d'une colonne pendant laquelle aucune cellule ne sera identifiée comme étant sur-effacée En d'autres termes, il existe une passe pour laquelle le testeur 310 atteint l'étape 418 et pour laquelle BADCOLUMN est faux Lorsque BADCOLUMN est faux, toutes les cellules situées sur la colonne présentement adressée ont été réparées
et le testeur 310 passe à une étape 426.
Au niveau de l'étape 426, le testeur 310 détermine si oui ou non chaque colonne du réseau 90 a été réparée Si chaque colonne n'a pas été réparée, le testeur 310 passe à une étape 428. Le testeur 310 incrémente l'adresse de colonne Ay 82 en
préparation de la réparation de la colonne suivante du réseau 90.
Le testeur 310 passe de l'étape 428 à l'étape 402 et il effectue un cycle en déroulant les étapes 402, 404, 406, 408, 410, 412,
414, 416, 418, 420 et 422 comme précédemment décrit.
Une fois que chaque colonne du réseau 90 a été réparée, le testeur 310 termine la réparation par passage à l'étape 425
depuis l'étape 426.
La réparation des cellules sur-effacées peut être réalisée en utilisant d'autres algorithmes Le procédé de la figure 4 répare des cellules par incrémentation de niveau de tension de programmation tandis que la durée d'une impulsion de programmation reste constante Selon un autre mode de réalisation, il est également possible au niveau de l'étape 410 d'utiliser un niveau de tension de programmation constant et
d'incrémenter la durée des impulsions de programmation.
L'étape 410 peut être également modifiée pour permettre l'application de multiples impulsions de programmation, par opposition à une unique impulsion, aux cellules sur-effacées De fait, les impulsions de programmation peuvent être appliquées de façon répétée jusqu'à ce que la cellule sur-effacée soit réparée Ces alternatives sont plus simples que le mode de réalisation qui a la préférence bien qu'elles soient moins efficaces. Selon une variante, toutes les cellules contenues dans un réseau peuvent être réparées au lieu de réparer seulement les cellules sur-effacées En d'autres termes, l'étape 408 peut être éliminée Cette alternative est moins efficace que le mode de réalisation qui a la préférence en ce que les cellules risquent
davantage d'être sur-réparées.
D'autres procédés destinés à effectuer la vérification de
sur-effacement de l'étape 408 peuvent également être utilisés.
Par exemple, plutôt qu'appliquer la même tension aux grilles à la fois de la cellule de référence et de la cellule du réseau, des niveaux de tension différents peuvent être utilisés de telle sorte que la tension de seuil des cellules de référence n'ait pas à être réglée finement à la limite acceptable plus basse pour des cellules effacées Par ailleurs, n'importe quelle autre source de courant tels qu'un transistor ou qu'une résistance peut être
substituée à la cellule de référence 506.
Selon encore un autre mode de réalisation, les colonnes défectueuses ou multiplets (ou octets) défectueux peuvent être identifiés au lieu d'identifier les cellules sur-effacées Toutes les cellules correspondant à l'octet défectueux ou à la colonne défectueuse peuvent être programmées jusqu'à ce que l'octet pris dans sa globalité ou la colonne prise dans sa globalité soit
vérifiée du point de vue du sur-effacement.
La figure 7 représente sous la forme d'un schéma fonctionnel un autre circuit de réparation de cellules de mémoire flash sur-effacées qui incorpore une machine d'état d'écriture appelée WSM 32 La machine d'état d'écriture 32 commande la programmation, l'effacement et la réparation du
sur-effacement du réseau de mémoire flash 20.
La machine d'état d'écriture 32 réalise ces fonctions en conjonction avec un autre circuit également fabriqué sur le même substrat que le réseau 20 Un commutateur de tension de drain 44 distribue des tensions continues sur les drains de la totalité de la mémoire flash 20 La machine d'état de commande décode des signaux de commande OEB 24, CEB 22 et WEB 26 et donne instruction à la machine d'état d'écriture 32 d'effectuer
l'opération sélectionnée.
Les entrées continues appliquées sur la mémoire flash 20 incluent Vpp 36, soit la tension d'alimentation d'effacement/programmation Vcc 16 est l'alimentation du dispositif et Vss 18 est la masse Selon un mode de réalisation particulier, Vpp 36 vaut 12,0 volts et Vcc 16 vaut
approximativement 5 volts.
En l'absence d'une tension élevée sur Vpp 36, la mémoire flash 20 se comporte comme une mémoire morte Les données stockées à l'emplacement adressé sont lues dans le réseau de mémoire 20 et sont rendues disponibles via des lignes de
données 26 pour un circuit externe.
La mémoire flash 20 reçoit trois signaux de commande: le code validation de puce ("CEB") 22, le code validation d'écriture ("WEB") 26 et le code validation de sortie ("OEB") 24 L'entrée CEB 22 sélectionne une mémoire flash et est activée à un niveau bas L'entrée OEB 24 est la commande de sortie pour la mémoire flash et elle doit être utilisée pour soumettre à une logique de porte des données en provenance des broches de données issues
de la mémoire flash L'entrée OEB 24 est activée à un niveau bas.
Les deux fonctions de commande CEB 22 et OEB 24 doivent être actives logiquement pour obtenir des données au niveau des lignes de données de la mémoire flash Le signal de code de validation d'écriture WEB 26 permet l'écriture dans un réseau de mémoire tandis que CEB 22 est à un niveau bas WEB 26 est
activée à un niveau bas.
La mémoire flash peut se voir effectuer une écriture en amenant WEB 26 à un niveau logique haut tandis que CEB 22 est bas Des adresses et des données sont verrouillées sur le front montant de WEB 26 Des cadencements de microprocesseur
standard sont utilisés.
Des opérations de dispositif sont sélectionnées en écrivant des motifs de données spécifiques via les lignes d'entrée/sortie de données Un effacement est initialisé au moyen d'une séquence de commande à deux cycles La fin de l'événement effacement peut être détectée après une commande d'état de lecture Une programmation est également exécutée au moyen d'une séquence à deux commandes Un balayage du registre des états à l'aide de la commande registre des états de lecture
détermine lorsque la séquence de programmation est terminée.
La figure 8 représente sous forme de schéma fonctionnel le circuit de la machine d'état d'écriture 32 La machine d'état d'écriture 32 inclut un oscillateur et un générateur 70, un contrôleur d'état suivant 72, un compteur d'événements 74, un compteur de périodes 76, un compteur d'adresses 78 et un
bloqueur et comparateur de données ("DLC") 80.
Une commande RESET ou de remise à l'état initial 52 est appliquée à pratiquement tous les circuits contenus dans la machine d'état d'écriture 32 et cette commande force des noeuds critiques contenus dans la machine d'état d'écriture 32 à des états connus Par exemple, RESET 52 force à zéro logique les
signaux de comptage terminaux 88, 90 et 92.
Peu de temps après réception d'un signal RESET inactif 52, l'oscillateur/générateur de phase 70 commence à générer deux horloges dont les phases ne se chevauchent pas, soit une phase 1 PH 1 82 et une phase 2 PH 2 84, qui sont aiguillées sur
pratiquement tout le circuit WSM.
Le contrôleur d'état suivant 72 commande et coordonne les activités de la machine d'état d'écriture 32 et détermine l'état suivant de WSM Le contrôleur d'état suivant 72 génère les cinq sorties SBUS l 0: 4 l 54 qui indiquent l'état courant de WSM 32. Chaque circuit qui reçoit SBUS l 0: 4 l 54 en provenance du contrôleur d'état suivant 72 effectue son propre décodage de SBUS lO: 4 l 54 pour déterminer sa tâche suivante Cette conception permet la réalisation en parallèle de bon nombre de tâches, ce qui minimise le temps nécessaire pour effectuer des
fonctions d'effacement et de programmation.
Le compteur de périodes 76 détermine et cadence les périodes d'impulsions pour des tensions du réseau pendant des opérations de réparation de sur-effacement, de programmation et d'effacement En devenant activé à un niveau haut, le signal de comptage terminal PCTRTC 88 du compteur de périodes 76 informe le contrôleur d'état suivant 72 que la période temporelle sélectionnée s'est écoulée Le compteur de périodes 76 décode SBUS l 0: 4 l 54 pour sélectionner la période d'impulsion souhaitée. Le compteur d'événements 74 détermine lorsque le nombre maximum d'opérations de réparation de sur-effacement, de programmation ou d'effacement par octet a été atteint Lorsque le nombre maximum d'opérations par octet a été atteint, le compteur d'événements 74 en informe le contrôleur d'état suivant 72 en amenant le signal de comptage terminal d'événements ECTRTC 90 à un niveau logique haut Le compteur d'événements 74 détermine le nombre maximum d'opérations en décodant les sorties SBUS l 0: 4 l 54 Selon le mode de réalisation qui a la préférence, le nombre maximum d'opérations de réparation de sur-effacement par bit est de 750; cependant,
n'importe quel nombre maximum peut être choisi.
Dans la WSM 32, le compteur d'adresses 78 fonctionne à la fois en tant que tampon d'entrée et que compteur Lorsque le signal READY (ou PRET) 50 est à un niveau haut, l'adresse située au niveau des lignes d'adresse A l 0: 16 l est émise en sortie en tant que signaux AY l 0: 6 l 55 et AX l 0: 9 l 57 Les signaux AY 55 et AX 57 pointent l'emplacement de l'octet contenu dans le réseau de mémoire 22 qui doit être réparé du point de vue du
sur-effacement, programmé ou effacé.
Après que l'adresse a été entrée dans les tampons d'entrée, l'adresse en provenance des tampons d'entrée est chargée dans le circuit de comptage d'adresses sous la commande de CSM 28 via un signal de validation de verrouillage d'adresse ALE 49 Le compteur d'adresses 78 effectue alors son
comptage sur toutes les adresses du réseau de mémoire 20.
Le compteur d'adresses 78 incorpore deux compteurs, soit un compteur de colonnes appelé également compteur Y et un compteur de rangées appelé également compteur X Chaque compteur produit un signal de comptage terminal de niveau logique haut actif pour le contrôleur d'état suivant 72 Le compteur de colonnes émet en sortie un signal de comptage terminal de colonne AYTC et le compteur de rangées émet en
sortie un signal de comptage terminal de rangée AXTC.
Le bloqueur et comparateur de données (DLC) 80 constitue l'interface entre la WSM 32 et la machine d'état de commande 28 ainsi qu'entre le réseau de mémoire 22 et les lignes de données 26 Une entrée de données de logique transistor-transistor (TTL) sur les lignes de données 26 est tamponnée par le DLC 80 et est passée à la machine d'état de commande 28 en tant que signaux
DATAIN l O 7 l 27.
Si le signal reçu sur les lignes DATAIN l 0: 7 l 27 représente une commande de programmation, la machine d'état de commande 28 donne instruction au DLC 80 de stocker l'information au niveau des lignes de données 26 en établissant le signal de validation de bascule de données DLE 47 à un niveau logique de un Pendant les opérations d'effacement de programmation et de vérification de sur-effacement, le DLC 80 compare les données stockées dans ses bascules pour détecter des signaux d'amplification SOUT l 0: 7 l 59 et il indique une correspondance en établissant MATCH 94 à un niveau logique haut. Le DLC 80 compare les signaux de sortie d'amplificateur de détection, soit SOUT l 0: 7 l 59, qui sont indicatifs des contenus des cellules de mémoire, à un niveau logique de
référence pendant des procédures de vérification de sur-
effacement et il indique un effacement effectué avec succès au contrôleur d'état suivant en établissant MATCH 94 à un niveau
logique haut.
Le registre d'états 34 reporte l'état de la machine d'état d'écriture 32 via des signaux d'état STAT l 3: 7 l 56 qui sont
multiplexés sur des lignes d'entrée/sortie de données 26.
Des mémoires à contenu adressable (CAM) (non représentées) qui sont résidentes dans le réseau 90 émettent en sortie un signal TWOROW actif pour le contrôleur d'état suivant 72 chaque fois que le compteur d'adresses 78 émet en sortie une adresse qui inclut une rangée mise en court-circuit La signification de TWOROW fait l'objet d'une discussion détaillée ci-après. Sur la figure 9, un autre algorithme de réparation d'un sur-effacement en utilisant la machine d'état d'écriture 32 est représenté Sur la figure 9, chaque bloc représente un -état de la machine d'état d'écriture 32 Le nom de chaque état est indiqué au niveau de la ligne supérieure de chaque bloc La combinaison de signaux qui provoquent le branchement du contrôleur d'état suivant 62 sur un autre état est de façon générale indiquée dans le texte à côté de chaque branchement, à l'aide de signaux inactifs précédés par un point d'exclamation "l" Il est bien entendu que le contrôleur d'état suivant 72 se débranche d'un état sur un autre état indépendamment des entrées qui arrivent au contrôleur d'état suivant 72 lorsqu'aucune combinaison de signaux n'est indiquée à la suite d'un branchement Par ailleurs,
l'algorithme de la figure 9 effectue une réparation de sur-
effacement sur huit colonnes simultanément Ceci est dû à l'agencement du réseau 20 qui applique le même signal d'adresse
à huit blocs différents simultanément afin d'accéder à un octet.
Par souci de simplification, la discussion de la figure 9 commence avec la vérification de sur-effacement d'une mémoire flash qui n'inclut aucune rangée mise en court-circuit et dans laquelle aucune cellule n'est sur-effacée En d'autres termes, on suppose que le signal TWOROW est inactif et que le signal MATCH
est actif.
Avant de commencer la vérification de sur-effacement, le compteur d'adresses 78 est remis à l'état initial, au début de sa valeur de comptage, ce qui assure que toutes les colonnes
contenues dans le réseau seront vérifiées du point de vue du sur-
effacement La vérification du sur-effacement commence au niveau d'une étape 500 par remise à l'état initial du bit de colonne mauvaise, soit BADCOLUMN Simultanément, la première cellule des huit premières colonnes est vérifiée du point de vue de l'effacement En d'autres termes, la sortie de chaque cellule du réseau est appliquée à un amplificateur de détection pour être
comparée à une cellule de référence spéciale.
Selon un mode de réalisation qui a la préférence, les niveaux de tension utilisés dans le circuit de vérification de sur-effacement varient par rapport à ceux qui ont fait précédemment l'objet d'une discussion Le circuit de base de la figure 5 est cependant non modifié Cette différence résulte de la difficulté du réglage fin de cellules de référence spéciales à 0,5 volt En lieu et place, des cellules de référence spéciales sont réglées à 3 volts, soit un niveau qui est plus facile à obtenir Pour obtenir un courant représentatif d'une différence de 2 volts entre VT et VG, 5 volts sont appliqués à la grille de chaque cellule de référence spéciale A l'opposé, des cellules de réseau effacées correctement présentent une tension VT de 0,5 volt à 1, 1 volts et la tension appliquée à la grille des cellules de
réseau est de 2,5 volts.
Après réalisation d'une vérification de sur-effacement sur l'octet indiqué, le contrôleur d'état suivant 72 se branche de l'étape 500 à une étape 502 dans laquelle on vérifie que le compteur de colonnes n'a pas atteint sa valeur de comptage terminale Au niveau de l'étape 502, la machine d'état d'écriture 32 détermine si oui ou non les cellules présentement adressées ont subi une vérification de sur-effacement La machine d'état
d'écriture 32 se prépare également à une réparation de sur-
effacement éventuelle en générant des signaux de sélection pour un commutateur de tension de drain 44 Lorsqu'il est validé, le commutateur de tension de drain 44 amène les drains des cellules sélectionnées jusqu'à 7 volts, ce qui permet leur réparation Les drains de cellules non sélectionnées, c'est-à-dire de cellules correctement effacées, sont mis à la masse lorsque le commutateur de tension de drain 44 est validé, ce qui
empêche la réparation de cellules non sélectionnées.
Le bloqueur et comparateur de données 80 génère les signaux de sélection en comparant des sorties d'amplificateur de détection SOUT l 0: 7 l à des valeurs attendues Pour des cellules sur-effacées, la sortie de l'amplificateur de détection ne correspond pas à la valeur attendue Le bloqueur et comparateur de données 80 répond à une non correspondance en amenant un
signal sélectionné associé aux cellules à un niveau haut actif.
Pour des cellules correctement effacées, l'amplificateur de détection émet en sortie des valeurs attendues et le bloqueur et comparateur de données 80 répond à ces valeurs en forçant les
signaux de sélection associés aux cellules à l'état inactif.
Si le bloqueur et comparateur de données 80 indique que tous les huit bits ont subi une vérification de sur-effacement en forçant MATCH à l'état actif, alors la machine d'état d'écriture
32 passe de l'étape 502 à une étape 504.
La machine d'état d'écriture 32 incrémente l'adresse de rangée au niveau de l'étape 504 La machine d'état d'écriture 32
passe alors de l'étape 504 à une étape 506.
* Au niveau de l'étape 506, la cellule suivante de chacune
des huit colonnes adressées est vérifiée du point de vue du sur-
effacement La vérification de sur-effacement des colonnes présentement adressées se poursuit si AXTC est inactif La machine d'état d'écriture 32 répond au AXTC inactif par passage
de l'étape 506 à l'étape 502.
Au niveau de l'étape 502, la machine d'état d'écriture 32 détermine si oui ou non l'une quelconque des cellules
présentement adressées doit être réparée du point de vue du sur-
effacement.
Si l'on suppose qu'aucune des cellules du réseau 20 n'est sur-effacée, la machine d'état d'écriture déroule les étapes 502, 504 et 605 jusqu'à ce que le compteur de rangées atteigne sa valeur de comptage terminale Suite à la réception d'un signal AXTC actif en provenance du compteur de rangées, la machine d'état d'écriture, 32 passe de l'étape 506 à une étape 508 Au niveau de l'étape 508, le compteur de colonnes incrémente sa valeur de comptage, ce qui sélectionne un autre jeu de huit colonnes pour une vérification de sur-effacement et pour une
réparation.
La machine d'état d'écriture 32 passe de l'étape 508 à l'étape 500 La machine d'état d'écriture 32 déroule alors les étapes 500, 502, 504, 506 et 508 jusqu'à ce que le compteur de colonnes atteigne sa valeur de comptage terminale Une fois que le contrôleur d'état suivant 72 reçoit un signal de comptage terminal actif AYTC, la machine d'état d'écriture 32 sort de
l'algorithme au niveau d'une étape 530.
Considérons le fonctionnement de la machine d'état d'écriture 32 lorsqu'une cellule est en échec quant à une vérification de sureffacement On suppose par souci de simplification que le réseau 20 n'inclut pas de rangée mise en court-circuit et que le compteur d'événements n'est pas encore en dépassement En d'autres termes, la machine d'état d'écriture 32 est au niveau de l'étape 502 et les signaux MATCH, ECTRTC et
TWOROW sont inactifs.
Dans cet état, les cellules présentement adressées sont
préparées en vue d'une application d'une vérification de sur-
effacement à la grille de chaque cellule qui est en échec Lorsque le compteur de périodes est en dépassement, la machine d'état d'écriture 32 passe à une étape 512 dans laquelle le compteur de
périodes est remis à l'état initial.
La machine d'état d'écriture 32 passe de l'étape 512 à une
étape 514 o le commutateur de tension de drain 44 est validé.
D'o l'application de 7 volts aux drains des cellules qui sont en échec quant à la vérification de sur-effacement, ces cellules ayant été sélectionnées au niveau de l'étape 502 Les drains de toutes les autres cellules sont reliés à la masse A nouveau, la tension est maintenue jusqu'à ce que le compteur de périodes atteigne sa valeur de comptage terminale Puis la machine d'état d'écriture 32 passe à une étape 516 afin de vérifier les cellules
réparées quant au sur-effacement.
La machine d'état d'écriture 32 passe de l'étape 516 à une étape 518 Au niveau de cette étape, le succès de l'opération de réparation est analysé en évaluant MATCH Si MATCH est à un niveau logique haut, la réparation a été effectuée avec succès et
la machine d'état d'écriture passe à l'étape 504.
Par ailleurs, si la cellule est en échec quant à sa vérification de sureffacement, la machine d'état d'écriture passe de l'étape 518 à une étape 520 Au niveau de cette étape, BADCOLUMN est établi, ce qui garantit qu'au moins une passe de vérification supplémentaire des colonnes présentement adressées sera effectuée Il est à noter que BADCOLUMN est établi seulement si une cellule est en échec suite à une passe de vérification de sur-effacement après l'application d'une première impulsion de réparation Ainsi, une unique impulsion de conditionnement peut être appliquée sans provoquer la vérification à nouveau de chaque cellule située sur la même colonne Pendant la fabrication, ceci peut permettre
d'économiser jusqu'à 32 millisecondes.
La machine d'état d'écriture 32 revient de l'étape 520 à l'étape 504 o le compteur d'adresses 78 incrémente l'adresse de rangée Puis la machine d'état d'écriture 32 passe à l'étape 506
o l'octet suivant est vérifié du point de vue du sur-effacement.
Si l'on suppose qu'aucune des autres cellules situées sur les colonnes présentement adressées n'est en échec quant à une vérification de sureffacement, la machine d'état d'écriture 32 déroule directement les étapes 502, 504 et 506 jusqu'à ce que la fin de la colonne soit atteinte, comme indiqué par un niveau actif de AXTC La machine d'état d'écriture 32 passe ensuite de
l'état 506 à un état 524 du fait que BADCOLUMN est actif.
Au niveau de l'étape 524, le niveau de tension de réparation est incrémenté en préparation à une autre passe de réparation de sureffacement des colonnes présentement adressées De préférence, le niveau de tension de programmation est augmenté en incrémentant un signal numérique qui est entré sur un convertisseur numérique/analogique De préférence, le convertisseur numérique/analogique produit une tension de sortie minimum de 5 volts et une tension de sortie maximum de 7 volts selon des pas de 0,5 volt D'autres plages de tension peuvent cependant être utilisées, comme dicté par le réseau de
mémoire particulier qui est réparé. La machine d'état d'écriture 32 passe de l'étape 524 à l'étape 500 Du fait
que le compteur de colonnes n'est pas incrémenté, une vérification de sur-effacement commence à nouveau avec la première cellule située sur les colonnes
présentement adressées.
La vérification de sur-effacement est ensuite effectuée sur les cellules présentement adressées Si l'on suppose que chaque colonne du réseau 20 n'a pas été examinée, la machine d'état d'écriture 32 passe de l'étape 500 à l'étape 502 La machine d'état d'écriture 32 déroule ensuite les étapes 502, 510, 512, 514, 516, 518, 520, 504, 506, 524 et 508 comme précédemment décrit jusqu'à ce que chaque cellule sur-effacée du réseau de mémoire 20 ait été réparée ou jusqu'à ce qu'une quelconque cellule ne puisse pas être réparée avant que le compteur d'événements n'atteigne sa valeur de comptage terminale Le compteur d'événements permet la réalisation de jsqu'à 750 tentatives de réparation de sur- effacement pour chaque colonne Après 750 tentatives de réparation d'effacement, le compteur d'événements force ECTRTC à un niveau haut actif En réponse, la machine d'état d'écriture 32 passe de l'étape 502 à une étape 532 et est en échec de
réparation de sur-effacement.
L'algorithme de la figure 9 correspond à une mémoire flash qui présente une redondance de rangée Le terme redondance de rangée signifie que deux rangées qui sont mises en court-circuit ensemble sont remplacées par d'autres rangées situées en un quelconque endroit du réseau 20 Même si des rangées remplacées par des éléments redondants ne contiennent pas une information empreinte de sens, elles affectent toujours la réparation d'autres cellules contenues dans le réseau 20 Les cellules sur-effacées contenues dans des rangées mises en court-circuit contribuent à des courants de fuite de colonne et elles doivent par conséquent être réparées pour empêcher toute
sur-réparation de cellule non défectueuse de la même colonne.
Pendant une opération de réparation dans des conditions normales, 5 volts sont appliqués aux grilles des cellules du réseau qui sont réparées tandis que les autres grilles du réseau sont maintenues à la masse Suite à cette procédure, les rangées mises en court-circuit sont mises à la masse à la tension d'alimentation de 5 volts et la mémoire flash est détériorée Par conséquent, la réparation de rangées mises en court-circuit nécessite que toutes les rangées aient leurs grilles connectées au même niveau de tension (Ceci est vrai pour toutes les
opérations qui mettent en jeu des rangées mises en court-
circuit) La sortie de courant des cellules mises en court-circuit excède celle d'une cellule correctement effacée du fait que les deux cellules mises en court-circuit contribuent à la circulation du courant dans l'amplificateur de détection Une identification erronée d'une cellule mise en court-circuit sur une autre rangée comme étant sur- effacée est dangereuse du fait qu'elle peut conduire à la sur-réparation de cellules correctement effacées situées sur la même colonne L'algorithme présent tente d'éviter une sur-réparation des colonnes qui incluent une rangée mise en court-circuit en sur-réparant des cellules contenues dans les rangées mises en court-circuit Une sur- réparation des cellules contenues dans des rangées mises en court- circuit est tentée en
appliquant 10 volts à la grille pendant des réparations de sur-
effacement.
L'algorithme de la figure 9 correspond seulement à des redondances de rangée pour des paires de rangées mises en court-circuit La première rangée mise en court-circuit rencontrée par la machine d'état d'écriture 32 est appelée rangée inférieure et la seconde rangée rencontrée est appelée rangée supérieure Du fait que le compteur d'adresses 78 effectue un comptage d'une façon linéaire, la rangée inférieure est adressée en premier Etant donné que les grilles des deux rangées supérieure et inférieure sont excitées à 10 volts pendant la réparation de la rangée inférieure, les deux rangées sont réparées simultanément Par conséquent, lorsque le compteur d'adresses 78 est incrémenté jusqu'à l'adresse de la rangée supérieure, il n'est pas nécessaire de réparer la rangée supérieure L'algorithme de la figure 9 empêche par conséquent la réparation de la rangée supérieure suite à la réparation de la
rangée inférieure.
Afin d'illustrer la manière selon laquelle la figure 9 correspond à une redondance de rangée, supposons que le compteur d'adresses 78 indique la première rangée d'une paire mise en court-circuit et qu'une vérification de sur-effacement a échoué En d'autres termes, MATCH est inactif et TWOROW est actif Si l'on suppose que le compteur d'événements n'a pas atteint sa valeur de comptage terminale, alors la machine d'état d'écriture 32 passe de l'étape 502 à une étape 522 Au niveau de l'étape 522, 10 volts sont appliqués aux grilles des rangées
supérieure et inférieure de cellules mises en court-circuit.
Après que PCTRTC devient actif, la machine d'état d'écriture 32 déroule depuis l'étape 522 les étapes 512, 514, 516, 518 et 520, comme discuté précédemment Au niveau de l'étape 504, le fonctionnement de la machine d'état d'écriture 32 varie légèrement pour s'adapter au signal TWOROW actif Lorsque l'adresse de rangée est incrémentée d'une unité, le compteur d'adresses 78 indique la rangée supérieure en maintenant TWOROW à un niveau actif Si l'on suppose que TWOROW est actif, alors le compteur d'adresses de rangée incrémente sa valeur de comptage jusqu'à ce que TWOROW devienne actif La machine
d'état d'écriture passe à l'étape 506 en réponse à cet état.
On peut se demander comment une rangée mise en court-
circuit est toujours réparée étant donné que la machine d'état d'écriture 32 ne se débranche pas de l'étape 504 tant que le signal TWOROW est inactif La conception en pipeline de la machine d'état d'écriture 32 garantit que TWOROW ne devient pas actif immédiatement suite à l'adressage de la rangée inférieure d'une paire mise en court- circuit Ceci permet à la machine d'état d'écriture 32 de passer de l'étape 504 à l'étape 506 suite à l'adressage de la rangée inférieure Cependant, TWOROW est actif au moment o la machine d'état d'écriture 32 passe à l'étape 502 La machine d'état d'écriture 32 exécute, à partir de
l'étape 502, l'algorithme de la manière discutée précédemment.
Ainsi, un procédé d'identification et de réparation de cellules de mémoire flash sur-effacées en utilisant une programmation à canal- électrons chauds à niveau de tension bas a été décrit Un procédé de réparation de cellules de mémoire flash sur-effacées en utilisant une machine d'état d'écriture a
également été décrit.
Dans la description qui précède, l'invention a été décrite
par report à des modes de réalisation spécifiques présentés à titre d'exemple Il est cependant évident que diverses modifications et changements peuvent être apportées à ces exemples sans que l'on s'éloigne du cadre et de l'esprit de
l'invention prise dans son sens le plus large La description et
les dessins doivent être par conséquent considérés à titre
d'illustration et non pas dans un sens restrictif.

Claims (25)

REVENDICATIONS
1 Procédé de réparation de cellules sur-effacées contenues dans un réseau de mémoire flash comportant une colonne, la colonne comportant une première cellule et une seconde cellule, le procédé étant caractérisé en ce qu'il comprend les étapes de: a) application d'une impulsion de programmation à la première cellule si la colonne inclut une cellule sur-effacée, l'impulsion de programmation présentant un niveau de tension de programmation; b) application d'une impulsion de programmation à la seconde cellule si la colonne inclut une cellule sur-effacée; c) incrémentation du niveau de tension de programmation d'une première valeur si la colonne inclut une cellule sur-effacée; et d) répétition des étapes a) à c) jusqu'à ce que la colonne
soit réparée.
2 Procédé selon la revendication 1, caractérisé en ce que le niveau de tension de programmation est suffisamment bas pour empêcher toute surréparation des première et seconde
cellules.
3 Procédé selon la revendication 1, caractérisé en ce
que la colonne est identifiée comme incluant des cellules sur-
effacées par comparaison d'une tension de seuil associée aux
première et seconde cellules à une tension de référence.
4 Procédé selon la revendication 1, caractérisé en ce
que la colonne est identifiée comme incluant des cellules sur-
effacées par mesure d'un courant de fuite de la colonne.
Procédé selon la revendication 1, caractérisé en ce qu'un niveau de tension de programmation initial s'inscrit dans
une plage qui va de 3 volts à 5 volts.
6 Procédé selon la revendication 1, caractérisé en ce
que la première valeur vaut approximativement 0,5 volt.
7 Procédé selon la revendication 1, caractérisé en ce que le niveau de tension de programmation est incrémenté jusqu'à ce qu'un niveau de tension de programmation maximum
s'inscrive dans une plage qui va de 7 volts à 12 volts.
8 Procédé de réparation de cellules sur-effacées contenues dans un réseau de mémoire flash comportant une colonne, la colonne comportant une première cellule et une seconde cellule, le procédé étant caractérisé en ce qu'il comprend les étapes de: a) application d'une impulsion de programmation à la première cellule si la première cellule est sur-effacée, l'impulsion de programmation présentant un niveau de tension de programmation; b) application d'une impulsion de programmation à la seconde cellule si la seconde cellule est sur- effacée; c) incrémentation du niveau de tension de programmation d'une première valeur si l'une des première et seconde cellules a été identifiée comme étant sur-effacée; et d) répétition des étapes a) à c) jusqu'à ce que la première cellule et la seconde cellules soient toutes deux réparées. 9 Procédé selon la revendication 8, caractérisé en ce
que la colonne est identifiée comme incluant des cellules sur-
effacées par comparaison d'une tension de seuil associée aux
première et seconde cellules à une tension de référence.
Procédé selon la revendication 8, caractérisé en ce que les cellules sont identifiées comme étant sur-effacées par
comparaison d'une tension de seuil à une tension de référence.
11 Procédé selon la revendication 8, caractérisé en ce qu'un niveau de tension de programmation initial s'inscrit dans
une plage qui va de 3 volts à 5 volts.
12 Procédé selon la revendication 8, caractérisé en ce
que la première valeur vaut approximativement 0,5 volt.
13 Procédé selon la revendication 8, caractérisé en ce que le niveau de tension de programmation est incrémenté jusqu'à ce qu'un niveau de tension de programmation maximum
s'inscrive dans une plage qui va de 7 volts à 12 volts.
14 Procédé de réparation de cellules sur-effacées contenues dans un réseau de mémoire flash comportant une colonne, la colonne comportant une première cellule et une seconde cellule, le procédé étant caractérisé en ce qu'il comprend les étapes de: a) identification de si oui ou non la première cellule est sur-effacée; b) application d'une impulsion de programmation à la première cellule si la première cellule est sur-effacée, l'impulsion de programmation présentant un niveau de tension de programmation; c) identification de si oui ou non la seconde cellule est sur-effacée; d) application d'une impulsion de programmation à la seconde cellule si la seconde cellule est sur-effacée; e) incrémentation du niveau de tension de programmation d'une première valeur si l'une des première et seconde cellules a été identifiée comme étant sur-effacée; et f) répétition des étapes a) à e) jusqu'à ce que ni la première cellule, ni la seconde cellule ne soit identifiée comme
étant sur-effacée.
Procédé selon la revendication 14, caractérisé en ce que le niveau de tension de programmation est suffisamment bas pour empêcher toute surréparation des première et seconde cellules. 16 Procédé selon la revendication 14, caractérisé en ce que les première et seconde cellules sont identifiées comme étant sur-effacées par comparaison d'une tension de seuil à une
tension de référence.
17 Procédé selon la revendication 14, caractérisé en ce qu'un niveau de tension de programmation initial s'inscrit dans
une plage qui va de 3 volts à 5 volts.
18 Procédé selon la revendication 14, caractérisé en ce que la première valeur vaut approximativement 0,5 volt 19 Procédé selon la revendication 14, caractérisé en ce que le niveau de tension de programmation est incrémenté jusqu'à ce qu'un niveau de tension de programmation maximum
s'inscrive dans une plage qui va de 5 volts à 12 volts.
Procédé de réparation de cellules sur-effacées contenues dans un réseau de mémoire flash comportant une colonne, la colonne comportant une première cellule et une seconde cellule, le procédé étant caractérisé en ce qu'il comprend les étapes de: a) identification de si oui ou non la première cellule est sur-effacée; b) application d'une impulsion de programmation à la première cellule si la première cellule est sur- effacée, l'impulsion de programmation présentant un niveau de tension de
programmation initial suffisamment bas pour empêcher la sur-
réparation de la cellule sur-effacée; c) identification de si oui ou non la seconde cellule est sur-effacée; d) application d'une impulsion de programmation à la seconde cellule si la seconde cellule est sur-effacée, e) incrémentation du niveau de tension de programmation d'une première valeur si l'une des première et seconde cellules a été identifiée comme étant sur-effacée; et f) répétition des étapes a) à e) jusqu'à ce que ni la première cellule, ni la seconde cellule ne soit identifiée comme
étant sur-effacée.
21 Procédé selon la revendication 20, caractérisé en ce que les cellules sont identifiées comme étant sur-effacées par
comparaison d'une tension de seuil à une tension de référence.
22 Procédé selon la revendication 20, caractérisé en ce qu'un niveau de tension de programmation initial s'inscrit dans
une plage qui va de 3 volts à 5 volts.
23 Procédé selon la revendication 20, caractérisé en ce
que la première valeur vaut approximativement 0,5 volt.
24 Procédé selon la revendication 20, caractérisé en ce que le niveau de tension de programmation est incrémenté jusqu'à un niveau de tension de programmation maximum égal à 7 volts. Procédé de réparation de cellules sur-effacées contenues dans un réseau de mémoire flash comportant une colonne, la colonne comportant une première cellule et une seconde cellule, chacune des première et seconde cellules présentant une tension de seuil, le procédé caractérisé en ce qu'il comprend les étapes de: a) identification de si oui ou non la première cellule est sur-effacée par comparaison de la tension de seuil de la seconde cellule à une tension de référence; b) application d'une impulsion de programmation à la première cellule si la première cellule est sur-effacée, l'impulsion de programmation présentant un niveau de tension de
programmation initial suffisamment bas pour empêcher la sur-
réparation de la cellule sur-effacée; c) identification de si oui ou non la seconde cellule est sur-effacée par comparaison de la tension de seuil de la seconde cellule à la tension de référence; d) application d'une impulsion de programmation à la seconde cellule si la seconde cellule est sur-effacée; e) incrémentation du niveau de tension de programmation d'une première valeur si l'une des première et seconde cellules a été identifiée comme étant sur-effacée; et f) répétition des étapes a) à e) jusqu'à ce que ni la première cellule, ni la seconde cellule ne soit identifiée comme
étant sur-effacée.
26 Procédé selon la revendication 25, caractérisé en ce
que la première valeur vaut approximativement 0,5 volt.
27 Procédé selon la revendication 25, caractérisé en ce que le niveau de tension de programmation est incrémenté jusqu'à un niveau de tension de programmation maximum égal à 7 volts. 28 Procédé de réparation de cellules sur-effacées contenues dans un réseau semiconducteur non volatile comportant une colonne, la colonne comportant une première cellule et une seconde cellule, chacune des cellules présentant une tension de seuil, le procédé étant caractérisé en ce qu'il comprend les étapes de: a) initialisation d'un compteur b) identification de si oui ou non la première cellule est sur-effacée par comparaison de la tension de seuil de la première cellule à une tension de référence; c) application d'une impulsion de programmation à la première cellule si la première cellule est sur-effacée, l'impulsion de programmation présentant un niveau de tension de
programmation initial suffisamment bas pour empêcher la sur-
réparation de la cellule sur-effacée; d) identification de si oui ou non la seconde cellule est sur-effacée par comparaison de la tension de seuil de la seconde cellule à la tension de référence; e) application d'une impulsion de programmation à la seconde cellule si la seconde cellule est sur-effacée; f) incrémentation du niveau de tension de programmation d'une première valeur si l'une des première et seconde cellules a été identifiée comme étant sur-effacée g) incrémentation du compteur; et h) répétition des étapes a) à g) jusqu'à ce que ni la première cellule, ni la seconde cellule ne soit identifiée comme étant sur-effacée ou jusqu'à ce que le compteur soit égal à une
valeur de comptage maximum.
29 Procédé selon la revendication 28, caractérisé en ce
que la première valeur vaut approximativement 0,5 volt.
Procédé selon la revendication 28, caractérisé en ce que le niveau de tension de programmation est incrémenté jusqu'à un niveau de tension de programmation maximum égal à 7
vo Its.
31 Procédé selon la revendication 28, caractérisé en ce que le niveau de tension initial s'inscrit dans une plage qui va de 4 volts à 5 volts. 32 Procédé de réparation de cellules sur-effacées contenues dans un réseau de mémoire flash comportant une colonne, la colonne comportant une première cellule et une seconde cellule, le procédé étant caractérisé en ce qu'il comprend les étapes de: a) mise à zéro d'un indicateur b) application d'une impulsion de programmation à la première cellule si la première cellule est sur-effacée, l'impulsion de programmation présentant un niveau de tension de
programmation initial suffisamment bas pour empêcher la sur-
réparation de la cellule sur-effacée; c) établissement de l'indicateur si la première cellule reste sur-effacée; d) application d'une impulsion de programmation à la seconde cellule si la seconde cellule est sur- effacée; e) établissement de l'indicateur si la seconde cellule reste sur-effacée; f) incrémentation du niveau de tension de programmation d'une première valeur si l'indicateur est établi et
g) répétition des étapes a) à g) si l'indicateur est établi.
33 Procédé selon la revendication 32, caractérisé en ce
que la première valeur vaut approximativement 0,5 volt.
34 Procédé selon la revendication 32, caractérisé en ce que le niveau de tension de programmation est incrémenté jusqu'à un niveau de tension de programmation maximum égal à 7 volts. Procédé de réparation de cellules sur-effacées contenues dans un réseau de mémoire flash comportant une colonne, la colonne comportant une première rangée et une seconde rangée, le procédé étant caractérisé en ce qu'il comprend les étapes de: a) mise à zéro d'un indicateur b) si la première cellule est sur-effacée et n'est pas en court-circuit sur la seconde cellule, application d'une impulsion de programmation présentant un niveau de tension de programmation initial suffisamment bas pour empêcher toute sur-réparation de la cellule sur-effacée; c) si la première cellule est sur-effacée et est en court-circuit sur la seconde cellule, application d'une impulsion de programmation à la fois à la première cellule et à la seconde cellule; d) établissement de l'indicateur si la première cellule reste sur-effacée; e) si la seconde cellule est sur-effacée et n'est pas en court-circuit sur la première cellule, application d'une impulsion de programmation présentant le niveau de tension de programmation initial à la seconde cellule; f) établissement de l'indicateur si la seconde cellule reste sur-effacée; g) incrémentation du niveau de tension de programmation d'une première valeur si l'indicateur est établi;
h) répétition des étapes a) à g) si l'indicateur est établi.
36 Procédé selon la revendication 35, caractérisé en ce que l'impulsion de programmation présente un niveau de tension suffisamment haut pour sur-réparer des cellules sur-effacées lorsque la première cellule est en court-circuit sur la seconde cellule. 37 Procédé de réparation de cellules sur-effacées contenues dans un réseau de mémoire flash comportant une colonne, la colonne comportant une première cellule et une seconde cellule, le procédé étant caractérisé en ce qu'il comprend les étapes de: a) application d'une impulsion de programmation à la première cellule si la colonne inclut une cellule sur-effacée, l'impulsion de programmation présentant une durée temporelle de programmation; b) application d'une impulsion de programmation à la seconde cellule si la colonne inclut une cellule sur-effacée; c) incrémentation de la durée temporelle de programmation d'une première valeur si la colonne inclut une cellule sur-effacée; et d) répétition des étapes a) à c) jusqu'à ce que la colonne
soit réparée.
38 Procédé selon la revendication 37, caractérisé en ce que la durée temporelle de programmation est suffisamment courte pour empêcher toute sur-réparation des première et
seconde cellules.
FR9211876A 1991-10-09 1992-10-07 Procede de reparation de cellules sur-effacees contenues dans une memoire flash. Expired - Fee Related FR2682503B1 (fr)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/773,228 US5237535A (en) 1991-10-09 1991-10-09 Method of repairing overerased cells in a flash memory

Publications (2)

Publication Number Publication Date
FR2682503A1 true FR2682503A1 (fr) 1993-04-16
FR2682503B1 FR2682503B1 (fr) 1997-01-31

Family

ID=25097590

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9211876A Expired - Fee Related FR2682503B1 (fr) 1991-10-09 1992-10-07 Procede de reparation de cellules sur-effacees contenues dans une memoire flash.

Country Status (3)

Country Link
US (1) US5237535A (fr)
JP (1) JP3654915B2 (fr)
FR (1) FR2682503B1 (fr)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0640983A1 (fr) * 1993-08-23 1995-03-01 Advanced Micro Devices, Inc. Structure de correction des bits sureffacés dans un circuit de mémoire intégré à semi-conducteur
WO1996025744A1 (fr) * 1995-02-13 1996-08-22 Micron Technology, Inc. Circuits de redondance de memoire sur puce pour memoires remanentes programmables et procedes pour les programmer
WO1997015928A1 (fr) * 1995-10-24 1997-05-01 Advanced Micro Devices, Inc. Correction d'un effacement excessif pour memoire flash qui limite l'effacement excessif et empeche les erreurs de verification d'effacement

Families Citing this family (129)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04222994A (ja) * 1990-12-26 1992-08-12 Mitsubishi Electric Corp 不揮発性半導体記憶装置
JP2870260B2 (ja) * 1991-09-27 1999-03-17 日本電気株式会社 不揮発性半導体記憶装置
JPH05283708A (ja) * 1992-04-02 1993-10-29 Mitsubishi Electric Corp 不揮発性半導体記憶装置,その製造方法および試験方法
US5347489A (en) * 1992-04-21 1994-09-13 Intel Corporation Method and circuitry for preconditioning shorted rows in a nonvolatile semiconductor memory incorporating row redundancy
US5327383A (en) * 1992-04-21 1994-07-05 Intel Corporation Method and circuitry for erasing a nonvolatile semiconductor memory incorporating row redundancy
US5452251A (en) 1992-12-03 1995-09-19 Fujitsu Limited Semiconductor memory device for selecting and deselecting blocks of word lines
US5365486A (en) * 1992-12-16 1994-11-15 Texas Instruments Incorporated Method and circuitry for refreshing a flash electrically erasable, programmable read only memory
US5335198A (en) * 1993-05-06 1994-08-02 Advanced Micro Devices, Inc. Flash EEPROM array with high endurance
DE4329012A1 (de) * 1993-08-28 1995-03-02 Sel Alcatel Ag Verfahren und Vorrichtung zur Fehlerprüfung und zur Fehlerkorrektur in Speicherbausteinen
US5650965A (en) * 1993-11-15 1997-07-22 Micron Technology, Inc. Method of narrowing flash memory device threshold voltage distribution
US5424993A (en) * 1993-11-15 1995-06-13 Micron Technology, Inc. Programming method for the selective healing of over-erased cells on a flash erasable programmable read-only memory device
US5619454A (en) * 1993-11-15 1997-04-08 Micron Technology, Inc. Programming method for healing over-erased cells for a flash memory device
US5633823A (en) * 1994-12-01 1997-05-27 Micron Technology, Inc. Method of narrowing flash memory device threshold voltage distribution
US5440505A (en) * 1994-01-21 1995-08-08 Intel Corporation Method and circuitry for storing discrete amounts of charge in a single memory element
EP0748521B1 (fr) * 1994-03-03 2001-11-07 Rohm Corporation Detection de sureffacement dans une cellule memoire flash eeprom mono-transistor basse tension programmable et effa able selon le procede fowler-nordheim
EP0681295A1 (fr) * 1994-05-06 1995-11-08 STMicroelectronics S.r.l. Procédé de déverminage de mémoire non-volatile EPROM flash
WO1995034075A1 (fr) * 1994-06-02 1995-12-14 Intel Corporation Logique de determination d'etat de cellules de memoire flash a cellules multiniveaux
US5490109A (en) * 1994-06-28 1996-02-06 Intel Corporation Method and apparatus for preventing over-erasure of flash EEPROM memory devices
JP3238574B2 (ja) * 1994-07-28 2001-12-17 株式会社東芝 不揮発性半導体記憶装置とその消去方法
US5517138A (en) * 1994-09-30 1996-05-14 Intel Corporation Dual row selection using multiplexed tri-level decoder
US5546340A (en) * 1995-06-13 1996-08-13 Advanced Micro Devices, Inc. Non-volatile memory array with over-erase correction
US5856944A (en) * 1995-11-13 1999-01-05 Alliance Semiconductor Corporation Self-converging over-erase repair method for flash EPROM
JP2982676B2 (ja) 1995-12-08 1999-11-29 日本電気株式会社 不揮発性半導体記憶装置の過消去救済方法
US5677869A (en) * 1995-12-14 1997-10-14 Intel Corporation Programming flash memory using strict ordering of states
US5729489A (en) * 1995-12-14 1998-03-17 Intel Corporation Programming flash memory using predictive learning methods
US5701266A (en) * 1995-12-14 1997-12-23 Intel Corporation Programming flash memory using distributed learning methods
US5737265A (en) * 1995-12-14 1998-04-07 Intel Corporation Programming flash memory using data stream analysis
JPH09306191A (ja) * 1996-05-13 1997-11-28 Nec Corp 不揮発性半導体記憶装置
US5724365A (en) * 1996-05-24 1998-03-03 Advanced Micro Devices, Inc. Method of utilizing redundancy testing to substitute for main array programming and AC speed reads
US5870407A (en) * 1996-05-24 1999-02-09 Advanced Micro Devices, Inc. Method of screening memory cells at room temperature that would be rejected during hot temperature programming tests
KR100233283B1 (ko) * 1996-12-24 1999-12-01 김영환 플래쉬 메모리 셀을 이용한 리페어 퓨즈 초기화 회로
DE19731954C2 (de) * 1997-07-24 2000-08-24 Bosch Gmbh Robert Verfahren zur Erkennung von fehlprogrammierten Speicherzellen eines Speichers
KR19990042720A (ko) * 1997-11-27 1999-06-15 윤종용 반도체 메모리 장치의 과소거 리페어 방법
US5901090A (en) * 1998-05-27 1999-05-04 Advanced Micro Devices Method for erasing flash electrically erasable programmable read-only memory (EEPROM)
KR100290283B1 (ko) * 1998-10-30 2001-05-15 윤종용 불휘발성 반도체 메모리 장치 및 그의 워드 라인 구동 방법
US6407944B1 (en) 1998-12-29 2002-06-18 Samsung Electronics Co., Ltd. Method for protecting an over-erasure of redundant memory cells during test for high-density nonvolatile memory semiconductor devices
US6115291A (en) * 1998-12-29 2000-09-05 Micron Technology, Inc. Healing cells in a memory device
TW439293B (en) 1999-03-18 2001-06-07 Toshiba Corp Nonvolatile semiconductor memory
US6122198A (en) * 1999-08-13 2000-09-19 Advanced Micro Devices, Inc. Bit by bit APDE verify for flash memory applications
US6496427B2 (en) * 2000-08-28 2002-12-17 Matsushita Electric Industrial Co., Ltd. Nonvolatile semiconductor memory device
US6462990B1 (en) 2000-12-29 2002-10-08 Intel Corporation Post erase repair to enhance performance in a flash memory
US6515910B1 (en) 2001-03-06 2003-02-04 Aplus Flash Technology Inc. Bit-by-bit Vt-correction operation for nonvolatile semiconductor one-transistor cell, nor-type flash EEPROM
US6711056B2 (en) * 2001-03-12 2004-03-23 Micron Technology, Inc. Memory with row redundancy
US6469932B2 (en) * 2001-03-12 2002-10-22 Micron Technology, Inc. Memory with row redundancy
US6498752B1 (en) 2001-08-27 2002-12-24 Aplus Flash Technology, Inc. Three step write process used for a nonvolatile NOR type EEPROM memory
JP3984445B2 (ja) * 2001-09-12 2007-10-03 シャープ株式会社 不揮発性半導体メモリ装置のオーバーイレースセル検出方法
JP4122750B2 (ja) * 2001-10-24 2008-07-23 沖電気工業株式会社 半導体記憶装置および半導体記憶装置のデータ書き込み方法
WO2004097893A2 (fr) * 2003-03-25 2004-11-11 Smiths Aerospace, Inc. Procede de restauration de dispositifs a circuits integres encapsules
US6724662B2 (en) * 2002-09-04 2004-04-20 Atmel Corporation Method of recovering overerased bits in a memory device
US6977841B2 (en) * 2002-11-21 2005-12-20 Micron Technology, Inc. Preconditioning of defective and redundant columns in a memory device
US7345918B2 (en) * 2005-08-31 2008-03-18 Micron Technology, Inc. Selective threshold voltage verification and compaction
US7304890B2 (en) * 2005-12-13 2007-12-04 Atmel Corporation Double byte select high voltage line for EEPROM memory block
US7697326B2 (en) 2006-05-12 2010-04-13 Anobit Technologies Ltd. Reducing programming error in memory devices
US8239735B2 (en) 2006-05-12 2012-08-07 Apple Inc. Memory Device with adaptive capacity
WO2007132457A2 (fr) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Procédé combiné de codage de correction d'erreur et d'estimation de déformation destiné à des dispositifs de mémoire
CN103280239B (zh) 2006-05-12 2016-04-06 苹果公司 存储设备中的失真估计和消除
WO2008026203A2 (fr) 2006-08-27 2008-03-06 Anobit Technologies Estimation de distorsion non linéaire dans des dispositifs à mémoire
US7457167B2 (en) * 2006-10-26 2008-11-25 Atmel Corporation Method for preventing over-erasing of unused column redundant memory cells in a flash memory having single-transistor memory cells
US7821826B2 (en) 2006-10-30 2010-10-26 Anobit Technologies, Ltd. Memory cell readout using successive approximation
WO2008053472A2 (fr) 2006-10-30 2008-05-08 Anobit Technologies Ltd. Lecture de cellules de mémoire à l'aide de seuils multiples
US7924648B2 (en) 2006-11-28 2011-04-12 Anobit Technologies Ltd. Memory power and performance management
US8151163B2 (en) 2006-12-03 2012-04-03 Anobit Technologies Ltd. Automatic defect management in memory devices
US7900102B2 (en) 2006-12-17 2011-03-01 Anobit Technologies Ltd. High-speed programming of memory devices
US7593263B2 (en) 2006-12-17 2009-09-22 Anobit Technologies Ltd. Memory device with reduced reading latency
US7751240B2 (en) * 2007-01-24 2010-07-06 Anobit Technologies Ltd. Memory device with negative thresholds
US8151166B2 (en) 2007-01-24 2012-04-03 Anobit Technologies Ltd. Reduction of back pattern dependency effects in memory devices
WO2008111058A2 (fr) 2007-03-12 2008-09-18 Anobit Technologies Ltd. Estimation adaptative de seuils de lecture de cellules mémoires
US8001320B2 (en) 2007-04-22 2011-08-16 Anobit Technologies Ltd. Command interface for memory devices
WO2008139441A2 (fr) 2007-05-12 2008-11-20 Anobit Technologies Ltd. Dispositif de mémoire à unité de traitement de signal interne
US8234545B2 (en) 2007-05-12 2012-07-31 Apple Inc. Data storage with incremental redundancy
JP2007200553A (ja) * 2007-05-14 2007-08-09 Renesas Technology Corp 不揮発性半導体記憶装置
US7701780B2 (en) * 2007-05-31 2010-04-20 Micron Technology, Inc. Non-volatile memory cell healing
US7986553B2 (en) * 2007-06-15 2011-07-26 Micron Technology, Inc. Programming of a solid state memory utilizing analog communication of bit patterns
US7925936B1 (en) 2007-07-13 2011-04-12 Anobit Technologies Ltd. Memory device with non-uniform programming levels
KR100898653B1 (ko) * 2007-07-25 2009-05-22 주식회사 하이닉스반도체 플래시 메모리 소자 및 프로그램 방법
US8259497B2 (en) 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
US20090046512A1 (en) * 2007-08-17 2009-02-19 Munif Farhan Halloush Reliability System for Use with Non-Volatile Memory Devices
US8174905B2 (en) 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
US7773413B2 (en) 2007-10-08 2010-08-10 Anobit Technologies Ltd. Reliable data storage in analog memory cells in the presence of temperature variations
WO2009050703A2 (fr) 2007-10-19 2009-04-23 Anobit Technologies Stockage de données dans des groupes de cellules de mémoire analogique présentant des défaillances d'effacement
US8000141B1 (en) 2007-10-19 2011-08-16 Anobit Technologies Ltd. Compensation for voltage drifts in analog memory cells
US8068360B2 (en) 2007-10-19 2011-11-29 Anobit Technologies Ltd. Reading analog memory cells using built-in multi-threshold commands
KR101509836B1 (ko) 2007-11-13 2015-04-06 애플 인크. 멀티 유닛 메모리 디바이스에서의 메모리 유닛의 최적화된 선택
US8225181B2 (en) 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
US8209588B2 (en) 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
US8456905B2 (en) 2007-12-16 2013-06-04 Apple Inc. Efficient data storage in multi-plane memory devices
KR101406279B1 (ko) * 2007-12-20 2014-06-13 삼성전자주식회사 반도체 메모리 장치 및 그것의 읽기 페일 분석 방법
US8085586B2 (en) 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
US8156398B2 (en) 2008-02-05 2012-04-10 Anobit Technologies Ltd. Parameter estimation based on error correction code parity check equations
US7924587B2 (en) 2008-02-21 2011-04-12 Anobit Technologies Ltd. Programming of analog memory cells using a single programming pulse per state transition
US7864573B2 (en) 2008-02-24 2011-01-04 Anobit Technologies Ltd. Programming analog memory cells for reduced variance after retention
US8230300B2 (en) 2008-03-07 2012-07-24 Apple Inc. Efficient readout from analog memory cells using data compression
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
US8059457B2 (en) 2008-03-18 2011-11-15 Anobit Technologies Ltd. Memory device with multiple-accuracy read commands
US7924613B1 (en) * 2008-08-05 2011-04-12 Anobit Technologies Ltd. Data storage in analog memory cells with protection against programming interruption
US8498151B1 (en) 2008-08-05 2013-07-30 Apple Inc. Data storage in analog memory cells using modified pass voltages
US8169825B1 (en) 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8000135B1 (en) 2008-09-14 2011-08-16 Anobit Technologies Ltd. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8482978B1 (en) 2008-09-14 2013-07-09 Apple Inc. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
US8713330B1 (en) 2008-10-30 2014-04-29 Apple Inc. Data scrambling in memory devices
US8208304B2 (en) 2008-11-16 2012-06-26 Anobit Technologies Ltd. Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N
US8248831B2 (en) 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US8397131B1 (en) 2008-12-31 2013-03-12 Apple Inc. Efficient readout schemes for analog memory cell devices
US8924661B1 (en) 2009-01-18 2014-12-30 Apple Inc. Memory system including a controller and processors associated with memory devices
US8228701B2 (en) 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
US8832354B2 (en) 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
US8259506B1 (en) 2009-03-25 2012-09-04 Apple Inc. Database of memory read thresholds
US8238157B1 (en) 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
US8677054B1 (en) 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
US8694814B1 (en) 2010-01-10 2014-04-08 Apple Inc. Reuse of host hibernation storage space by memory controller
US8572311B1 (en) 2010-01-11 2013-10-29 Apple Inc. Redundant data storage in multi-die memory systems
US8694853B1 (en) 2010-05-04 2014-04-08 Apple Inc. Read commands for reading interfering memory cells
US8572423B1 (en) 2010-06-22 2013-10-29 Apple Inc. Reducing peak current in memory systems
US8595591B1 (en) 2010-07-11 2013-11-26 Apple Inc. Interference-aware assignment of programming levels in analog memory cells
US9104580B1 (en) 2010-07-27 2015-08-11 Apple Inc. Cache memory for hybrid disk drives
US8767459B1 (en) 2010-07-31 2014-07-01 Apple Inc. Data storage in analog memory cells across word lines using a non-integer number of bits per cell
US8856475B1 (en) 2010-08-01 2014-10-07 Apple Inc. Efficient selection of memory blocks for compaction
US8493781B1 (en) 2010-08-12 2013-07-23 Apple Inc. Interference mitigation using individual word line erasure operations
US8694854B1 (en) 2010-08-17 2014-04-08 Apple Inc. Read threshold setting based on soft readout statistics
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
CN104681097B (zh) * 2013-11-27 2017-11-21 北京兆易创新科技股份有限公司 一种非易失性存储器的修复方法
US10062440B1 (en) * 2017-06-20 2018-08-28 Winbond Electronics Corp. Non-volatile semiconductor memory device and reading method thereof
CN109243516B (zh) * 2018-08-28 2021-08-10 长江存储科技有限责任公司 一种擦除方法、装置及计算机可读存储介质
US11556416B2 (en) 2021-05-05 2023-01-17 Apple Inc. Controlling memory readout reliability and throughput by adjusting distance between read thresholds
US11847342B2 (en) 2021-07-28 2023-12-19 Apple Inc. Efficient transfer of hard data and confidence levels in reading a nonvolatile memory

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0052566A2 (fr) * 1980-11-18 1982-05-26 FAIRCHILD CAMERA &amp; INSTRUMENT CORPORATION Mémoire morte programmable et électriquement effaçable
US4357685A (en) * 1979-09-28 1982-11-02 Sgs-Ates Componenti Elettronici S.P.A. Method of programming an electrically alterable nonvolatile memory
EP0108681A2 (fr) * 1982-11-04 1984-05-16 FAIRCHILD CAMERA &amp; INSTRUMENT CORPORATION Mémoire programmable électriquement effaçable par bit
EP0403822A1 (fr) * 1989-06-19 1990-12-27 Texas Instruments Incorporated Circuit et procédé pour le conditionnement d'EEPROMS remis à zéro avant la programmation
EP0452724A2 (fr) * 1990-04-16 1991-10-23 Texas Instruments Incorporated Circuit et méthode d'effacement de réseaux de mémoire EEPROM

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4742491A (en) * 1985-09-26 1988-05-03 Advanced Micro Devices, Inc. Memory cell having hot-hole injection erase mode
US5139935A (en) * 1987-02-19 1992-08-18 Mitsui Toatsu Chemicals, Incorporated Method of regulating expression of a foreign gene by controlling the sugar concentration in a medium and a process of producing a foreign product thereby
JPS63227064A (ja) * 1987-03-17 1988-09-21 Toshiba Corp 不揮発性半導体メモリ
US4797856A (en) * 1987-04-16 1989-01-10 Intel Corporation Self-limiting erase scheme for EEPROM
US4841482A (en) * 1988-02-17 1989-06-20 Intel Corporation Leakage verification for flash EPROM
US4860261A (en) * 1988-02-17 1989-08-22 Intel Corporation Leakage verification for flash EPROM
US5065364A (en) * 1989-09-15 1991-11-12 Intel Corporation Apparatus for providing block erasing in a flash EPROM
US5097444A (en) * 1989-11-29 1992-03-17 Rohm Corporation Tunnel EEPROM with overerase protection
US5060195A (en) * 1989-12-29 1991-10-22 Texas Instruments Incorporated Hot electron programmable, tunnel electron erasable contactless EEPROM
JP3106473B2 (ja) * 1990-01-30 2000-11-06 日本電気株式会社 不揮発性半導体記憶装置
US5138576A (en) * 1991-11-06 1992-08-11 Altera Corporation Method and apparatus for erasing an array of electrically erasable EPROM cells

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4357685A (en) * 1979-09-28 1982-11-02 Sgs-Ates Componenti Elettronici S.P.A. Method of programming an electrically alterable nonvolatile memory
EP0052566A2 (fr) * 1980-11-18 1982-05-26 FAIRCHILD CAMERA &amp; INSTRUMENT CORPORATION Mémoire morte programmable et électriquement effaçable
EP0108681A2 (fr) * 1982-11-04 1984-05-16 FAIRCHILD CAMERA &amp; INSTRUMENT CORPORATION Mémoire programmable électriquement effaçable par bit
EP0403822A1 (fr) * 1989-06-19 1990-12-27 Texas Instruments Incorporated Circuit et procédé pour le conditionnement d'EEPROMS remis à zéro avant la programmation
EP0452724A2 (fr) * 1990-04-16 1991-10-23 Texas Instruments Incorporated Circuit et méthode d'effacement de réseaux de mémoire EEPROM

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0640983A1 (fr) * 1993-08-23 1995-03-01 Advanced Micro Devices, Inc. Structure de correction des bits sureffacés dans un circuit de mémoire intégré à semi-conducteur
WO1996025744A1 (fr) * 1995-02-13 1996-08-22 Micron Technology, Inc. Circuits de redondance de memoire sur puce pour memoires remanentes programmables et procedes pour les programmer
WO1997015928A1 (fr) * 1995-10-24 1997-05-01 Advanced Micro Devices, Inc. Correction d'un effacement excessif pour memoire flash qui limite l'effacement excessif et empeche les erreurs de verification d'effacement
US5642311A (en) * 1995-10-24 1997-06-24 Advanced Micro Devices Overerase correction for flash memory which limits overerase and prevents erase verify errors

Also Published As

Publication number Publication date
FR2682503B1 (fr) 1997-01-31
US5237535A (en) 1993-08-17
JP3654915B2 (ja) 2005-06-02
JPH06290596A (ja) 1994-10-18

Similar Documents

Publication Publication Date Title
FR2682503A1 (fr) Procede de reparation de cellules sur-effacees contenues dans une memoire flash.
US7623390B2 (en) Programming method for non-volatile memory and non-volatile memory-based programmable logic device
EP0674264B1 (fr) Circuit de sélection d&#39;éléments de mémoire redondants et mémoire &#34;FLASH EEPROM&#34; comportant ledit circuit
EP0666573B1 (fr) Bascule bistable non volatile programmable par la source, notamment pour circuit de redondance de mémoire
US7167396B2 (en) Erase verify for nonvolatile memory using reference current-to-voltage converters
EP0842516B1 (fr) Procede et dispositif de verification de l&#39;etat d&#39;une cellule de memoire d&#39;un circuit de memoire remanente
JP3720859B2 (ja) 半導体集積回路メモリ装置
EP0645714B1 (fr) Circuit de redondance dynamique pour mémoire en circuit intégré
EP0568439A1 (fr) Procédé et circuit de détection de fuites de courant dans une ligne de bit
EP0544568B1 (fr) Circuit de lecture de fusible de redondance pour mémoire intégrée
EP1233422B1 (fr) Procédé et dispositif de rafraîchissement de cellules de référence
EP0676769B1 (fr) Mémoire non volatile modifiable électriquement incorporant des fonctions de test
EP1109321B1 (fr) Procédé de correction d&#39;un bit dans une chaîne de bits
FR2699301A1 (fr) Procédé de traitement d&#39;éléments défectueux dans une mémoire.
EP0678875A1 (fr) Procédé d&#39;effacement d&#39;une mémoire et circuits de mise en oeuvre
US6381550B1 (en) Method of utilizing fast chip erase to screen endurance rejects
US6972994B2 (en) Circuit and a method to screen for defects in an addressable line in a non-volatile memory
JPH07169286A (ja) 不揮発性半導体記憶装置並びに不揮発性半導体記憶装置の書き込み及び消去方法
CN115620786A (zh) 具备自动调整验证及漏电流程度侦测的后过度抹除修正方法
FR2802697A1 (fr) Procede de lecture d&#39;une cellule memoire non volatile
FR2630574A1 (fr) Memoire programmable electriquement avec circuit de controle de programmation et procede correspondant
KR19980052496A (ko) 플래쉬 메모리셀의 과소거 된 셀 확인 방법

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20110630