PatentDe  


Dokumentenidentifikation DE10034743B4 31.08.2006
Titel Flash-Speicherbauelement und Programmierverfahren hierfür
Anmelder Samsung Electronics Co., Ltd., Suwon, Kyonggi, KR
Erfinder Lee, Doo-Sup, Yongin, Kyonggi, KR
Vertreter Patentanwälte Ruff, Wilhelm, Beier, Dauster & Partner, 70174 Stuttgart
DE-Anmeldedatum 18.07.2000
DE-Aktenzeichen 10034743
Offenlegungstag 15.02.2001
Veröffentlichungstag der Patenterteilung 31.08.2006
Veröffentlichungstag im Patentblatt 31.08.2006
IPC-Hauptklasse G11C 16/10(2006.01)A, F, I, 20051017, B, H, DE
Zusammenfassung Die Erfindung bezieht sich auf ein Programmierverfahren zur Verwendung in einem Flash-Speicherbauelement, das ein Feld einer Mehrzahl von Speicherzellen beinhaltet, die in Zeilen und Spalten angeordnet sind, und ein derart programmierbares Flash-Speicherbauelement vom NOR-Typ.
Erfindungsgemäß beinhaltet das Programmierverfahren einen ersten Schritt zum Auswählen wenigstens zweier Speicherzellen und einen zweiten Schritt zum sequentiellen Programmieren derselben zunächst bis zu einer vorgegebenen Schwellwertspannung unterhalb einer Zielschwellwertspannung und zum anschließenden gleichzeitigen Programmieren bis zur Zielschwellwertspannung, wozu ein entsprechendes Flash-Speicherbauelement einen geeigneten Programmierperioden-Steuerschaltkreis enthält.
Verwendung z. B. für hochintegrierte Flash-Speicherbauelemente vom NOR-Typ.

Beschreibung[de]

Die Erfindung bezieht sich auf ein Verfahren zum Programmieren eines Flash-Speicherbauelements sowie auf ein entsprechend programmierbares Flash-Speicherbauelement vom NOR-Typ.

Flash-Speicher werden allgemein in einer breiten Vielfalt von Computersystemen eingesetzt, um einen nicht-flüchtigen Informationsspeicher bereitzustellen. Herkömmliche Flash-Speicher beinhalten typischerweise sowohl einen Programmierschaltungsaufbau zum Programmieren von Informationen in die Flash-Speicherzellen als auch einen Löschschaltungsaufbau zum Löschen der Speicherzellen. Die Spannungspegel, die für einen derartigen Programmier- und Löschschaltungsaufbau erforderlich sind, unterscheiden sich jedoch von den Speisespannungspegeln, die typischerweise durch eine Leistungsversorgung eines Computersystems zur Verfügung stehen.

Einige Flash-Speicher erfordern mehrere Speisespannungen, um den Programmier- und Löschschaltungsaufbau zu verwirklichen. Jeder Flash-Speicher erfordert zum Beispiel eine Speisespannung und eine separate hohe Spannung für den Programmierschaltungsaufbau. Ungünstigerweise erhöht ein derartiger Bedarf nach zwei Speisespannungen typischerweise die Komplexität der Auslegung des -Leistungsversorgungssystems für Computersysteme, die derartige doppelt versorgte Flash-Speicher verwenden, und erhöht die Gesamtkosten derartiger Systeme.

Andererseits enthalten Flash-Speicher mit einer einzigen Leistungsversorgung üblicherweise einen spezialisierten Schaltungsaufbau, der die geeigneten Spannungspegel und elektrischen Strompegel erzeugt, die zum Programmieren und Löschen der einzelnen Flash-Speicherzellen erforderlich sind. Zum Beispiel beinhalten derartige Flash-Speicher typischerweise eine Ladungspumpschaltung, die eine einzelne elektrische Speisespannung in den geeigneten Spannungspegel umwandelt, der zum Ansteuern der Eingänge in die Flash-Speicherzellen während des Programmierens erforderlich ist.

Jüngere Computersysteme, wie tragbare Computer, verwenden integrierte Schaltkreise und andere Bauelemente, die im Vergleich zu früheren Systemen mit relativ niedrigen Speisespannungspegeln arbeiten. Herkömmliche Notebook-Computersysteme, die eine Speisespannung von 5V verwendeten, entwickeln sich nun zum Beispiel in Richtung 3V und niedrigeren Speisespannungen (zum Beispiel 2V oder 1,5V).

Ungünstigerweise setzen derartige niedrige Pegel von elektrischen Speisespannungen eine praktische Grenze für die Menge an elektrischem Programmierstrom, der durch die Ladungspumpschaltung für den Flash-Speicher erzeugt werden kann. Eine derartige Grenze eines verfügbaren Programmierstroms kann die Gesamtgeschwindigkeit derartiger Flash-Speicher durch Begrenzen der Anzahl von Flash-Zellen reduzieren, die gleichzeitig programmiert werden können.

Theoretisch würde eine größere und komplexere Ausführung der Ladungspumpschaltung den notwendigen elektrischen Strom bereitstellen, der zum gleichzeitigen Programmieren ganzer Bytes oder Worte von Flash-Speicherzellen erforderlich ist. Wenn der Spannungspegel der Speisespannung weiter reduziert wird, zum Beispiel unter 2V abgesenkt wird, wird die Ladungspumpschaltung viel komplizierter und viel größer. Dies hat zur Folge, dass eine derartige größere und komplexere Ladungspumpschaltung große Flächen eines integrierten Schaltkreischips verbraucht. Ein derartig großer Flächenbedarf des integrierten Schaltkreischips für eine Ladungspumpe reduziert typischerweise die Fläche, die für Flash-Speicherzellen und einen zugehörigen Zugriffsschaltungsaufbau verfügbar ist, was somit die Gesamtspeicherkapazität eines derartigen Flash-Speichers begrenzt. Andererseits können derartige große Beträge an Chipfläche eine signifikante Zunahme der Gesamtabmessung des integrierten Schaltkreischips erfordern, was die Fertigungskosten erhöht.

In der Patentschrift US 5.430.674 sind ein Flash-Speicherbauelement und ein Programmierverfahren hierfür beschrieben, bei denen zur Programmierung eines Mehrbit-Datenwortes zunächst nur ein Teil der Datenwortbits in die zugehörigen Speicherzellen gleichzeitig programmiert wird und dieser Schritt ein- oder mehrmals für die restlichen Datenworte wiederholt wird.

Der Erfindung liegt die Bereitstellung eines Programmierverfahrens für ein Flash-Speicherbauelement und eines damit programmierbaren Flash-Speicherbauelementes vom NOR-Typ zugrunde, die mit einer relativ kleinflächigen Ladungspumpschaltung auskommen und eine relativ kurze Programmierdauer ermöglichen.

Die Erfindung löst dieses Problem durch die Bereitstellung eines Programmierverfahrens mit den Merkmalen des Anspruchs 1 sowie eines Flash-Speicherbauelementes mit den Merkmalen des Anspruchs 10.

Beim erfindungsgemäßen Programmierverfahren werden jeweils wenigstens zwei Speicherzellen ausgewählt, die sequentiell bis zu einer vorgebbaren Schwellwertspannung programmiert werden, die kleiner als eine Zielschwellwertspannung ist. Anschließend werden die jeweils ausgewählten Zellen vorzugsweise gleichzeitig bis zur Zielschwellwertspannung programmiert, wozu ein entsprechendes Flash-Speicherbauelement mit einem geeigneten Programmierperioden-Steuerschaltkreis ausgestattet ist.

