DE102005035084B4 - Speicherbauelemente und Programmierverfahren - Google Patents

Speicherbauelemente und Programmierverfahren Download PDF

Info

Publication number
DE102005035084B4
DE102005035084B4 DE102005035084.4A DE102005035084A DE102005035084B4 DE 102005035084 B4 DE102005035084 B4 DE 102005035084B4 DE 102005035084 A DE102005035084 A DE 102005035084A DE 102005035084 B4 DE102005035084 B4 DE 102005035084B4
Authority
DE
Germany
Prior art keywords
memory
memory blocks
address
block
page
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.)
Expired - Fee Related
Application number
DE102005035084.4A
Other languages
English (en)
Other versions
DE102005035084A1 (de
Inventor
Seong-kue Jo
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE102005035084A1 publication Critical patent/DE102005035084A1/de
Application granted granted Critical
Publication of DE102005035084B4 publication Critical patent/DE102005035084B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • 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
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • 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/08Address circuits; Decoders; Word-line control 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)

Abstract

Programmierverfahren für ein Speicherbauelement mit einer Mehrzahl von Speicherblöcken, die jeweils ein Hauptfeld (110M) und ein Ersatzfeld (110S) beinhalten, mit folgenden Schritten zur Durchführung eines Mehrseitenprogrammiervorgangs: – Erzeugen einer ersten Adresse, um in Reaktion auf eine Mehrseitenprogrammieranforderung eine Zeile eines jeden Speicherblocks auszuwählen, – Empfangen und Zwischenspeichern von zweiten Adressen zur Auswahl eines jeweiligen Speicherblocks, bis alle zweiten Adressen der auszuwählenden Speicherblöcke empfangen und zwischengespeichert sind, und – Auswählen der Speicherblöcke, welche mit den zwischengespeicherten zweiten Adressen korrespondieren, um gleichzeitig die gleichen Zeilen der entsprechenden ausgewählten Speicherblöcke in Reaktion auf die erste Adresse zu aktivieren und hauptfeldbezogene Informationsdaten gleichzeitig in die Ersatzfelder der ausgewählten Speicherblöcke zu programmieren.

