FR2876491A1 - Verrou de colonne accessible en lecture pour memoires non volatiles - Google Patents

Verrou de colonne accessible en lecture pour memoires non volatiles Download PDF

Info

Publication number
FR2876491A1
FR2876491A1 FR0410586A FR0410586A FR2876491A1 FR 2876491 A1 FR2876491 A1 FR 2876491A1 FR 0410586 A FR0410586 A FR 0410586A FR 0410586 A FR0410586 A FR 0410586A FR 2876491 A1 FR2876491 A1 FR 2876491A1
Authority
FR
France
Prior art keywords
data
column
latch circuit
tri
voltage
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
FR0410586A
Other languages
English (en)
Other versions
FR2876491B1 (fr
Inventor
Jerome Pratlong
Marc Merandat
Stephane Ricard
Sylvie B Vergnes
Laureline Bour
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.)
Atmel Corp
Original Assignee
Atmel 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 Atmel Corp filed Critical Atmel Corp
Priority to FR0410586A priority Critical patent/FR2876491B1/fr
Priority to US11/028,852 priority patent/US7126860B2/en
Publication of FR2876491A1 publication Critical patent/FR2876491A1/fr
Application granted granted Critical
Publication of FR2876491B1 publication Critical patent/FR2876491B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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
    • 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/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/12Bit line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, equalising circuits, for bit lines

Landscapes

  • Read Only Memory (AREA)

Abstract

Un circuit de verrous de colonne de programme de mémoire non volatile est équipé d'une capacité de relecture pour vérifier que les bits de données ont été correctement chargés dans les circuits de verrous et écrits dans les cellules de mémoire. L'interface entre les verrous de tension basse et les chemins de données d'entrée et de sortie externes est équipée de mémoires tampon à trois états placées face à face qui permettent de lire des données verrouillées pour comparaison et vérification. L'écriture de données verrouillées dans des cellules de mémoire peut être vérifiée par relecture sans nécessiter de RAM externe.

Description