Damit kann auch bei hohem Integrationsgrad des Speicherbauelementes und niedrigem Speisespannungspegel ein ausreichender Programmierstrom schon mit einer relativ kleinflächigen Ladungspumpe bereitgestellt werden.

Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben.

Vorteilhafte Ausführungsformen der Erfindung sind in den Zeichnungen veranschaulicht und werden nachfolgend beschrieben. Hierbei zeigen:

1 eine Querschnittansicht einer herkömmlichen Flash-Speicherzelle,

2 ein Diagramm, das eine Beziehung zwischen Zellenstrom und Programmierzeit zeigt, wenn zwei Datenbits bei einer Speicherzelle gemäß 1 in einer herkömmlichen Weise gleichzeitig programmiert werden,

3 ein Diagramm, das eine Beziehung zwischen einer Schwellwertspannung einer Flash-Speicherzelle und der Programmierzeit während des Programmierens zeigt,

4 ein Diagramm, das Änderungen einer Schwellwertspannung und eines Zellenstroms in Abhängigkeit von der Programmierzeit zeigt,

5 ein Blockdiagramm, das ein Flash-Speicherbauelement gemäß einer ersten Ausführungsform der Erfindung zeigt,

6 ein Diagramm, das eine Beziehung zwischen Zellenstrom und Programmierzeit gemäß einem Programmierverfahren der ersten Ausführungsform zeigt,

7 ein Blockdiagramm, das ein Flash-Speicherbauelement gemäß einer zweiten Ausführungsform der Erfindung zeigt,

8 ein Blockdiagramm, das eine Ladungspumpe von 7 zeigt,

9 ein Diagramm, das Änderungen einer Schwellwertspannung einer Flash-Speicherzelle und der Programmierzeit in Abhängigkeit von der Änderung einer Drain-Spannung veranschaulicht, die einer Bitleitung zugeführt wird,

10A ein Diagramm, das die Stromlieferfähigkeit der Ladungspumpe zeigt,

10B ein Diagramm, das eine Stromänderung in Abhängigkeit von einer Leistungsversorgung und der Anzahl von Ladungspumpstufen zeigt,

10C ein Diagramm, das eine Stromänderung in Abhängigkeit von der Anzahl an Ladungspumpstufen zeigt, und

11 ein Diagramm, das eine Beziehung zwischen Zellenstrom und Programmierzeit gemäß dem Programmierverfahren der zweiten Ausführungsform zeigt.

Bezugnehmend auf 1 weist die dort gezeigte Flash-Speicherzelle eine n+-leitende Source-Elektrode 3 und eine Drain-Elektrode 4, die in einem p-leitenden Substrat 2 ausgebildet sind, eine floatende Gate-Elektrode 6, die über einem Kanal mit einer dazwischen eingefügten dünnen isolierenden Schicht 5 von weniger als 10nm Dicke ausgebildet ist, sowie eine Steuergate-Elektrode 8 auf, die über der floatenden Gate-Elektrode 6 ausgebildet ist, wobei eine weitere isolierende Schicht 7 dazwischengefügt ist.

Die Flash-Speicherzelle in 1 wird durch Erden des Substrates 2 und des Source-Gebiets 3, Anlegen einer hohen Spannung Vg von etwa +10v an die Steuergate-Elektrode 8 und einer positiven Spannung Vd von etwa +5V bis +6V an die Drain-Elektrode 4 programmiert. Wenn eine vorgegebene Zeitspanne unter dieser Vorspannungsbedingung verstreicht, wird eine ausreichende Menge an negativen Ladungen in die floatende Gate-Elektrode 6 aus dem an die Drain-Elektrode 4 angrenzenden Kanal injiziert. Zu diesem Zeitpunkt weist die floatende Gate-Elektrode 6 ein negatives Potential auf. Dies wirkt dahingehend, eine Schwellwertspannung der Flash-Speicherzelle während eines Lesevorgangs zu erhöhen. Ein derartiger Zustand der Flash-Speicherzelle wird "ausgeschaltete Zelle" genannt. Wenn die positive Spannung Vd von etwa +5V bis +6V an die Drain-Elektrode 4 der ausgeschalteten Zelle angelegt wird, fließt kein Zellenstrom von der Drain-Elektrode 4 zu der geerdeten Source-Elektrode 3. Ein gelöschter Zustand, das heißt ein nicht programmierter Zustand der Flash-Speicherzelle wird "eingeschaltete Zelle" genannt. Wenn die positive Spannung Vd von etwa +5V bis +6V an die Drain-Elektrode 4 der eingeschalteten Zelle angelegt wird, fließt ein Zellenstrom von etwa 200&mgr;A von der Drain-Elektrode 4 über den Kanal zu der Source-Elektrode 3.

Wie dem Fachmann allgemein bekannt, werden ausgewählte Speicherzellen eines Flash-Speicherbauelements, wie eines Flash-Speicherbauelementes vom NOR-Typ, durch eine Byte-Einheit (bestehend aus 8 Datenbits) oder eine Worteinheit (bestehend aus 16 Datenbits) programmiert. Wenn alle Datenbits der Byte-/Worteinheit gleichzeitig programmiert werden, ist bei Programmierung durch die Byte-Einheit ein maximaler Strom von 1,6mA (200&mgr;A·8) erforderlich, und bei Programmierung durch die Worteinheit ist ein maximaler Strom von 3,2mA (200&mgr;A·16) erforderlich. Es ist eine sehr große Ladungspumpe erforderlich, um die Spannung Vd von etwa +5V bis +6V zu erzeugen, die der Drain-Elektrode 4 der Flash-Speicherzelle zuzuführen ist, und gleichzeitig diese große Menge an Strom zuzuführen (das heißt 1,6mA oder 3,2mA). Dies bewirkt, wie vorstehend dargelegt, dass eine derartige Ladungspumpe große Flächen eines integrierten Schaltkreischips verbraucht. Derartige große Mengen an Fläche eines integrierten Schaltkreischips, die einer Ladungspumpe zugewiesen werden, reduzieren typischerweise die Fläche, die für die Flash-Speicherzellen und zugehörige Zugriffsschaltungen zur Verfügung steht, was dementsprechend die Gesamtspeicherkapazität eines derartigen Flash-Speichers begrenzt (das bedeutet, dass die Abmessung des integrierten Schaltkreischips erhöht wird). Des weiteren tritt, wenn instantan eine so große Menge an Strom verbraucht wird, Leistungsrauschen auf, wodurch eine Fehlfunktion des Flash-Speicherbauelements verursacht werden kann. Da der Speisespannungspegel, der in dem Flash-Speicherbauelement des NOR-Typs verwendet wird, mehr und mehr abgesenkt wird, kann ein derartiges Problem zunehmend an Bedeutung gewinnen.