Description

  • Die Erfindung betrifft Programmierverfahren für ein Speicherbauelement und Speicherbauelemente, insbesondere ein blockweise löschbares Speicherbauelement.
  • Speicherbauelemente bzw. Halbleiterspeicherbauelemente mit integrierten Schaltungen sind in Verbrauchsapplikationen und kommerziellen Applikationen weit verbreitet. Halbleiterspeicherbauelemente können als flüchtige Speicher mit direktem Zugriff (RAMs) oder als nichtflüchtige Speicherbauelemente charakterisiert werden. In RAMs können die logischen Informationen durch Setzen eines logischen Zustandes eines bistabilen Flip-Flops, wie in einem statischen Speicher mit direktem Zugriff (SRAM), oder durch Laden eines Kondensators gespeichert werden, wie in einem dynamischen Speicher mit direktem Zugriff (DRAM). In beiden Fällen werden die Daten gespeichert und können so lange ausgelesen werden, wie eine Energieversorgung angelegt ist, und die Daten gehen verloren, wenn die Energieversorgung abgeschaltet wird. Deshalb werden diese Speicher flüchtige Speicher genannt.
  • Nichtflüchtige Speicher, wie weit verbreitete maskenprogrammierbare Nur-Lesespeicher (MROM), programmierbare Nur-Lesespeicher (PROM), löschbare programmierbare Nur-Lesespeicher (EPROM) und elektrisch löschbare programmierbare Nur-Lesespeicher (EEPROM), sind in der Lage, Daten zu speichern, auch wenn die Energieversorgung abgeschaltet wird. Der nichtflüchtige Datenspeichermodus kann in Abhängigkeit von der verwendeten Herstellungstechnik permanent oder wiederprogrammierbar sein. Nichtflüchtige Speicher können für Programme und zur Mikrocodespeicherung in einer weiten Vielfalt von Applikationen verwendet werden. Eine Kombination von Speichermodi von flüchtigen und nichtflüchtigen Speichern auf einem Einzelchip sind ebenfalls verfügbar, wie in einem nichtflüchtigen SRAM (nvRAM) zur Verwendung in Systemen, welche schnelle programmierbare nichtflüchtige Speicher erfordern. Zusätzlich sind viele Spezialspeicherarchitekturen entwickelt worden, welche einige zusätzliche logische Schaltungen umfassen, um ihre Leistungsfähigkeit für spezielle Applikationsaufgaben maßschneidern zu können.
  • Nichtflüchtige MROM-, PROM- und EPROM-Speicher können für den Endnutzer nicht löschbar und nicht programmierbar ausgeführt sein. Anderseits können EEPROM-Bauelemente elektrisch gelöscht und beschrieben werden. Entsprechend können EEPROM-Bauelemente in Zusatzspeichern oder zur Systemprogrammierung verwendet werden, in welchen fortlaufende Aktualisierungen erwünscht sind. Insbesondere ein Flash-EEPROM kann eine höhere Integrationsdichte als ein konventionelles EEPROM aufweisen und kann daher für große Zusatzspeicher verwendet werden. Ein Flash-EEPROM vom NAND-Typ, welches nachfolgend auch als NAND-Flashspeicher bezeichnet wird, kann eine höhere Integrationsdichte als ein bekanntes Flash-EEPROM vom NOR-Typ aufweisen.
  • Ein nichtflüchtiges Speicherbauelement, wie ein Flashspeicherbauelement, umfasst ein Speicherzellenfeld als Speicherbereich zum Speichern von Informationen, welches eine Mehrzahl von Speicherblöcken BLK0 bis BLKn aufweist, wie aus 1 ersichtlich ist. Jeder Speicherblock kann in ein Hauptfeld 10 und ein Ersatzfeld 20 aufgeteilt sein. Das Ersatzfeld eines jeden Speicherblocks speichert Informationen, welche sich auf das Hauptfeld 10 und das Flashspeicherbauelement beziehen, wie einen Fehlerkorrekturcode, einen Bauelementcode, andere Codes, Blockinformation, Seiteninformation usw. Jeder Speicherblock umfasst eine Mehrzahl von Zellenketten, welche auch als NAND-Ketten bezeichnet werden und so konfiguriert sind, wie aus 1 ersichtlich ist. Eine Seitenpufferschaltung wird im Flashspeicherbauelement zur Verfügung gestellt, um Daten im Speicherzellenfeld zu speichern und aus dem Speicherzellenfeld auszulesen. Wie allgemein bekannt ist, können Speicherzellen des NAND-Flashspeicherbauelements durch einen Fowler-Nordheim-Tunnelstrom (F-N-Tunnelstrom) programmiert und gelöscht werden. Lösch- und Programmierverfahren eines solchen Speicherbauelements sind z. B. in der Patentschrift US 5.473.563 A beschrieben, deren Inhalt hiermit durch Bezugnahme vollständig in die vorliegende Anmeldung aufgenommen wird.
  • Wie gesagt, umfasst ein Flashspeicherbauelement ein Speicherzellenfeld, welches in eine Anzahl von Speicherblöcken aufgeteilt ist. Ein Lese-/Lösch-/Programmiervorgang eines entsprechenden Speicherblocks wird individuell durchgeführt. Eine Zeitspanne, welche zum Löschen von Speicherblöcken erforderlich ist, kann ein Begrenzungsfaktor in der Leistungsfähigkeit eines Systems mit einem Flashspeicherbauelement als auch in der Leistungsfähigkeit des Flashspeicherbauelements selbst sein. Um diese potentielle Unzulänglichkeit zu beseitigen, wurden Techniken zum gleichzeitigen Löschen einer Mehrzahl von Speicherblöcken entwickelt, wie sie in den Patentschriften US 5.841.721 A und US 5.999.446 A beschrieben werden, deren Inhalt hiermit durch Bezugnahme vollständig in die vorliegende Anmeldung aufgenommen wird.
  • Wird ein Speicherblock gelöscht, dann werden Informationen, welche anzeigen, dass der Speicherblock gelöscht ist, im Ersatzfeld des gelöschten Speicherblocks gespeichert. Eine solche Information wird als „Blockinformation” bezeichnet. In anderen Worten ausgedrückt, die Blockinformation eines Speicherblocks ist an einem bestimmten Ort des Ersatzfeldes gespeichert. Die Blockinformation kann ein 1-Bit-Datum sein. Normalerweise wird diese Blockinformation für alle Speicherblöcke am gleichen Ort des korrespondierenden Ersatzfeldbereichs des jeweiligen Speicherblocks gespeichert. Wie beispielsweise aus 1 ersichtlich ist, ist die Blockinformation jeweils in einer Speicherzelle gespeichert, welche gestrichelt bzw. schraffiert markiert und an einer Kreuzung einer ersten Wortleitung WL0 jedes Speicherblocks mit einer Ersatzbitleitung SBL0 angeordnet ist.
  • Die Patentschrift US 6.507.885 B2 offenbart ein Speicherbauelement mit einem Speicherzellenfeld, das eine Mehrzahl von Hauptblöcken aus jeweils mehreren kleineren Blöcken derart umfasst, dass das Speicherbauelement eine Festplattenemulation bildet, und ein zugehöriges Programmierverfahren. Außer in einem Einblockmodus ist das Speicherbauelement auch in einem Mehrblockmodus betreibbar, bei dem mehrere Blöcke zum gleichzeitigen Löschen, Schreiben und/oder Lesen einer Mehrzahl von darin gespeicherten Bytes an Daten ausgewählt werden.
  • Es ist Aufgabe der Erfindung, ein Speicherbauelement und ein Programmierverfahren hierfür anzugeben, die insbesondere hinsichtlich Programmiereffizienz gegenüber dem oben erwähnten Stand der Technik verbessert sind.
  • Die Erfindung löst diese Aufgabe durch ein Programmierverfahren für ein Speicherbauelement mit den Merkmalen des Patentanspruchs 1 oder 9 und durch ein Speicherbauelement mit den Merkmalen des Patentanspruchs 14 oder 24.
  • Vorteilhafte Weiterbildungen der Erfindung sind in den abhängigen Ansprüchen angegeben.
  • Vorteilhafte, nachfolgend beschriebene Ausführungsformen der Erfindung sowie das zu deren besserem Verständnis oben erläuterte, herkömmliche Ausführungsbeispiel sind in den Zeichnungen dargestellt. Es zeigen:
  • 1 eine schematische Darstellung einer Speicherzellenfeldstruktur eines herkömmlichen nichtflüchtigen Speicherbauelements,
  • 2 ein Blockdiagramm eines erfindungsgemäßen nichtflüchtigen Speicherbauelements,
  • 3 ein Blockdiagramm einer Zeilendecoderschaltung für das Speicherbauelement aus 2,
  • 4 ein Logikschaltbild einer Adressengeneratorschaltung für die Zeilendecoderschaltung aus 3,
  • 5 ein Logikschaltbild einer Blockdecoderschaltung für die Zeilendecoderschaltung aus 3 und
  • 6 ein Zeitablaufdiagramm zur Erläuterung eines erfindungsgemäßen Mehrseitenprogrammierverfahrens.
  • 2 zeigt ein schematisch ein Ausführungsbeispiel eines erfindungsgemäßen nichtflüchtigen Speicherbauelements in Form eines NAND-Flashspeicherbauelements. Die Erfindung kann jedoch auch auf andere Halbleiterspeicherbauelemente, wie MROM, PROM, FRAM, NOR-Flashspeicherbauelemente usw., angewendet werden. Wie aus 2 ersichtlich ist, umfasst das nichtflüchtige Speicherbauelement 100 ein Speicherzellenfeld 110 zum Speichern von Dateninformation, welches eine Mehrzahl von Speicherblöcken umfasst. Jeder der Speicherblöcke ist in ein Hauptfeld 110M und ein Ersatzfeld 110S aufgeteilt. Das Hauptfeld 110M und das Ersatzfeld 110S eines jeden Speicherblocks können gemäß der in 1 dargestellten Struktur konfiguriert sein, worauf verwiesen werden kann. Das erfindungsgemäße nichtflüchtige Speicherbauelement 100 umfasst weiter eine Adressenpufferschaltung 120, eine Zeilendecoderschaltung 130, eine Steuerlogik 140, eine Seitenpufferschaltung 150, eine Spaltendecoderschaltung 160, eine Spaltengatterschaltung 170, eine Eingabe-/Ausgabepufferschaltung 180 und eine Bestanden/Nichtbestanden-Überprüfungsschaltung 190.
  • Die Adressenpufferschaltung 120 wird von der Steuerlogik 140 gesteuert und empfängt gemäß einem vorgegebenen Zeitablauf Spalten- und Zeilenadressen über Eingabe-/Ausgabeanschlüsse I/O. Die Zeilendecoderschaltung 130 wird von der Steuerlogik 140 gesteuert und arbeitet in Reaktion auf eine Zeilenadresse von der Adressenpufferschaltung 120. Bei einem Einzelseitenprogrammiervorgang umfasst die Zeilenadresse eine Blockadresseninformation zur Auswahl eines Speicherblocks und eine Seitenadresseninformation zur Auswahl von Seiten bzw. Wortleitungen des ausgewählten Speicherblocks. Andererseits umfasst die Zeilenadresse bei einem Mehrseitenprogrammiervorgang nur die Blockadresseninformation zur Auswahl des Speicherblocks. Dies wird nachfolgend detaillierter beschrieben. Die Zeilendecoderschaltung 130 reagiert auf die empfangene Zeilenadresse und wählt einen der Speicherblöcke aus. Die Zeilendecoderschaltung 130 treibt Wortleitungen oder Seiten des ausgewählten Speicherblocks mit korrespondierenden Wortleitungsspannungen abhängig vom Betriebsmodus.
  • Gemäß einem Ausführungsbeispiel umfasst die Zeilendecoderschaltung 130 ein Register 131, welches ausgeführt ist, um temporär die Blockadressen zur Auswahl von allen oder eines Teils der Speicherblöcke bei dem Mehrseitenprogrammiervorgang zu speichern. Bei dem Mehrseitenprogrammiervorgang werden die Blockadressen im Register 131 benutzt, um Speicherblöcke gleichzeitig zu aktivieren. Die Zeilendecoderschaltung 130 erzeugt beim Mehrseitenprogrammiervorgang intern eine Seitenadresse. Entsprechend wählt die Zeilendecoderschaltung 130 unter Benutzung der Blockadressen im Register 131 gleichzeitig eine Mehrzahl von Speicherblöcken aus und aktiviert gemäß der intern erzeugten Seitenadresse eine bestimmte Wortleitung in jedem der ausgewählten Speicherblöcke. Das bedeutet, dass die korrespondierenden Wortleitungen der ausgewählten Speicherblöcke beim Mehrseitenprogrammiervorgang gleichzeitig aktiviert werden.
  • Entsprechend sind beispielhafte Ausführungsformen der Erfindung konfiguriert, um sequentiell eine korrespondierende Löschstatusanzeige für einen zugehörigen Speicherblock im Register 131 in Reaktion auf sequentiell gelöschte Speicherblöcke zu speichern. Diese Ausführungsformen sind weiter so konfiguriert, dass die korrespondierenden Löschstatusanzeigen, welche sequentiell im Register 131 gespeichert sind, gleichzeitig in den korrespondierenden Speicherblöcken gespeichert werden.
  • Wie weiter aus 2 ersichtlich ist, umfasst die Seitenpufferschaltung 150 eine Mehrzahl von nicht dargestellten Seitenpuffern, welche jeweils mit einer Bitleitung verbunden sind, wobei jede Bitleitung von allen Speicherblöcken gemeinsam genutzt wird. Die Seitenpufferschaltung 150 wirkt abhängig vom Betriebsmodus als Abtastverstärker und Schreibtreiber. Während eines Lesevorgangs tastet die Seitenpufferschaltung 150 über die Bitleitungen beispielsweise Daten vom ausgewählten Speicherblock ab, z. B. aus dem Haupt- und dem Ersatzfeld oder nur aus dem Ersatzfeld. Bei einem Einzelseiten-/Mehrseitenprogrammiervorgang puffert die Seitenpufferschaltung 150 zu programmierende Daten und treibt Bitleitungen basierend auf den zwischengespeicherten Daten mit einer Programmierspannung, z. B. einer Massespannung, oder einer Programmiersperrspannung, z. B. einer Versorgungsspannung. Die Spaltendecoderschaltung 160 decodiert eine Spaltenadresse von der Adressenpufferschaltung 120 und die Spaltengatterschaltung 170 wählt in Reaktion auf die decodierten Adressensignale von der Spaltendecoderschaltung 160 Seitenpuffer der Seitenpufferschaltung 150 in einer Bitorganisationseinheit aus. Während eines Lesevorgangs werden Daten, welche von der Seitenpufferschaltung 150 gelesen werden, über die Spaltengatterschaltung 170 und die Eingabe-/Ausgabepufferschaltung 180 ausgegeben. Während eines Programmiervorgangs werden zu programmierende Daten über die Spaltengatterschaltung 170 und die Eingabe-/Ausgabepufferschaltung 180 zur Seitenpufferschaltung 150 übertragen. Die Überprüfungsschaltung 190 empfängt während eines Programmier-/Löschverifizierungsvorgangs von der Seitenpufferschaltung 150 gelesene Datenbits und beurteilt, ob die empfangenen Datenbits den gleichen Wert aufweisen, d. h. einen Bestanden-Datenwert. Ein Überprüfungsergebnis der Überprüfungsschaltung 190 wird zur Steuerlogik 140 übertragen. Beispielhafte Seitenpuffer und Überprüfungsschaltungen sind in der Patentschrift US 5.299.162 A beschrieben, deren Inhalt hiermit durch Bezugnahme vollständig in die vorliegende Anmeldung aufgenommen wird.
  • Obwohl in 2 nicht dargestellt, kann die Spaltendecoderschaltung 160 einen Adressenzähler umfassen, welcher sukzessive durch aufeinander folgendes Erhöhen einer Anfangsspaltenadresse Spaltenadressen erzeugt. Dadurch werden zu programmierende bzw. zu lesende Seitendaten nacheinander über die Spaltengatterschaltung 170 in einer Bitorganisationseinheit übertragen.
  • Wie weiter aus 2 ersichtlich, ist die Steuerlogik 140 konfiguriert, um den Mehrseitenprogrammiervorgang zu steuern, in welchem alle oder bestimmte Speicherblöcke im Speicherzellenfeld 110 gleichzeitig ausgewählt und die korrespondierenden Wortleitungen der ausgewählten Speicherblöcke gleichzeitig aktiviert werden. Zudem steuert die Steuerlogik 140 den Einzelseitenprogrammiervorgang, in welchem ein Speicherblock ausgewählt und eine Wortleitung im ausgewählten Speicherblock aktiviert werden. Die Steuerlogik 140 beurteilt Adressen-, Befehls- und Dateneingabezeitabläufe in Reaktion auf herkömmliche Steuersignale, wie die herkömmlichen Signale CLE, ALE, /CE, /RE und /WE. Während des Mehrseitenprogrammiervorgangs steuert die Steuerlogik 140 die Adressenpufferschaltung 120 und die Zeilendecoderschaltung 130 so, dass Blockadressen zum Auswählen aller oder bestimmter Speicherblöcke sequentiell im Register 131 der Zeilendecoderschaltung 130 über die Adressenpufferschaltung 120 gespeichert werden. Die Steuerlogik 140 steuert die Zeilendecoderschaltung 130 so, dass die Speicherblöcke der Blockadressen im Register 131 gleichzeitig ausgewählt und eine bestimmte Wortleitung in jedem der ausgewählten Speicherblöcke mit einer Programmierspannung getrieben oder aktiviert wird. Dies wird nachfolgend detaillierter beschrieben. Die Funktionalität der Steuerlogik 140 kann als Hardware und/oder als Software implementiert werden.
  • 3 zeigt ein schematisches Blockdiagramm eines Ausführungsbeispiels der Zeilendecoderschaltung gemäß 2 und 4 zeigt ein Schaltbild eines Ausführungsbeispiels einer Adressengeneratorschaltung gemäß 3.
  • Wie aus 3 ersichtlich ist, umfasst die Zeilendecoderschaltung 130 in diesem Beispiel eine Auswahlschaltung 132, eine Adressengeneratorschaltung 133, eine Vordecoderschaltung 134, eine Seitendecoderschaltung 135 und eine Blockdecoderschaltung 136. Die Auswahlschaltung 132 umfasst Auswahltransistoren P0 bis P4, welche jeweils mit einer Kettenauswahlleitung SSL, Wortleitungen WLm bis WL0 und einer Masseauswahlleitung GSL korrespondieren. Die Kettenauswahlleitung SSL, die Wortleitungen WLm bis WL0 und die Masseauswahlleitung GSL sind jeweils über korrespondierende Auswahltransistoren P0 bis P4 mit Auswahlleitungen SS, Sm bis S0 und GS verbunden. Die Adressengeneratorschaltung 133 erzeugt Seitenadressen in Reaktion auf ein Mehrseitenprogrammiersignal MULTI_PPGM.
  • Wie beispielsweise aus 4 ersichtlich ist, überträgt die Adressengeneratorschaltung 133 eine Seitenadresse PA ohne Modifikation von der Adressenpufferschaltung 120 an die Vordecoderschaltung 134, wenn das Mehrseitenprogrammiersignal MULTI_PPGM einen niedrigen Pegel aufweist, wodurch ein Einzelseitenprogrammiervorgang angezeigt wird. Weist das Mehrseitenprogrammiersignal MULTI_PPGM einen hohen Pegel auf, wodurch ein Mehrseitenprogrammiervorgang angezeigt wird, dann gibt die Adressengeneratorschaltung 133 eine Seitenadresse zum Auswählen einer bestimmten Wortleitung, z. B. WL0, unabhängig von der Seitenadresse PA von der Adressenpufferschaltung 120 aus. Das bedeutet, dass während des Mehrseitenprogrammiervorgangs eine bestimmte Wortleitung der Speicherblöcke, z. B. die Wortleitung WL0 eines jeden Speicherblocks, ohne externe Seitenadresse ausgewählt wird. Das Mehrseitenprogrammiersignal MULTI_PPGM wird von der Steuerlogik 140 aus 2 so erzeugt, dass es bei einer Eingabe eines Mehrseitenauswahlbefehls, welcher in 6 mit CMD1 bezeichnet ist, aktiviert wird und bei Abschluss des Mehrseitenprogrammiervorgangs deaktiviert wird.
  • Wie weiter aus 3 ersichtlich ist, decodiert die Vordecoderschaltung 134 eine Blockadresse BA von der Adressenpufferschaltung 120 und eine Seitenadresse PA von der Adressengeneratorschaltung 133. Die decodierte Adresse umfasst eine Blockauswahlinformation, d. h. eine Blockadresse DRAi, und eine Seitenauswahlinformation, d. h. eine Seitenadresse DRAj. Die Seitenadresse DRAj der decodierten Adresse wird an die Seitendecoderschaltung 135 ausgegeben und die Blockadresse DRAi der decodierten Adresse wird an die Blockdecoderschaltung 136 ausgegeben.
  • Die Seitendecoderschaltung 135 wählt korrespondierend zu den Wortleitungen WL0 bis WLm in Reaktion auf die Seitenadresse DRAj von der Vordecoderschaltung 134 die Auswahlleitungen S0 bis Sm aus. Im Einzelseiten-/Mehrseitenprogrammiermodus legt die Seitendecoderschaltung 135 beispielsweise eine Programmierspannung an eine Auswahlleitung, welche mit einer Seitenadresse korrespondiert, und eine Passierspannung an die verbleibenden Auswahlleitungen an. Während eines Lesevorgangs legt die Seitendecoderschaltung 135 eine Lesespannung an die mit der Seitenadresse korrespondierende Auswahlleitung und eine Passierspannung an die verbleibenden Auswahlleitungen an.
  • Die Blockdecoderschaltung 136 aktiviert/deaktiviert ein Blockauswahlsignal BLK0 in Reaktion auf die Blockadresse DRAi von der Vordecoderschaltung 134. Die Auswahltransistoren P0 bis P4 werden gemeinsam vom Blockauswahlsignal BLK0 gesteuert. Das aktivierte Blockauswahlsignal BLK0 hat eine ausreichend hohe Spannung, so dass höhere Spannungen auf den Auswahlleitungen S0 bis Sm ohne Spannungsabfall an korrespondierende Wortleitungen übertragen werden. Die Blockdecoderschaltung 136 steuert in Reaktion auf die Blockadresse DRAi auch die Aktivierung der Auswahlleitungen SS und GS. Die Blockdecoderschaltung 136 umfasst insbesondere einen Zwischenspeicher LAT zum Speichern einer Blockadresse eines korrespondierenden Speicherblocks während eines Mehrseitenprogrammiervorgangs.
  • Die Seitendecoderschaltung 135 wird von den Speicherblöcken BLK0 bis BLKn gemeinsam genutzt, während die Blockdecoderschaltung 136 einem Speicherblock zugeordnet ist. In anderen Worten ausgedrückt, die Auswahlsignale S0 bis Sm von der Seitendecoderschaltung 135 werden gemeinsam an alle Speicherblöcke angelegt, während das Blockauswahlsignal BLK und die Auswahlsignale GS und SS nur an einen korrespondierenden Speicherblock angelegt werden.
  • 5 zeigt ein Schaltbild eines Ausführungsbeispiels einer Blockdecoderschaltung aus 3. Wie aus 5 ersichtlich ist, umfasst die jeweilige Blockdecoderschaltung 136 ein NAND-Gatter G4, PMOS-Transistoren MP1 und MP2, einen NMOS-Transistor MN1, einen Zwischenspeicher LAT, welcher aus Invertern INV1 und INV2 aufgebaut ist, Transmissionsgatter TG1 und TG2 und einen Pegelschieber LS. Die Zwischenspeicher LAT der Blockdecoderschaltungen 136, die mit den Speicherblöcken BLK0 bis BLKn korrespondieren, bilden das Register 131 der Zeilendecoderschaltung gemäß 2. Die decodierte Blockadresse DRAi von der Vordecoderschaltung 134 gemäß 3 ist an das NAND-Gatter G4 angelegt. Die PMOS-Transistoren MP1 und MP2 sind in Reihe zwischen der Versorgungsspannung und einem Eingabeknoten ND1 des Zwischenspeichers eingeschleift. Ein Gate des PMOS-Transistors MP1 ist mit einem Ausgabeanschluss des NAND-Gatters G4 verbunden, und ein Gate des PMOS-Transistors MP2 empfängt ein Steuersignal nBLK_IN. Der NMOS-Transistor MN1 ist zwischen dem Eingabeknoten ND1 des Zwischenspeichers LAT und der Massespannung eingeschleift und wird von einem Steuersignal BLK_RST gesteuert. Das Transmissionsgatter TG1 wird von einem Steuersignal MLT_EN gesteuert und überträgt eine Ausgabe des Zwischenspeichers LAT zum Pegelschieber LS. Das Transmissionsgatter TG2 wird von einem Steuersignal NOR_EN gesteuert und überträgt eine Ausgabe des NAND-Gatters G4 zum Pegelschieber LS. Der Pegelschieber LS aktiviert das Blockauswahlsignal BLK0 in Reaktion auf ein Eingabesignal. Das Blockauswahlsignal BLK0 weist eine ausreichend hohe Spannung auf, um eine höhere Spannung der Auswahlleitungen S0 bis Sm ohne Spannungsabfall an korrespondierende Wortleitungen WL0 bis WLm zu übertragen.
  • Im Ausführungsbeispiel gemäß 5 werden die Steuersignale nBLK_IN, BLK_RST, NOR_EN und MLT_EN von der Steuerlogik 140 aus 2 erzeugt.
  • 6 zeigt ein Zeitablaufdiagramm zur nachfolgenden Beschreibung eines erfindungsgemäßen Mehrseitenprogrammierverfahrens für ein nichtflüchtiges Speicherbauelement. Informationen, welche ein Hauptfeld betreffen, wie Blockinformationen, die anzeigen, dass ein Speicherblock gelöscht ist, werden während eines Mehrseitenprogrammiermodus in ein Ersatzfeld programmiert. Im Gegensatz zu herkömmlichen Speicherbauelementen, speichert das vorliegende Speicherbauelement Blockinformationen zu Speicherblöcken in Ersatzfeldern der Speicherblöcke parallel, d. h. gleichzeitig.
  • Wie aus 6 ersichtlich ist, aktiviert dazu die Steuerlogik 140 das Steuersignal BLK_RST, wenn ein erster Befehl CMD1 als Mehrseitenauswahlbefehl empfangen wird. Der NMOS-Transistor NM1 in der Blockdecoderschaltung 136 wird durch Aktivierung des Steuersignals BLK_RST leitend geschaltet, so dass der Zwischenspeicher LAT zurückgesetzt wird. Hierbei sind die Steuersignale MLT_EN und NOR_EN auf einem niedrigen Pegel. Das bedeutet, dass die Transmissionsgatter TG1 und TG2 inaktiv sind. Hierbei aktiviert die Steuerlogik 140 das Mehrseitenprogrammiersignal MULTI_PPGM in Reaktion auf die Eingabe des ersten Befehls CMD1. Dadurch wird die Adressengeneratorschaltung 133 gemäß 3 freigegeben, um die Seitenadresse PA zum Auswählen der bestimmten Wortleitung, z. B. der Wortleitung WL0, in jedem Speicherblock unabhängig von einer externen Adresse, d. h. ohne Eingabe einer externen Adresse, zu erzeugen.
  • Dann wird eine Blockadresse ADD1 zum Auswählen eines Speicherblocks und von Wortleitungen an Eingabe-/Ausgabeanschlüsse I/Oi angelegt. Die empfangene Blockadresse ADD1 wird mit der Seitenadresse der Adressengeneratorschaltung 133 von der Vordecoderschaltung 134 decodiert. Die Blockadresse DRAi der decodierten Adresse wird zum NAND-Gatter G4 der Blockdecoderschaltung 136 übertragen. Hierbei wird die decodierte Seitenadresse DRAj der decodierten Adresse der Seitendecoderschaltung 135 zur Verfügung gestellt.
  • Wie aus 6 ersichtlich ist, aktiviert die Steuerlogik 140 das Steuersignal nBLK_IN, wenn die Blockadresse ADD1 empfangen wird bzw. decodiert ist. Weisen die decodierten Blockadressensignale alle den Wert „1” auf, dann wechselt die Ausgabe des NAND-Gatters G4 auf einen niedrigen Pegel, wodurch der PMOS-Transistor MP1 leitend geschaltet wird. Entsprechend weist der Eingabeknoten ND1 des Zwischenspeichers LAT einen Übergang von einem niedrigen auf einen hohen Pegel auf, wenn das Steuersignal nBLK_IN aktiviert ist. Hierbei wird die Blockauswahlleitung BLK0 nicht durch den Pegelschieber LS getrieben, da die Übertragungsgatter TG1 und TG2 inaktiv sind.
  • Gemäß der obigen Beschreibung wird die Blockadresse im Zwischenspeicher LAT der korrespondierenden Blockdecoderschaltung 136 entsprechend der Steuerung durch die Steuerlogik 140 gespeichert, wenn eine Blockadresse dem ersten Befehl CMD1 als Mehrseitenauswahlbefehl folgt. Dieser Vorgang wird so lange wiederholt, bis alle Blockadressen der auszuwählenden Speicherblöcke jeweils in korrespondierenden Blockdecoderschaltungen gespeichert sind.
  • Wie aus 6 ersichtlich ist, wird zum Speichern einer Blockadresse in der Blockdecoderschaltung 136 nach Eingabe des ersten Befehls CMD1 ein zweiter Befehl CMD2 empfangen. Der zweite Befehl CMD2 ist ein Befehl, welcher darüber informiert, dass Adressen sukzessive empfangen werden. Anstatt des zweiten Befehls CMD2 kann dazu alternativ der erste Befehl CMD1 verwendet werden. Mit einem dritten, über eine Adresseneingabe und einen Datenempfang informierenden Befehl CMD3 werden zu programmierende Daten über die Eingabe-/Ausgabepufferschaltung 180 und die Spaltengatterschaltung 170 in die Seitenpufferschaltung 150 geladen. Eine dem dritten Befehl CMD3 folgende Adresse umfasst eine Blockadresse und eine Spaltenadresse. Die Spaltenadresse wird benutzt, um eine bestimmte Spalte, z. B. SBL0, eines Ersatzfelds auszuwählen. Das bedeutet, dass zu programmierende Daten in einen oder mehrere Seitenpuffer der Seitenpufferschaltung geladen werden, der bzw. die mit dem Ersatzfeld korrespondieren.
  • In diesem Ausführungsbeispiel sind die zu programmierenden Daten eine Blockinformation, welche anzeigt, dass ein Speicherblock gelöscht ist. Entsprechend weisen die im Ersatzfeld von jedem Speicherblock zu programmierenden Daten den gleichen Datenwert auf.
  • Nach dem Speichern von allen Blockadressen der auszuwählenden Speicherblöcke in korrespondierenden Blockdecoderschaltungen aktiviert die Steuerlogik 140 das Steuersignal MLT_EN in Reaktion auf einen vierten Befehl CMD4 als einem Mehrseitenprogrammierbefehl oder Mehrseitenprogrammierbestätigungsbefehl. Mit dem Aktivieren des Steuersignals MLT_EN wird ein im Zwischenspeicher LAT gespeicherter Wert über das Transmissionsgatter TG1 zum Pegelschieber LS übertragen. Der Pegelschieber LS treibt die Blockauswahlleitung BLK0 in Reaktion auf das Eingabesignal mit der Programmierspannung.
  • Es sei beispielsweise angenommen, dass Blockadressen zur Auswahl von drei Speicherblöcken BLK0, BLK1 und BLKn jeweils in korrespondierenden Blockdecoderschaltungen gespeichert sind. Unter dieser Voraussetzung sind die Blockauswahlleitungen BLK0, BLK1, BLKn aktiviert. Mit dem Aktivieren der Blockauswahlleitungen BLK0, BLK1 und BLKn wird die bestimmte Wortleitung WL0 in den entsprechenden Speicherblöcken BLK0, BLK1 und BLKn durch die Seitendecoderschaltung 135 aktiviert. Wie oben ausgeführt, wird die Auswahlleitung S0 basierend auf der von der Adressengeneratorschaltung 133 erzeugten Seitenadresse durch die Seitendecoderschaltung 135 mit der Programmierspannung getrieben, da die Seitendecoderschaltung 135 von allen Speicherblöcken geteilt wird. Entsprechend wird die Programmierspannung der Auswahlleitung S0 gleichzeitig an die Wortleitung WL0 von jedem der ausgewählten Speicherblöcke BLK0, BLK1 und BLKn angelegt. Hierbei wird die Programmierspannung, z. B. die Massespannung, basierend auf einem Datenwert im korrespondierenden Seitenpuffer an eine Ersatzbitleitung SBL0 des Ersatzfeldes angelegt.
  • Danach sind die Speicherzellen, die an den Kreuzungen der Ersatzbitleitung SBL0 und den Wortleitungen WL0, d. h. den aktivierten Wortleitungen der ausgewählten Speicherblöcke, angeordnet sind, mit der Programmierspannung programmiert. Somit werden die Speicherzellen gleichzeitig mit den gleichen Daten programmiert. Ein Signal R/nB wird während eines Programmierintervalls mit einem niedrigen Pegel aktiviert.
  • Nach Beendigung des oben beschriebenen Programmiervorgangs wird ein herkömmlicher Verifizierungsvorgang ausgeführt, um zu bestätigen, ob die ausgewählten bzw. programmierten Speicherzellen normal programmiert sind. Der Verifizierungsvorgang kann identisch zum Lesevorgang ausgeführt werden, außer dass die von der Seitenpufferschaltung ausgelesenen Daten zur Überprüfungsschaltung 190 übertragen werden, so dass hier auf eine wiederholte Beschreibung verzichtet werden kann. Das Überprüfungsergebnis der Überprüfungsschaltung 190 wird in einem nicht dargestellten Statusregister der Steuerlogik 140 gespeichert. Die im Statusregister gespeicherten Informationen können durch einen bekannten Statuslesevorgang ausgegeben werden.
  • Durch die erfindungsgemäße Mehrseitenprogrammierung braucht nur ein Programmiervorgang zum Speichern von Blockinformationen für eine Mehrzahl von zugeordneten Speicherblöcken ausgeführt werden. Entsprechend können erfindungsgemäße Ausführungsformen die Leistungsfähigkeit und/oder die Betriebsgeschwindigkeit des nichtflüchtigen Speicherbauelements verbessern. Erfindungsgemäße Ausführungsbeispiele des nichtflüchtigen Speicherbauelements erlauben, dass Speicherzellen überprogrammiert werden können, so dass Speicherzellen durch nur einen Programmiervorgang programmiert werden können. Für den Fall, dass das Beurteilungsergebnis des Verifizierungsvorgangs einen Programmierfehler anzeigt, kann ein individueller Lesevorgang in Bezug auf die Speicherblöcke BLK0, BLK1 und BLKn durchgeführt werden, um den Speicherblock mit dem Programmierfehler aufzufinden. Wie oben ausgeführt, braucht für den Fall, dass der Überprogrammiervorgang von Speicherzellen erlaubt ist, nur ein Programmiervorgang ausgeführt werden, um gewünschte Schwellwertspannungen zu erhalten.