2876491 1
VERROU DE COLONNE ACCESSIBLE EN LECTURE
POUR MÉMOIRES NON VOLATILES La présente invention concerne des architectures de verrous de colonne de programme de données pour mémoires non volatiles de type à grille flottante, et concerne aussi la vérification de l'écriture des données à partir des verrous de colonne dans les cellules de mémoire à grille flottante de telles mémoires.
Les capacités de stockage de mémoire de mémoires EEPROM intégrées utilisées dans les applications de carte à puce sont rendues toujours plus grandes pour répondre à des exigences de mémoire croissantes. Un problème qui se pose avec les mémoires importantes est la capacité de contrôler la qualité de programmation des cellules de bits des mémoires, généralement de type à grille flottante dans les EEPROM. Dans les systèmes existants, la programmation d'une EEPROM a deux phases. Dans une première phase de "chargement", les données à programmer sont chargées à partir d'une mémoire RAM par le biais d'un bus d'entrée de données dans des circuits de verrous de colonne de l'EEPROM. Généralement, la taille de données minimale qui peut être chargée est un octet et le maximum est une ligne ou une page de 64 ou 128 octets.
Dans une seconde phase "d'écriture", les données stockées dans les verrous de colonne sont transférées dans des cellules de bits adressées dans le dispositif de mémoire EEPROM. Les circuits de verrous de colonne servent seulement à stocker les données pendant que la programmation des cellules de bits a lieu. Pour vérifier la qualité de la programmation, les données sont ensuite lues à partir des cellules de bits programmées de 2876491 2 l'EEPROM et comparées avec les données originales déjà stockées dans la RAM (mémoire vive). Si les données lues à partir des cellules diffèrent des données originales, la programmation des octets erronés est répétée jusqu'à ce que les données vérifiées soient correctes.
Un circuit de verrous de colonne de programme existant typique a une partie à tension basse et une partie à tension haute. La partie à tension basse est un simple verrou (des inverseurs interconnectés) auquel les données d'entrée sont écrites à travers une première grille de transmission pendant la phase de chargement de l'opération de programmation. La partie à tension haute est un décaleur de niveau fourni avec la tension haute nécessaire pour la programmation. Pendant la phase d'écriture de l'opération de programmation, les données stockées dans le verrou de tension basse sont transférées dans la partie à tension haute à travers une deuxième grille de transmission qui sépare les parties à tension basse et haute. Le décaleur de niveau tire une valeur de données "1" jusqu'à la tension de programmation, tandis qu'une valeur de données "0" reste à 0 V. Le niveau de tension résultant dans le décaleur de niveau commande une troisième grille de transmission qui pilote une colonne du dispositif de cellules de mémoire via une ligne de bits. La tension à la borne opposée à la ligne de bits est à la tension de programmation pour l'écriture et à 0 V pour l'effacement. Pour vérification, les cellules de mémoire sont lues par leurs chemins de lecture normaux via des amplificateurs de détection reliés aux lignes de bits à l'extrémité opposée aux verrous de colonne de programme.
2876491 3 La présente invention propose un circuit de verrous de colonne pour mémoires non volatiles, qui permet de programmer la vérification du chargement correct des données, sans nécessiter de mémoire RAM supplémentaire.
En particulier, le nouveau verrou de colonne a maintenant une capacité, non seulement d'être accédé en mode de chargement pour stocker des données, mais aussi d'être accédé en mode de relecture pour servir d'emplacement de mémoire lisible pour des comparaisons de vérification.
Pour proposer cette accessibilité de lecture aux verrous de colonne de programme, la partie à tension basse du circuit de verrous est modifiée pour permettre un flux de données bidirectionnel dans et hors du circuit de verrous. En particulier, la première grille de transmission sur l'ancien chemin de chargement est maintenant remplacée par une paire de mémoires tampon à trois états qui sont commandées par des signaux de chargement et de lecture respectifs. Le circuit résultant a à la fois un mode de chargement dans lequel les données sont transférées dans le verrou à travers la mémoire tampon de chargement, et un mode de relecture dans lequel les données verrouillées sont extraites à travers la mémoire tampon de lecture.
La partie à tension haute du circuit de verrous de colonne de programme est inchangée. La programmation peut être mise en oeuvre en plusieurs phases: une phase de chargement initiale, une première phase de relecture (facultative) pour vérifier le verrouillage correct des données, une phase d'écriture dans laquelle les données verrouillées sont transférées via la partie à tension haute du circuit de verrous de colonne aux cellules de bits adressées du dispositif de mémoire, et une autre 2876491 4 phase de relecture accompagnée d'une lecture à partir des cellules de mémoire des données nouvellement programmées pour vérifier la programmation appropriée des données.
À cette fin, l'invention concerne, dans ses significations les plus générales, un circuit de verrous de colonne accessible en lecture, comprenant: une partie de verrouillage à tension basse et une partie d'écriture de données à tension haute, couplées ensemble à travers une première grille de transmission, la première grille de transmission étant configurée pour répondre à un signal de transfert de données en mode écriture; des premiers moyens d'interface couplant les chemins externes de données d'entrée et de sortie à la partie de verrouillage à tension basse, les premiers moyens d'interface étant configurés pour réagir aux signaux de mode de chargement et de relecture pour sélectionner une direction de flux de données entre les chemins de données et la partie de verrouillage à tension basse et activant le transfert des données à travers les moyens d'interface; et des deuxièmes moyens d'interface pour coupler la partie d'écriture des données à tension haute à une ligne de bits pour une colonne de cellules de mémoire.
De préférence, les premiers moyens d'interface comprennent une paire de mémoires tampon à trois états placées face à face, couplées à la partie de verrouillage à tension basse et aux chemins externes de données d'entrée et de sortie, les mémoires tampon à trois états n'étant jamais actives toutes les deux simultanément, une mémoire tampon à trois états étant configurée pour permettre le flux de données dans un mode de chargement 2876491 5 d'une opération de programmation à partir du chemin de données d'entrée externe dans la partie de verrouillage à tension basse et l'autre mémoire tampon à trois états configurée pour permettre le flux de données dans un mode de relecture d'une opération de programmation à partir de la partie de verrouillage à tension basse jusqu'au chemin de données de sortie externe, moyennant quoi les données verrouillées sont lues.
Avantageusement, la partie de verrouillage à tension 10 basse comprend une paire d'inverseurs interconnectés définissant un circuit de verrouillage.
Avantageusement, la partie d'écriture en mémoire à tension haute comprend un circuit décaleur de niveau couplé à une tension de programmation.
De préférence, les deuxièmes moyens d'interface comprennent une deuxième grille de transmission configurée pour être commandée par une tension établie par des données transférées dans la partie d'écriture en mémoire à tension haute, la deuxième grille de transmission ayant des bornes de conduction couplant une source de tension de programmation/d'effacement à la ligne de bits.
La présente invention concerne aussi un circuit de verrous de colonne accessible en lecture pour mémoires 25 non volatiles, comprenant: une paire de mémoires tampon à trois états placées face à face, couplées aux chemins externes de données d'entrée et de sortie menant respectivement vers et à partir du circuit de verrous de colonne, et configurées pour sélectionner une direction de flux de données, les mémoires tampon à trois états n'étant jamais actives toutes les deux simultanément; 2876491 6 un circuit de verrouillage couplé aux mémoires tampon à trois états, le circuit de verrouillage configuré pour recevoir, à partir du chemin de données d'entrée externe, des données à charger à travers une des mémoires tampon à trois états dans un mode de chargement d'une opération de programmation, et pour relire des données verrouillées à travers l'autre des mémoires tampon à trois états vers le chemin de données de sortie externe dans un mode de relecture de l'opération de programmation; une première grille de transmission couplée au circuit de verrouillage de la première grille de transmission configurée pour permettre la transmission, à travers la grille, de données verrouillées au début d'un mode d'écriture de l'opération de programmation; un circuit décaleur de niveau couplé à la grille de transmission, le circuit décaleur de niveau étant configuré pour décaler une tension correspondant aux données à une tension nécessaire pour les cellules de mémoire de programmation des mémoires non volatiles en accord avec les données; et une deuxième grille de transmission configurée pour coupler le circuit décaleur de niveau à une ligne de bits menant à une colonne de cellules de bits de mémoire non volatile, de sorte que les données sont écrites dans les cellules de bits sélectionnées en mode écriture.
De préférence, le circuit de verrouillage comprend une paire d'inverseurs interconnectés.
Avantageusement, les mémoires tampon à trois états ont des entrées de commande configurées pour réagir à une adresse d'octet décodée et à un signal de commande de direction de flux (readram).
2876491 7 De préférence, le circuit décaleur de niveau comprend une paire d'inverseurs de transistors avec une entrée d'inverseur couplée à la première grille de transmission et une entrée d'inverseur couplée à une grille d'un transistor élévateur de tension, le transistor élévateur de tension étant couplé à une source de tension de programmation et à l'entrée d'inverseur et la première grille de transmission.
Avantageusement, la deuxième grille de transmission comprend un transistor avec une borne de grille de commande couplée au circuit de décalage de niveau, et avec des bornes de conduction source/drain couplant une source de tension à la ligne de bits, la source de tension étant une tension de programmation pour l'opération de programmation.
L'invention concerne aussi un procédé de circuit de verrous de colonne de programme d'exploitation pour programmer une mémoire non volatile, comprenant: (a) le chargement de circuits de verrouillage adressés de circuit de verrous de colonne de programme avec des bits de données provenant d'un chemin de données d'entrée externe; (b) l'écriture des bits de données verrouillés dans des cellules de mémoire adressées d'une mémoire non 25 volatile; (c) la lecture de bits de données verrouillés à partir des circuits de verrouillage vers un chemin de données de sortie externe et la vérification si oui ou non les bits de données dans les cellules de mémoire adressées ont été correctement écrits; et (d) si la vérification indique une écriture incorrecte, alors la répétition des étapes (b) et (C) 2876491 8 jusqu'à ce que les bits de données aient été vérifiés comme correctement écrits.
De préférence, le chargement et la lecture de bits de données se font en tant que transfert entre les circuits de verrouillage et les chemins externes de données d'entrée et de sortie respectifs, une direction de flux de données étant commandée par une paire de mémoires tampon à trois états placées face à face sur les chemins de données dans le circuit de verrous de colonne de programme, les mémoires tampon à trois états n'étant jamais actives toutes les deux simultanément.
Avantageusement, la direction de flux est sélectionnée par un signal de commande externe appliqué aux mémoires tampon à trois états.
De préférence, l'écriture de bits de données comprend le transfert de bits de données verrouillés à travers une grille de transmission jusqu'au circuit décaleur de niveau alimenté à une tension de programmation et des lignes de bits de pilotage avec les données transférées et à décalage de niveau.
Dans un mode de réalisation, ledit procédé comprenant en outre: avant d'écrire les bits de données verrouillés, (a1) la lecture des bits de données verrouillés à partir des circuits de verrouillage vers le chemin de données de sortie externe et la vérification si oui ou non le chemin de données de sortie externe et la vérification si oui ou non les bits de données ont été correctement verrouillés; et (a2) si la vérification indique un verrouillage incorrect, alors la répétition des étapes (a) et (a1) 2876491 9 jusqu'à ce que les bits de données aient été vérifiés comme correctement verrouillés.
La figure 1 est un diagramme de circuit schématique d'un circuit de verrous de colonne de programme 5 exemplaire de la présente invention.
La figure 2 est un schéma de bloc de mémoire non volatile contenant une pluralité de verrous de colonne de programme comme ceux sur la figure 1.
Les figures 3A et 3B sont des diagrammes de synchronisation pour les modes de chargement et de relecture respectifs du verrou de colonne de programme sur la figure 1.
La figure 4 est un organigramme illustrant une opération de programmation de base conformément à la 15 présente invention.
Avec référence à la figure 1, un circuit de verrous de colonne de programme 11 de la présente invention pour utilisation dans des mémoires non volatiles a une partie à tension basse 13 et une partie à tension haute 15. Une fonction caractéristique de la présente invention est que la partie à tension basse a une construction modifiée en ce qui concerne les verrous de colonne antérieurs qui permet d'y accéder dans un mode de chargement ou un mode de relecture.
La partie à tension basse 13 comprend un verrou 17 (inverseurs interconnectés 18 et 19) auquel on accède à travers une paire de mémoires tampon à trois états placées face à face 21 et 23, qui sont commandées par des signaux de chargement et de lecture respectifs. Les données d'entrée sont écrites dans le verrou 17 à travers la mémoire tampon de chargement 21 pendant une phase de chargement. Le contenu stocké du verrou 17 peut être lu 2876491 10 par le biais de la mémoire tampon de lecture 23 pendant une phase de relecture. Pour sauvegarder le secteur, il n'y a qu'une ligne de bus d'entrée-sortie 25 pour à la fois le chargement et la lecture du verrou de colonne.
Pour éviter les conflits, les signaux de commande de chargement et de relecture ne peuvent pas être hauts tous les deux en même temps.
De plus, à l'extérieur du circuit de verrous de colonne de programme 11, la mémoire non volatile peut comprendre un circuit de commande de verrou de colonne qui, comme l'une de ses fonctions, choisit un mode de tous les verrous de colonne de programme 11 dans la mémoire, via un bit supplémentaire étiqueté readram. Par exemple, quand readram est bas, le mode de chargement est sélectionné, mais quand readram est haut, le mode de relecture est sélectionné. Les paires de mémoires tampon à trois états placées face à face 31 et 33 sur chacun des chemins de données menant aux broches de données externes de la mémoire peuvent recevoir des versions normales et inversées de readram. Par "placées face à face", nous voulons dire que les flux de données à travers les mémoires tampon à trois états (entrée à sortie) sont dans des directions opposées. Autrement dit, la mémoire tampon 31 a sa sortie conduisant dans la colonne verrouillée 11, tandis que la mémoire tampon 33 a sa sortie couplée à la borne ramout.
La partie à tension haute 15 comprend un décaleur de niveau 37 qui est alimenté par la tension haute Vm nécessaire pour la programmation. N'importe quel circuit de décalage de niveau utilisé pour des verrous de colonne de programme peut être utilisé ici pour le décaleur de niveau 37. Par exemple, le décaleur de niveau 37 peut 2876491 11 comprendre un inverseur de canal p et des transistors de canal n 41 et 42, dont les entrées de grille communes sont couplées à la ligne 39 et dont les sorties drain communes pilotent un transistor 43 élévateur de tension à canal p dont la source est couplée à la tension de programme Vm et dont le drain est aussi relié à la ligne 39. Pendant une phase d'écriture, les données stockées dans le verrou à tension basse 17 sont transférées à travers une grille de transmission 45 qui sépare les parties à tension basse et haute 13 et 15 sur une ligne 39 dans la partie à tension haute 15. Le décaleur de niveau 37 tire une valeur de données "1" reçue sur la ligne 39 jusqu'à la tension de programmation Vm, tandis qu'une valeur de données "0" reçue reste à 0 V. Le niveau de tension résultant sur la ligne 39 commande une deuxième grille de transmission 47 qui pilote une colonne du dispositif de cellules de mémoire via une ligne de bits 49. Le borne d'alimentation en tension 50 opposée à la ligne de bits est à la tension de programmation Vm pour l'écriture et à 0 V pour l'effacement.
Avec référence à la figure 2, une mémoire non volatile 61, comme une EEPROM, comprend un dispositif 63 de cellules de bits conjointement avec un circuit de prise en charge (décodeurs d'adresse, verrous de programme, amplificateurs de détection, etc.) pour accéder au contenu stocké dans les cellules de bits. Le circuit de décodage d'adresse peut comprendre un décodeur X 65 recevant les bits les plus significatifs d'une adresse (add msb<n>) pour sélectionner une rangée ou une page des cellules de bits, et séparer des décodeurs Y de lecture et de programme 66 et 67, chacun recevant un ou plusieurs des bits les moins significatifs d'une adresse 2876491 12 (add lsbl et add lsb2), pour sélectionner un octet spécifique des cellules de bits.
La lecture des cellules de bits du dispositif 63 est mise en oeuvre dans un mode de lecture (signal de commande de lecture rdn = haut) par le dispositif amplificateur de détection 69 en collaboration avec le circuit de commande de lecture 70 et le décodeur Y de lecture 66. Un octet de données est sorti des bornes de données associées (Dout<15> à Dout<0>) de la mémoire 61.
La programmation des cellules de bits du dispositif 63 implique une combinaison d'un mode de chargement (signal de commande de chargement ldn = haut), suivi d'un mode vérification de verrou ou relecture (signal de commande readram = haut) qui est une fonction caractéristique de la présente invention, et enfin un mode d'écriture (signal de commande d'écriture wtn = haut). Cette série d'étapes de programmation est mise en oeuvre par un dispositif à verrou de colonne de programme 73 composé d'une pluralité de verrous de colonne comme vu sur la figure 1, en collaboration avec un circuit de commande de verrou de colonne 74, un circuit de pompe de chargement 75 et le décodeur Y de programme 67. Les entrées de commande (wtn, ldn et readram) interagissent avec le circuit de commande de verrou de colonne 74 pour définir un mode particulier de l'opération de programmation selon une phase particulière dans la séquence de programmation. Les données à programmer peuvent être chargées en série à travers une borne d'entrée de données (Din) dans le dispositif de verrou 73 et aussi lues en série à travers une autre borne de données (ramout), ou en variante la mémoire pourrait être construite de sorte que les données soient chargées et 2876491 13 relues en parallèle à travers des ensembles de bornes (Din<0> à Din<7> et ramout<0> à ramout<7>) équivalents à ceux utilisés pour des opérations de lecture normales. Puisque les temps d'accès pour les verrous de colonne 73 ont tendance à être beaucoup plus courts que le temps nécessaire aux amplificateurs de détection 69 pour lire les cellules de mémoire non volatiles dans le dispositif 63, le nombre de bornes de relecture à verrou de colonne (ramout <0> à <7>) peut être moindre que les bornes de sorties de données (dout <0> à <15>). Partant de là, une lecture de cellule de mémoire 16 bits peut être comparée au contenu des verrous de colonne dans deux lectures de 8 bits séquentielles du dispositif de verrouillage.
La mémoire 61, représentée sur la figure 2, et toutes ses pièces composantes sont essentiellement classiques, à part la construction des verrous de colonne de programme, représentée sur la figure 1, et la fourniture consécutive d'un mode de relecture de l'opération de programmation qui peut être aisément mise en uvre avec des modifications mineures dans le circuit de commande de verrou 74 conformément à la discussion suivante des modes de chargement et de relecture avec référence aux diagrammes de synchronisation sur les figures 3A et 3B.
La figure 3A montre la synchronisation de verrous de colonne pour une phase de chargement de l'opération de programmation. À l'instant t0, le signal readram commandant les mémoires tampon à trois états dans le chemin de données devient bas (81), de sorte que la direction du flux de données est dans les circuits de verrous de colonne. En même temps, les décodeurs de programme Y reçoivent (83) le bit d'adresse le moins 2876491 14 significatif addlsb2 qui indique un octet particulier à charger. (Les bits plus significatifs pour les décodeurs X ne sont pas nécessaires jusqu'à la phase d'écriture de l'opération de programmation, mais peuvent être appliqués aux broches d'adresse externes de la mémoire en tout cas.) Le circuit de commande de verrou de colonne et les décodeurs produisent un signal byteload (figure 1) pour l'octet particulier de verrous de colonne. En conséquence, chaque verrou de colonne est sélectionné par un signal byteload décodé à partir du bit addlsb2 et du signal readram. Aussi à l'instant t0, les bits de données din à charger dans les verrous sont reçus (85). Après un temps de préparation ts, le signal de commande de chargement ldn devient bas (87). A condition que les bits d'adresse et de données continuent à être appliqués (83 et 85) pendant au moins un temps de maintien tH après que le ldn a transitionné à l'état bas, c'est- à-dire jusqu'à un instant tl, les données seront chargées avec succès dans les verrous de colonne de programme désignées par l'adresse. Cela achève le chargement des verrous 17 est la partie à tension basse 13 de chaque circuit de verrous de colonne adressé 11 (figure 1). Quand les verrous de colonne ne sont pas accédés, alors le mode de chargement est sélectionné par défaut pour tenir la ligne de bus 25 piloté par données par la mémoire tampon 31 et éviter une condition flottante de la ligne 25.
La figure 3B montre la synchronisation des verrous de colonne pour une phase de relecture de l'opération de programmation, avant de transférer les données à la partie à tension haute 15 des verrous de colonne 11 (figure 1). Sur la figure 3B, à l'instant t2, le signal readram commandant les mémoires tampon à trois états dans 2876491 15 le chemin de données devient haut (91). La mémoire tampon de chargement à trois états 31 est désactivée, tandis que la mémoire tampon à trois états de lecture 33 est activée. La direction du flux de données est maintenant hors des circuits de verrous de colonne. En même temps, les décodeurs de programme Y reçoivent (ou continuent à recevoir) (93) le bit d'adresse le moins significatif addlsb2, indiquant l'octet particulier de verrous de colonne à lire. Le circuit de commande de verrous de colonne et les décodeurs produisent un signal byteread (figure 1) pour l'octet particulier de verrous de colonne, de sorte que la mémoire tampon 23 soit active et que la mémoire tampon 21 soit inactive. Après un temps de préparation ts, le signal de commande de chargement ldn devient bas (95) et est maintenu bas pendant au moins un temps de maintien TH, c'est-à-dire, jusqu'à l'instant t3. Les bits de données verrouillés dans la partie à tension basse des verrous de colonne adressées sont extraits (97) à travers les bornes ramout, qui peuvent être les mêmes que les bornes Din d'entrée de données utilisées pendant la phase de chargement.
Si la lecture indique qu'un ou plusieurs bits de données ont été verrouillés de manière incorrecte, la phase de chargement sera répétée et suivie par autre lecture pour vérification de chargement, jusqu'à ce que les données correctes soient verrouillées ou qu'une balise d'erreur soit générée par le système (par exemple, en cas de circuit endommagé indiqué par plusieurs tentatives infructueuses). Si la lecture vérifie que les bits de données chargés sont corrects, l'opération de programme passe à la phase d'écriture, qui peut être identique à l'art antérieur. Les données sont transférées 2876491 16 de la partie à tension basse dans la partie à tension haute comme discuté plus haut avec référence à la figure 1.
Avec référence à la figure 4, une opération de programmation exemplaire conformément à la présente invention est présentée avec une phase de chargement (101) dans laquelle les circuits de verrouillage de colonnes adressées (17 sur la figure 1) sont chargés de bits de données à partir d'un chemin de données externe (clin et 25 sur la figure 1). Ensuite, l'opération passe à une phase de relecture (103) dans laquelle les bits de données verrouillés sont relus à partir des circuits de verrouillage et vérifiés par comparaison avec les données originales que les bits ont été correctement verrouillés.
Si la vérification indique un verrouillage incorrect d'un ou plusieurs bits, alors le flux opérationnel retourne (105) à la phase de chargement pour le rechargement des circuits de verrouillage jusqu'à ce que les bits de données aient été vérifiés comme ayant été correctement verrouillés. Une fois que le verrouillage correct des données a été vérifié, l'opération passe à une phase d'écriture (107) dans laquelle les circuits de verrous de colonne pilotent des lignes de bits en accord avec les données verrouillées afin d'écrire les données dans les cellules de bits de mémoire adressées de la mémoire non volatile. Une fois que la phase d'écriture est terminée, l'opération de programmation peut alors passer à la lecture et à la vérification des cellules de bits programmées (109) par comparaison avec les bits de données stockés dans les circuits de verrous de colonne. Si les données ont été programmées correctement (111), l'écriture de cet octet est terminée. Si la vérification 2876491 17 de lecture détermine que les données écrites sont incorrectes (113), une option est de retourner à la phase d'écriture (107) pour une autre tentative. Parce que la phase de chargement a été vérifiée avant l'écriture, cette étape de vérification de lecture rencontrera moins d'erreurs d'écriture. Parce que les circuits de verrous de colonne contiennent les données à comparer avec la lecture de cellules de mémoire pour vérification d'écriture, une RAM séparée à cette fin n'est pas obligatoire.
Bien entendu, l'invention n'est pas limitée aux exemples de réalisation ci-dessus décrits et représentés, à partir desquels on pourra prévoir d'autres modes et d'autres formes de réalisation, sans pour autant sortir du cadre de l'invention.