Gemäß einem herkömmlichen Programmierverfahren zur Reduzierung der der Ladungspumpe zugewiesenen Fläche wird zuerst eine Mehrzahl von zu programmierenden Datenbits in mehrere Gruppen unterteilt. Dann werden Datenbits jeder der mehreren Gruppen gleichzeitig in einer Einheitsprogrammierzeit Tcycle programmiert (sie entspricht einer Zeitspanne, die für eine ausreichende Programmierung bis zu einer Zielschwellwertspannung einer Flash-Speicherzelle erforderlich ist). In dem Fall, in dem zum Beispiel jede Gruppe aus zwei Datenbits besteht, wird der in der Einheitsprogrammierzeit Tcycle verbrauchte maximale Strom auf 1/8 reduziert, das heißt auf etwa 400&mgr;A, im Vergleich zu dem vorstehend beschriebenen Programmierverfahren (einem solchen Verfahren, bei dem alle Datenbits einer Worteinheit gleichzeitig programmiert werden). Die Abmessung der Ladungspumpe kann proportional zu dem somit reduzierten maximalen Strom verringert werden. Hierin entspricht unter der Annahme, dass der Spitzenstromwert einer Flash-Speicherzelle durch Ipeak symbolisiert ist, wie in 2 dargestellt, der maximale Strom der jeweiligen Einheitsprogrammierzeit Tcycle dem doppelten Spitzenstromwert (2Ipeak). Andererseits ist ersichtlich, dass die Gesamtprogrammierzeit Tpgm acht Mal größer als bei dem vorstehend beschriebenen Programmierverfahren wird (wenn Tcycle=1&mgr;s, Tpgm=1&mgr;s·8= 8&mgr;s).

In dem Fall, dass das Flash-Speicherbauelement des NOR-Typs bei einer sehr niedrigen Speisespannung arbeitet (zum Beispiel unter 2,0V), kann die Zeitspanne länger sein, die zur Erzeugung eines Strompegels und eines Spannungspegels erforderlich ist, die der Drain-Elektrode der Flash-Speicherzelle während des Programmierens zuzuführen ist. Andererseits ist es möglich, dass zur Reduzierung der Gesamtprogrammierzeit die Abmessung der Ladungspumpe erhöht wird. In diesem Fall verbraucht die Ladungspumpe eine große Fläche des integrierten Schaltkreischips, wenn das Flash-Speicherbauelement hochintegriert ist. Das bedeutet, dass derartige große Mengen an Fläche des integrierten Schaltkreischips, die einer Ladungspumpe zugewiesen sind, typischerweise die Fläche reduziert, die für Flash-Speicherzellen und zugehörige Zugriffsschaltungen zur Verfügung steht, wodurch die Gesamtspeicherkapazität eines derartigen Flash-Speichers beschränkt wird.

3 stellt ein Diagramm für ein erstes erfindungsgemäßes Ausführungsbeispiel dar, um die Beziehung zwischen Änderungen der Programmierzeit und der Schwellwertspannung einer Zelle zu zeigen. In 3 zeigt eine vertikale Achse die Schwellwertspannung einer Flash-Speicherzelle an, und eine horizontale Achse zeigt die Programmierzeit derselben an, die durch eine logarithmische Skala dargestellt ist. Man nehme an, dass eine Zielschwellwertspannung Vth_pgm der zu programmierenden Zelle 8V beträgt und dass die zur Programmierung der Zelle erforderliche Einheitsprogammierzeit Tcycle 1&mgr;s beträgt. Unter dieser Bedingung ist aus 3 ersichtlich, dass die Schwellwertspannung Vth der Zelle um bis zu etwa 7V (ungefähr 85%) in 0,5&mgr;s erhöht wird, was die Hälfte der Einheitsprogrammierzeit Tcycle ist.

Wie in 4 dargestellt, die Änderungen der Schwellwertspannung und des Zellenstroms in Abhängigkeit von der Programmierzeit zeigt, steigt die Schwellwertspannung Vth der Zelle während der ersten Programmierzeit 0∼T1 steil bis auf Vth1 an, während der Zellenstrom, der durch die programmierte Zelle fließt, während der ersten Programmierzeit von Ipeak steil auf It1 abnimmt. Dann steigt die Schwellwertspannung Vth der Zelle während der zweiten Programmierzeit T1∼Tcycle langsam von Vth1 auf Vth_pgm an, und es wird nur eine kleine Menge an Zellenstrom verbraucht.

Wie aus den 3 und 4 ersichtlich, nimmt der Zellenstrom, der von der Drain-Elektrode über den Kanal zur Source-Elektrode fleißt, steil ab, wenn die Schwellwertspannung Vth der Flash-Speicherzelle im Anfangsstadium der Einheitsprogrammierzeit Tcycle steil ansteigt. Hierbei ist für den Fachmann offensichtlich, dass eine derartige Steigung, mit der die Schwellwertspannung Vth in Abhängigkeit von der Charakteristik der Flash-Speicherzelle zunimmt, variiert werden kann. Das bedeutet, dass die erste Programmierzeit 0∼T1 in Abhängigkeit von der Charakteristik der Zelle entweder kurz oder lang wird.

Ein Blockdiagramm, welches das Flash-Speicherbauelement des NOR-Typs gemäß der ersten Ausführungsform zeigt, ist in 5 dargestellt. Das Flash-Speicherbauelement 100 vom NOR-Typ beinhaltet ein Speicherzellenfeld 110, das, wenngleich in der Figur nicht gezeigt, aus mehreren Wortleitungen, die sich entlang von Zeilen erstrecken, mehreren Bitleitungen, die sich entlang von Spalten erstrecken, und mehreren Flash-Speicherzellen (oder EEPROM-Zellen) besteht, die jeweils an den Schnittstellen der Wortleitungen und der Bitleitungen angeordnet sind. Eine der Wortleitungen wird durch einen Zeilendecoderschaltkreis 120 in Abhängigkeit von einer Zeilenadresse ausgewählt, und ein Teil der Bitleitungen wird durch einen Spaltendecoderschaltkreis 130 und einen Spaltendurchlassgate-Schaltkreis 140 in Abhängigkeit von einer Spaltenadresse ausgewählt. In dem Fall, in dem zum Beispiel Speicherzellen durch die Byteeinheit programmiert werden, werden von dem Spaltendecoderschaltkreis 130 und dem Spaltendurchlassgate-Schaltkreis 140 8 Bitleitungen ausgewählt. Und in dem Fall, in dem Speicherzellen durch die Worteinheit programmiert werden, werden von dem Spaltendecoderschaltkreis 130 und dem Spaltendurchlassgate-Schaltkreis 140 16 Bitleitungen ausgewählt. Das heißt, es werden 8/16 Flash-Speicherzellen ausgewählt, die an Schnittstellen der ausgewählten Wortleitung beziehungsweise der ausgewählten Bitleitungen angeordnet sind.

In dem Flash-Speicherbauelement 100 sind des weiteren ein Programmierperioden-Steuerschaltkreis 150, ein Dateneingabepufferschaltkreis 160, ein Auswahlschaltkreis 170, ein Pumpschaltkreis 180 und ein Schreibtreiberschaltkreis 190 vorgesehen. Zu programmierende Datenbits '0' oder '1' werden gemäß der Byte-/Worteinheit temporär in dem Dateneingabepufferschaltkreis 160 gespeichert. Der Programmierperioden-Steuerschaltkreis 150 erzeugt Programmierperiodensignale PGM_BLi mit Impulsform, wenn ein Programmiervorgang für die ausgewählten Speicherzellen durchgeführt wird. In dieser Ausführungsform beinhaltet der Programmierperioden-Steuerschaltkreis 150 zum Beispiel einen Zähler.