Claims (28)

  1. Programmierverfahren für ein Speicherbauelement mit einer Mehrzahl von Speicherblöcken, die jeweils ein Hauptfeld (110M) und ein Ersatzfeld (110S) beinhalten, mit folgenden Schritten zur Durchführung eines Mehrseitenprogrammiervorgangs: – Erzeugen einer ersten Adresse, um in Reaktion auf eine Mehrseitenprogrammieranforderung eine Zeile eines jeden Speicherblocks auszuwählen, – Empfangen und Zwischenspeichern von zweiten Adressen zur Auswahl eines jeweiligen Speicherblocks, bis alle zweiten Adressen der auszuwählenden Speicherblöcke empfangen und zwischengespeichert sind, und – Auswählen der Speicherblöcke, welche mit den zwischengespeicherten zweiten Adressen korrespondieren, um gleichzeitig die gleichen Zeilen der entsprechenden ausgewählten Speicherblöcke in Reaktion auf die erste Adresse zu aktivieren und hauptfeldbezogene Informationsdaten gleichzeitig in die Ersatzfelder der ausgewählten Speicherblöcke zu programmieren.
  2. Programmierverfahren nach Anspruch 1, dadurch gekennzeichnet, dass gleiche Daten jeweils in die Speicherzellen programmiert werden, welche an Kreuzungen der aktivierten Zeilen mit einer Spalte des jeweiligen Ersatzfeldes angeordnet sind, wenn korrespondierende Zeilen der ausgewählten Speicherblöcke gleichzeitig aktiviert werden.
  3. Programmierverfahren nach Anspruch 2, dadurch gekennzeichnet, dass die Spalte von den Ersatzfeldern aller Speicherblöcken geteilt wird.
  4. Programmierverfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass einander entsprechende Speicherzellen im Ersatzfeld jedes Speicherblocks programmiert werden, um anzuzeigen, dass das korrespondierende Hauptfeld des Speicherblocks gelöscht ist.
  5. Programmierverfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass die Speicherblöcke NAND-Flashspeicherblöcke umfassen.
  6. Programmierverfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass die aktivierte Zeile in jedem der ausgewählten Speicherblöcke mit einer Programmierspannung versorgt wird und inaktive Zeilen in jedem der ausgewählten Speicherblöcke mit einer Passierspannung versorgt werden.
  7. Programmierverfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass die erste Adresse intern erzeugt wird.
  8. Programmierverfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass die erste Adresse aus einer externen Adresse erzeugt wird.
  9. Programmierverfahren für ein Speicherbauelement (100) mit einer Mehrzahl von Speicherblöcken, gekennzeichnet durch die Schritte: – sequentielles Speichern je einer Löschstatusanzeige für einen jeweiligen Speicherblock in einem Register (131), welches außerhalb der Mehrzahl von Speicherblöcken angeordnet ist, in Reaktion auf ein sequentielles Löschen der korrespondierenden Speicherblöcke, und – gleichzeitiges Speichern der korrespondierenden Löschstatusanzeigen, welche sequentiell im außerhalb der Speicherblöcke angeordneten Register (131) gespeichert wurden, in den korrespondierenden Speicherblöcken.
  10. Programmierverfahren nach Anspruch 9, dadurch gekennzeichnet, dass der gleichzeitige Speichervorgang das gleichzeitige Speichern der korrespondierenden Löschstatusanzeigen, welche sequentiell im außerhalb der Speicherblöcke angeordneten Register (131) gespeichert wurden, in einen korrespondierenden Ersatzspeicherbereich im korrespondierenden Speicherblock umfasst.
  11. Programmierverfahren nach Anspruch 9 oder 10, dadurch gekennzeichnet, dass der gleichzeitige Speichervorgang das gleichzeitige Speichern der korrespondierenden Löschstatusanzeigen, welche sequentiell im außerhalb der Mehrzahl von Speicherblöcken angeordneten Register (131) gespeichert werden, in eine gleiche Adresse einer korrespondierenden Ersatzspeicherfläche im korrespondierenden Speicherblock umfasst.
  12. Programmierverfahren nach einem der Ansprüche 9 bis 11, dadurch gekennzeichnet, dass der sequentielle Speichervorgang folgende Schritte umfasst: – Erzeugen einer ersten Adresse, um eine Zeile in jedem der Speicherblöcke in Reaktion auf einen Mehrseitenprogrammiervorgang auszuwählen, und – Empfangen und Zwischenspeichern einer zweiten Adresse zur Auswahl eines Speicherblocks, bis alle zweiten Adressen der auszuwählenden Speicherblöcke empfangen und zwischengespeichert sind, – wobei das gleichzeitige Speichern ein Auswählen der ausgewählten Speicherblöcke umfasst, welche mit den zwischengespeicherten zweiten Adressen korrespondieren, um gleichzeitig die gleichen Zeilen der entsprechenden ausgewählten Speicherblöcke in Reaktion auf die erste Adresse zu aktivieren.
  13. Programmierverfahren nach einem der Ansprüche 9 bis 11, dadurch gekennzeichnet, dass der sequentielle Speichervorgang folgende Schritte umfasst: – Empfangen einer Blockadresse (BA), um einen Speicherblock auszuwählen, – temporäres Speichern der empfangenen Blockadresse (BA) in einem korrespondierenden Zwischenspeicher (LAT) einer Zeilendecoderschaltung (130), wobei die Zwischenspeicher (LAT) der Zeilendecoderschaltungen (130) jeweils mit den Speicherblöcken korrespondieren, und – Wiederholen des Empfangsvorgangs, bis alle Blockadressen (BA) der auszuwählenden Speicherblöcke empfangen und zwischengespeichert sind, und das gleichzeitige Speichern folgende Schritte umfasst: – Erzeugen einer Seitenadresse (PA), um die gleiche Zeile in jedem der Speicherblöcke auszuwählen, und – gleichzeitiges Auswählen der Speicherblöcke in Reaktion auf die temporär gespeicherten Blockadressen (BA), um die gleichen Zeilen der entsprechenden ausgewählten Speicherblöcke gleichzeitig zu aktivieren, so dass gleiche Daten jeweils in die Speicherzellen programmiert werden, welche an Kreuzungen der aktivierten Zeilen mit einer Spalte angeordnet sind.
  14. Speicherbauelement mit – einer Mehrzahl von Speicherblöcken, welche jeweils ein Hauptfeld (110M) und ein Ersatzfeld (110S) sowie eine Mehrzahl von Wortleitungen (WL0 bis WLm) und Bitleitungen aufweisen, – einer Adressengeneratorschaltung (133), welche konfiguriert ist, eine Seitenadresse als Teil eines Mehrseitenprogrammiervorgangs zu erzeugen, – einer Zeilendecoderschaltung (130), welche konfiguriert ist, um Blockadressen (BA) von auszuwählenden Speicherblöcken während eines Mehrseitenprogrammiervorgangs zu speichern, und – einer Steuerlogik (140), welche dafür eingerichtet ist, die Zeilendecoderschaltung so zu steuern, dass während des Mehrseitenprogrammiervorgangs gleiche Wortleitungen der Speicherblöcke, welche mit den gespeicherten Blockadressen korrespondieren, gleichzeitig aktiviert werden und gleichzeitig hauptfeldbezogene Informationsdaten in die Speicherzellen des Ersatzfeldes programmiert werden, welche an Kreuzungen der aktivierten Wortleitungen mit einer Bitleitung des betreffenden Ersatzfeldes angeordnet sind.
  15. Speicherbauelement nach Anspruch 14, dadurch gekennzeichnet, dass jeweils gleiche Daten in die Speicherzellen programmierbar sind, welche an Kreuzungen der aktivierten Wortleitungen mit der Bitleitung des jeweiligen Ersatzfeldes angeordnet sind, wenn die gleichen Wortleitungen der Speicherblöcke, welche mit den gespeicherten Blockadressen korrespondieren, gleichzeitig aktiviert werden.
  16. Speicherbauelement nach einem der Anspruch 14 oder 15, dadurch gekennzeichnet, dass die Speicherblöcke NAND-Flashspeicherblöcke umfassen.
  17. Speicherbauelement nach einem der Ansprüche 14 bis 16, dadurch gekennzeichnet, dass die Zeilendecoderschaltung (130) einen Zwischenspeicher (LAT) umfasst, welcher mit den Speicherblöcken korrespondiert und Blockadressen (BA) der korrespondierenden Speicherblöcke zwischenspeichert.
  18. Speicherbauelement nach Anspruch 17, dadurch gekennzeichnet, dass die Steuerlogik (140) konfiguriert ist, die Zeilendecoderschaltung (130) so zu steuern, dass die Blockadressen (BA) der auszuwählenden Speicherblöcke während des Mehrseitenprogrammiervorgangs jeweils in korrespondierenden Zwischenspeichern (LAT) gespeichert werden.
  19. Speicherbauelement nach Anspruch 17 oder 18, dadurch gekennzeichnet, dass die Steuerlogik (140) konfiguriert ist, den oder die Zwischenspeicher (LAT) in der Zeilendecoderschaltung (130) zu initialisieren, wenn während des Mehrseitenprogrammiervorgangs ein Mehrseitenprogrammierauswahlbefehl empfangen worden ist.
  20. Speicherbauelement nach einem der Ansprüche 14 bis 19, dadurch gekennzeichnet, dass die Steuerlogik (140) konfiguriert ist, um die Zeilendecoderschaltung (130) so zu steuern, dass ein Speicherblock während eines Einzelseitenprogrammiervorgangs ohne eine Speicherung der Blockadresse (BA) auswählbar ist.
  21. Speicherbauelement nach einem der Ansprüche 14 bis 20, dadurch gekennzeichnet, dass die Seitenadresse während des Mehrseitenprogrammiervorgangs intern erzeugbar ist.
  22. Speicherbauelement nach einem der Ansprüche 14 bis 20, dadurch gekennzeichnet, dass die Seitenadresse (PA) während des Mehrseitenprogrammiervorgangs von einer externen Adresse erzeugbar ist.
  23. Speicherbauelement nach einem der Ansprüche 14 bis 22, dadurch gekennzeichnet, dass die Steuerlogik (140) konfiguriert ist, die Adressengeneratorschaltung (133) und eine Blockdecoderschaltung (136) der Zeilendecoderschaltung während des Mehrseitenprogrammiervorgangs zu steuern.
  24. Speicherbauelement mit einer Mehrzahl von Speicherblöcken, gekennzeichnet durch – ein außerhalb der Speicherblöcke angeordnetes Register (131) und – eine Steuerlogik (140), welche konfiguriert ist, sequentiell in Reaktion auf ein sequentielles Löschen von Speicherblöcken eine korrespondierende Löschstatusanzeige für den jeweiligen Speicherblock in dem Register (131) zu speichern und die Löschstatusanzeigen, welche sequentiell im Register (131) gespeichert sind, gleichzeitig in den korrespondierenden Speicherblöcken zu speichern.
  25. Speicherbauelement nach Anspruch 24, dadurch gekennzeichnet, dass die Steuerlogik (140) dazu konfiguriert ist, die gleichzeitige Speicherung der korrespondierenden Löschstatusanzeigen, welche sequentiell im Register (131) gespeichert sind, in einem korrespondierenden Ersatzspeicherbereich der Speicherblöcke durchzuführen.
  26. Speicherbauelement nach Anspruch 25, dadurch gekennzeichnet, dass die Steuerlogik (140) dazu konfiguriert ist, die gleichzeitige Speicherung der korrespondierenden Löschstatusanzeigen, welche sequentiell im Register (131) gespeichert sind, in einer gleichen Adresse der korrespondierenden Ersatzspeicherbereiche der Speicherblöcke durchzuführen.
  27. Speicherbauelement nach einem der Ansprüche 24 bis 26, dadurch gekennzeichnet, dass die Mehrzahl der Speicherblöcke jeweils eine Mehrzahl von Wortleitungen (WL0 bis WLm) umfasst und das Speicherbauelement eine Zeilendecoderschaltung (130) umfasst, welche konfiguriert ist, Blockadressen (BA) der auszuwählenden Speicherblöcke zu speichern und eine Seitenadresse (PA) zum Auswählen einer Wortleitung in jedem der Speicherblöcke während eines Mehrseitenprogrammiervorgangs zu erzeugen.
  28. Speicherbauelement nach einem der Ansprüche 24 bis 27, dadurch gekennzeichnet, dass die Mehrzahl der Speicherblöcke jeweils eine Mehrzahl von Wortleitungen (WL0 bis WLm) umfasst und das Speicherbauelement eine Adressengeneratorschaltung (133), welche konfiguriert ist, um eine Seitenadresse (PA) während des Mehrseitenprogrammiervorgangs zu erzeugen, sowie eine Blockdecoderschaltung (136) umfasst, welche konfiguriert ist, um Blockadressen (BA) von allen auszuwählenden Speicherblöcken während eines Mehrseitenprogrammiervorgangs zu speichern, so dass gleiche Wortleitungen der Speicherblöcke, welche mit den gespeicherten Blockadressen korrespondieren, gleichzeitig durch die Seitenadresse aktivierbar sind, um jeweils gleiche Daten in die Speicherzellen zu programmieren, welche an Kreuzungen der aktivierten Wortleitungen mit einer Bitleitung angeordnet sind.