Claims (15)

REVENDICATIONS
1. Circuit de verrous de colonne accessible en lecture, comprenant: une partie de verrouillage à tension basse et une partie d'écriture de données à tension haute, couplées ensemble à travers une première grille de transmission, la première grille de transmission étant configurée pour répondre à un signal de transfert de données en mode écriture; des premiers moyens d'interface couplant les chemins externes de données d'entrée et de sortie à la partie de verrouillage à tension basse, les premiers moyens d'interface étant configurés pour réagir aux signaux de mode de chargement et de relecture pour sélectionner une direction de flux de données entre les chemins de données et la partie de verrouillage à tension basse et activant le transfert des données à travers les moyens d'interface; et des deuxièmes moyens d'interface pour coupler la partie d'écriture des données à tension haute à une ligne de 20 bits pour une colonne de cellules de mémoire.
2. Circuit de verrous de colonne selon la revendication 1, dans lequel les premiers moyens d'interface comprennent une paire de mémoires tampon à trois états placées face à face, couplées à la partie de verrouillage à tension basse et aux chemins externes de données d'entrée et de sortie, les mémoires tampon à trois états n'étant jamais actives toutes les deux simultanément, une mémoire tampon à trois états étant configurée pour permettre le flux de données dans un mode de chargement 2876491 19 d'une opération de programmation à partir du chemin de données d'entrée externe dans la partie de verrouillage à tension basse et l'autre mémoire tampon à trois états configurée pour permettre le flux de données dans un mode de relecture d'une opération de programmation à partir de la partie de verrouillage à tension basse jusqu'au chemin de données de sortie externe, moyennant quoi les données verrouillées sont lues.
3. Circuit de verrous de colonne selon la revendication 1 dans lequel la partie de verrouillage à tension basse comprend une paire d'inverseurs interconnectés définissant un circuit de verrouillage.
4. Circuit de verrous de colonne selon la revendication 1 dans lequel la partie d'écriture en mémoire à tension haute comprend un circuit décaleur de niveau couplé à une tension de programmation.
5. Circuit de verrous de colonne selon la revendication 1 dans lequel les deuxièmes moyens d'interface comprennent une deuxième grille de transmission configurée pour être commandée par une tension établie par des données transférées dans la partie d'écriture en mémoire à tension haute, la deuxième grille de transmission ayant des bornes de conduction couplant une source de tension de programmation/d'effacement à la ligne de bits.
6. Circuit de verrous de colonne accessible en lecture 30 pour mémoires non volatiles, comprenant: une paire de mémoires tampon à trois états placées face à face, couplées aux chemins externes de données d'entrée 2876491 20 et de sortie menant respectivement vers et à partir du circuit de verrous de colonne, et configurées pour sélectionner une direction de flux de données, les mémoires tampon à trois états n'étant jamais actives toutes les deux simultanément; un circuit de verrouillage couplé aux mémoires tampon à trois états, le circuit de verrouillage configuré pour recevoir, à partir du chemin de données d'entrée externe, des données à charger à travers une des mémoires tampon à trois états dans un mode de chargement d'une opération de programmation, et pour relire des données verrouillées à travers l'autre des mémoires tampon à trois états vers le chemin de données de sortie externe dans un mode de relecture de l'opération de programmation; une première grille de transmission couplée au circuit de verrouillage de la première grille de transmission configurée pour permettre la transmission, à travers la grille, de données verrouillées au début d'un mode d'écriture de l'opération de programmation; un circuit décaleur de niveau couplé à la grille de transmission, le circuit décaleur de niveau étant configuré pour décaler une tension correspondant aux données à une tension nécessaire pour les cellules de mémoire de programmation des mémoires non volatiles en accord avec les données; et une deuxième grille de transmission configurée pour coupler le circuit décaleur de niveau à une ligne de bits menant à une colonne de cellules de bits de mémoire non volatile, de sorte que les données sont écrites dans les cellules de bits sélectionnées en mode écriture.
2876491 21
7. Circuit de verrous de colonne selon la revendication 6 dans lequel le circuit de verrouillage comprend une paire d'inverseurs interconnectés.
8. Circuit de verrous de colonne selon la revendication 6 dans lequel les mémoires tampon à trois états ont des entrées de commande configurées pour réagir à une adresse d'octet décodée et à un signal de commande de direction de flux (readram).
9. Circuit de verrous de colonne selon la revendication 6 dans lequel le circuit décaleur de niveau comprend une paire d'inverseurs de transistors avec une entrée d'inverseur couplée à la première grille de transmission et une entrée d'inverseur couplée à une grille d'un transistor élévateur de tension, le transistor élévateur de tension étant couplé à une source de tension de programmation et à l'entrée d'inverseur et la première grille de transmission.
10. Circuit de verrous de colonne selon la revendication 6 dans lequel la deuxième grille de transmission comprend un transistor avec une borne de grille de commande couplée au circuit de décalage de niveau, et avec des bornes de conduction source/drain couplant une source de tension à la ligne de bits, la source de tension étant une tension de programmation pour l'opération de programmation.
11. Procédé de circuit de verrous de colonne de programme d'exploitation pour programmer une mémoire non volatile, comprenant: 2876491 22 (a) le chargement de circuits de verrouillage adressés de circuit de verrous de colonne de programme avec des bits de données provenant d'un chemin de données d'entrée externe; (b) l'écriture des bits de données verrouillés dans des cellules de mémoire adressées d'une mémoire non volatile; (c) la lecture de bits de données verrouillés à partir des circuits de verrouillage vers un chemin de données de sortie externe et la vérification si oui ou non les bits de données dans les cellules de mémoire adressées ont été correctement écrits; et (d) si la vérification indique une écriture incorrecte, alors la répétition des étapes (b) et (C) jusqu'à ce que les bits de données aient été vérifiés comme correctement écrits.
12. Procédé selon la revendication 11 dans lequel le chargement et la lecture de bits de données se font en tant que transfert entre les circuits de verrouillage et les chemins externes de données d'entrée et de sortie respectifs, une direction de flux de données étant commandée par une paire de mémoires tampon à trois états placées face à face sur les chemins de données dans le circuit de verrous de colonne de programme, les mémoires tampon à trois états n'étant jamais actives toutes les deux simultanément.
13. Procédé selon la revendication 12 dans lequel la direction de flux est sélectionnée par un signal de commande externe appliqué aux mémoires tampon à trois états.
2876491 23
14. Procédé selon la revendication 13 dans lequel l'écriture de bits de données comprend le transfert de bits de données verrouillés à travers une grille de transmission jusqu'au circuit décaleur de niveau alimenté à une tension de programmation et des lignes de bits de pilotage avec les données transférées et à décalage de niveau.
15. Procédé selon la revendication il, comprenant en outre: avant d'écrire les bits de données verrouillés, (ai) la lecture des bits de données verrouillés à partir des circuits de verrouillage vers le chemin de données de sortie externe et la vérification si oui ou non le chemin de données de sortie externe et la vérification si oui ou non les bits de données ont été correctement verrouillés; et (a2) si la vérification indique un verrouillage incorrect, alors la répétition des étapes (a) et (a1) jusqu'à ce que les bits de données aient été vérifiés comme correctement verrouillés.
FR0410586A 2004-10-07 2004-10-07 Verrou de colonne accessible en lecture pour memoires non volatiles Expired - Fee Related FR2876491B1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR0410586A FR2876491B1 (fr) 2004-10-07 2004-10-07 Verrou de colonne accessible en lecture pour memoires non volatiles
US11/028,852 US7126860B2 (en) 2004-10-07 2005-01-03 Read-accessible column latch for non-volatile memories

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0410586A FR2876491B1 (fr) 2004-10-07 2004-10-07 Verrou de colonne accessible en lecture pour memoires non volatiles