Der Auswahlschaltkreis 170 empfängt kontinuierlich die Programmierperiodensignale PGM_BLi (i=0∼17) und die Datenbits Din_i (i=0∼15) und erzeugt dann Datenleitungsauswahlsignale DLSELi (i=0–15), die jeweils den ausgewählten Bitleitungen entsprechen. Wenn zum Beispiel das erste Programmierperiodensignal PGM_BL0 aktiviert wird und das erste Datenbit Din_0 zu programmieren ist (zum Beispiel eine logische '0'), wird das erste Datenleitungsauswahlsignal DLSEL0 aktiviert. Andererseits wird, wenn das erste Programmierperiodensignal PGM_BL0 aktiviert wird und das erste Datenbit Din_0 vor dem Programmieren zu schützen ist (zum Beispiel eine logische '1'), das erste Datenleitungsauswahlsignal DLSEL0 deaktiviert. Weitere Datenleitungsauswahlsignale DLSEL1 bis DLSEL15 werden gemäß der vorstehend beschriebenen Weise aktiviert oder deaktiviert.

Der Pumpschaltkreis 180 führt dem Schreibtreiberschaltkreis 190 eine Drainspannung Vd und einen zu der (den) ausgewählten Bitleitung(en) zu übertragenden Strom zu. Der Schreibtreiberschaltkreis 190 führt den ausgewählten Bitleitungen die Drainspannung Vd und den Strom von dem Pumpschaltkreis 180 in Reaktion auf die Datenleitungsauswahlsignale DLSELi zu. Ein Beispiel für den Pumpschaltkreis ist in der Patentschrift US 5.642.309 offenbart.

Der Programmiervorgang der Erfindung wird im Folgenden genauer unter der Annahme beschrieben, dass die Zellen des vorstehend beschriebenen Flash-Speicherbauelements 100 vom NOR-Typ durch die Worteinheit programmiert werden. Es versteht sich jedoch, dass das Programmierverfahren der Erfindung auch auf ein Flash-Speicherbauelement angewendet werden kann, das in Abhängigkeit von der Byteeinheit programmiert wird. Dabei unterstützt das Flash-Speicherbauelement 100 vom NOR-Typ einen Betriebsmodus des gleichzeitigen Ein- und Auslesens (RWW), bei dem ein Programmiervorgang und ein Lesevorgang gleichzeitig durchgeführt werden. Das Speicherbauelement des RWW-Betriebsmodus ist in der Patentschrift US 5.867.430 offenbart.

6 ist ein Diagramm, das die Beziehung zwischen dem Zellenstrom und der Programmierzeit gemäß dem Programmierverfahren der ersten Ausführungsform der Erfindung zeigt. Vor der Beschreibung des Programmierverfahrens der Erfindung wird die erste Programmierzeit T1 als eine Zeit definiert, bei der die Schwellwertspannung Vth der Flash-Speicherzelle eine Schwellwertspannung (zum Beispiel 6V∼7V) Vth1 unterhalb der Zielschwellwertspannung Vth_pgm erreicht, und eine zweite Programmierzeit T2 ist als die Einheitsprogrammierzeit abzüglich der ersten Programmierzeit (Tcycle-T1) definiert (Tcycle ist eine Zeitspanne, die zum ausreichenden Programmieren der Flash-Speicherzelle bis zu der Zielschwellwertspannung Vth_pgm erforderlich ist).

Wenn der Programmiervorgang beginnt, wird eine der Wortleitungen des Speicherzellenfeldes 110 durch den Zeilendecoderschaltkreis 120 ausgewählt, und 16 Bitleitungen (der Worteinheit) werden durch den Spaltendecoderschaltkreis 130 und den Spaltendurchlassgate-Schaltkreis 140 ausgewählt. Als Folge des vorstehend beschriebenen Vorgangs werden 16 Flash-Speicherzellen ausgewählt, die jeweils an den Schnittstellen der ausgewählten Wortleitung mit den ausgewählten Bitleitungen angeordnet sind. Wenngleich in der Figur nicht gezeigt, kann der ausgewählten Wortleitung, an die Steuergate-Elektroden der ausgewählten Zellen gemeinsam angekoppelt sind, eine hohe Spannung von etwa l0V zugeführt werden, die zum Beispiel von einem herkömmlichen Wortleitungs-Spannungserzeugungsschaltkreis gepumpt wird.

Wenn dann ein erstes Programmierperiodensignal PGM_BL0 von dem Programmierperioden-Steuerschaltkreis 150 von niedrigem zu hohem Pegel übergeht, empfängt der Auswahlschaltkreis 170 das erste Programmierperiodensignal PGM_BL0 und ein erstes Datenbit Din_0 (zum Beispiel eine logische '0') und aktiviert dann ein erstes Datenleitungsauswahlsignal DLSEL0 in Reaktion darauf. Das erste Datenbit Din_0 ist eines der Datenbits Din_0 bis Din_15, die in dem Dateneingabepufferschaltkreis 160 gespeichert und zu programmieren sind. Dies bewirkt, dass die Drainspannung Vd und der Strom von dem Pumpschaltkreis 180 einer ersten Bitleitung, die zu dem ersten Datenbit Din_0 gehört, über den Schreibtreiberschaltkreis 190 und den Spaltendurchlassgate-Schaltkreis 140 zugeführt werden. Als Resultat hiervon beginnt die Programmierung einer ersten Flash-Speicherzelle. Zu diesem Zeitpunkt entspricht, wie vorstehend dargelegt, der Zellenstrom, der über die ausgewählte Flash-Speicherzelle fließt, einem maximalen Strom Ipeak von etwa 200&mgr;A, und die erste Flash-Speicherzelle wird während der ersten Programmierzeit T1 bis zu Vth1 unterhalb der Zielschwellwertspannung Vth_pgm programmiert.

Wie in 6 dargestellt, geht nach der Aktivierung des Signals PGM_BL0 und dem Verstreichen der ersten Programmierzeit T1 das erste Programmierperiodensignal PGM_BL0 von einem hohen Pegel auf einen niedrigen Pegel über (wird deaktiviert). Gleichzeitig dazu aktiviert der Programmierperioden-Steuerschaltkreis 150 ein zweites Programmierperiodensignal PGM_BL1, das einen Programmiervorgang eines zweiten Datenbits Din_1 der zu programmierenden Datenbits Din_0 bis Din_15 anzeigt. Die Drainspannung Vd und der Strom von dem Pumpschaltkreis 180 werden über den Schreibtreiberschaltkreis 190 und den Spaltendurchlassgate-Schaltkreis 140 einer zweiten Bitleitung zugeführt, die zu dem zweiten Datenbit Din_1 gehört. Als ein Ergebnis hiervon beginnt die Programmierung einer zweiten Flash-Speicherzelle. Zu diesem Zeitpunkt entspricht der Zellenstrom, der über die ausgewählte Flash-Speicherzelle fließt, dem maximalen Strom Ipeak von etwa 200&mgr;A, und die zweite Flash-Speicherzelle wird während der ersten Programmierzeit T1 bis zu der Schwellwertspannung Vth1 programmiert.

Die ausgewählten Flash-Speicherzellen, die zu anderen Datenbits gehören (zum Beispiel Din_2 bis Din_15) werden sequentiell in der gleichen Weise durch den vorstehend beschriebenen Programmiervorgang bis zu der Schwellwertspannung Vth1 programmiert. Nach ihrer sequentiellen Programmierung bis zu der Schwellwertspannung Vth1 können die ausgewählten Speicherzellen gemäß der Kapazität des Pumpschaltkreises 180 gleichzeitig programmiert werden. Oder es können nach einer Aufteilung der ausgewählten Speicherzellen in zwei oder mehr Gruppen die Speicherzellengruppen jeweils gemäß der Kapazität des Pumpschaltkreises 180 programmiert werden. In dieser Ausführungsform ist die Anzahl N von Datenbits, die gleichzeitig zu programmieren sind, unter der Annahme, dass die Stromkapazität des Pumpschaltkreises 180 gleich Ipeak (200&mgr;A) ist, durch die Stromkapazität des Pumpschaltkreises 180 und den Zellenstrom It1 festgelegt, der im Anfangsstadium der zweiten Programmierzeit T2 von der Flash-Speicherzelle verbraucht wird. Wenn N=8 ist, werden die 16 ausgewählten Speicherzellen in zwei Gruppen unterteilt, und dann werden die jeweiligen Gruppen wie folgt programmiert.

Wie in 6 gezeigt, werden, wenn ein Programmierperiodensignal PGM_BL16 auf hohen Pegel aktiviert wird, Datenleitungsauswahlsignale DLSEL0 bis DLSEL7, von denen jedes einer Gruppe jeweiliger Datenbits entspricht, mittels des Auswahlschaltkreises 170 gleichzeitig auf hohen Pegel aktiviert. Dies bewirkt, dass die Drainspannung Vd und der Strom von dem Pumpschaltkreis 180 Bitleitungen zugeführt werden, die jeweils zu den aktivierten Signalen DLSEL0 bis DLSEL7 gehören. Als Ergebnis hiervon werden die jeweils mit den angesteuerten Bitleitungen gekoppelten Speicherzellen während der zweiten Programmierzeit T2 (Tcycle-T1) gleichzeitig von der Schwellwertspannung Vth1 bis zu der Zielschwellwertspannung Vth_pgm programmiert. Die Flash-Speicherzellen, die zu den Datenbits von Bits anderer Gruppen gehören, werden in der gleichen Weise programmiert, wie vorstehend beschrieben.

Der Programmiervorgang für die ausgewählten Speicherzellen wird in der vorstehend beschriebenen Weise beendet. Gemäß dem Programmierverfahren der ersten Ausführungsform ergibt sich folgende Gesamtprogrammierzeit Tpgm: TPgm = T1 × N + (Tcycle – T1) × r.

Hierbei bezeichnet das Symbol N die Anzahl von zu programmierenden Datenbits (N=8 im Fall der Byteeinheit, N=16 im Fall der Worteinheit), und das Symbol r bezeichnet die Anzahl von Gruppen von Flash-Speicherzellen, die abhängig vom Strom It1 und vom maximalen Strom Ipeak festgelegt ist. Wenn zum Beispiel Tcycle=1&mgr;s, T1=0,5&mgr;s und r=2 sind, beträgt die Gesamtprogrammierzeit Tpgm der Worteinheit 9&mgr;s (0,5&mgr;s·16 + 0,5&mgr;s·2).

Aus dem vorstehend beschriebenen Programmieralgorithmus ist ersichtlich, dass der maximale, während des Programmiervorgangs verbrauchte Strom der ersten Ausführungsform dem Spitzenstromwert Ipeak entspricht, der von einer Flash-Speicherzelle verbraucht wird. Die Abmessung des Pumpschaltkreises 180, die in Abhängigkeit vom Programmierverfahren der ersten Ausführungsform auszulegen ist, ist im Vergleich zu dem herkömmlichen Verfahren der gleichzeitigen Programmierung von zwei Datenbits halbiert. Daher kann gemäß der ersten Ausführungsform der Erfindung trotz erhöhtem Integrationsgrad des Flash-Speicherbauelements vom NOR-Typ und erniedrigtem, in dem Speicherbauelement verwendetem Speisespannungspegel (zum Beispiel unter 2,0V) eine ausreichende Menge an Strom, die zur Programmierung erforderlich ist, ohne eine Vergrößerung der Abmessung des integrierten Schaltkreischips aufgrund des Pumpschaltkreises 180 zugeführt werden.

Ein Blockdiagramm, welches ein Flash-Speicherbauelement vom NOR-Typ gemäß einer zweiten Ausführungsform der Erfindung zeigt, ist in 7 dargestellt. Dabei sind in 7 die Komponenten, die mit jenen in 5 identisch sind, mit den gleichen Bezugszeichen bezeichnet und brauchen nicht nochmals beschrieben werden. Die zweite Ausführungsform unterscheidet sich von der ersten Ausführungsform dahingehend, dass sich die Drainspannung, die während der ersten Programmierzeit T1, die zur Programmierung einer Flash-Speicherzelle bis zu der Schwellwertspannung Vth1 unterhalb der Zielschwellwertspannung Vth_pgm erforderlich ist, einer Bitleitung zugeführt wird, von der Drainspannung unterscheidet, die der Bitleitung während der zweiten Programmierzeit T2 zugeführt wird, die zur Programmierung der Flash-Speicherzelle bis zu der Zielschwellwertspannung Vth_pgm von der Spannung Vth1 aus erforderlich ist.

Bezugnehmend auf 7 führt der Pumpschaltkreis 180' gemäß der zweiten Ausführungsform der Erfindung dem Schreibtreiberschaltkreis 190 die zu einer Bitleitung zu übertragende Drainspannung Vd in Reaktion auf Steuersignale Svdl und Svd2 zu. Speziell ist der Wert der Drainspannung Vd, die dem Schreibtreiberschaltkreis 190 von dem Pumpschaltkreis 180' zugeführt wird, wenn das Steuersignal Svdl aktiviert wird, niedriger als der Wert der Drainspannung Vd, die dem Schreibtreiberschaltkreis 190 von dem Pumpschaltkreis 180' zugeführt wird, wenn das Steuersignal Svd2 aktiviert wird. Dies wird im Folgenden genauer beschrieben. Der Pumpschaltkreis 180' beinhaltet eine Ladungspumpe 181, einen Regulator 182, einen ersten und einen zweiten Detektor 183 sowie 184 und einen Oszillator 185, wie in 8 dargestellt.

Die Ladungspumpe 181 führt ihren Pumpvorgang in Reaktion auf ein Oszillationssignal OSC von dem Oszillator 185 durch, wodurch eine Spannung Vout erzeugt wird, die einer Drain-Elektrode einer Flash-Speicherzelle zuzuführen ist. Der Oszillator 185 arbeitet in Reaktion auf ein Oszillationsfreigabesignal OSCE. Die Ladungspumpe 181 besteht aus seriell verbundenen Pumpstufen, wie dies in der Patentschrift US 5.280. 420 offenbart ist. Der Regulator 182 dient dazu, die von der Ladungspumpe 182 erzeugte instabile Spannung Vout zu stabilisieren, und eine Ausgangsspannung von dem Regulator 182, d.h. eine Drainspannung Vd, wird dem Schreibtreiberschaltkreis 190 zugeführt. Wenn dann das Steuersignal Svd1 aktiviert wird, detektiert der erste Detektor 183, ob die Ausgangsspannung Vd von dem Regulator 182 höher als eine vorgegebene Spannung Vd1 ist, zum Beispiel 4,5V. Wenn Vd>Vd1, wird der Oszillator 185 durch den ersten Detektor 183 deaktiviert, so dass der Pumpvorgang der Ladungspumpe 182 gestoppt wird. In ähnlicher Weise detektiert der zweite Detektor 184, wenn das Steuersignal Svd2 aktiviert wird, ob die Ausgangsspannung Vd des Regulators 182 höher als eine vorgegebene Spannung Vd2 ist, zum Beispiel 5,5V. Wenn Vd>Vd2, wird der Oszillator 185 durch den zweiten Detektor 184 deaktiviert, so dass der Pumpvorgang der Ladungspumpe 182 gestoppt wird.

Bezugnehmend auf 9, welche die Änderung der Schwellwertspannung und der Programmierzeit in Abhängigkeit von einer Änderung der Spannung Vd zeigt, die einer Bitleitung zugeführt wird, ist eine erste Programmierzeit T1', die zur Programmierung einer Flash-Speicherzelle bis zu einer Schwellwertspannung Vth1 erforderlich ist, wenn Vd=Vd2 (zum Beispiel 5,5V) ist, kürzer als eine Programmierzeit T1, wenn Vd=Vd1 (zum Beispiel 4,5V) ist (entsprechend der ersten Programmierzeit der ersten Ausführungsform). Wie aus diesem Resultat ersichtlich ist, kann eine Gesamtprogrammierzeit Tpgm verkürzt werden, indem die Spannung Vd, die der Drain-Elektrode einer Flash-Speicherzelle zugeführt wird, erhöht wird. Wie in 9 dargestellt, entspricht der Zellenstrom, der über eine Flash-Speicherzelle fließt, wenn Vd=Vd2 ist, wiederum dem Spitzenstromwert Ipeak.

Wie in 10A dargestellt, welche die Stromzufuhrkapazität der Ladungspumpe zeigt, wird der von der Pumpe 181 abgegebene Strom Iout vermindert, wenn die von der Ladungspumpe 181 abgegebene Spannung Vout erhöht wird. In dem Fall, in dem zum Beispiel eine Speisespannung 2V beträgt und die Ladungspumpe 181 aus 8 Pumpstufen besteht, beträgt der Ausgangsstrom Iout etwa 200&mgr;A, wenn die Ausgangsspannung Vout der Ladungspumpe 181 etwa 4,5V beträgt (siehe Punkt A). Andererseits wird der Ausgangsstrom Iout, wenn die Ausgangsspannung Vout bis auf 5,5V erhöht wird, bis zu etwa 150&mgr;A vermindert (siehe Punkt B).

Wie vorstehend beschrieben, muss die Anzahl von Pumpstufen, welche die Ladungspumpe 181 gemäß der zweiten Ausführungsform bilden, im Vergleich zu jener gemäß der ersten Ausführungsform erhöht werden, da der Zellenstrom, der über die Flash-Speicherzelle fließt, dem Spitzenstromwert Ipeak entspricht, wenn Vd=Vd2 ist. Um zum Beispiel eine Spannung Vout von etwa 5,5V und einen Strom von etwa 200&mgr;A zu erhalten, wie aus den 10B und l0C ersichtlich, kann die Ladungspumpe 181 aus zehn seriell verbundenen Pumpstufen bestehen. In diesem Fall kann die Ladungspumpe 181, die aus zehn Pumpstufen besteht, einen Strom Iout von etwa 240&mgr;A liefern, wenn Vd=Vd1 ist. Das bedeutet, dass die Anzahl von Datenbits, die während der zweiten Programmierzeit T2 (T1∼Tcycle) gleichzeitig zu programmieren ist, größer wird. Andererseits wird die Abmessung der Ladungspumpe 181 gemäß der zweiten Ausführungsform der Erfindung im Vergleich zu jener gemäß der ersten Ausführungsform der Erfindung ein wenig erhöht (die vergrößerte Abmessung der Pumpe 181 entspricht zwei hinzugefügten Pumpstufen).

11 ist ein Diagramm, das die Beziehung zwischen dem Zellenstrom und der Programmierzeit gemäß der zweiten Ausführungsform der Erfindung zeigt. Das Programmierverfahren gemäß der zweiten Ausführungsform wird im Folgenden unter Bezugnahme auf die entsprechenden Zeichnungen genauer beschrieben.

Wenn der Programmiervorgang beginnt, wird eine der Wortleitungen des Speicherzellenfeldes 110 durch den Zeilendecoderschaltkreis 120 ausgewählt, und 16 Bitleitungen (die Worteinheit) werden durch den Spaltendecoderschaltkreis 130 und den Spaltendurchlassgate-Schaltkreis 140 ausgewählt. Als Ergebnis des vorstehend beschriebenen Vorgangs werden 16 Flashspeicherzellen ausgewählt, die jeweils an Schnittstellen der ausgewählten Wortleitung mit den ausgewählten Bitleitungen angeordnet sind. Wenngleich figürlich nicht gezeigt, kann eine hohe Spannung von etwa 10V, die zum Beispiel von einem herkömmlichen Wortleitungs-Spannungserzeugungsschaltkreis gepumpt wird, der ausgewählten Wortleitung zugeführt werden, an die Steuergate-Elektroden der ausgewählten Zellen gemeinsam angekoppelt sind.

Wenn dann ein erstes Programmierperiodensignal PGM_BL0 von dem Programmierperioden-Steuerschaltkreis 150 von niedrigem Pegel auf hohen Pegel übergeht, empfängt der Auswahlschaltkreis 170 das erste Programmierperiodensignal PGM_BL0 und ein erstes Datenbit Din_0 (zum Beispiel eine logische '0') und aktiviert dann in Reaktion darauf ein erstes Datenleitungsauswahlsignal DLSEL0. Das erste Datenbit Din_0 ist eines der Datenbits Din_0 bis Din_15, die in dem Dateneingabepufferschaltkreis 160 gespeichert und zu programmieren sind. Und der Pumpschaltkreis 180' erzeugt eine Drainspannung Vd in Reaktion auf das Steuersignal Svd2. Dies bewirkt, dass die Drainspannung Vd(=Vd2) und der Strom Iout von dem Pumpschaltkreis 180' über den Schreibtreiberschaltkeis 190 und den Spaltendurchlassgate-Schaltkreis 140 einer ersten Bitleitung zugeführt werden, die zu dem ersten Datenbit Din_0 gehört. Als Ergebnis hiervon beginnt die Programmierung einer ersten Flash-Speicherzelle. Zu diesem Zeitpunkt entspricht der über die ausgewählte Flash-Speicherzelle fließende Zellenstrom dem maximalen Strom Ipeak von etwa 200&mgr;A, und die erste Flash-Speicherzelle wird während der ersten Programmierzeit T1' bis zu Vth1 unterhalb der Zielschwellwertspannung Vth_pgm programmiert. Wie vorstehend dargelegt, ist die Zeit T1' kürzer als die Zeit T1.

Das erste Programmierperiodensignal PGM_BL0 geht kontinuierlich, wie in 11 dargestellt, nach der Aktivierung des Signals PGM_BL0 und dem Verstreichen der ersten Programmierzeit T1' von hohem Pegel auf niedrigen Pegel über. Zur gleichen Zeit aktiviert der Programmierperioden-Steuerschaltkreis 150 ein zweites Programmierperiodensignal PGM_BL1, das einen Programmiervorgang für ein zweites Datenbit Din_1 von den Datenbits Din_0 bis Din_15 anzeigt. Dies bewirkt, dass die Drainspannung Vd(=Vd2) und der Strom Iout von dem Pumpschaltkreis 180 über den Schreibtreiberschaltkreis 190 und den Spaltendurchlassgate-Schaltkreis 140 einer zweiten Bitleitung zugeführt werden, die zu dem zweiten Datenbit Din_1 gehört. Als Ergebnis hiervon beginnt die Programmierung einer zweiten Flash-Speicherzelle. Zu diesem Zeitpunkt entspricht der über die ausgewählte Flash-Speicherzelle fließende Zellenstrom dem maximalen Strom Ipeak von etwa 200&mgr;A, und die zweite Flash-Speicherzelle wird während der ersten Programmierzeit T1' bis zu Vth1 unterhalb der Zielschwellwertspannung Vth_pgm programmiert.

Danach werden Flash-Speicherzellen, die zu weiteren Datenbits Din_2 bis Din_15 gehören, nacheinander in der gleichen Weise, wie vorstehend beschrieben, bis zu der Schwellwertspannung Vth1 programmiert. Nachdem sie sequentiell bis zu der Schwellwertspannung Vth1 programmiert sind, können die ausgewählten Speicherzellen gemäß der Kapazität des Pumpschaltkreises 180' gleichzeitig programmiert werden. Oder es kann nach der Unterteilung der ausgewählten Speicherzellen in Gruppen jede Gruppe von Speicherzellen gemäß der Kapazität des Pumpschaltkreises 180' programmiert werden. Unter der Annahme, dass die Stromkapazität des Pumpschaltkreises 180' gleich dem Spitzenstromwert Ipeak von etwa 240&mgr;A ist, ist die Anzahl N von gleichzeitig zu programmierenden Datenbits durch die Stromkapazität des Pumpschaltkreises 180' und den Zellenstrom It1 festgelegt, der von der Flash-Speicherzelle im Anfangsstadium der zweiten Programmierzeit T2 (Ipeak ≥ It1·N) verbraucht wird. Wenn N=16 ist, werden die 16 ausgewählten Speicherzellen gleichzeitig programmiert. Andererseits werden, wenn N=8 ist, die 16 ausgewählten Speicherzellen in zwei Gruppen unterteilt, und dann werden die jeweiligen Gruppen wie folgt programmiert.

Wie in 11 gezeigt, werden, wenn ein Programmierperiodensignal PGM_BL16 auf hohen Pegel aktiviert wird, Datenleitungsauswahlsignale DLSEL0 bis DLSEL7, von denen jedes einer Gruppe jeweiliger Datenbits entspricht, mittels des Auswahlschaltkreises 170 gleichzeitig auf hohen Pegel aktiviert, und der Pumpschaltkreis 180' erzeugt die Drainspannung Vd in Reaktion auf das Steuersignal Svd1. Dies bewirkt, dass die Drainspannung Vd(=Vd1) (sie weist einen niedrigeren Pegel als die Spannung Vd2 auf, die in der ersten Programmierzeit T1' verwendet wird) und der Strom Iout (höher als jener, der in der ersten Programmierzeit T1' verwendet wird) von dem Pumpschaltkreis 180' Bitleitungen zugeführt werden, die jeweils zu den aktivierten Signalen DLSEL0 bis DLSEL7 gehören. Als Ergebnis hiervon werden die jeweils mit den angesteuerten Bitleitungen gekoppelten Speicherzellen während der zweiten Programmierzeit T2 (Tcycle abzüglich T1) gleichzeitig bis zu der Zielschwellwertspannung Vth_pgm von der Schwellwertspannung Vth1 aus programmiert. Die Flash-Speicherzellen, die zu den Datenbits einer anderen Gruppe gehören, werden in der gleichen Weise programmiert, wie vorstehend beschrieben.

Der Programmiervorgang für die ausgewählten Speicherzellen wird in der vorstehend beschriebenen Weise beendet. Gemäß dem Programmierverfahren dieser Ausführungsform ergibt sich folgende Gesamtprogrammierzeit Tpgm: Tpgm = T1' × N + (Tcycle – T1) × r.

Hierbei bezeichnet das Symbol N die Anzahl von zu programmierenden Datenbits (N=8 im Fall der Byteeinheit, N=16 im Fall der Worteinheit), und das Symbol r bezeichnet die Anzahl von Gruppen von Flash-Speicherzellen, die in Abhängigkeit vom Strom It1 und vom maximalen Strom Ipeak festgelegt ist. Wenn zum Beispiel Tcycle=1&mgr;s, T1=0,5&mgr;s, T1'=0,3&mgr;s und r=2 sind, beträgt die Gesamtprogrammierzeit Tpgm der Worteinheit etwa 5,8&mgr;s (0,3&mgr;s·16 + 0,5&mgr;s·2). Als Ergebnis hiervon wird die Gesamtprogrammierzeit Tpgm der zweiten Ausführungsform um {(T1–T1')16 + Tcycle(r–r')} im Vergleich zu jener der ersten Ausführungsform verkürzt, wobei das Symbol r' die Anzahl von Gruppen von Flash-Speicherzellen bezeichnet, die gemäß der zweiten Ausführungsform gleichzeitig zu programmieren sind.

Aus dem vorstehend beschriebenen Programmieralgorithmus ist ersichtlich, dass der maximale Strom, der während des Programmiervorgangs der ersten Ausführungsform verbraucht wird, dem Spitzenstromwert Ipeak entspricht, der von einer Flash-Speicherzelle verbraucht wird. Die Abmessung des Pumpschaltkreises 180', die gemäß dem Programmierverfahren der zweiten Ausführungsform auszulegen ist, ist im Vergleich zu dem herkömmlichen Verfahren des gleichzeitigen Programmierens von zwei Datenbits beträchtlich reduziert. Als Ergebnis hiervon kann trotz erhöhtem Integrationsgrad des Flash-Speicherbauelements vom NOR-Typ und Verringerung der in dem Speicherbauelement verwendeten Speisespannung eine zur Programmierung erforderliche ausreichende Strommenge aufgrund des Pumpschaltkreises 180' ohne eine Erhöhung der Abmessung des integrierten Schaltkreischips zugeführt werden. Des weiteren kann, wie vorstehend erwähnt, eine Gesamtprogrammierzeit gemäß dem Programmierverfahren der zweiten Ausführungsform im Vergleich zu dem herkömmlichen Verfahren beträchtlich verkürzt werden.

Wie vorstehend dargelegt, wird, da das Flash-Speicherbauelement vom NOR-Typ den RWW-Betriebsmodus aufweist, der Programmiervorgang für eine Bank durchgeführt, und es wird der Lesevorgang für eine andere Bank durchgeführt. Für den Fachmann ist es offensichtlich, dass Leistungsrauschen verursacht wird, wenn die hohe Spannung Vd und der Drainstrom von dem Pumpschaltkreis erzeugt werden. Das während des Programmierens verursachte Leistungsrauschen beeinflusst den Lesevorgang, der in einer anderen Bank durchgeführt wird. Daher ist es wünschenswert, dass der maximale Wert des Drainstroms, der das Leistungsrauschen verursacht, möglichst niedrig ist. Demgemäß kann der maximale Strom, der das Leistungsrauschen verursacht, durch Verwenden der Programmierverfahren gemäß der ersten und der zweiten Ausführungsform der Erfindung minimiert werden.


Anspruch[de]
  1. Programmierverfahren zur Verwendung in einem Flash-Speicherbauelement, das ein Feld einer Mehrzahl von Speicherzellen beinhaltet, die in Zeilen und Spalten angeordnet sind,

    gekennzeichnet durch

    – einen ersten Schritt des Auswählens von wenigstens zwei der Speicherzellen,

    – einen zweiten Schritt des sequentiellen Programmierens der ausgewählten Speicherzellen während einer ersten Zeitspanne bis zu einer vorgegebenen Schwellwertspannung, wobei die vorgegebene Schwellwertspannung niedriger als eine Zielschwellwertspannung ist, und

    – einen dritten Schritt des Programmierens der ausgewählten Speicherzellen von der vorgegebenen Schwellwertspannung bis zur Zielschwellwertspannung während einer zweiten Zeitspanne nach dem sequentiellen Programmieren der ausgewählten Speicherzellen bis zu der vorgegebenen Schwellwertspannung, wobei wenigstens ein Teil der ausgewählten Speicherzellen gleichzeitig von der vorgegebenen Schwellwertspannung bis zur Zielschwellwertspannung programmiert wird.
  2. Programmierverfahren nach Anspruch 1, weiter dadurch gekennzeichnet, dass das Flash-Speicherbauelement ein Flash-Speicherbauelement vom NOR-Typ ist.
  3. Programmierverfahren nach Anspruch 1 oder 2, weiter dadurch gekennzeichnet, dass im dritten Schritt alle ausgewählten Speicherzellen gleichzeitig von der vorgegebenen Schwellwertspannung bis zur Zielschwellwertspannung programmiert werden.
  4. Programmierverfahren nach Anspruch 3, weiter dadurch gekennzeichnet, dass den Spalten, die jeweils den ausgewählten Speicherzellen zugeordnet sind, im zweiten beziehungsweise im dritten Schritt eine Drainspannung mit jeweils eigenem Pegel zugeführt wird.
  5. Programmierverfahren nach Anspruch 4, weiter dadurch gekennzeichnet, dass die Drainspannung, die jeweils den Spalten, die den ausgewählten Speicherzellen zugeordnet sind, im zweiten Schritt zugeführt wird, identisch zu oder höher als jene im dritten Schritt ist.
  6. Programmierverfahren nach Anspruch 1 oder 2, weiter dadurch gekennzeichnet dass der dritte Programmierschritt folgende Teilschritte beinhaltet:

    – Unterteilen der ausgewählten Speicherzellen, die jeweils die vorgegebene Schwellwertspannung aufweisen, in wenigstens zwei Gruppen und

    – sequentielles Programmieren der Gruppen der ausgewählten Speicherzellen, wobei die ausgewählten Speicherzellen jeder Gruppe gleichzeitig programmiert werden.
  7. Programmierverfahren nach Anspruch 6, weiter dadurch gekennzeichnet, dass den Spalten, die jeweils den ausgewählten Speicherzellen zugeordnet sind, im zweiten Schritt beziehungsweise im zweiten Teilschritt des dritten Schritts eine Drainspannung mit jeweils eigenem Pegel zugeführt wird.
  8. Programmierverfahren nach Anspruch 7, weiter dadurch gekennzeichnet, dass die jeweils den Spalten, die den ausgewählten Speicherzellen zugeordnet sind, im zweiten Schritt zugeführte Drainspannung identisch zu oder höher als jene im zweiten Teilschritt des dritten Schritts ist.
  9. Programmierverfahren nach einem der Ansprüche 1 bis 8, weiter dadurch gekennzeichnet, dass eine Einheitsprogrammierzeitspanne jeder Speicherzelle gleich der Summe der ersten Zeitspanne und der zweiten Zeitspanne ist.
  10. Flash-Speicherbauelement vom NOR-Typ mit:

    – einem Feld (110) einer Mehrzahl von Speicherzellen, die in Zeilen und Spalten angeordnet sind,

    – einem Zeilenauswahlschaltkreis (120) zum Auswählen einer der Zeilen,

    – einem Spaltenauswahlschaltkreis (130) zum Auswählen einer aus einer Gruppe unter den Spalten,

    – einem Pumpschaltkreis (180) zum Erzeugen einer Drainspannung, die während eines Programmiervorgangs den ausgewählten Spalten zuzuführen ist,

    – einem Programmierperioden-Steuerschaltkreis (150) zum Erzeugen von ersten und zweiten Programmierperiodensignalen, die eine Programmierperiode von Speicherzellen anzeigen, die den ausgewählten Zeilen und Spalten zugewiesen sind,

    – einem Auswahlschaltkreis (170) zum Erzeugen von Auswahlsignalen, welche die ausgewählten Spalten jeweils in Reaktion auf das erste und das zweite Programmierperiodensignal und zu programmierende Datenbits den zugewiesenen Speicherzellen zuordnen, und

    – einem Schreibtreiberschaltkreis (190) zum Treiben der ausgewählten Spalten mit der Drainspannung von dem Pumpschaltkreis in Reaktion auf die Auswahlsignale,

    dadurch gekennzeichnet, dass

    – der Programmierperioden-Steuerschaltkreis (150) die ersten Programmierperiodensignale, die jeweils den zugewiesenen Speicherzellen zugeordnet sind, derart erzeugt, dass die zugewiesenen Speicherzellen sequentiell bis zu einer vorgegebenen Schwellwertspannung programmiert werden, die niedriger als eine Zielschwellwertspannung ist, und

    – der Programmierperioden-Steuerschaltkreis das zweite Programmierperiodensignal derart erzeugt, dass die zugewiesenen Speicherzellen von der vorgegebenen Schwellwertspannung aus gleichzeitig bis zu der Zielschwellwertspannung programmiert werden, oder derart, dass mehrere Gruppen der zugewiesenen Speicherzellen, die jeweils die vorgegebene Schwellwertspannung aufweisen, sequentiell programmiert werden, wobei die zugewiesenen Speicherzellen jeder Gruppe gleichzeitig programmiert werden.
  11. Flash-Speicherbauelement vom NOR-Typ nach Anspruch 10, weiter dadurch gekennzeichnet, dass eine erste Drainspannung einen von einer zweiten Drainspannung verschiedenen Pegel aufweist, wobei die erste Drainspannung den ausgewählten Spalten während einer ersten Zeitspanne zugeführt wird, wenn die zugewiesenen Speicherzellen bis zu der vorgegebenen Schwellwertspannung programmiert werden, und wobei die zweite Drainspannung den ausgewählten Spalten während einer zweiten Zeitspanne zugeführt wird, wenn die zugewiesenen Speicherzellen von der vorgegebenen Schwellwertspannung aus bis zu der Zielschwellwertspannung programmiert werden.
  12. Flash-Speicherbauelement vom NOR-Typ nach Anspruch 11, weiter dadurch gekennzeichnet, dass die zweite Drainspannung höher als die erste Drainspannung ist.
  13. Flash-Speicherbauelement vom NOR-Typ nach einem der Ansprüche 10 bis 12, weiter dadurch gekennzeichnet, dass eine Einheitsprogrammierzeit jeder der ausgewählten Speicherzellen gleich der Summe der ersten Zeitspanne und der zweiten Zeitspanne ist.
Es folgen 12 Blatt Zeichnungen






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

  Patente PDF

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com