DE102005035084.4A 2004-07-20 2005-07-20 Speicherbauelemente und Programmierverfahren Expired - Fee Related DE102005035084B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR2004-56483 2004-07-20
KR1020040056483A KR100632947B1 (ko) 2004-07-20 2004-07-20 불 휘발성 메모리 장치 및 그것의 프로그램 방법

Publications (2)

Publication Number Publication Date
DE102005035084A1 DE102005035084A1 (de) 2006-02-16
DE102005035084B4 true DE102005035084B4 (de) 2015-10-22

Family

ID=35656950

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102005035084.4A Expired - Fee Related DE102005035084B4 (de) 2004-07-20 2005-07-20 Speicherbauelemente und Programmierverfahren

Country Status (4)

Country Link
US (1) US7102927B2 (de)
JP (1) JP2006031916A (de)
KR (1) KR100632947B1 (de)
DE (1) DE102005035084B4 (de)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100645044B1 (ko) * 2004-09-17 2006-11-10 삼성전자주식회사 높은 신뢰도를 갖는 불 휘발성 메모리 장치의 프로그램 방법
KR100721018B1 (ko) * 2005-12-28 2007-05-22 삼성전자주식회사 플래시 메모리 장치 및 그것의 소거 방법
KR100758300B1 (ko) * 2006-07-26 2007-09-12 삼성전자주식회사 플래시 메모리 장치 및 그것의 프로그램 방법
KR100769772B1 (ko) * 2006-09-29 2007-10-23 주식회사 하이닉스반도체 플래시 메모리 장치 및 이를 이용한 소거 방법
US7848141B2 (en) * 2006-10-31 2010-12-07 Hynix Semiconductor Inc. Multi-level cell copyback program method in a non-volatile memory device
KR100794311B1 (ko) 2006-12-27 2008-01-11 삼성전자주식회사 프로그램 에러를 차단할 수 있는 멀티 비트 플래시 메모리장치의 프로그램 방법
KR100874441B1 (ko) * 2007-01-09 2008-12-17 삼성전자주식회사 멀티-비트 데이터를 저장할 수 있는 플래시 메모리 장치,그것을 제어하는 메모리 제어기, 그리고 그것을 포함한메모리 시스템
KR100875294B1 (ko) * 2007-03-16 2008-12-23 삼성전자주식회사 프로그래밍시 블럭단위의 상태 레지스터를 확인하는 플래시메모리와 그 방법
US7646645B2 (en) * 2007-04-13 2010-01-12 Atmel Corporation Method and apparatus for testing the functionality of a page decoder
KR101368694B1 (ko) 2008-01-22 2014-03-03 삼성전자주식회사 메모리 프로그래밍 장치 및 방법
KR101520204B1 (ko) * 2010-12-24 2015-05-13 마이크론 테크놀로지, 인크. 메모리에 대한 연속적인 페이지 판독
TWI570734B (zh) * 2012-06-07 2017-02-11 美光科技公司 記憶體連續頁面讀取
JP2014186761A (ja) 2013-03-21 2014-10-02 Toshiba Corp 半導体記憶装置、コントローラ、及びメモリシステム
US10720215B2 (en) 2014-09-06 2020-07-21 Fu-Chang Hsu Methods and apparatus for writing nonvolatile 3D NAND flash memory using multiple-page programming
WO2016037146A1 (en) * 2014-09-06 2016-03-10 NEO Semiconductor, Inc. Method and apparatus for writing nonvolatile memory using multiple-page programming
JP5804584B1 (ja) 2014-10-30 2015-11-04 ウィンボンド エレクトロニクス コーポレーション Nand型フラッシュメモリのプログラム方法
US10930326B2 (en) * 2018-12-26 2021-02-23 Micron Technology, Inc. Sensing architecture

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6507885B2 (en) * 1996-10-29 2003-01-14 Micron Technology, Inc. Memory system, method and predecoding circuit operable in different modes for selectively accessing multiple blocks of memory cells for simultaneous writing or erasure

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0618535B1 (de) 1989-04-13 1999-08-25 SanDisk Corporation EEPROM-Karte mit Austauch von fehlerhaften Speicherzellen und Zwischenspeicher
KR950000273B1 (ko) 1992-02-21 1995-01-12 삼성전자 주식회사 불휘발성 반도체 메모리장치 및 그 최적화 기입방법
KR960000616B1 (ko) 1993-01-13 1996-01-10 삼성전자주식회사 불휘발성 반도체 메모리 장치
KR970005644B1 (ko) 1994-09-03 1997-04-18 삼성전자 주식회사 불휘발성 반도체 메모리장치의 멀티블럭 소거 및 검증장치 및 그 방법
KR0169412B1 (ko) 1995-10-16 1999-02-01 김광호 불휘발성 반도체 메모리 장치
JPH11224492A (ja) * 1997-11-06 1999-08-17 Toshiba Corp 半導体記憶装置、不揮発性半導体記憶装置及びフラッシュメモリ
JP2000100183A (ja) * 1998-09-17 2000-04-07 Hitachi Ltd 半導体集積回路および不揮発性メモリ
GB9826695D0 (en) * 1998-12-05 1999-01-27 Koninkl Philips Electronics Nv Television receiver
KR100577380B1 (ko) 1999-09-29 2006-05-09 삼성전자주식회사 플래시 메모리와 그 제어 방법
JP4005761B2 (ja) * 2000-06-09 2007-11-14 株式会社東芝 半導体記憶装置
US6587925B2 (en) 2001-07-12 2003-07-01 International Business Machines Corporation Elimination of vertical bus queueing within a hierarchical memory architecture
JP3822081B2 (ja) 2001-09-28 2006-09-13 東京エレクトロンデバイス株式会社 データ書込装置、データ書込制御方法及びプログラム
JP3999959B2 (ja) * 2001-10-29 2007-10-31 Tdk株式会社 メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム及びフラッシュメモリの制御方法
KR100463197B1 (ko) * 2001-12-24 2004-12-23 삼성전자주식회사 멀티-페이지 프로그램 동작, 멀티-페이지 읽기 동작,그리고 멀티-블록 소거 동작을 갖는 낸드 플래시 메모리장치
US7290109B2 (en) * 2002-01-09 2007-10-30 Renesas Technology Corp. Memory system and memory card
JP2004039055A (ja) * 2002-07-01 2004-02-05 Toshiba Corp 不揮発性半導体記憶装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6507885B2 (en) * 1996-10-29 2003-01-14 Micron Technology, Inc. Memory system, method and predecoding circuit operable in different modes for selectively accessing multiple blocks of memory cells for simultaneous writing or erasure

