-
Die Erfindung betrifft eine Wortleitungsspannungsgeneratorschaltung und ein zugehöriges nichtflüchtiges Speicherbauelement.
-
Ein Flashspeicherbauelement umfasst typischerweise ein Feld aus Speicherzellen, welche durch Transistoren mit floatendem Gate gebildet werden. Das Speicherzellenfeld umfasst Ketten von Transistoren mit floatenden Gates, welche auch als NAND-Ketten bezeichnet werden. Jeder der Transistoren mit floatendem Gate ist in Reihe zwischen einem Kettenauswahltransistor und einem Masseauswahltransistor eingeschleift. Eine Mehrzahl von Wortleitungen ist so angeordnet, dass sie die NAND-Ketten schneidet. Jede der Wortleitungen ist mit einem Steuergate eines korrespondierenden Transistors mit floatendem Gate der NAND-Kette verbunden. Die Transistoren mit floatendem Gate sind Speicherzellen, die gelöscht werden, um eine Spannung von beispielsweise –3 V aufzuweisen. Um eine Speicherzelle zu programmieren, wird für eine bestimmte Zeit eine hohe Spannung von beispielsweise 20 V an eine Wortleitung der ausgewählten Speicherzelle angelegt. Während die Programmierspannung der ausgewählten Speicherzelle erhöht wird, verändert sich die Programmierspannung einer nicht ausgewählten Speicherzelle nicht.
-
Ein inkrementales Schrittimpulsprogrammierungsverfahren (ISPP-Verfahren) wird verwendet, um im Wesentlichen Programmierfehler zu vermeiden, bei denen beispielsweise die nicht ausgewählten Speicherzellen während des Programmiervorgangs programmiert werden. Beim ISPP-Verfahren wird während einer Programmierschleife eine an eine ausgewählte Wortleitung anzulegende Programmierspannung Vpgm von einer niedrigen Spannung stufenweise auf eine hohe Spannung erhöht. Die Programmierspannung Vpgm nimmt die Form eines Impulses an, welcher eine vorgegebene Breite aufweist und um eine inkrementale Spannungsdifferenz ΔVpgm im Vergleich zum vorherigen Impuls erhöht wird. Die vorgegebene Breite und die Spannungsdifferenz ΔVpgm verhindern im Wesentlichen Programmierfehler, welche durch eine plötzliche Erhöhung der Programmierspannung auftreten können. Die Verteilung der Programmierspannung, d. h. die Differenz zwischen der Höhe einer Startprogrammierspannung und einer Zielprogrammierspannung, der zu programmierenden Speicherzelle wird zwecks Steuerung derselben festgelegt. Schaltungen zum Erzeugen einer Programmierspannung gemäß dem ISPP-Verfahren werden im
US-Patent 5,642,309 offenbart.
-
1 zeigt grafisch einen Verlauf einer Veränderung einer Wortleitungsspannung, wenn ein Programmiervorgang unter Verwendung eines ISPP-Verfahrens ausgeführt wird. In der vorliegenden Beschreibung werden die Begriffe „Wortleitungsspannung” und „Programmierspannung” synonym verwendet.
-
Unter Bezugnahme auf 1 wird eine Programmierspannung einer ersten Programmierschleife als Startprogrammierspannung Vpgm1 bezeichnet und eine Programmierspannung einer m-ten Programmierschleife wird als Zielprogrammierspannung VpgmM bezeichnet. Mit dem Wiederholen von Programmierschleifen eines Programmierzyklus steigt die Programmierspannung Vpgm stufenweise von der Startprogrammierspannung Vpgm1 um ein vorbestimmtes Inkrement ΔVpgm an. Wenn eine Programmierspannung einer korrespondierenden zu programmierenden Zelle eine Grenze einer Programmierspannung einer Zielzelle erreicht, wird bestimmt, dass die korrespondierende Zelle programmiert ist. Wenn eine nicht programmierte Zelle existiert, wird die Programmschleife erhöht. Wenn bestimmt wird, dass alle Zellen programmiert sind, wird die Programmierschleife unterbrochen. Wenn nicht alle Zellen innerhalb eine vorgegebenen Anzahl von Programmiervorgängen programmiert sind, wird bestimmt, dass der korrespondierende Block bei der Programmierung durchgefallen ist.
-
Vom Benutzer geforderte Eigenschaften eines Speicherbauelements sind durch die fortschreitende Miniaturisierung und Integration vielfältiger geworden. Einige Benutzer möchten Speicherbauelemente, welche schnell programmiert werden können, während andere Benutzer Wert auf die Verteilung der Programmierspannung der programmierten Speicherzelle legen. Mit dem Fortschreiten des Programmiervorgangs nimmt die Programmierspannung der zu programmierenden Zelle um das Inkrement ΔVpgm zu, welches in jeder Programmierschleife gesetzt wird. Entsprechend muss das Inkrement ΔVpgm der Programmierspannung reduziert werden, um die Verteilung der Programmierspannung der programmierten Speicherzelle zu erhöhen. Zum Ausführen eines schnellen Programmiervorgangs sollte das Inkrement ΔVpgm der Programmierspannung vergrößert werden. Folglich sollte das Inkrement ΔVpgm der Programmierspannung gemäß den Benutzeranforderungen verschieden gesetzt werden.
-
Ein Verfahren zum Verändern des Inkrements ΔVpgm der Programmierspannung Vpgm arbeitet mit einer Veränderung eines Programmierschrittcodes. Bei diesem Verfahren wird der Programmierschrittcode verändert, um einen Widerstandswert eines Spannungsteilers um zwei Schritte (2ΔR) anstatt um einen Schritt (ΔR) zu erhöhen, wodurch das Inkrement ΔVpgm der Programmierspannung verdoppelt wird. Es ist eine separate Schaltung erforderlich, um den Programmierschrittcode zu verändert, woraus eine vergrößerte Schaltungsfläche und eine kompliziertere Struktur resultieren. Zudem kann das Inkrement der Programmierspannung nur um ein ganzzahliges Vielfaches eines Vorgabewertes erhöht werden. Daher kann es schwierig sein, die Benutzeranforderungen durch das oben genannte Verfahren zu befriedigen.
-
Die 2A und 2B zeigen Fälle, in welchen das Inkrement ΔVpgm der Wortleitungsspannung ohne eine Änderung des Programmierschrittcodes verändert wird. 2A zeigt grafisch eine Veränderung der Wortleitungsspannung, wenn ein Inkrement der Wortleitungsspannung auf einen Wert gesetzt ist, welcher kleiner als das Inkrement ΔVpgm ist. 2B zeigt grafisch eine Veränderung der Wortleitungsspannung, wenn ein Inkrement der Wortleitungsspannung auf einen Wert gesetzt ist, welcher größer als das Inkrement ΔVpgm ist. Wie aus den 2A und 2B ersichtlich ist, werden die Startprogrammierspannung und die Zielprogrammierspannung entsprechend geändert, wenn das Inkrement ΔVpgm der Wortleitungsspannung geändert wird.
-
Unter Bezugnahme auf 2A repräsentiert eine gestrichelte Linie die Wortleitungsspannung für das Inkrement ΔVpgm. Eine durchgezogene Line repräsentiert die Wortleitungsspannung, wenn das Inkrement der Wortleitungsspannung vom Wert ΔVpgm auf den Wert ΔVpgm/K reduziert wird, wobei K eine reelle Zahl größer als 1 ist. Wie aus 2A ersichtlich ist, nimmt, wenn das Inkrement der Wortleitungsspannung reduziert wird, die Verteilungsbreite der Speicherzellen ab und die Programmierschleifenbreite wird für die Zielprogrammierspannung der Zelle erhöht, wodurch die Programmiergeschwindigkeit reduziert wird. Wenn das Inkrement ΔVpgm der Programmierspannung um den Faktor 1/K reduziert ist, werden die Startprogrammierspannung Vpgm1 und die Zielprogrammierspannung VpgmM entsprechend reduziert. Unter Bezugnahme auf 2A wird die Startprogrammierspannung vom Wert Vpgm1 auf den Wert Vpgm1' reduziert und die Zielprogrammierspannung wird vom Wert VpgmM auf den Wert VpgmM' reduziert. Die Programmierschleife ist erhöht, um die Zielprogrammierspannung der Zelle zur Programmierung der Zelle zu erhalten. Das reduzierte Programmierspannungsinkrement ΔVpgm/K, die reduzierte Startprogrammierspannung Vpgm1' und die reduzierte Zielprogrammierspannung VpgmM' bewirken, dass die Programmierschleifen zunehmen und die Programmierspannung der programmierten Speicherzelle über einen schmaleren Bereich als die Zielprogrammierspannung verteilt ist. Dies kann zu einem Unterprogrammierungsproblem führen, bei dem eine Zelle innerhalb der Programmierschleife nicht programmiert ist.
-
Unter Bezugnahme auf 2B repräsentiert eine gestrichelte Linie die Wortleitungsspannung, wenn das Inkrement ΔVpgm der Wortleitungsspannung unverändert bleibt. Eine durchgezogene Line repräsentiert die Wortleitungsspannung, wenn das Inkrement der Wortleitungsspannung vom Wert ΔVpgm auf den Wert K·ΔVpgm erhöht wird, wobei K eine reelle Zahl größer als 1 ist. Wie aus 2B ersichtlich ist, wird zur Erhöhung der Programmiergeschwindigkeit im ISPP-Verfahren das Inkrement ΔVpgm der Programmierspannung auf den größeren Wert K·ΔVpgm gesetzt. Wenn das Inkrement ΔVpgm der Programmierspannung erhöht ist, wird die Programmierschleifenbreite zum Erhalten der Zielprogrammierspannung reduziert, wodurch die Programmiergeschwindigkeit erhöht wird, während ein Bereich der Programmierspannung der programmierten Zelle ausgeweitet wird. Die Startprogrammierspannung Vpgm1 und die Zielprogrammierspannung VpgmM werden ebenfalls erhöht, wenn das Inkrement ΔVpgm der Programmierspannung um den Faktor K erhöht wird. Unter Bezugnahme auf 2B wird die Startprogrammierspannung vom Wert Vpgm1 auf den Wert Vpgm1'' erhöht und die Zielprogrammierspannung wird vom Wert VpgmM auf den Wert VpgmM'' erhöht. Die erhöhte Startprogrammierspannung Vpgm1'' und die erhöhte Zielprogrammierspannung VpgmM'' können ein Überprogrammierungsproblem bewirken, in welchem die Programmierspannung der programmierten Speicherzelle über einen größeren Bereich als die Zielprogrammierspannung verteilt ist.
-
Die Offenlegungsschrift
DE 10 2004 013 042 A1 offenbart einen als Wortleitungsspannungsgeneratorschaltung zum Erzeugen einer inkrementalen Schrittimpulsspannung für ein Speicherbauelement einsetzbaren Spannungsregler mit einem Spannungsteiler, der einen an einen Programmierspannungsanschluss angekoppelten ersten Widerstand, einen an einen Masseanschluss angekoppelten zweiten Widerstand und eine Mehrzahl von seriell zwischen den ersten und den zweiten Widerstand eingeschleiften dritten Widerständen umfasst, wobei jedem dritten Widerstand je ein ansteuerbares Schaltelement parallel geschaltet ist. Die Schaltelemente werden durch Programmierschrittcodesteuersignale einer zugeordneten Steuerschaltung gesteuert.
-
Es ist Aufgabe der Erfindung, eine Wortleitungsspannungsgeneratorschaltung und ein zugehöriges nichtflüchtiges Speicherbauelement anzugeben, welche in der Lage sind, ein Inkrement einer Wortleitungsspannung in verbesserter Weise festzulegen und dadurch die oben beschriebenen Unzulänglichkeiten des Standes der Technik wenigstens teilweise zu vermeiden.
-
Die Erfindung löst diese Aufgabe durch eine Wortleitungsspannungsgeneratorschaltung mit den Merkmalen des Patentanspruchs 1 und durch ein nichtflüchtiges Speicherbauelement mit den Merkmalen des Patentanspruchs 12.
-
Vorteilhafte Weiterbildungen der Erfindung sind in den abhängigen Ansprüchen angegeben.
-
Eine Ausgestaltung der Erfindung betrifft eine Wortleitungsspannungsgeneratorschaltung, die eine zunehmende Schrittimpulsspannung erzeugt und eine mit einer Programmierspannung verbundene erste Schaltungseinheit, eine zwischen der ersten Schaltungseinheit und einer geteilten Spannung eingeschleifte zweite Schaltungseinheit, welche von einem Programmierschrittcode steuerbar ist, und eine zwischen der geteilten Spannung und einer Massespannung eingeschleifte dritte Schaltungseinheit umfasst. Ein Inkrement der Programmierspannung kann durch Setzen eines Widerstandswerts der dritten Schaltungseinheit auf einen Wert NΔV gesetzt werden, ohne den Programmierschrittcode zu verändern, wobei N eine reelle Zahl größer als 0 ist.
-
In Ausgestaltung der Erfindung kann die dritte Schaltungseinheit eine Mehrzahl von in Reihe geschalteten Widerständen und eine Mehrzahl von Schaltern umfassen, welche jeweils parallel zu den Widerständen geschaltet sind, wobei der Widerstandswert der dritten Schaltungseinheit durch Steuern der Schalter veränderbar ist. Alternativ umfasst die dritte Schaltungseinheit eine Mehrzahl von parallel geschalteten Widerständen und eine Mehrzahl von Schaltern, welche jeweils in Reihe zu den Widerständen geschaltet sind, wobei der Widerstandswert der dritten Schaltungseinheit durch Steuern der Schalter veränderbar ist. Die Schalter können als Schmelzsicherungen ausgeführt werden, welche vor dem Start des Programmierzyklus, beispielsweise bei der Herstellung des nichtflüchtigen Speicherbauelements, unversehrt bleiben oder durchtrennt werden. Alternativ können die Schalter als MOS-Transistoren ausgeführt werden, welche gesteuert von einer Steuerschaltung an-/ausgeschaltet werden, bevor der Programmierzyklus gestartet wird.
-
Das Inkrement der Wortleitungsspannung gemäß einer Programmierschleife des Programmierzyklus wird vom Verhältnis zwischen der Widerstandsänderungsrate in der zweiten Schaltungseinheit zwischen den Programmierschritten und vom Widerstandswert der dritten Schaltungseinheit bestimmt. Um das Inkrement der Wortleitungsspannung zu verändern, wird der Widerstandswert der dritten Schaltungseinheit verändert. Das Verfahren ermöglicht, dass das Inkrement der Wortleitungsspannung durch Auswahl von Widerstandswerten der dritten Schaltungseinheit gesetzt werden kann. Entsprechend kann das Inkrement der Wortleitungsspannung durch Auswahl des Widerstandswerts der dritten Schaltungseinheit mittels Steuern der Schalter auf einen gewünschten Wert gesetzt werden, ohne den Programmierschrittcode zu verändern.
-
In weiterer Ausgestaltung der Erfindung können die erste Schaltungseinheit und die dritte Schaltungseinheit jeweils eine Mehrzahl von in Reihe geschalteten Widerständen und eine Mehrzahl von Schaltern umfassen, welche jeweils parallel zu den Widerständen geschaltet sind, wobei die Widerstandswerte der ersten und der dritten Schaltungseinheit durch Steuern der Schalter veränderbar sind. Alternativ umfassen die erste und die dritte Schaltungseinheit eine Mehrzahl von parallel geschalteten Widerständen und eine Mehrzahl von Schaltern, welche jeweils in Reihe zu den Widerständen geschaltet sind, wobei die Widerstandswerte der ersten und dritten Schaltungseinheit durch Steuern der Schalter veränderbar sind. Die Schalter können als Schmelzsicherungen ausgeführt werden, welche vor dem Start des Programmierzyklus, beispielsweise bei der Herstellung des nichtflüchtigen Speicherbauelements, unversehrt bleiben oder durchtrennt werden. Alternativ können die Schalter als MOS-Transistoren ausgeführt werden, welche gesteuert von einer Steuerschaltung an-/ausgeschaltet werden, bevor der Programmierzyklus gestartet wird.
-
Die Startprogrammierspannung kann durch ein Verhältnis des Widerstandswertes der dritten Schaltungseinheit zum Widerstandswert der ersten Schaltungseinheit bestimmt werden. Der Widerstandswert der dritten Schaltungseinheit kann durch die Bestimmung des Inkrements der Wortleitungsspannung bestimmt werden und die Startprogrammierspannung kann durch die Auswahl des Widerstandswertes der ersten Schaltungseinheit eingestellt werden.
-
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 ein Diagramm eines Verlaufs einer Veränderung einer Wortleitungsspannung, wenn ein herkömmliches ISPP-Verfahren ausgeführt wird,
-
2A ein Diagramm eines Verlaufs einer Veränderung der Wortleitungsspannung, wenn ein Inkrement der Wortleitungsspannung beim ISPP-Verfahren von 1 auf einen niedrigen Wert gesetzt ist,
-
2B ein Diagramm eines Verlaufs einer Veränderung der Wortleitungsspannung, wenn ein Inkrement der Wortleitungsspannung beim ISPP-Verfahren von 1 auf einen höheren Wert gesetzt ist,
-
3 ein schematisches Blockdiagramm eines nichtflüchtigen Speicherbauelements gemäß der Erfindung,
-
4 ein schematisches Blockdiagramm einer für das Speicherbauelement von 3 geeigneten Wortleitungsspannungsgeneratorschaltung,
-
5 ein Schaltbild eines für die Schaltung von 4 geeigneten Spannungsteilers gemäß der Erfindung,
-
6 ein Schaltbild eines anderen, für die Schaltung von 4 geeigneten Spannungsteilers gemäß der Erfindung,
-
7 ein Schaltbild noch eines anderen, für die Schaltung von 4 geeigneten Spannungsteilers gemäß der Erfindung,
-
8A und 8B Diagramme von Verläufen von Veränderungen einer Wortleitungsspannung, wenn ein Inkrement der Wortleitungsspannung gemäß der Erfindung bei gleich bleibender Startprogrammierspannung verändert wird, und
-
9A und 9B Diagramme von Verläufen von Veränderungen einer Wortleitungsspannung, wenn ein Inkrement der Wortleitungsspannung gemäß der Erfindung bei gleich bleibender Zielprogrammierspannung verändert wird.
-
Die Erfindung wird nachfolgend unter Bezugnahme auf die zugehörigen Zeichnungen, welche Ausführungsbeispiele der Erfindung zeigen, detaillierter beschrieben. In den Zeichnungen bezeichnen gleiche Bezugszeichen Elemente bzw. Komponenten, welche gleiche bzw. analoge Funktionen ausführen.
-
3 zeigt ein nichtflüchtiges Speicherbauelement gemäß einem Ausführungsbeispiel der Erfindung. Unter Bezugnahme auf 3 ist das nichtflüchtige Speicherbauelement 100 ein Flashspeicherbauelement. Das nichtflüchtige Speicherbauelement 100 umfasst ein Speicherzellenfeld 110 mit Speicherzellen, welch in Form einer Matrix in Zeilen und Spalten angeordnet sind, bzw. entlang Wortleitungen und Bitleitungen. Die Speicherzellen speichern jeweils 1 Datenbit oder n Datenbits, wobei n eine ganze Zahl größer oder gleich 2 ist. Eine Zeilenauswahlschaltung 120 wählt in Reaktion auf eine Zeilenadresse eine Zeile aus und treibt die ausgewählte Zeile mit einer Wortleitungsspannung von einer Wortleitungsspannungsgeneratorschaltung 190. Eine Abtastverstärker- und Zwischenspeicherschaltung 130 wird von einer Steuerlogikschaltung 160 gesteuert und liest während eines Lese-/Verifizierungsvorgangs Daten aus dem Speicherzellenfeld 110. Die während des Lesevorgangs gelesenen Daten werden vom Speicherbauelement 100 über eine Dateneingabe-/Datenausgabeschaltung 140 ausgegeben. Die während des Verifizierungsvorgangs gelesenen Daten werden an eine Bestanden/Nichtbestanden-Überprüfungsschaltung 150 ausgegeben. Die Abtastverstärker- und Zwischenspeicherschaltung 130 empfängt während eines Programmiervorgangs in das Speicherzellenfeld 110 zu schreibende Daten von der Dateneingabe-/Datenausgabeschaltung 140 und treibt die Bitleitungen entsprechend den empfangenen Daten mit einer Programmierspannung, z. B. mit einer Massespannung, oder einer Programmiersperrspannung, z. B. einer Versorgungsspannung.
-
Die Überprüfungsschaltung 150 bestimmt während eines Programmier-/Löschverifizierungsvorgangs, ob die von der Abtastverstärker- und Zwischenspeicherschaltung 130 ausgegebenen Daten die gleichen Daten sind oder nicht und gibt in Reaktion auf das Bestimmungsergebnis ein Bestanden/Nichtbestanden-Signal PF an die Steuerlogikschaltung 160 aus.
-
In Reaktion auf das Bestanden/Nichtbestanden-Signal PF von der Überprüfungsschaltung 150 gibt die Steuerlogikschaltung 160 die Wortleitungsspannungsgeneratorschaltung 190 frei. Wenn das Bestanden/Nichtbestanden-Signal PF beispielsweise anzeigt, dass die Daten von der Abtastverstärker- und Zwischenspeicherschaltung 130 keinen bestandenen Datenwert haben, aktiviert die Steuerlogikschaltung 160 zur Freigabe der Wortleitungsspannungsgeneratorschaltung 190 ein Signal PGM_EN. Die Steuerlogikschaltung 160 steuert die Abtastverstärker- und Zwischenspeicherschaltung 130 während jeder Programmierschleife eines Programmierzyklus. In Reaktion auf das Bestanden/Nichtbestanden-Signal PF von der Überprüfungsschaltung 150 aktiviert die Steuerlogikschaltung 160 ein Aufwärtszählsignal CNT_UP. Wenn das Bestanden/Nichtbestanden-Signal PF beispielsweise anzeigt, dass die Daten von der Abtastverstärker- und Zwischenspeicherschaltung 130 keinen bestandenen Datenwert haben, aktiviert die Steuerlogikschaltung 160 das Aufwärtszählsignal CNT_UP. Wenn der Programmiervorgang einer aktuellen Programmierschleife ausgeführt ist und das Bestanden/Nichtbestanden-Signal PF einen bestandenen Datenwert anzeigt, deaktiviert die Steuerlogikschaltung 160 das Aufwärtszählsignal CNT_UP, um den Programmierzyklus abzuschließen.
-
Ein Schleifenzähler 170 zählt in Reaktion auf die Aktivierung des Aufwärtszählsignals CNT_UP Iterationen der Programmierschleife. Ein Decoder 180 decodiert eine Ausgabe des Schleifenzählers 170, um Programmierschrittcodes STEPi mit i = 0 bis m zu erzeugen. Wenn der Ausgabewert des Schleifenzählers 170 beispielsweise zunimmt, werden die Programmierschrittcodes STEPi sequentiell geändert. Die Programmierschleifen des Programmierzyklus nehmen gemäß den sequentiell veränderten Programmierschrittcodes STEPi zu. Entsprechend nimmt die Wortleitungsspannung schrittweise zu.
-
Die Steuerlogikschaltung 160, der Schleifenzähler 170, der Decoder 180 und die Wortleitungsspannungsgeneratorschaltung 190 bilden eine Steuerschaltung 200. Die Steuerschaltung 200 erzeugt das Signal PGM_EN zum Freigeben der Wortleitungsspannungsgeneratorschaltung 190 und erzeugt die Programmierschrittcodes STEPi, um die Wortleitungsspannung zu erhöhen. Wenn ein Schaltersatz eines Spannungsteilers 220, siehe 4, in der Wortleitungsspannungsgeneratorschaltung 190 als MOS-Transistor ausgeführt ist, dient die Steuerlogikschaltung dazu, den MOS-Transistor an-/auszuschalten, bevor die Wortleitungsspannungsgeneratorschaltung 190 freigegeben wird. Der Schaltersatz wird nachfolgend beschrieben.
-
Die Wortleitungsspannungsgeneratorschaltung 190 wird durch das Signal PGM_EN von der Steuerlogikschaltung 160 freigegeben und erzeugt die Wortleitungsspannung Vpgm in Reaktion auf die Programmierschrittcodes STEPi. Mit der sequentiellen Änderung der Programmierschrittcodes STEPi während eines Programmiervorgangs erhöht die Wortleitungsspannungsgeneratorschaltung 190 die Wortleitungsspannung Vpgm. Ein Inkrement ΔVpgm der Wortleitungsspannung kann gemäß den Benutzeranforderungen auf einen beliebigen Wert gesetzt werden. Wenn beispielsweise eine reduzierte Programmierspannungsverteilung der Speicherzelle erhalten werden soll, d. h. eine reduzierte Differenz der Höhe einer Startprogrammierspannung und einer Zielprogrammierspannung, setzt ein Operator das Inkrement ΔVpgm der Wortleitungsspannung auf einen reduzierten Wert. Wenn die Speicherzelle schneller programmiert werden soll, setzt ein Operator das Inkrement ΔVpgm auf einen erhöhten Wert. Entsprechend einem Ausführungsbeispiel der Erfindung bleibt die Startprogrammierspannung Vpgm1 unverändert, wenn das Inkrement ΔVpgm der Wortleitungsspannung auf einen anderen Wert gesetzt wird.
-
4 zeigt eine vorteilhafte Realisierung für die Wortleitungsspannungsgeneratorschaltung 190 aus 3. Unter Bezugnahme auf 4 umfasst die Wortleitungsspannungsgeneratorschaltung 190 eine Ladungspumpe 210, einen Spannungsteiler 220, einen Referenzspannungsgenerator 230, einen Komparator 240, einen Oszillator 250 und einen Taktsignaltreiber 260. Die Wortleitungsspannungsgeneratorschaltung 190 wird durch das Signal PGM_EN freigegeben. Der Referenzspannungsgenerator 230, der Komparator 240, der Oszillator 250 und der Taktsignaltreiber 260 wirken als Ladungspumpensteuerschaltung 270, welche eine geteilte Spannung Vref' vom Spannungsteiler 220 empfängt, um die Ladungspumpe 210 zu betreiben.
-
Die Ladungspumpe 210 erzeugt in Reaktion auf das Taktsignal CLK die Wortleitungsspannung Vpgm. In Reaktion auf die Programmierschrittcodes STEPi teilt der Spannungsteiler 220 die Wortleitungsspannung Vpgm, um die geteilte Spannung Vref' zu erzeugen und auszugeben. Die als Spannung Vref' bezeichnete geteilte Spannung weist ungefähr den gleichen Wert wie die Referenzspannung des Referenzspannungsgenerators 230 während des Programmierzyklus auf.
-
Die Wortleitungsspannung Vpgm des Spannungsteilers 220 wird gemäß der sequentiellen Änderung der Programmierschrittcodes STEPi um das Inkrement ΔVpgm erhöht. Das Inkrement ΔVpgm der Wortleitungsspannung wird gemäß den Benutzeranforderungen auf einen geeigneten Wert gesetzt. Wenn das Inkrement ΔVpgm auf einen anderen Wert gesetzt wird, wird die Startprogrammierspannung Vpgm1 auf einem festen Wert gehalten. Wenn das Inkrement ΔVpgm verändert wird, wird eine Zielprogrammierspannung VpgmM auf einem festen Wert gehalten.
-
Der Komparator 240 vergleicht die geteilte Spannung Vref' des Spannungsteilers 220 mit der Referenzspannung Vref des Referenzspannungsgenerators 230 und erzeugt gemäß dem Vergleichsergebnis das Taktfreigabesignal CLK_EN. Wenn sich die geteilte Spannung Vref' beispielsweise von der Referenzspannung Vref unterscheidet, aktiviert der Komparator 240 das Taktfreigabesignal CLK_EN. Wenn die geteilte Spannung Vref' im Wesentlichen mit der Referenzspannung Vref identisch ist, deaktiviert der Komparator 240 das Taktfreigabesignal CLK_EN. Der Taktsignaltreiber 260 gibt in Reaktion auf das Taktfreigabesignal CLK_EN ein Oszillationssignal OSC vom Oszillator 250 als Taktsignal CLK aus. Der Taktsignaltreiber 260 umfasst ein nicht dargestelltes NAND-Gatter und einen nicht dargestellten Inverter. Wenn das Taktfreigabesignal CLK_EN auf einen hohen Pegel aktiviert ist, wird das Oszillationssignal OSC als Taktsignal CLK ausgegeben. Wenn das Taktfreigabesignal CLK_EN auf einen niedrigen Pegel deaktiviert ist, wird das Oszillationssignal OSC blockiert, so dass kein Taktsignal CLK ausgegeben wird. Wenn sich die geteilte Spannung Vref' vom Pegel der Referenzspannung Vref durch die Änderung des Programmierschrittcodes unterscheidet, wird das Taktsignal CLK erzeugt, um den Betrieb der Ladungspumpe 210 zu starten. Wenn die Wortleitungsspannung Vpgm einen gewünschten Pegel erreicht und daher das Taktsignal nicht erzeugt wird, arbeitet die Ladungspumpe 210 nicht und die Wortleitungsspannung wird auf einem konstanten Pegel gehalten. Durch eine solche Steuerung kann die Wortleitungsspannung Vpgm mit einem gewünschten Pegel erzeugt werden.
-
Die 5 bis 7 zeigen vorteilhafte Realsisierungen des Spannungsteilers 220 gemäß der Erfindung. Das Inkrement ΔVpgm der Wortleitungsspannung kann ohne Änderung des Programmierschrittcodes auf verschiedene Werte gesetzt werden. Während das Inkrement ΔVpgm der Wortleitungsspannung auf einen anderen Wert gesetzt wird, werden die Startprogrammierspannung Vpgm1 und die Zielprogrammierspannung VpgmM auf festen Werten gehalten.
-
5 zeigt im Schaltbild eine erste Realisierung des Spannungsteilers 220 gemäß einem Ausführungsbeispiel der Erfindung. In 5 wird für den Fall, dass das Inkrement ΔVpgm der Wortleitungsspannung auf einen anderen Wert gesetzt wird, die Startprogrammierspannung Vpgm1 gehalten.
-
Unter Bezugnahme auf 5 umfasst der Spannungsteiler 220 eine erste Schaltungseinheit 220a, eine zweite Schaltungseinheit 220b, eine dritte Schaltungseinheit 220c und eine Entladeeinheit 220d. Die Entladeeinheit 220d ist mit einem Knoten ND1 verbunden, empfängt die Wortleitungsspannung Vpgm und entlädt eine hohe Spannung am Knoten ND1, welche die Wortleitungsspannung ist, als eine Versorgungsspannung in Reaktion auf das Freigabesignal PGM_EN. Die Entladeeinheit 220d umfasst einen PMOS-Transistor 221 und NMOS-Transistoren 222 und 223 vom Verarmungstyp. NMOS-Transistoren vom Verarmungstyp sind allgemein als Transistoren bekannt, welche in der Lage sind, eine hohe Spannung auszuhalten.
-
Die erste Schaltungseinheit 220a ist zwischen dem Knoten ND1 und einem Knoten ND2 angeordnet. Der Knoten ND1 empfängt die Programmierspannung und der Knoten ND2 ist mit der ersten Schaltungseinheit 220a und mit der zweiten Schaltungseinheit 220b verbunden. Die erste Schaltungseinheit 220a umfasst drei in Reihe geschaltete Widerstände 311, 312 und 313 und zwei Schmelzsicherungen 351 und 352, welche zum Widerstand 311 bzw. zum Widerstand 312 parallel geschaltet sind. Die zwei Sicherungen 351 und 352 werden vor der Freigabe der Wortleitungsspannungsgeneratorschaltung 190 durchgängig gehalten oder durchtrennt, z. B. während der Herstellung des Speicherbauelements. Ein Widerstandswert R1 der ersten Schaltungseinheit 220a wird gemäß dem leitenden Zustand oder der Durchtrennung der Schmelzsicherungen 351 und 352 bestimmt. Als Konsequenz kann der Widerstandswert R1 der ersten Schaltungseinheit 220a eingestellt werden, um die Startprogrammierspannung Vpgm1 einzustellen.
-
Die zweite Schaltungseinheit 220b umfasst drei Widerstände 321, 322 und 323 mit verschiedenen Widerstandswerten und drei Schalter 227, 228 und 229, welche parallel zu den Widerständen 321, 322 bzw. 323 geschaltet sind. Wenn der Widerstand 321 beispielsweise einen Widerstandswert von ΔR aufweist, weist der Widerstand 322 einen Widerstandswert von 2ΔR und der Widerstand 323 einen Widerstandswert von 4ΔR auf. Die Schalter 227, 228 und 229 werden durch die Programmierschrittcodes STEPi gesteuert. Der Programmierschrittcode STEPi ist ein Steuercode mit drei Bit. Der Programmierschrittcode für die erste Programmierschleife ist beispielsweise „000” und der nächste Programmierschrittcode für die nächste Programmierschleife ist „001”. Wenn der Programmierschrittcode den Wert „000” aufweist, sind die Schalter 227, 228 und 229 alle leitend geschaltet, um einen Strompfad zwischen den Widerständen 321, 322 und 323 zu bilden. In diesem Fall wird die niedrigste Wortleitungsspannung, nämlich die Startprogrammierspannung Vpgm1, ausgegeben. Wenn der Programmierschrittcode den Wert „001” aufweist, ist der Schalter 227 sperrend geschaltet und die Schalter 228 und 229 sind leitend geschaltet. In diesem Fall wird die niedrigste Wortleitungsspannung im Vergleich zum vorherigen Spannungspegel um das Inkrement ΔVpgm erhöht. Wenn der Programmierschrittcode den Wert „111” aufweist, sind die Schalter 227, 228 und 229 alle sperrend geschaltet und der Strom fließt durch die Widerstände 321, 322 und 323. In diesem Fall wird die höchste Wortleitungsspannung ausgegeben. Entsprechend wird die Wortleitungsspannung erhöht, wenn sich der Programmierschrittcode erhöht. Obwohl hier ein Active-Low-Signal verwendet wird, ist es dem Fachmann bekannt, dass analog auch andere Signale verwendet werden können, um den gleichen Effekt zu erzielen.
-
Der Widerstandswert R1 der ersten Schaltungseinheit 220a wird vor der Freigabe der Wortleitungsspannungsgeneratorschaltung 190 bestimmt und ein Widerstandswert R2 der zweiten Schaltungseinheit 220b wird in Reaktion auf den Programmierschrittcode STEPi während des Programmierzyklus verändert. Die Summe des Widerstandswerts R1 und des Widerstandswerts R2 wird als R12 bezeichnet.
-
Die dritte Schaltungseinheit 220c ist zur Ausgabe der geteilten Spannung Vref' zwischen der Massespannung und einem Knoten ND3 angeordnet. Die dritte Schaltungseinheit 220c umfasst drei in Reihe geschaltete Widerstände 331, 332 und 333 und zwei Schmelzsicherungen 361 und 362, welche zum Widerstand 331 bzw. zum Widerstand 332 parallel geschaltet sind. Ein MOS-Transistor 237 ist zwischen der dritten Schaltungseinheit 220c und der Massespannung eingeschleift. Der MOS-Transistor 237 ist während der Aktivierung des Programmierfreigabesignal PGM_EN leitend geschaltet. Der MOS-Transistor 237 ist während der Deaktivierung des Programmierfreigabesignal PGM_EN sperrend geschaltet, wodurch ein Leckstrom im Wesentlichen verhindert wird. Wie die beiden Sicherungen 351 und 352 werden die beiden Sicherungen 361 und 362 vor der Freigabe der Wortleitungsspannungsgeneratorschaltung 190 von einem Operator leitend gehalten oder durchtrennt, z. B. während der Herstellung des Speicherbauelements. Entsprechend wird ein Widerstandswert R3 der dritten Schaltungseinheit 220c gemäß der Nichtdurchtrennung oder der Durchtrennung der Sicherungen 361 und 362 bestimmt. Das Inkrement ΔVpgm der Wortleitungsspannung wird gemäß dem Widerstandswert R3 der dritten Schaltungseinheit 220c bestimmt. Der Widerstandwert R3 der dritten Schaltungseinheit 220c wird vor der Freigabe der Wortleitungsspannungsgeneratorschaltung 190 bestimmt.
-
Die erste Schaltungseinheit 220a und die dritte Schaltungseinheit 220c sind zueinander symmetrisch, wobei die zweite Schaltungseinheit 220b zwischen den beiden eingeschleift ist. Die erste und dritte Schaltungseinheit 220a und 220c bilden eine Spiegelstruktur. Die erste und dritte Schaltungseinheit 220a und 220c weisen die gleiche Anzahl von Widerständen auf. Die Sicherungen der ersten und dritten Schaltungseinheit 220a und 220c wirken als Schalter.
-
Die Sicherungen 351 und 361 sowie die Sicherungen 352 und 362 arbeiten jeweils als ein einziger Schaltersatz, da sie gleichzeitig leitend oder durchtrennt sind. Die Sicherungen 351 und 361 werden als Schaltersatz A bezeichnet und die Sicherungen 352 und 362 werden als Schaltersatz B bezeichnet.
-
Jedes Paar der Widerstände 311 und 331, der Widerstände 312 und 332 und der Widerstände 313 du 333 bilden einen entsprechenden Widerstandssatz. Jeder Widerstandssatz ist mit dem korrespondierenden Schaltersatz verbunden oder von ihm getrennt, um gleichzeitig zu arbeiten. Die Widerstände 311 und 331 werden als Widerstandssatz A bezeichnet, die Widerstände 312 und 332 werden als Widerstandssatz B und die Widerstände 313 und 333 werden als Widerstandssatz C bezeichnet. Die Programmierspannung Vpgm, das Inkrement ΔVpgm und die geteilte Spannung Vref' im Spannungsteiler 220 werden wie folgt bestimmt.
-
Die geteilte Spannung Vref' wird durch den Widerstandswert R1 der ersten Schaltungseinheit 220a, den Widerstandswert R2 der zweiten Schaltungseinheit 220b und den Widerstandswert R3 der dritten Schaltungseinheit 220c gemäß Gleichung 1 bestimmt: Vref' = Vpgm( R3 / R12 + R3) (1)
-
In Gleichung 1 ist R12 = R1 + R2. Die geteilte Spannung Vref' wird durch den Komparator 240 mit der Referenzspannung Vref verglichen. Die Wortleitungsspannung Vpgm kann durch die Gleichung 2 ausgedrückt werden: Vpgm = Vref'(1 + R12 / R3) (2)
-
Wie aus Gleichung 2 ersichtlich ist, ist die Wortleitungsspannung Vpgm vom Verhältnis R12/R3 abhängig. Der Widerstandswert R3 der dritten Schaltungseinheit 220c wird durch die Nichtdurchtrennung oder Durchtrennung der Schalter 361 und 362 vor dem Programmiervorgang bestimmt, z. B. während der Herstellung des Speicherbauelements. Der Widerstandswert R1 der ersten Schaltungseinheit 220a wird durch die Verbindung oder Trennung der Schalter 351 und 352 vor der Freigabe der Wortleitungsspannungsgeneratorschaltung 190 bestimmt, z. B. während der Herstellung des Speicherbauelements. Entsprechend wird der Widerstandswert R12 durch den Widerstandwert R2 der zweiten Schaltungseinheit 220b geändert, welcher während des Programmiervorgangs durch den Programmierschrittcode STEPi verändert wird, und die Wortleitungsspannung Vpgm wird entsprechend geändert. In diesem Fall nimmt der Widerstandswert R2 der zweiten Schaltungseinheit 220b während der ersten Schleife des Programmierzyklus den Wert 0 Ω an, da die Schalter 227, 228 und 229, welche jeweils zu den Widerständen 321, 322 bzw. 323 der zweiten Schaltungseinheit 220b parallel geschaltet sind, durch den Programmierschrittcode mit dem Wert „000” leitend geschaltet sind. Entsprechend ist der Widerstandswert R12 während der ersten Schleife des Programmierzyklus gleich dem Widerstandswert R1 der ersten Schaltungseinheit 220a.
-
Die Startprogrammierspannung Vpgm1 wird durch den Widerstandswert R1 der ersten Schaltungseinheit 220a und durch den Widerstandswert R3 der dritten Schaltungseinheit 220c bestimmt. Wenn der Widerstandswert des Widerstands eines jeden Widerstandssatzes in der ersten Schaltungseinheit 220a und der Widerstandswert des korrespondierenden Widerstands in der dritten Schaltungseinheit 220c so festgelegt werden, dass ein direkt proportionaler Zusammenhang besteht, kann die Startprogrammierspannung Vpgm1 beibehalten werden, auch wenn die anderen Widerstandssätze ausgewählt werden, um das Inkrement ΔVpgm der Wortleitungsspannung zu verändern. Wenn die Widerstandswerte der Widerstände in jedem Widerstandssatz so festgelegt werden, dass ein indirekt proportionaler Zusammenhang einer Funktion einer Variablen „m” der m-ten Programmierschleife besteht, kann die Zielprogrammierspannung VpgmM beibehalten werden, auch wenn die anderen Widerstandssätze ausgewählt werden, um das Inkrement ΔVpgm der Wortleitungsspannung zu verändern. Dies wird nun im Detail beschrieben.
-
Das Inkrement ΔVpgm der Wortleitungsspannung kann durch die Gleichung 3 bestimmt werden, wobei ΔVpgm = Vpgm2 – Vpgm1 ist: ΔVpgm = Vref' ΔR / R3 (3)
-
In Gleichung 3 repräsentiert „ΔR” eine Änderungsrate des Widerstandswerts R12 zwischen zwei aufeinander folgenden Programmierschritten und ist während der Programmierschleife des Programmierzyklus konstant. Da der Widerstandswert R3 vor dem Start des Programmierzyklus festgelegt wird, beispielsweise während der Herstellung des Speicherbauelements, ist das Inkrement ΔVpgm der Wortleitungsspannung während der Programmierschleifen des Programmierzyklus konstant. Wie aus Gleichung 3 ersichtlich ist, wird das Inkrement ΔVpgm der Wortleitungsspannung verkleinert, wenn der Widerstandswert R3 erhöht wird. Wenn der Widerstandswert R3 verkleinert wird, wird das Inkrement ΔVpgm der Wortleitungsspannung erhöht.
-
Wie aus Gleichung 3 ersichtlich ist, muss die Änderungsrate ΔR oder der Widerstandswert R3 verändert werden, um das Inkrement ΔVpgm zu verändern und die verschiedenen Benutzeranforderungen zu erfüllen. Zum Verändern des Programmierschrittcode, um die Änderungsrate ΔR zu ändern, ist eine zusätzliche Schaltung erforderlich, und das Inkrement ΔVpgm kann nur als ein ganzzahliges Vielfaches eines Vorgabewerts geändert werden, auch wenn der Programmierschrittcode verändert wird. Entsprechend wird die Änderungsrate ΔR auf einem festen Wert gehalten und der Widerstandswert der dritten Schaltungseinheit 220c wird verändert, um das Inkrement ΔVpgm der Programmierspannung auf einen vorgegebenen Wert zu setzen. Die dritte Schaltungseinheit 220c wirkt zur Bestimmung des Inkrements ΔVpgm der Programmierspannung.
-
Wie aus Gleichung 2 ersichtlich ist, wird die Startprogrammierspannung Vpgm1 durch ein Verhältnis des Widerstandswerts R1 zum Widerstandswert R3 bestimmt. Wenn der Widerstandswert R3 der dritten Schaltungseinheit 220c zur Bestimmung des Inkrements ΔVpgm der Programmierspannung festgelegt ist, kann die Startprogrammierspannung Vpgm1 durch den Widerstandswert R1 der ersten Schaltungseinheit 220a eingestellt werden. Entsprechend wirkt die erste Schaltungseinheit 220a zur Einstellung der Startprogrammierspannung Vpgm1.
-
In
5 ist der Widerstandswert des Widerstands eines jeden Widerstandssatzes in der ersten Schaltungseinheit
220a direkt zum Widerstandswert des korrespondierenden Widerstands in der dritten Schaltungseinheit
220c proportional. Die Widerstände
311,
312 und
312 in der ersten Schaltungseinheit
220a weisen beispielsweise einen K-fachen Widerstandswert der Widerstände
331,
332 und
333 der dritten Schaltungseinheit
220c auf. Wenn die Widerstandswerte der Widerstände
311,
312,
313,
331,
332 und
333 gleich R311, R312, R313, R331, R332 bzw. R333 sind, können die Widerstandswerte eines jeden Widerstandes wie folgt ausgedrückt werden:
R311 = K × R331 | R312 = K × R332 | R313 = K × R333 |
-
Die nachfolgende Tabelle 1 zeigt das Inkrement ΔVpgm der Programmierspannung und die Startprogrammierspannung Vpgm1 entsprechend den Verbindungszuständen der Schalter
351,
352,
361 und
362. Das Inkrement ΔVpgm und die Startprogrammierspannung Vpgm1 können gemäß Gleichung 2 und 3 bestimmt werden. Tabelle 1
Fall | 351 | 361 | 352 | 362 | ΔVpgm | Vpgm1 |
1 | an | an | an | an | Vref'(ΔR/R333) | Vref'(1 + K) |
2 | an | an | aus | aus | Vref'(ΔR/(R332 + R333)) | Vref'(1 + K) |
3 | aus | aus | an | an | Vref'(ΔR/(R331 + R333)) | Vref'(1 + K) |
4 | aus | aus | aus | aus | Vref'(ΔR/(R331 + R332 + R333)) | Vref'(1 + K) |
-
Wie aus Tabelle 1 ersichtlich ist, sind die Schalter 351 und 361, welche den Schaltersatz A bilden, gleichzeitig leitend oder aufgetrennt, und die Schalter 352 und 362, welche den Schaltersatz B bilden, sind gleichzeitig leitend oder getrennt. Wie aus Tabelle 1 ersichtlich ist, wird das Inkrement ΔVpgm der Programmierspannung verkleinert, wenn die Verbindungszustände die Fälle 1 bis 4 durchlaufen. Da das Inkrement ΔVpgm gemäß den Widerstandswerten der Widerstände der dritten Schaltungseinheit 220c und den An/Aus-Zuständen der mit jedem Widerstand verbundenen Schalter verändert wird, kann das Inkrement ΔVpgm der Wortleitungsspannung auf verschiedene Werte gesetzt werden, ohne den Programmierschrittcode zu verändern. In jedem Fall, in welchem das Inkrement ΔVpgm der Wortleitungsspannung auf einen anderen Wert gesetzt wird, weist die Startprogrammierspannung Vpgm1 einen konstanten Wert von Vref'(1 + K) auf. Entsprechend kann im nichtflüchtigen Speicherbauelement, welches die ISPP-Programmierstruktur verwendet, das Inkrement ΔVpgm der Wortleitungsspannung durch die Struktur und Funktionsweise der Schaltersätze ohne Änderung des Programmierschrittcodes auf andere Werte gesetzt werden, wodurch die Spannung der ersten Programmierschleife auf einem konstanten Wert gehalten wird.
-
6 zeigt eine weitere mögliche Realisierung eines Spannungsteilers 220' für die Schaltungen von 4 gemäß der Erfindung. In 6 wird für den Fall, dass das Inkrement der Wortleitungsspannung auf einen anderen Wert gesetzt wird, die Zielprogrammierspannung VpgmM, welche einer Spannung in der m-ten Programmschleife entspricht, auf einem konstanten Wert gehalten.
-
Unter Bezugnahme auf 6 umfasst dieser Spannungsteiler 220' eine erste Schaltungseinheit 220a', eine zweite Schaltungseinheit 220b, eine dritte Schaltungseinheit 220c' und eine Entladeeinheit 220d. In 6 sind die Funktionsprinzipien, die zweite Schaltungseinheit 220b und die Entladeeinheit 220d im Wesentlichen gleich den im Zusammenhang mit 5 beschriebenen Komponenten, so dass hier auf eine erneute Beschreibung verzichtet werden kann.
-
Die erste Schaltungseinheit 220a' ist zwischen einem Knoten ND1 und einem Knoten ND2 eingeschleift. Der Knoten ND1 empfängt die Programmierspannung Vpgm und der Knoten ND2 ist mit der ersten Schaltungseinheit 220a' und mit der zweiten Schaltungseinheit 220b verbunden. Die erste Schaltungseinheit 220a' umfasst drei in Reihe geschaltete Widerstände 314, 315 und 316 und zwei Schmelzsicherungen 351 und 352, welche zum Widerstand 314 bzw. zum Widerstand 315 parallel geschaltet sind. Die zwei Sicherungen 351 und 352 werden von einem Operator während der Herstellung des Speicherbauelements leitend gehalten oder durchtrennt. Entsprechend wird ein Widerstandwert R1' der ersten Schaltungseinheit 220a' gemäß dem eingestellten Zustand der Sicherungen 351 und 352 bestimmt. Der Widerstandswert R1 der ersten Schaltungseinheit 220a' kann eingestellt werden, um die Startprogrammierspannung Vpgm1 einzustellen.
-
Der Widerstandswert R1' der ersten Schaltungseinheit 220a' wird vor der Freigabe der Wortleitungsspannungsgeneratorschaltung 190 bestimmt. Der Widerstandswert R2 der zweiten Schaltungseinheit 220b wird in Reaktion auf den Programmierschrittcode STEPi während des Programmierzyklus verändert. Die Summe des Widerstandswerts R1' und des Widerstandswerts R2 wird als R12 bezeichnet.
-
Die dritte Schaltungseinheit 220c' ist zwischen der Massespannung und einem Knoten ND3 eingeschleift. Die dritte Schaltungseinheit 220c' gibt die geteilte Spannung Vref' aus. Die dritte Schaltungseinheit 220c' umfasst drei in Reihe geschaltete Widerstände 334, 335 und 336 und zwei Sicherungen 361 und 362, welche zum Widerstand 334 bzw. zum Widerstand 335 parallel geschaltet sind. Wie die beiden Sicherungen 351 und 352 werden die beiden Sicherungen 361 und 362 während der Herstellung des Speicherbauelements von einem Operator leitend gehalten oder durchtrennt. Ein Widerstand R3' der dritten Schaltungseinheit 220c' wird gemäß dem leitenden Zustand oder der Durchtrennung der Sicherungen 361 und 362 bestimmt. Das Inkrement ΔVpgm der Wortleitungsspannung wird gemäß dem Widerstandswert R3' der dritten Schaltungseinheit 220c' bestimmt. Der Widerstandwert R3' der dritten Schaltungseinheit 220c' wird vor der Freigabe der Wortleitungsspannungsgeneratorschaltung 190 bestimmt.
-
Die erste Schaltungseinheit 220a' und die dritte Schaltungseinheit 220c' sind zueinander symmetrisch, wobei die zweite Schaltungseinheit 220b zwischen den beiden eingeschleift ist. Die erste und dritte Schaltungseinheit 220a' und 220c' bilden eine Spiegelstruktur. Die erste und dritte Schaltungseinheit 220a' und 220c' weisen die gleiche Anzahl von Widerständen auf. Die Sicherungen der ersten und dritten Schaltungseinheit 220a' und 220c' wirken als Schalter.
-
Die Sicherungen 351 und 361 sowie die Sicherungen 352 und 362 arbeiten jeweils als Schaltersatz, da sich gleichzeitig leitend oder durchtrennt sind. Die Sicherungen 351 und 361 werden als Schaltersatz A bezeichnet und die Sicherungen 352 und 362 werden als Schaltersatz B bezeichnet.
-
Jedes Paar der Widerstände 314 und 334, der Widerstände 315 und 335 und der Widerstände 316 und 336 bildet einen entsprechenden Widerstandssatz. Jeder Widerstandssatz ist mit dem korrespondierenden Schaltersatz verbunden oder davon getrennt, um gleichzeitig zu arbeiten. Die Widerstände 314 und 334 werden als Widerstandssatz A bezeichnet, die Widerstände 315 und 335 werden als Widerstandssatz B und die Widerstände 316 und 336 werden als Widerstandssatz C bezeichnet.
-
In jedem Widerstandssatz weist der Widerstandswert des Widerstands in der ersten Schaltungseinheit 220a' zum Widerstandswert des korrespondierenden Widerstands in der dritten Schaltungseinheit 220c' einen indirekt proportionalen Zusammenhang einer Funktion einer Variablen „m” einer m-ten Programmierschleife auf. Die Widerstandswerte R314, R315 und R316 der Widerstände 314, 315 und 316 in der ersten Schaltungseinheit 220a' und die Widerstandswerte R334, R335 und R336 der Widerstände 334, 335 und 336 in der dritten Schaltungseinheit 220c' können beispielsweise wie folgt bestimmt werden: R314 = K × R334 + (mΔR) × (R334/R336)
R315 = K × R335 + (mΔR) × (R335/R336)
R316 = K × R336
wobei m eine Wortleitungsspannungsschleifennummer ist.
-
Die nachfolgende Tabelle 2 zeigt das Inkrement ΔVpgm der Programmierspannung und die Zielprogrammierspannung VpgmM entsprechend den Verbindungszuständen der Schalter
351,
352,
361 und
362. Das Inkrement ΔVpgm und die Zielprogrammierspannung VpgmM können gemäß Gleichung 2 und 3 bestimmt werden. Tabelle 2
Fall | 351 | 361 | 352 | 362 | ΔVpgm | VpgmM |
1 | an | an | an | an | Vref'(ΔR/R336) | Vref'(1 + K + mΔR/R336) |
2 | an | an | aus | aus | Vref'(ΔR/(R335 + R336)) | Vref'(1 + K + mΔR/R336) |
3 | aus | aus | an | an | Vref'(ΔR/(R334 + R336)) | Vref'(1 + K + mΔR/R336) |
4 | aus | aus | aus | aus | Vref'(ΔR/(R334 + R335 + R336)) | Vref'(1 + K + mΔR/R336) |
-
Wie aus Tabelle 2 ersichtlich ist, sind die Schalter 351 und 361, welche den Schaltersatz A bilden, gleichzeitig leitend oder durchtrennt, und die Schalter 352 und 362, welche den Schaltersatz B bilden, sind gleichzeitig leitend oder durchtrennt. Wie aus Tabelle 2 ersichtlich ist, wird das Inkrement ΔVpgm der Wortleitungsspannung erhöht, wenn die Verbindungszustände die Fälle 1 bis 4 durchlaufen. Das Inkrement ΔVpgm kann gemäß den Widerstandswerten der Widerstände der dritten Schaltungseinheit 220c' und den An/Aus-Zuständen der mit jedem der Widerstände verbundenen Schalter verändert werden, und das Inkrement ΔVpgm der Wortleitungsspannung kann auf verschiedene Werte gesetzt werden, ohne den Programmierschrittcode zu verändern. In jedem Fall, in welchem das Inkrement ΔVpgm der Wortleitungsspannung auf einen anderen Wert gesetzt wird, weist die Zielprogrammierspannung VpgmM einen konstanten Wert von Vref'(1 + K + mΔR/R336) auf. Im nichtflüchtigen Speicherbauelement, welches die ISPP-Programmierstruktur verwendet, kann das Inkrement ΔVpgm der Wortleitungsspannung durch die Struktur und Funktionsweise der Schaltersätze ohne Änderung des Programmierschrittcodes auf andere Werte gesetzt werden, wodurch die Spannung der m-ten Programmierschleife auf einem konstanten Wert gehalten wird.
-
7 zeigt eine weitere mögliche Realisierung eines Spannungsteilers 220'' für die Schaltung von 4. Unter Bezugnahme auf 7 umfasst der Spannungsteiler 220'' eine erste Schaltungseinheit 220a'', eine zweite Schaltungseinheit 220b, eine dritte Schaltungseinheit 220c'' und eine Entladeeinheit 220d. In 7 entsprechen die Funktionsprinzipien, die zweite Schaltungseinheit 220b und die Entladeeinheit 220d im Wesentlichen denen im Ausführungsbeispiel gemäß 5, so dass hier auf eine erneute Beschreibung verzichtet werden kann.
-
Die erste Schaltungseinheit 220a'' ist zwischen einem Knoten ND1 und einem Knoten ND2 eingeschleift. Der Knoten ND1 empfängt die Programmierspannung Vpgm. Der Knoten ND2 ist mit der ersten Schaltungseinheit 220a'' und mit der zweiten Schaltungseinheit 220b verbunden. Die erste Schaltungseinheit 220a'' umfasst drei parallel geschaltete Widerstände 317, 318 und 319 und drei MOS-Transistoren 357, 358 und 359, welche in Reihe zum Widerstand 317, zum Widerstand 318 bzw. zum Widerstand 319 geschaltet sind. Die MOS-Transistoren 357, 358 und 359 wirken als von der Steuerschaltung 200 gesteuerte Schalter, wodurch im Wesentlichen eine hohe Spannung vermieden wird. Die Schalter bzw. MOS-Transistoren 357, 358 und 359 werden über die Steuerschaltung 200 von einem Operator vor der Freigabe der Wortleitungsspannungsgeneratorschaltung 190 leitend oder sperrend geschaltet. Die An/Aus-Zustände der Schalter 357, 358 und 359 werden während eines Programmiervorgangs nicht verändert. Ein Widerstandwert R1'' der ersten Schaltungseinheit 220a'' wird gemäß den An/Aus-Zuständen der Schalter 357, 358 und 359 bestimmt. Die Startprogrammierspannung Vpgm1 kann gemäß dem Widerstandswert R1'' der ersten Schaltungseinheit 220a'' eingestellt werden.
-
Die dritte Schaltungseinheit 220c'' ist zwischen der Massespannung und einem Knoten ND3 eingeschleift. Die dritte Schaltungseinheit 220c'' gibt die geteilte Spannung Vref' aus. Die dritte Schaltungseinheit 220c'' umfasst drei parallel geschaltete Widerstände 337, 338 und 339 und drei Transistoren 367, 368 und 369, welche zu den Widerständen 337, 338 bzw. 339 in Reihe geschaltet sind. Die Widerstandswerte R337, R338 und R339 der Widerstände 337, 338 und 339 in der dritten Schaltungseinheit 220c'' stehen in einem direkten oder indirekten proportionalen Zusammenhang mit den Widerstandswerten R317, R318 und R319 der korrespondierenden Widerstände 317, 318 und 319 in der ersten Schaltungseinheit 220a''. Dies entspricht im Wesentlichen den Ausführungsbeispielen gemäß 5 und 6. Die drei Transistoren 367, 368 und 369 wirken als von der Steuerschaltung 200 gesteuerte Schalter. Die drei Schalter bzw. Transistoren 367, 368 und 369 werden von der Steuerschaltung 200 vor der Freigabe der Wortleitungsspannungsgeneratorschaltung 190 leitend oder sperrend geschaltet. Entsprechend wird ein Widerstandwert R3'' der dritten Schaltungseinheit 220c'' gemäß den An/Aus-Zuständen der Schalter 367, 368 und 369 bestimmt. Das Inkrement ΔVpgm der Wortleitungsspannung kann gemäß dem Widerstandswert R3'' der dritten Schaltungseinheit 220c'' ohne Änderung des Programmierschrittcodes bestimmt werden.
-
Die erste Schaltungseinheit 220a'' und die dritte Schaltungseinheit 220c'' sind zueinander symmetrisch, wobei die zweite Schaltungseinheit 220b zwischen den beiden eingeschleift ist. Die erste und dritte Schaltungseinheit 220a'' und 220c'' bilden eine Spiegelstruktur. Die erste und dritte Schaltungseinheit 220a'' und 220c'' weisen die gleiche Anzahl von Widerständen auf. Die Transistoren der ersten und dritten Schaltungseinheit 220a'' und 220c'' wirken als Schalter.
-
Die Transistoren bzw. Schalter 357 und 367 sowie die Transistoren 358 und 368 und die Transistoren 359 und 369 arbeiten als Schaltersatz. Jeder Schaltersatz ist gleichzeitig leitend oder nicht leitend. Die Schalter 357 und 367 werden als Schaltersatz A bezeichnet, die Schalter 358 und 368 werden als Schaltersatz B bezeichnet und die Schalter 359 und 369 werden als Schaltersatz C bezeichnet.
-
Jedes Paar der Widerstände 317 und 337, der Widerstände 318 und 338 und der Widerstände 319 und 339 bildet einen entsprechenden Widerstandssatz. Jeder Widerstandssatz ist mit dem korrespondierenden Schaltersatz verbunden, um gleichzeitig zu arbeiten. Die Widerstände 317 und 337 werden als Widerstandssatz A bezeichnet, die Widerstände 318 und 338 werden als Widerstandssatz B und die Widerstände 319 und 339 werden als Widerstandssatz C bezeichnet.
-
Es wird beispielsweise Bezug auf einen Fall genommen, in dem die Widerstandswerte R337, R338 und R339 der Widerstände 337, 338 und 339 in der dritten Schaltungseinheit 220c'' und die Widerstandswerte R317, R318 und R319 der korrespondierenden Widerstände 317, 318 und 319 in der ersten Schaltungseinheit 220a' einen direkt proportionalen Zusammenhang aufweisen. Die korrespondierenden Widerstände 317, 318 und 319 weisen jeweils einen Widerstandswert auf, welcher K-mal größer als die Widerstandswerte der Widerstände 337, 338 und 339 ist. Es wird angenommen, dass R337 > R338 > R339 ist, insbesondere R317 = K × R337, R318 = K × R338, R319 = K × R339 und R337 > R338 > R339.
-
Die nachfolgende Tabelle 3 zeigt das Inkrement ΔVpgm der Programmierspannung Vpgm und die Startprogrammierspannung Vpgm1 entsprechend den Verbindungszuständen der Schaltersätze A, B und C.
-
Das Inkrement ΔVpgm und die Startprogrammierspannung Vpgm1 können gemäß Gleichung 2 und 3 bestimmt werden. Da die Schalter der Schaltersätze gleichzeitig leitend oder sperrend geschaltet sind, werden die Zustände der Schalter durch den zugehörigen Schaltersatz repräsentiert. Tabelle 3
Fall | A | B | C | ΔVpgm | Vpgm1 |
1 | an | aus | aus | Vref'(ΔR/R337) | Vref'(1 + K) |
2 | aus | an | aus | Vref'(ΔR/R338) | Vref'(1 + K) |
3 | aus | aus | an | Vref'(ΔR/R339) | Vref'(1 + K) |
4 | an | an | aus | Vref'(ΔR/(R337☐R338)) | Vref'(1 + K) |
5 | an | aus | an | Vref'(ΔR/(R337☐R339)) | Vref'(1 + K) |
6 | aus | an | an | Vref'(ΔR/(R338☐R339)) | Vref'(1 + K) |
7 | an | an | an | Vref'(ΔR/(R337☐R338☐R339)) | Vref'(1 + K) |
-
In Tabelle 3 repräsentiert „☐” einen Widerstandswert der parallel geschalteten Widerstände. Ein Fall, in welchem die Schaltersätze A, B und C alle ausgeschaltet sind, ist in der Tabelle 3 nicht dargestellt, da der Spannungsteiler 220 in diesem Fall nicht arbeitet.
-
Wie aus Tabelle 3 ersichtlich ist, nimmt die Anzahl von leitend geschalteten Schaltern vom Fall 1 bis zum Fall 7 zu, der Nenner des Inkrements ΔVpgm der Wortleitungsspannung nimmt ab und das Inkrement ΔVpgm nimmt zu. In jedem Fall weist die Startprogrammierspannung Vpgm1 einen konstanten Wert von Vref'(1 + K) auf. Das Inkrement ΔVpgm kann durch die Auswahl des passenden Widerstandswerts der dritten Schaltungseinheit 220c'' erhöht werden, während die Startprogrammierspannung Vpgm1 beibehalten wird. Dem Fachmann ist klar, dass der Fall, dass das Inkrement ΔVpgm bei gleich bleibender Zielprogrammierspannung VpgmM erhöht wird, auf die gleiche Weise beschrieben werden kann wie der oben beschriebene Fall, dass das Inkrement ΔVpgm bei gleich bleibender Startprogrammierspannung Vpgm1 erhöht wird.
-
Obwohl drei Widerstände in jeder Schaltungseinheit der oben beschriebenen Ausführungsformen beschrieben werden, kann die Anzahl der Widerstände selbstverständlich verändert werden.
-
Die 8A, 8B, 9A und 9B zeigen grafisch Veränderungen einer Wortleitungsspannung gemäß Ausführungsformen der Erfindung. In den Diagrammen sind die Startprogrammierspannung und die Zielprogrammierspannung als Vpgm1 bzw. VpgmM bezeichnet, wenn das Inkrement der Programmierspannung mit ΔVpgm bezeichnet ist. Die Startprogrammierspannung und die Zielprogrammierspannung werden jeweils mit einem zusätzlichen hochgestellten Index bezeichnet, wenn das Inkrement der Programmierspannung vom Wert ΔVpgm verschieden ist.
-
Die 8A und 8B zeigen grafisch Veränderungen der Wortleitungsspannung, wenn ein Inkrement der Wortleitungsspannung gemäß einem Ausführungsbeispiel der Erfindung bei gleich bleibender Startprogrammierspannung verändert wird.
-
Unter Bezugnahme auf 8A repräsentiert eine gestrichelte Linie eine Veränderung der Wortleitungsspannung, wenn das Inkrement ΔVpgm der Programmierspannung unverändert bleibt, während eine durchgezogene Line eine Veränderung der Wortleitungsspannung repräsentiert, wenn das Inkrement der Programmierspannung vom Wert ΔVpgm auf den Wert ΔVpgm/K reduziert wird, wobei K eine reelle Zahl größer als 1 ist. Da das Inkrement der Programmierspannung reduziert wird, nimmt die Verteilung der Programmierspannung der programmierten Speicherzelle ab. Wie aus 8A ersichtlich ist, bleibt die Startprogrammierspannung Vpgm1' auf dem Wert Vpgm1 festgelegt, wenn das Inkrement ΔVpgm/K ist und das Unterprogrammierungsproblem kann im Wesentlichen verhindert werden.
-
Unter Bezugnahme auf 8B repräsentiert eine gestrichelte Linie die Wortleitungsspannung, wenn das Inkrement ΔVpgm der Programmierspannung unverändert bleibt, während eine durchgezogene Line einen Wechsel der Wortleitungsspannung repräsentiert, wenn das Inkrement der Programmierspannung vom Wert ΔVpgm auf den Wert K·ΔVpgm erhöht wird, wobei K eine reelle Zahl größer als 1 ist. Da das Inkrement der Programmierspannung zunimmt, kann die Speicherzelle schnell programmiert werden. Wie aus 8B ersichtlich ist, ist die Startprogrammierspannung Vpgm1'' auf den Wert Vpgm1 festgelegt, wenn das Inkrement der Programmierspannung den größeren Wert K·ΔVpgm annimmt, wodurch das Überprogrammierproblem im Wesentlichen verhindert wird.
-
Die 9A und 9B zeigen Kennlinien von Veränderungen der Wortleitungsspannung, wenn das Inkrement ΔVpgm der Programmierspannung gemäß einem Ausführungsbeispiel der Erfindung bei gleich bleibender Zielprogrammierspannung verändert wird.
-
Unter Bezugnahme auf 9A repräsentiert eine gestrichelte Linie eine Veränderung der Wortleitungsspannung, wenn das Inkrement ΔVpgm der Programmierspannung unverändert bleibt, während eine durchgezogene Line eine Veränderung der Wortleitungsspannung repräsentiert, wenn das Inkrement der Programmierspannung vom Wert ΔVpgm auf den Wert ΔVpgm/K reduziert wird, wobei K eine reelle Zahl größer als 1 ist. Da das Inkrement der Programmierspannung reduziert wird, wird die Verteilung der Programmierspannung der programmierten Speicherzelle verbessert, d. h. die Differenz zwischen der Höhe der Startprogrammierspannung und der Zielprogrammierspannung. Wie aus 9A ersichtlich ist, bleibt die Zielprogrammierspannung VpgmM* auf dem Wert VpgmM festgelegt, wenn das Inkrement der Programmierspannung auf dem Wert ΔVpgm/K ist, und das Unterprogrammierungsproblem kann im Wesentlichen verhindert werden.
-
Unter Bezugnahme auf 9B repräsentiert eine gestrichelte Linie die Wortleitungsspannung, wenn das Inkrement ΔVpgm der Programmierspannung unverändert bleibt, während eine durchgezogene Line einen Wechsel der Wortleitungsspannung repräsentiert, wenn das Inkrement der Programmierspannung vom Wert ΔVpgm auf den Wert K·ΔVpgm erhöht wird, wobei K eine reelle Zahl größer als 1 ist. Da das Inkrement der Programmierspannung zunimmt, kann die Speicherzelle schneller programmiert werden. Wie aus 9B ersichtlich ist, ist die Zielprogrammierspannung VpgmM** auf den Wert VpgmM festgelegt, wenn das Inkrement der Programmierspannung den größeren Wert K·ΔVpgm annimmt, wodurch das Überprogrammierproblem im Wesentlichen verhindert wird.
-
Die Funktionsweise des nichtflüchtigen Speicherbauelements 100 wird nachfolgend unter Bezugnahme auf die Zeichnungen im Detail beschrieben.
-
Für den Fall eines nichtflüchtigen Speicherbauelements, wie einem NAND-Flashspeicherbauelement, umfasst ein Programmierzyklus eine Mehrzahl von Programmierschleifen. Jede Programmierschleife umfasst eine Programmierperiode und eine Programmierverifizierungsperiode. Vor dem Programmiervorgang werden zu programmierende Daten in die Abtastverstärker- und Zwischenspeicherschaltung 130 geladen. Danach wird, wenn dem nichtflüchtigen Speicherbauelement 100 ein Programmierbefehl zur Verfügung gestellt wird, der Programmiervorgang ausgeführt. Vor dem Programmiervorgang wird, beispielsweise während der Herstellung des Speicherbauelements, jeder Schaltersatz leitend oder unterbrechend eingestellt. Jeder Schaltersatz umfasst die Sicherungen oder die von der Steuerschaltung 200 gesteuerten Transistoren. Der Schaltersatz wird vor dem Programmiervorgang gesetzt. Die Widerstandswerte der ersten und dritten Schaltungseinheit 220a und 220c werden vor dem Programmiervorgang festgelegt und während des Programmierzyklus nicht verändert.
-
Die Steuerlogikschaltung 160 aktiviert das Programmierfreigabesignal PGM_EN in Reaktion auf den empfangenen Programmierbefehl und die Wortleitungsspannungsgeneratorschaltung 190 erzeugt die Wortleitungsspannung Vpgm gemäß der Aktivierung des Programmierfreigabesignals PGM_EN. Der Programmierschrittcode STEP0 wird von der Steuerschaltung 200 während der ersten Programmierschleife aktiviert. Die Steuerschaltung 200 umfasst die Steuerlogikschaltung 160, den Schleifenzähler 170 und den Decoder 180. Die Programmierspannung Vpgm wird beispielsweise gemäß Gleichung 2 bestimmt. Wenn die Wortleitungsspannung den gewünschten Spannungspegel der ersten Programmierschleife erreicht, sind die Speicherzellen gemäß dem bekannten Verfahren programmiert.
-
Wenn der Programmiervorgang der ersten Programmierschleife beendet ist, wird der Programmierverifizierungsvorgang ausgeführt. Während des Programmierverifizierungsvorgangs liest die Abtastverstärker- und Zwischenspeicherschaltung 130 Daten aus dem Speicherzellenfeld 110 und gibt die gelesenen Daten an die Überprüfungsschaltung 150 aus. Die Überprüfungsschaltung 150 bestimmt, ob die von der Abtastverstärker- und Zwischenspeicherschaltung 130 empfangenen Daten den gleichen Wert haben oder nicht. Wenn bestimmt wird, dass die von der Abtastverstärker- und Zwischenspeicherschaltung 130 empfangenen Daten den gleichen Wert aufweisen, wird ein Bestanden-Datenwert erzeugt. Wenn irgendwelche empfangenen Daten nicht den Bestanden-Datenwert aufweisen, aktiviert die Steuerlogikschaltung 160 das Aufwärtszählsignal CNT_UP. Der Schleifenzähler 170 führt in Reaktion auf die Aktivierung des Aufwärtszählsignals CNT_UP einen Aufwärtszählvorgang aus. Der Aufwärtszählerwert repräsentiert die nächste Programmierschleife. Der Aufwärtszählerwert wird vom Decoder 180 decodiert, um den Programmierschrittcode STEP1 zu aktivieren. Der Widerstandswert der zweiten Schaltungseinheit 220b im Spannungsteiler 220 wird durch den Programmierschrittcode STEP1 erhöht. Entsprechend wird die Wortleitungsspannung Vpgm in der aktuellen Stufe im Vergleich mit der Wortleitungsspannung Vpgm der vorherigen Stufe um das Inkrement ΔVpgm erhöht. Der oben beschriebene Programmiervorgang wird wiederholt, bis alle von der Abtastverstärker- und Zwischenspeicherschaltung 130 empfangenen Daten den Bestanden-Datenwert aufweisen.
-
Das Inkrement ΔVpgm der Wortleitungsspannung kann durch Steuern der Schaltersätze vor der Freigabe der Wortleitungsspannungsgeneratorschaltung, z. B. während der Herstellung des Speicherbauelements, ohne Änderung im Programmierschrittcode auf andere Werte gesetzt werden. In einem Fall, in welchem der Widerstandswert des Widerstands in der ersten Schaltungseinheit 220a von jedem Widerstandsatz auf einen Wert gesetzt ist, welcher direkt zum Widerstandswert des korrespondierenden Widerstands in der dritten Schaltungseinheit 220c proportional ist, bleibt die Startprogrammierspannung Vpgm1 erhalten, wenn das Inkrement ΔVpgm der Wortleitungsspannung verändert wird. Das Inkrement ΔVpgm der Wortleitungsspannung wird auf einen kleinen Wert gesetzt, um die Programmierspannungsverteilung der programmierten Speicherzelle zu erhöhen. In diesem Fall wird die Startprogrammierspannung Vpgm1 beibehalten, um das Unterprogrammierproblem im Wesentlichen zu verhindern. Zudem kann das Inkrement ΔVpgm der Wortleitungsspannung auf einen großen Wert gesetzt werden, um die Progr3ammiergeschwindigkeit zu erhöhen. In diesem Fall wird die Startprogrammierspannung Vpgm1 beibehalten, um das Überprogrammierproblem im Wesentlichen zu verhindern.
-
Wenn das Inkrement ΔVpgm der Wortleitungsspannung auf einen anderen Wert gesetzt wird, kann die Zielprogrammierspannung VpgmM beibehalten werden. Im Gegensatz zum Fall, in dem die Startprogrammierspannung Vpgm1 beibehalten wird, werden die Widerstandswerte der Widerstände in jedem Widerstandsatz so gesetzt, dass ein indirekt proportionaler Zusammenhang einer Funktion mit einer Variablen „m” der m-ten Programmierschleife besteht. Die Zielprogrammierspannung VpgmM wird beibehalten, wodurch im Wesentlichen das Unterprogrammierproblem oder das Überprogrammierproblem verhindert wird, welche auftreten können, wenn das Inkrement ΔVpgm der Wortleitungsspannung verändert wird, beispielsweise wenn 1-Bit-Daten in der Speicherzelle gespeichert werden sollen. Wenn n-Bit-Daten in der Speicherzelle gespeichert werden sollen, ist es wichtig, die Zielprogrammierspannung VpgmM beizubehalten, da die Programmierspannung der programmierten Speicherzellen in einem speziellen Bereich liegen soll.
-
Entsprechend der Erfindung kann das Inkrement ΔVpgm der Wortleitungsspannung auf einen beliebigen Wert gesetzt werden, ohne den Programmierschrittcode zu verändern.
-
Die Startprogrammierspannung oder die Zielprogrammierspannung kann beibehalten werden, auch wenn das Inkrement der Wortleitungsspannung auf einen kleinen Wert gesetzt wird, um die Programmierspannungsverteilung der Speicherzelle zu erhöhen, wodurch es möglich ist, das Unterprogrammierproblem im Wesentlichen zu verhindern, während der Programmierspannungsverteilungsgrad der Speicherzelle erhöht wird.
-
Die Startprogrammierspannung oder die Zielprogrammierspannung können beibehalten werden, auch wenn das Inkrement der Wortleitungsspannung auf einen großen Wert gesetzt wird, um die Speicherzelle schnell zu programmieren, wodurch es möglich ist, das Überprogrammierproblem im Wesentlichen zu verhindern.