Publications (2)

Publication Number Publication Date
FR2876491A1 true FR2876491A1 (fr) 2006-04-14
FR2876491B1 FR2876491B1 (fr) 2006-12-15

Family

ID=34949715

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0410586A Expired - Fee Related FR2876491B1 (fr) 2004-10-07 2004-10-07 Verrou de colonne accessible en lecture pour memoires non volatiles

Country Status (2)

Country Link
US (1) US7126860B2 (fr)
FR (1) FR2876491B1 (fr)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7827342B2 (en) * 2008-11-21 2010-11-02 Texas Instruments Incorporated Readback registers
DE102009041935B3 (de) * 2009-09-17 2011-04-14 Austriamicrosystems Ag Schaltungsanordnung mit einem Zustandsspeicherelement und Verfahren zum Betreiben eines Zustandsspeicherelements
US9774317B1 (en) * 2016-08-29 2017-09-26 Amazon Technologies, Inc. Bistable-element for random number generation
US10777250B2 (en) * 2018-09-27 2020-09-15 Intel Corporation Save-restore circuitry with metal-ferroelectric-metal devices

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4616339A (en) * 1984-02-03 1986-10-07 U.S. Philips Corporation Integrated circuit with improved programmable read-only memory
US6041221A (en) * 1997-05-21 2000-03-21 Motorola, Inc. Circuit and method for verifying data of a wireless communications device
US20030117850A1 (en) * 2001-12-21 2003-06-26 Fujitsu Limited Gapless programming for a NAND type flash memory

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07109720B2 (ja) 1988-07-29 1995-11-22 三菱電機株式会社 不揮発性半導体記憶装置
US5065148A (en) * 1989-07-31 1991-11-12 Motorola, Inc. LCD driver a generator
US5414380A (en) * 1993-04-19 1995-05-09 Motorola, Inc. Integrated circuit with an active-level configurable and method therefor
JPH07226097A (ja) 1994-02-15 1995-08-22 Mitsubishi Electric Corp 不揮発性半導体記憶装置
JP2000228094A (ja) 1999-02-04 2000-08-15 Toshiba Corp 不揮発性半導体記憶装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4616339A (en) * 1984-02-03 1986-10-07 U.S. Philips Corporation Integrated circuit with improved programmable read-only memory
US6041221A (en) * 1997-05-21 2000-03-21 Motorola, Inc. Circuit and method for verifying data of a wireless communications device
US20030117850A1 (en) * 2001-12-21 2003-06-26 Fujitsu Limited Gapless programming for a NAND type flash memory

Also Published As

Publication number Publication date
US20060077715A1 (en) 2006-04-13
US7126860B2 (en) 2006-10-24
FR2876491B1 (fr) 2006-12-15

Similar Documents

Publication Publication Date Title
JP5399626B2 (ja) ページデータを保存するための方法と装置
KR920010001B1 (ko) 반도체 기억장치
US7483301B2 (en) Nonvolatile memory devices that support virtual page storage using odd-state memory cells and methods of programming same
KR100611285B1 (ko) 불휘발성 반도체 기억 장치 및 이것을 이용한 전자 카드 및전자 장치
KR100380775B1 (ko) 불휘발성 반도체 메모리 장치
US6982904B2 (en) Non-volatile semiconductor memory device and electric device with the same
US7420847B2 (en) Multi-state memory having data recovery after program fail
US7813186B2 (en) Flash memory device and programming method thereof
US7046554B2 (en) Page buffer of flash memory device and data program method using the same
US7345928B2 (en) Data recovery methods in multi-state memory after program fail
US7394691B2 (en) Semiconductor memory device which prevents destruction of data
US7518945B2 (en) Page buffer circuit of flash memory device
US7511997B2 (en) Semiconductor memory device
US7855927B2 (en) NAND system with a data write frequency greater than a command-and-address-load frequency
US20070133277A1 (en) Non-volatile semiconductor memory device
TW200305163A (en) Semiconductor integrated circuit
JPH01133300A (ja) 自己訂正機能付半導体記憶装置及びマイクロコンピュータ
FR2634299A1 (fr) Circuit de reconnaissance de codes sequentiels programmables
US20120182800A1 (en) Semiconductor memory device capable of preventing a shift of threshold voltage
US7031192B1 (en) Non-volatile semiconductor memory and driving method
JP2000082293A (ja) 消去可能不揮発性メモリに書き込む方法および装置
FR2876491A1 (fr) Verrou de colonne accessible en lecture pour memoires non volatiles
KR20010014760A (ko) 비휘발성 반도체 기억 장치
US6856553B2 (en) Flash memory with shortened erasing operation time
JP2641602B2 (ja) 不揮発性半導体記憶装置

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20120629