Also Published As

Publication number Publication date
KR100632947B1 (ko) 2006-10-12
US20060018158A1 (en) 2006-01-26
JP2006031916A (ja) 2006-02-02
US7102927B2 (en) 2006-09-05
KR20060007629A (ko) 2006-01-26
DE102005035084A1 (de) 2006-02-16

Similar Documents

Publication Publication Date Title
DE102005035084B4 (de) Speicherbauelemente und Programmierverfahren
DE102005033165B4 (de) Nichtflüchtiges Speicherbauelement, Programmier- und Schreibverfahren
DE102005014815B4 (de) Datenleseverfahren und Halbleiterbauelement
DE4233248C2 (de) Nicht-flüchtige Halbleiterspeichereinrichtung und Verfahren zum blockweisen Löschen von Daten in einer nicht-flüchtigen Halbleiterspeichereinrichtung
DE10225398B4 (de) Halbleiterspeichervorrichtung mit Speicherzellenarrays, die zum Durchführen eines wahlfreien Zugriffs in der Lage ist
DE102005026900B4 (de) Blockgrößenänderungsfähige NAND-Flash-Speichervorrichtung
DE4446998C2 (de) Halbleiterspeichereinrichtung
DE19860871B4 (de) Leistungsunabhängiger Halbleiterspeicherbaustein und Verfahren zur Ansteuerung von dessen Wortleitungen
DE19882933B4 (de) Flash-Speicher-Unterteilung für Lese-während-Schreiboperationen
DE102005063166B4 (de) Nicht-flüchtiges Speicherelement und Verfahren zur Programmierüberprüfung in einem nicht-flüchtigen Speicherelement
DE102005020797A1 (de) Nichtflüchtiges Speicherbauelement und Programmierverfahren
DE69500143T2 (de) Schaltung zum Wählen von Redundanzspeicherbauelementen und diese enthaltende FLASH EEPROM
DE102006016247A1 (de) Speicher, Datenverarbeitungssystem, Steuereinheit und Steuerverfahren
DE102006001492A1 (de) Halbleiterspeicheranordnung und Verfahren zum Betreiben einer Halbleiterspeicheranordnung
DE102006003260A1 (de) Nichtflüchtiges Halbleiterspeicherbauelement mit Zellenkette
DE112010000955T5 (de) NAND-Flasharchitektur mit mehrstufiger Zeilendecodierung
DE102004060447A1 (de) Flashspeicherbauelement und Verfahren zum Löschen einer Flashspeicherzelle desselben
DE102008003055A1 (de) Flash-Speichervorrichtung und Verfahren zum Betreiben derselben
DE10329627B4 (de) Flash-Speicherbaustein
DE102005028631A1 (de) Seitenpuffer und Verifikationsverfahren eines Flash-Speicherbauelements unter Verwendung desselben
DE102007039844A1 (de) Flashspeicherelement und Speichersystem
DE102006058380A1 (de) Flash-Speicherbauelement und Verfahren zur Steuerung einer Löschoperation desselben
DE102005057112A1 (de) Nichtflüchtiges Speicherbauelement und Programmierverfahren
DE102005020796B4 (de) Halbleiterspeicherbauelement und Programmierverfahren
DE102007061406A1 (de) Verfahren zum Betreiben eines nichtflüchtigen Speicherelements, nichtflüchtiges Speicherelement und Speicherkarte

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R018 Grant decision by examination section/examining division
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee