-
Die vorliegende Erfindung betrifft ein Flashspeicherelement und eine Smart-Card.
-
Halbleiterspeicherelemente werden allgemein in flüchtige oder nichtflüchtige Halbleiterspeicherelemente unterschieden, was davon abhängt, ob Speicherdaten in Abwesenheit einer Leistungsversorgung gehalten werden können oder nicht. Speicher mit wahlfreiem Zugriff, wie SRAM und DRAM, sind typische flüchtige Speicherelemente. Nichtflüchtige Speicherelemente umfassen unterschiedliche Arten von Nurlesespeichern (ROMs), beispielsweise löschbare und programmierbare ROMs (EPROMs), elektrisch löschbare und programmierbare ROMs (EEPROMs) und Flashspeicher.
-
In der letzten Zeit werden Flashspeicherelemente aufgrund ihrer Vorteile kleiner Abmessungen, niedriger Leistungsaufnahme und fortschrittlicher Leistungsfähigkeit beim Lesen/Schreiben für Designer besonders interessant. Beispielsweise werden Flashspeicherelemente typischerweise eingesetzt, um ein On-Chip-Speichersystem für tragbare Geräte bereitzustellen, wie Mobiltelefone, Digitalkameras, Audio-/Videorecorder, Modems, Smart-Cards usw. Derartige tragbare Geräte enthalten notwendigerweise Informationen, die eine schnelle Datenaktualisierung benötigen.
-
Eine Flashspeicherzelle, beispielsweise eine Split-Gate-Flashspeicherzelle ist mit dem Mechanismus des F-N-Tunnelns betreibbar, um Daten der Speicherzelle zu löschen, oder mit dem Mechanismus des sourceseitigen Einbringens von heißen bzw. schnellen Elektronen (source-side channel hot electron injection), um Daten in der Flashspeicherzelle zu programmieren. Um das sourceseitige Einbringen von heißen Elektronen für eine zu programmierende Speicherzelle zu bewerkstelligen, wird eine Wortleitung der ausgewählten Speicherzelle mit einer Spannung von etwa 1,2 V getrieben und eine Sourceleitung der ausgewählten Speicherzelle wird mit einer Spannung von etwa 9 V getrieben. Für zu programmierende Daten (d. h. Programmierdaten) kann eine Bitleitung der ausgewählten Speicherzelle mit einer Spannung von etwa 0,3 V getrieben werden. Gemäß dieser Vorspannungsbedingung fließt ein Strom von der Bitleitung zu der Sourceleitung durch die ausgewählte Speicherzelle, was bedeutet, dass ein tatsächlicher Stromverbrauch stattfindet. Andererseits kann für Daten, die gegen eine Programmierung geschützt sein sollen (d. h. programmiergeschützte Daten), eine Bitleitung einer ausgewählten Speicherzelle mit einer Leistungs-Source-Spannung getrieben werden, was dazu führt, dass die ausgewählte Speicherzelle ausgeschaltet ist, um einen Stromfluss in Richtung der Bitleitung von der Sourceleitung zu unterbrechen.
-
Gemäß einem vorbekannten Programmierverfahren kann sich eine Strommenge, die während der Programmieroperation dissipiert wird, basierend auf der Anzahl zu programmierender Datenbits ändern. Dies bedeutet, dass eine Spannung der Sourceleitung in Abhängigkeit von der Strommenge, die während der Programmieroperation dissipiert wird, geringer wird. Im Ergebnis kann ein derartiger Spannungsabfall auf der Sourceleitung zu einer Verschlechterung von Programmiereigenschaften der Speicherzellen führen.
-
Die
US 7 009 882 B2 zeigt ein Flashspeicherbauelement, bei dem eine an eine Bitleitung angelegte Spannung während einer Programmierung verändert wird.
-
Die
US 2004/0218422 A1 zeigt eine Schaltung, die einen Programmierstrom in Abhängigkeit von einem Programmierzustand einer Speicherzelle verändert.
-
Die
US 2002/0114185 A1 zeigt eine Smart-Card, bei der eine Versorgungsspannung in Abhängigkeit von einem Bitleitungsstrom verändert wird.
-
Der Erfindung liegt das technische Problem zugrunde, ein Flashspeicherelement und eine Smart-Card anzugeben, welche eine Stromverbrauchsrate ungeachtet der Anzahl zu programmierender Datenbits auf einem konstanten Niveau halten.
-
Die Erfindung löst das Problem mittels eines Flashspeicherelements mit den Merkmalen des Patentanspruchs 1 oder des Patentanspruchs 6 und mittels einer Smart-Card mit den Merkmalen des Patentanspruchs 10.
-
Vorteilhafte Ausgestaltungen der Erfindung sind in den Unteransprüchen angegeben, deren Wortlaut hiermit durch Bezugnahme in die Beschreibung aufgenommen wird, um unnötige Textwiederholungen zu vermeiden.
-
Beispielhafte Ausgestaltungen der vorliegenden Erfindung zielen auf ein Flashspeicherelement, welches in der Lage ist, eine Stromverbrauchsrate ungeachtet der Anzahl zu programmierender Datenbits auf einem konstanten Niveau zu halten, und auf eine Smart-Card, welche das Flashspeicherelement enthält, ab.
-
Beispielhafte Ausgestaltungen der vorliegenden Erfindung zielen auf ein Flashspeicherelement, welches in der Lage ist, eine hohe Spannung bzw. eine Hochspannung in Abhängigkeit von einem Maß des Stromverbrauchs zu verändern, ohne Programmierdaten zu verwenden, und auf eine Smart-Card, welche das Flashspeicherelement enthält, ab.
-
Eine beispielhafte Ausgestaltung der vorliegenden Erfindung ist ein Flashspeicherelement, aufweisend: ein Speicherzellenfeld mit Speicherzellen, die in Zeilen und Spalten angeordnet sind; und einen Hochspannungserzeuger, der dazu ausgebildet ist, eine Hochspannung zu erzeugen, die während einer Programmieroperation zu einer Sourceleitung des Speicherzellenfelds geliefert wird. Der Hochspannungserzeuger arbeitet derart, dass er die Hochspannung basierend auf einer Menge desjenigen Stroms verändert, der während der Programmieroperation zu dem Speicherzellenfeld geliefert wird.
-
In der beispielhaften Ausgestaltung arbeitet der Hochspannungserzeuger derart, dass er die Hochspannung vergrößert, ohne die zu programmierenden Daten zu verwenden, wenn die Strommenge größer wird, welche während der Programmieroperation zu dem Speicherzellenfeld geliefert wird.
-
In einer beispielhaften Ausgestaltung arbeitet der Hochspannungserzeuger derart, dass er die Hochspannung mit einem zunehmenden Pegel erzeugt, der sich erhöht, wenn die verbrauchte Strommenge relativ größer ist als wenn die verbrauchte Strommenge relativ kleiner ist.
-
In einer beispielhaften Ausgestaltung handelt es sich bei den Speicherzellen um Split-Gate-Flashspeicherzellen.
-
Der Hochspannungserzeuger weist auf: eine Pumpschaltung, einen Spannungsteiler mit einem vorbestimmten Widerstandswert, um die Hochspannung zu teilen; einen Komparator, welcher derart arbeitet, dass er eine Referenzspannung mit einer durch den Spannungsteiler geteilten Teilspannung vergleicht; einen Treiber, der einen Strom zu einem Ausgangsanschluss der Hochspannung von der Pumpschaltung in Abhängigkeit von einer Ausgabe des Komparators liefert; einen Detektor, welcher derart arbeitet, dass er eine Strommenge detektiert, die durch den Treiber fließt, in Abhängigkeit von der Ausgabe des Komparators, und der eine Detektionsspannung in Proportion zu der detektierten Strommenge erzeugt; und eine veränderbare Widerstandsschaltung, die auf die Detektionsspannung reagiert und einen Widerstandswert des Komparators verändert, um die Hochspannung zu vergrößern.
-
Der Spannungsteiler umfasst erste und zweite Widerstände, die zwischen dem Ausgangsanschluss der Hochspannung und einem Massespannungsanschluss in Reihe geschaltet sind. Die veränderbare Widerstandsschaltung umfasst einen NMOS-Transistor mit: einem Drain-Anschluss, der mit einem Verbindungsknoten der ersten und zweiten Widerstände durch einen dritten Widerstand verbunden ist; einem Source-Anschluss, der mit dem Massespannungsanschluss verbunden ist; und einem Gate-Anschluss, der angekoppelt ist, um auf die Detektionsspannung zu reagieren.
-
In einer beispielhaften Ausgestaltung ist ein steigender Pegel der Detektionsspannung proportional zu einem Anwachsen der Strommenge, welche durch den Treiber fließt.
-
Eine beispielhafte Ausgestaltung der vorliegenden Erfindung schafft ein Flashspeicherelement mit Split-Gate-Flashspeicherzellen, die in Zeilen und Spalten angeordnet sind, welches aufweist: einen Zeilenauswähler, der dazu ausgebildet ist, die Zeilen auszuwählen; einen Spaltenauswähler, der dazu ausgebildet ist, die Spalten auszuwählen, einen Schreibtreiber, der dazu ausgebildet ist, die ausgewählten Spalten mit einer Programmierspannung und einer Programmierverhinderungsspannung in Abhängigkeit von Eingangsdaten zu treiben; eine Pumpschaltung, die dazu ausgebildet ist, eine Pumpspannung zu erzeugen; und einen Regler, welcher die Pumpspannung einstellt und eine Hochspannung erzeugt, die zu einer Sourceleitung einer ausgewählten Split-Gate-Flashspeicherzelle zu liefern ist. Wenn eine Strommenge, welche in die Sourceleitung geliefert wird, während einer Programmieroperation größer wird, arbeitet der Regler derart, dass er die Hochspannung vergrößert, ohne die zu programmierenden Daten zu verwenden.
-
Der Regler umfasst: einen Spannungsteiler mit einem vorbestimmten Widerstandswert, um die Hochspannung zu teilen; einen Komparator, welcher derart arbeitet, dass er eine Referenzspannung mit einer durch den Spannungsteiler geteilten Teilspannung vergleicht; einen Treiber, welcher einen Strom zu einem Ausgangsanschluss der Hochspannung von der Pumpschaltung in Abhängigkeit von einer Ausgabe des Komparators liefert; einen Detektor, welcher derart arbeitet, dass er eine Strommenge detektiert, die durch den Treiber fließt in Abhängigkeit von der Ausgabe des Komparators, und der eine Detektionsspannung in Proportion zu der detektierten Strommenge erzeugt; und eine veränderbare Widerstandsschaltung, welche auf die Detektionsspannung reagiert und einen Widerstandswert des Komparators verändert, um die Hochspannung zu vergrößern.
-
Der Spannungsteiler umfasst erste und zweite Widerstände, die zwischen dem Ausgangsanschluss der Hochspannung und einem Massespannungsanschluss in Reihe geschaltet sind. Die veränderbare Widerstandsschaltung umfasst einen NMOS-Transistor mit: einem Drain-Anschluss, der mit einem Verbindungsknoten des ersten und des zweiten Widerstands durch einen dritten Widerstand verbunden ist; einem Source-Anschluss, der mit dem Massespannungsanschluss verbunden ist; und einem Gate-Anschluss, der angekoppelt ist, um auf die Detektionsspannung zu reagieren.
-
In einer beispielhaften Ausgestaltung ist ein steigender Pegel der Detektionsspannung proportional zu einem Anstieg der Strommenge, welche durch den Treiber fließt.
-
In einer beispielhaften Ausgestaltung erzeugt der Regler die Hochspannung mit einem steigenden Pegel, der höher ist, wenn die Strommenge, welche durch den Treiber fließt, relativ größer ist als wenn die Strommenge, welche durch den Treiber fließt, relativ kleiner ist.
-
In einer beispielhaften Ausgestaltung reduziert die veränderbare Widerstandsschaltung einen Widerstandswert des zweiten Widerstands in Proportion zu einem anwachsenden Pegel der Detektionsspannung.
-
Vorteilhafte Ausgestaltungen der Erfindung, welche weiter unten detailliert beschrieben werden, sind in den Zeichnungen dargestellt. Es zeigt/zeigen:
- 1 ist ein schematisches Blockschaltbild zur Darstellung eines Flashspeicherelements gemäß einer beispielhaften Ausgestaltung der vorliegenden Erfindung;
- 2 ist ein Schaltungsdiagramm zur Darstellung eines Hochspannungserzeugers, der in 1 gezeigt ist;
- 3 eine Wellenform von dem Hochspannungserzeuger, der in 2 gezeigt ist; und
- 4 ist ein schematisches Blockschaltbild zur Darstellung einer Smart-Card, welche das in 1 gezeigte Flashspeicherelement enthält.
-
Beispielhafte Ausgestaltungen der vorliegenden Erfindung sind weiter unten unter Bezugnahme auf die beigefügten Zeichnungen detaillierter beschrieben und schaffen ein Split-Gate-Flashspeicherelement als ein Beispiel zur Darstellung struktureller und operationeller Eigenschaften der Erfindung.
-
1 ist ein schematisches Blockschaltbild zur Darstellung eines Flashspeicherelements gemäß einer beispielhaften Ausgestaltung der vorliegenden Erfindung.
-
Bezugnehmend auf 1 umfasst das Flashspeicherelement 1000 ein Speicherzellenfeld 100, welches N-Bit-Daten speichert (N ist eine positive ganze Zahl). Obwohl dies nicht dargestellt ist, kann das Speicherzellenfeld 100 in Form von Speicherzellen organisiert sein, die in Zeilen (oder Wortleitungen) und Spalten (oder Bitleitungen) angeordnet sind. Die Speicherzellen können beispielsweise aus Split-Gate-Flashspeicherzellentransistoren gebildet sein, die durch F-N-Tunneln gelöscht und durch sourceseitiges Einbringen von heißen Elektronen programmiert werden. Der Fachmann erkennt jedoch, dass die strukturelle Konfiguration der Speicherzellen nicht auf diese beispielhafte Ausgestaltung beschränkt sein muss. Zeilen des Speicherzellenfelds 100, das heißt Wortleitungen, werden durch einen Zeilenauswähler (oder X-Auswähler) 200 ausgewählt und getrieben. Ein Spaltenauswähler (oder Y-Auswähler) 300 arbeitet derart, dass er Spalten des Speicherzellenfelds 100, das heißt Bitleitungen, in vorbestimmten Einheiten (beispielsweise x32) auswählt. Ausgewählte Bitleitungen sind mit einem Schreibtreiber 400 verbunden. Der Spaltenauswähler 300 ist dazu ausgebildet, nicht ausgewählte Bitleitungen während einer Programmieroperation mit einer Leistungs-Source-Spannung und während einer Lösch-/Programmieroperation mit einer Massespannung zu treiben. Der Schreibtreiber 400 treibt während der Programmieroperation Bitleitungen, die gemäß Eingangsdaten Din ausgewählt werden, mit einer Programmierspannung oder einer Programmierverhinderungsspannung. Wenn die Eingangsdaten beispielsweise Programmierdaten sind, treibt der Schreibtreiber 400 eine ausgewählte Bitleitung mit der Programmierspannung (beispielsweise 0,3 V). Wenn die Eingangsdaten Programmierverhinderungsdaten sind, treibt der Schreibtreiber 400 eine ausgewählte Bitleitung mit der Programmierverhinderungsspannung (beispielsweise Vdd).
-
Bezugnehmend auf 1 umfasst das Flashspeicherelement 1000 weiterhin einen Hochspannungserzeuger 500 zum Erzeugen einer Hochspannung Vpp, welche in das Speicherzellenfeld 100 zu liefern ist. Die Hochspannung Vpp, beispielsweise etwa 9 V, wird während der Programmieroperation zu einer Sourceleitung ausgewählter Speicherzellen geliefert. Der Hochspannungserzeuger 500 ist gemäß einer beispielhaften Ausgestaltung der vorliegenden Erfindung dazu ausgebildet, die Hochspannung Vpp zu erzeugen, die basierend auf einer Strommenge veränderlich ist, welche während der Programmieroperation verbraucht wird. Beispielsweise nimmt die Hochspannung Vpp zu, wenn die verbrauchte Strommenge größer wird, und sie nimmt ab, wenn die verbrauchte Strommenge kleiner wird. Eine große Menge an während der Programmieroperation verbrauchtem Strom bedeutet, dass eine große Anzahl von Speicherzellen gleichzeitig programmiert werden. In diesem Fall kann eine Spannung der Sourceleitung abgesenkt sein. Wenn andererseits gemäß einer beispielhaften Ausgestaltung der vorliegenden Erfindung die während der Programmieroperation verbrauchte Strommenge größer wird, steigt die Hochspannung Vpp in Proportion zu einer Zunahme der verbrauchten Strommenge. Somit ist es möglich, eine Spannung der Sourceleitung auf einem Zielniveau bezogen auf eine ausgewählte Speicherzelle zu halten.
-
Beispiele von Bedingungen für die Programmier-, Lösch- und Leseoperationen sind in der folgenden Tabelle angegeben. [Tabelle 1]
| Wortleitung | Bitleitung | Sourceleitung |
Programmierung | 1,2 V | 0,3 V | 9V |
Löschen | 12 V | 0 V | 0 V |
Lesen | Vdd (Vread) | 0,7 V | 0 V |
-
2 ist ein Schaltungsdiagramm zur Darstellung des Hochspannungserzeugers 500 gemäß 1.
-
Bezugnehmend auf 2 umfasst der Hochspannungserzeuger 500 eine Pumpschaltung 510, einen Treiber 520, einen Spannungsteiler 530, einen Komparator 540, einen Detektor 550 und eine veränderbare Widerstandsschaltung 560. Die Pumpschaltung 510 ist dazu ausgebildet, eine Pumpspannung Vpump zu erzeugen, die höher ist als die Hochspannung Vpp, und ihre Ausgestaltung ist dem Fachmann hinreichend bekannt. Der Treiber 520 ist aus einem PMOS-Transistor 521 gebildet, der zwischen die Pumpspannung Vpump und die Hochspannung Vpp geschaltet ist und der nach Maßgabe einer Steuerung durch den Komparator 540 einen Strom zu einem Ausgangsanschluss 501 liefert. Der Spannungsteiler 530 erzeugt eine Teilspannung Vdiv durch Teilen der Hochspannung Vpp und ist aus Widerständen 531 und 532 gebildet, die zwischen dem Ausgangsanschluss 501 und einem Massespannungsanschluss in Reihe geschaltet sind. Der Komparator 540 arbeitet derart, dass er die Teilspannung Vdiv mit einer Referenzspannung Vref vergleicht und anschließend den Treiber 520 in Abhängigkeit von einem Ergebnis des Vergleichs steuert. Wenn beispielsweise die Teilspannung Vdiv kleiner ist als die Referenzspannung Vref, gibt der Komparator 540 ein Signal mit einem niedrigen Pegel aus, um einen Strom durch den PMOS-Transistor 521 des Treibers 520 zu dem Ausgangsanschluss 501 zu liefern. Dann nimmt die Hochspannung Vpp zu. Wenn andererseits die Teilspannung Vdiv gleich oder größer als die Referenzspannung Vref ist, erzeugt der Komparator 540 ein Signal mit einem hohen Pegel, um den PMOS-Transistor 521 des Treibers 520 auszuschalten. Die Hochspannung Vpp ist bekanntermaßen gegeben durch Vref*((R1+R2)/R2), wobei R1 und R2 Widerstandswerte des Widerstands 531 bzw. 532 angeben.
-
Wie in 2 gezeigt, umfasst der Detektor 550 einen PMOS-Transistor 551 und einen Widerstand 552 und erzeugt eine Detektionsspannung Vdet, welche proportional zu einem fließenden Strom in Abhängigkeit von einer Ausgabe des Komparators 540 ist. Die Detektionsspannung Vdet ist proportional zu einer Strommenge, die durch den PMOS-Transistor 551 fließt. In Abhängigkeit von einer Zunahme der Strommenge durch den PMOS-Transistor 551 steigt auch die Detektionsspannung Vdet. Wie oben beschrieben, bedeutet die Zunahme der Strommenge ein Abfallen der Hochspannung Vpp. Die veränderbare Widerstandsschaltung 560 ist aus einem Widerstand 561 und einem NMOS-Transistor 562 gebildet, welche dergestalt arbeiten, dass sie einen Widerstandswert des Spannungsteilers 530 verringern, das heißt parallel zu dem Widerstandswert R2 des Widerstands 532 angeordnet sind, in Abhängigkeit von der Detektionsspannung Vdet, die von dem Detektor 550 bereitgestellt wird. In Abhängigkeit von einer Abnahme des effektiven Widerstandswerts des Widerstands 532 steigt die Hochspannung Vpp. Weiterhin ist ein Einschaltwiderstandswert des NMOS-Transistors 562 höher, wenn die Detektionsspannung Vdet relativ niedriger ist als wenn die Detektionsspannung Vdet relativ höher ist. Somit ist ein zunehmender Pegel der Hochspannung Vpp relativ höher, wenn die verbrauchte Strommenge größer ist, als wenn die verbrauchte Strommenge kleiner ist.
-
In dieser beispielhaften Ausgestaltung werden der Treiber 520, der Spannungsteiler 530, der Komparator 540, der Detektor 550 und die veränderbare Widerstandsschaltung 560 dazu verwendet, einen Regler zum Einstellen der Pumpspannung Vpump und zum Erzeugen der Hochspannung Vpp zu bilden. Die Transistoren, welche den Hochspannungserzeuger 500 bilden, sind jeweils Hochspannungstransistoren.
-
Wie aus der obigen Beschreibung ersichtlich und in 3 dargestellt, ist es für die Hochspannung Vpp normal, dass diese in Abhängigkeit von einer Zunahme der Anzahl von gleichzeitig programmierten Datenbits niedriger ist, wenn eine Programmieroperation in einem allgemeinen Flashspeicherelement durchgeführt wird. Wie jedoch in 3 ebenfalls gezeigt ist, steigt die Hochspannung Vpp in dem Flashspeicherelement gemäß einer beispielhaften Ausgestaltung der vorliegenden Erfindung zusammen mit einer Zunahme der Anzahl von gleichzeitig programmierten Datenbits. In den beispielhaften Ausgestaltungen der vorliegenden Erfindung beruht das Ansteigen der Hochspannung Vpp nicht auf einem Erkennen gerade programmierter Daten. Mit anderen Worten, es ist möglich, die Hochspannung Vpp zu erhöhen, indem die Strommenge gemessen wird, welche durch den Detektor 550 verbraucht wird, ohne die zu programmierenden Daten zu verwenden. Speziell ist es möglich, durch Kompensieren der Hochspannung Vpp in Proportion zu einer Spannung, welche aufgrund der Programmieroperation reduziert ist, die Hochspannung Vpp auf einem Zielpegel hinsichtlich einer Speicherzelle zu liefern.
-
4 ist ein schematisches Blockschaltbild zur Darstellung einer Smart-Card, welche das Flashspeicherelement gemäß 1 enthält.
-
Bezugnehmend auf 4 ist die Smart-Card derart organisiert, dass sie eine Prozessoreinheit 2100, wie eine zentrale Prozessoreinheit oder einen Mikroprozessor, eine Eingabe-/Ausgabe(I/O)-Schnittstelle 2200 für eine (drahtgebundene und/oder drahtlose) Kommunikation mit einem externen System (beispielsweise einem Kartenleser), ein nichtflüchtiges Speicherelement (nonvolatile memory device - NVM) 2300 als eine Daten- oder Programmspeichereinheit und einen Speicher mit wahlfreiem Zugriff (random access memory - RAM) 2400 umfasst. Das nichtflüchtige Speicherelement 2300 ist im Wesentlichen dasselbe wie dasjenige, welches in 1 gezeigt ist, so dass es hier nicht weiter beschrieben wird. Obwohl nicht dargestellt, kann die Smart-Card weiterhin eine Verschlüsselungs- und Entschlüsselungsprozessoreinheit, eine Fehlerkorrektureinheit, eine Hackerschutz-Sicherheitserfassungseinheit, eine Speichermanagementeinheit usw. aufweisen.
-
Wie oben beschrieben, ist es möglich, die Programmiereigenschaften eines Flashspeicherelements zu verbessern, indem die Hochspannung Vpp zusammen mit einer Strommenge erhöht wird, welche während der Programmieroperation verbraucht wird, ohne die zu programmierenden Daten zu verwenden.