DE69920816T2 - Hochbandbreitige Lese- und Schreibearchitektur für nicht-flüchtige Speicher - Google Patents

Hochbandbreitige Lese- und Schreibearchitektur für nicht-flüchtige Speicher Download PDF

Info

Publication number
DE69920816T2
DE69920816T2 DE69920816T DE69920816T DE69920816T2 DE 69920816 T2 DE69920816 T2 DE 69920816T2 DE 69920816 T DE69920816 T DE 69920816T DE 69920816 T DE69920816 T DE 69920816T DE 69920816 T2 DE69920816 T2 DE 69920816T2
Authority
DE
Germany
Prior art keywords
sample
signal
circuit
memory
voltage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69920816T
Other languages
English (en)
Other versions
DE69920816D1 (de
Inventor
Sau C. Wong
Hock C. So
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SanDisk Corp
Original Assignee
SanDisk Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SanDisk Corp filed Critical SanDisk Corp
Publication of DE69920816D1 publication Critical patent/DE69920816D1/de
Application granted granted Critical
Publication of DE69920816T2 publication Critical patent/DE69920816T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5642Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C27/00Electric analogue stores, e.g. for storing instantaneous values
    • G11C27/005Electric analogue stores, e.g. for storing instantaneous values with non-volatile charge storage, e.g. on floating gate or MNOS
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C27/00Electric analogue stores, e.g. for storing instantaneous values
    • G11C27/02Sample-and-hold arrangements
    • G11C27/024Sample-and-hold arrangements using a capacitive memory element
    • G11C27/026Sample-and-hold arrangements using a capacitive memory element associated with an amplifier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1039Read-write modes for single port memories, i.e. having either a random port or a serial port using pipelining techniques, i.e. using latches between functional memory parts, e.g. row/column decoders, I/O buffers, sense amplifiers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/32Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C27/00Electric analogue stores, e.g. for storing instantaneous values
    • G11C27/02Sample-and-hold arrangements

Description

  • HINTERGRUND
  • Bereich der Erfindung
  • Die vorliegende Erfindung betrifft nichtflüchtige Halbleiterspeicher wie z.B. EPROM, EEPROM und Flash-Speicher und insbesondere Speicherarchitekturen, die hohe Datenübertragungsraten ermöglichen.
  • Beschreibung der verwandten Technik
  • Nichtflüchtige Halbleiterspeicher wie EPROM, EEPROM und Flash-Speicher, die eine elektrische Programmierung und Löschung von Speicherzellen zulassen, sind hinlänglich bekannt. Solche Speicher beinhalten herkömmlicherweise Arrays von Speicherzellen, wobei jede Speicherzelle einen Floating-Gate-Transistor beinhaltet. Schreib- und Löschschaltungen, die mit einer Array gekoppelt sind, ändern die Schwellenspannungen von Floating-Gate-Transistoren, indem sie die floatenden Gates der Transistoren elektrisch laden oder entladen. Insbesondere lädt die Schreibschaltung zum Schreiben auf eine Speicherzelle das floatende Gate des Floating-Gate-Transistors in der Speicherzelle so lange, bis die Schwellenspannung des Transistors auf einem Pegel ist, der den geschriebenen Wert repräsentiert. Die Leseschaltung erfasst die Schwellenspannung eines Floating-Gate-Transistors in einer Speicherzelle, um den in der Zelle gespeicherten Wert zu ermitteln.
  • In verschiedenen Anwendungen kann die Schwellenspannung eines Floating-Gate-Transistors ein einzelnes Bit, mehrere Bits oder einen Analogwert repräsentieren. Für konventionelle binäre (d.h. ein Bit pro Zelle) nichtflüchtige Speicher repräsentieren Schwellenspannungen unterhalb eines Haltepunktpegels einen binären Wert (0 oder 1), und Schwellenspannungen oberhalb des Haltepunktpegels repräsentieren den anderen binären Wert (1 oder 0). Demgemäß stellen Lösch- und Schreibschaltungen in einem binären Speicher die Schwellenspannung jeder Speicherzelle entweder auf einen hohen Pegel oder auf einen tiefen Pegel ein, und die Leseschaltung kann leicht zwischen den Pegeln unterscheiden. Schwellenspannungen von Speicherzellen in Speichern mit mehreren Bits pro Zelle oder in Analogspeichern haben jeweils mehrere (4, 8, 16 oder mehr) getrennte Schwellenspannungsbanden oder einen kontinuierlichen Pegelbereich. Demgemäß benötigen Speicher mit mehreren Bits pro Zelle sowie analoge Speicher beim Schreiben von Schwellenspannungen eine präzise Steuerung und beim Identifizieren von Schwellenspannungen eine hohe Genauigkeit. Die Schreib- und Leseschaltungen, die die für Speicher mit mehreren Bits pro Zelle sowie für analoge Speicher benötigte Präzision und Genauigkeit erzielen, sind gewöhnlich langsamer als Schreib- und Lesespeicher für binäre Speicher. Demgemäß sind die Lese- und Schreibgeschwindigkeiten von Lese- und Schreibschaltungen in Speichern mit mehreren Bits pro Zelle sowie in analogen Speichern normalerweise geringer als ihre binären Pendants.
  • Zum Verbessern der Lese- und Schreibdatenraten (d.h. der Bandbreite) für einen analogen Speicher ist ein Speichersystem bekannt, das ein Paar Puffer und mehrere Schreibschaltungen verwendet. Das Speichersystem sammelt sequentiell Daten in einem ersten Puffer, während es parallel die Daten von einem zweiten Puffer in eine Speicherarray schreibt. Die Puffer tauschen ihre Rollen, wenn das Schreiben der Daten von dem zweiten Puffer fertig ist und der erste Puffer mit Daten gefüllt ist. Ebenso kann ein analoger Speicher ein Paar Puffer und einen Satz von parallelen Leseschaltungen zum Verbessern der Lesegeschwindigkeiten verwenden. Ein Nachteil solcher Speicher sind die höheren Kosten in Verbindung mit der Zunahme der Schaltungskomplexität und der integrierten Schaltungsfläche.
  • Die US-A-5,680,341 mit dem Titel „Pipelined Record and Playback for Analog Non-Volatile Memory" von Wong et al. beschreibt Speichersysteme, die mehrere Lese- und Schreib-Pipelines verwenden. Eine Pipeline-Schreibarchitektur hat beispielsweise mehrere Schreib-Pipelines, wobei jede Schreib-Pipeline eine Abtast-Halte-Schaltung und einen Schreibschaltkomplex zum Schreiben eines Wertes aus der Abtast-Halte-Schaltung in eine Speicherzelle beinhaltet. Schreib-Pipelines werden sequentiell gestartet, wenn die Abtast-Halte-Schaltungen zu schreibende Werte erfassen. Bis zu dem Zeitpunkt, an dem die letzte Schreib-Pipeline in der Sequenz einen Schreibvorgang startet, hat die erste Pipeline in der Sequenz einen zuvor gestarteten Schreibvorgang vollendet und ist jetzt bereit, einen weiteren zu starten. Demgemäß kann eine Pipeline-Architektur die Schreibbandbreite proportional zur Anzahl der verwendeten Schreib-Pipelines erhöhen, ohne dass dies auf Kosten von Genauigkeit oder Auflösung ginge. Eine Pipeline-Lesearchitektur kann auch zum Erhöhen der Lesebandbreite verwendet werden. Ein Vorteil, den die Pipeline-Speicherarchitektur gegenüber der parallelen Lese- und Schreibarchitektur hat, ist ein geringerer erforderlicher Schaltungsaufwand. Insbesondere erfordert die parallele Architektur zwei Abtast-Halte-Schaltungen (eine in jedem Puffer) für jede Lese- oder Schreibschaltung. Die Pipeline-Architektur benötigt lediglich eine einzige Abtast-Halte-Schaltung pro Lese- oder Schreibschaltung. Somit kann die Pipeline-Architektur die Schaltungskosten durch Verringern der benötigten integrierten Schaltungsfläche reduzieren. In der US-A-5,680,341 umfasst jede Pipeline eine Abtast-Halte-Schaltung.
  • Die EP 798 739 offenbart eine Leseschaltung, die eine Grob-zu-fein-Suche durchführt, wenn die Schwellenspannung einer Speicherzelle gelesen wird, und einen Treiber, der eine Gatterspannung einer Speicherzelle ändert, und eine Leseschaltung beinhaltet, die erkennt, wenn die Speicherzelle auslöst.
  • Speicherarchitekturen, die eine hohe Bandbreite für einen analogen Datenfluss und einen Datenfluss mit mehreren Bits pro Zelle bereitstellen, aber noch weniger Schaltungsfläche benötigen, sind wünschenswert.
  • ZUSAMMENFASSUNG
  • Gemäß einem ersten Aspekt der Erfindung wird ein Speicher bereitgestellt, der Folgendes umfasst: eine Mehrzahl von Pipelines, wobei jede Pipeline Folgendes umfasst: eine Array von nichtflüchtigen Speicherzellen; eine erste Abtast-Halte-Schaltung; eine zweite Abtast-Halte-Schaltung; eine Auswahlschaltung, die während eines Schreibvorgangs als Reihenleitungsspannung aus einem Satz von Spannungen einschließlich einer ersten Spannung von der ersten Abtast-Halte-Schaltung und einer zweiten Spannung von der zweiten Abtast-Halte-Schaltung auswählt; einen Reihendecoder, der mit der Array und der Auswahlschaltung gekoppelt ist, wobei der Reihendecoder eine Reihenleitung auswählt und die Reihenleitungsspannung von der Auswahlschaltung an die gewählte Reihenleitung anlegt; und einen Spannungsgenerator, der ein erstes Schreibsignal mit einer Spannung, die von einem in den Spannungsgenerator eingehenden Datensignal abhängig ist, und ein zweites Schreibsignal erzeugt, wobei jede erste Abtast-Halte-Schaltung in den Pipelines zum Abtasten des ersten Schreibsignals gekoppelt ist, und wobei jede zweite Abtast-Halte-Schaltung in der Pipeline zum Abtasten des zweiten Schreibsignals gekoppelt ist.
  • Gemäß einem zweiten Aspekt der Erfindung wird ein Speicher bereitgestellt, der Folgendes umfasst: eine Mehrzahl von Pipelines, wobei jede Pipeline Folgendes umfasst: eine Array von nichtflüchtigen Speicherzellen; einen Reihendecoder, der mit Reihenleitungen in der Array gekoppelt ist; einen Spaltendecoder, der mit Spaltenzeilen in der Array gekoppelt ist; eine erste Abtast-Halte-Schaltung; eine zweite Abtast-Halte-Schaltung; einen Multiplexer mit Eingangsanschlüssen, die mit Ausgangsanschlüssen der ersten oder zweiten Abtast-Halte-Schaltung gekoppelt sind; eine Auswahlschaltung; und einen Leseverstärker, der während eines Lesevorgangs durch den Spaltendecoder mit einer gewählten Reihenleitung, auf der sich eine gewählte Speicherzelle befindet, und mit einem Taktanschluss der ersten Abtast-Halte-Schaltung gekoppelt ist; und eine Spannungsrampenschaltung, die während des Lesevorgangs so geschaltet ist, dass sie an die Reihendecoder in den Pipelines ein Lesesignal mit einer Spannung, die sich über einen Spannungsbereich bewegt, anlegt, wobei während des Lesevorgangs der Reihendecoder das Lesesignal an die gewählte Reihenleitung anlegt, und die Auswahlschaltung so gekoppelt ist, dass gewählt wird, ob der Leseverstärker die Abtastwerte der ersten Abtast-Halte-Schaltung oder der zweiten Abtast-Halte-Schaltung taktet, wenn der Leseverstärker einen Übergang in der Leitfähigkeit der gewählten Speicherzelle erfasst.
  • Somit beinhaltet gemäß der vorliegenden Erfindung die Speicherarchitektur für einen nichtflüchtigen analogen Speicher oder einen nichtflüchtigen Speicher mit mehreren Bits pro Zelle mehrere unabhängige Speicherarrays und mehrere Lese/Schreib-Pipelines. Die mehreren Lese/Schreib-Pipelines nutzen eine Leseschaltung und/oder eine Schreibschaltung gemeinsam, um die Schaltungsfläche jeder Pipeline und die Schaltungsfläche des Speichers insgesamt zu reduzieren. In einer Ausgestaltung erzeugt eine gemeinsam genutzte Schreibschaltung eine Programmierspannung, die sich mit einem Eingangssignal ändert, das auf den Speicher zu schreibende Werte repräsentiert. Jede Pipeline beinhaltet eine Abtast-Halte-Schaltung, die die Programmierspannung abtastet, wenn die Pipeline einen Schreibvorgang beginnt. Die Schreibschaltung kann zusätzlich eine Prüfspannung erzeugen, die eine zweite Abtast-Halte-Schaltung in jeder Pipeline abtastet, wenn ein Schreibvorgang beginnt. Die Prüfspannung identifiziert eine Zielschwellenspannung für einen Schreibvorgang. Jede Pipeline verwendet die Programmierspannung aus ihren eigenen Abtast-Halte-Schaltungen beim Erzeugen von Impulsen, die den Schwellenwert einer gewählten Speicherzelle ändern, und verwendet die Prüfspannung aus ihrer eigenen Abtast-Halte-Schaltung in Prüfzyklen, die ermitteln, ob die Zielschwellenspannung erreicht und ein Schreibvorgang abgeschlossen ist.
  • In einer anderen Ausgestaltung erzeugt eine gemeinsam genutzte Leseschaltung ein Lesesignal, das über den Bereich der zulässigen Schwellenspannungen für die Speicherzellen rampenartig ansteigt, und ein Leseverstärker in jeder Pipeline taktet eine Abtast-Halte-Schaltung oder eine andere temporäre Speicherschaltung wie z.B. einen Flipflop oder Latch in der Pipeline, wenn der Leseverstärker einen Übergang der Leitfähigkeit einer gewählten Speicherzelle erfasst. Wenn getaktet, registriert die Abtast-Halte-Schaltung ein analoges Signal, das dem Lesesignal entspricht, und zeigt einen Datenwert in Verbindung mit der Spannung des Lesesignals an. In alternativen Ausgestaltungen ist das registrierte Signal das Lesesignal, ein von dem Lesesignal konvertiertes Signal oder ein Multibit-Digitalsignal. Beim Abtasten des Lesesignals ist die registrierte Spannung gleich der Schwellenspannung der gewählten Speicherzelle. Das Abtasten der konvertierten Form des Lesesignals kann effektiv die Schwellenspannung direkt auf einen Datenwert mappen. Das Abtasten des Multibit-Digitalsignals unter Verwendung eines Satzes von Flipflops oder Latches ergibt direkt einen Multibit-Wert, der aus einer Speicherzelle gelesen wird, und erfordert keine weitere A/D-Umwandlung.
  • Alternativ verwendet ein Speicher mit mehreren Bits pro Zelle einen analogen Lesevorgang (und einen analogen Schreibvorgang), konvertiert aber die ausgegebenen Analogsignale in die digitale Form (und konvertiert die digitalen Multibit-Eingangssignale in die analoge Form).
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockdiagramm eines analogen Speichers gemäß einer Ausgestaltung der Erfindung;
  • 2 zeigt Timing-Diagramme für einen Aufzeichnungsprozess gemäß einer Ausgestaltung der Erfindung;
  • 3 und 4 zeigen Timing-Diagramme für einen Wiedergabeprozess gemäß alternativen Ausgestaltungen der Erfindung;
  • 5A und 5B zeigen einige alternative Wellenformen für ein Lesesignal, das bei Lesevorgängen gemäß alternativen Ausgestaltungen der Erfindung verwendet wird;
  • 6 ist ein Blockdiagramm eines Speichers mit mehreren Bits pro Zelle gemäß einer Ausgestaltung der Erfindung;
  • 7 zeigt eine Abtast-Halte-Schaltung, die für Speicher der 1 und 6 geeignet ist.
  • Gleiche Bezugsziffern in verschiedenen Figuren weisen auf ähnliche oder identische Teile hin.
  • AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSGESTALTUNGEN
  • Gemäß einem Aspekt der Erfindung beinhaltet eine Speicherarchitektur mehrere Speicherarrays in mehreren Lese/Schreib-Pipelines. Die mehreren Arrays bieten hohe Leistung und einen hohen Durchsatz für Speicheranwendungen wie Aufzeichnen und Wiedergeben von digitalen Bildern und Hi-Fi-Musik. Zum Reduzieren der integrierten Schaltungsfläche für den Speicher und zum Reduzieren der Leistungsaufnahme beinhaltet der Speicher eine Löschschaltung, eine Schreibschaltung und eine Leseschaltung, die alle Arrays gemeinsam nutzen. Dadurch wird die integrierte Schaltungsfläche reduziert, weil nicht mehr jede Lese/Schreib-Pipeline eine komplette und separate Leseschaltung oder Schreibschaltung beinhaltet. Die Leistungsaufnahme wird reduziert, weil weniger Lese/Schreib-Schaltungen gespeist oder ein- und ausgeschaltet werden müssen, und der Spitzenprogrammierstrom wird reduziert, da ein gleichzeitiges Starten von Schreibvorgängen vermieden wird.
  • 1 ist ein Blockdiagramm eines nichtflüchtigen analogen Speichers 100 gemäß einer Ausgestaltung der Erfindung. Speicher 100 beinhaltet mehrere Arrays 130-1 bis 130-N an nichtflüchtigen Speicherzellen in jeweiligen Lese/Schreib-Pipelines 110-1 bis 110-N. Lese/Schreib-Pipelines 110-1 bis 110-N sowie Arrays 130-1 bis 130-N werden hierin zuweilen als Pipelines 110 und Arrays 130 bezeichnet. 1 zeigt zwar drei solcher Pipelines 110, aber der Speicher 100 kann jede beliebige Zahl N von Pipelines beinhalten. Die Zahl der vorhandenen Pipelines bestimmt die Zahl der gleichzeitigen Lese- oder Schreibvorgänge, die der Speicher 100 durchführen kann, und reguliert demgemäß die maximale Lese- und Schreibhäufigkeit oder die Datenübertragungsrate des Speichers 100. Wie nachfolgend ausführlicher beschrieben wird, startet eine Timing-Schaltung 140 sequentiell die Pipelines 110 bei sequentiellen Schreibvorgängen und Ausgabevorgängen, und die Pipelines 110 arbeiten gleichzeitig zum Ausführen der Vorgänge.
  • Jede nichtflüchtige Speicherarray 130 kann eine konventionelle nichtflüchtige Speicherarray sein. Solche Speicherarrays sind zum Speichern eines binären, analogen oder Multibit-Digitalwertes in jeder Speicherzelle hinlänglich bekannt. Die Arrays 130 beinhalten Reihen und Spalten von Speicherzellen, wobei jede Speicherzelle z.B. eine Speicherzelle mit einem einzelnen Floating-Gate-Transistor, einem geteilten Gate-Transistor oder mit mehreren Transistoren ist. In einer beispielhaften Ausgestaltung der Erfindung, die nachfolgend beschrieben wird, ist der Speicher 100 ein Flash-EEPROM, und jede Speicherzelle besteht aus einem einzelnen N-Kanal-Floating-Gate-Transistor. Die Steuergatter der Speicherzellen in einer Reihe einer Array 130 sind mit einer mit der Reihe assoziierten Reihenleitung gekoppelt. Drains der Speicherzellen in einer Spalte einer Array 130 sind mit einer mit der Spalte assoziierten Spaltenleitung gekoppelt, und Sources der Speicherzellen in einem Sektor einer Array 130 sind mit einer mit dem Sektor assoziierten Source-Leitung gekoppelt. In der beispielhaften Ausgestaltung enthält jeder Sektor mehrere Spalten von Speicherzellen, aber alternative Speicherarchitekturen verwenden verschiedene Arten von Sektoren, wie z.B. Sektoren, die eine oder mehrere Reihen von Speicherzellen enthalten.
  • Die Speicherarrays 130 sind dahingehend separat, dass Lösch-, Schreib- und Lesevorgänge in einer Array 130 Lösch-, Schreib- und Lesevorgänge in anderen Arrays 130 nicht beeinflussen. Jede Speicherarray 130 hat einen Reihendecoder 132, einen Spaltendecoder 134 und eine Leseverstärkerschaltung 136. (Die Leseverstärkerschaltung 136 kann mehrere Leseverstärker enthalten.) Jeder Reihendecoder 132 wählt eine Reihenleitung in der assoziierten Array 130 und legt bei Lösch-, Schreib- und Lesevorgängen Vorspannungen an die gewählte Reihenleitung und an ungewählte Reihenleitungen in der Array 130 an. Jeder Spaltendecoder 134 wählt eine Spaltenleitung in der assoziierten Array 130 und legt bei Lösch-, Schreib- und Lesevorgängen Vorspannungen an die gewählte Spaltenleitung und an ungewählte Spaltenleitungen in der assoziierten Array 130 an. Die Spaltendecoder 134 verbinden auch assoziierte Leseverstärkerschaltungen 136 mit den assoziierten Speicherarrays 130 für Lesevorgänge. Ein globaler Sektorlöschdecoder 172 legt die geeigneten Vorspannungen an Source-Leitungen für alle Sektoren in Arrays 130 an. Leseverstärkerschaltungen sowie Reihen-, Spalten- und Löschdecoder sind hinlänglich bekannt. Wie jedoch nachfolgend ausführlicher beschrieben wird, takten oder triggern Ausgangssignale von Leseverstärkerschaltungen 136 Abtast-Halte-Schaltungen oder andere temporäre Speicherschaltungen und können Schaltungen wie z.B. eine One-Shot-Schaltung zusätzlich zu konventionellen Leseverstärkerschaltkomplexen beinhalten. Das US-Patent mit der Seriennummer 5,687,115 illustriert Beispiele für solche Schaltungen.
  • Für einen Löschvorgang erzeugt eine Löschsteuerschaltung 170 ein Löschsignal Verase (typischerweise etwa 12 V beim Löschen) und veranlasst den Decoder 172, einen oder mehrere Sektoren in Arrays 130 zu wählen. Insbesondere empfängt der Decoder 172 das Löschsignal Verase sowie ein oder mehrere Adresssignale, die einen oder mehrere zum Löschen gewählte Sektoren identifizieren. Der Decoder 172 legt dann das Löschsignal Verase an die Source-Leitungen der gewählten Sektoren an und erdet die Source-Leitungen in Verbindung mit den ungewählten Sektoren. Die Reihendecoder 132 erden alle Reihenleitungen in den Arrays, die einen oder mehrere der gewählten Sektoren enthalten, und die Spaltendecoder 134 lassen es zu, dass alle Spaltenleitungen in Verbindung mit den Sektoren gelöscht werden, so dass sie floaten. Die Löschsteuerschaltung 170 enthält einen Spannungsgenerator, typischerweise eine Ladungspumpe, zum Erzeugen einer hohen Spannung für das Löschsignal Verase sowie einen Steuerschaltkomplex zum Wählen, welche Sektoren gelöscht werden sollen.
  • Eine Folge von Schreibvorgängen, die hierin zuweilen als Aufzeichnungsvorgang bezeichnet werden, schreibt sequentiell eine Reihe von Werten in eine Reihe von Speicherzellen. Im Speicher 100 sind die geschriebenen Werte Abtastwerte eines analogen Eingangssignals Ain, das entweder einen analogen Datenwert oder einen digitalen Multibit-Datenwert repräsentiert. Alternativ kann das Eingangssignal ein digitales Signal sein. Ein Wiedergabevorgang liest und gibt sequentiell die Reihe von Werten (oder Abtastwerte aus dem Speicher 100) zum Reproduzieren der aufgezeichneten Sequenz (oder des Signals) aus. In einer Ausgestaltung der Erfindung verwendet der Speicher 100 Pipelines 110-1 bis 110-N in einer gestaffelten parallelen Weise beim Aufzeichnen oder Wiedergeben, um eine hohe Schreib- oder Lesedatentransferrate zu erzielen. Ein alternativer Wiedergabevorgang führt parallele Lesevorgänge in den Pipelines 110 durch, schiebt aber die aus den Speicherzellen gelesenen Werte seriell hinaus.
  • Eine Timing-Schaltung 140 beginnt mit Vorgängen in den Pipelines 110. In der beispielhaften Ausgestaltung der Erfindung beinhaltet die Timing-Schaltung 140 ein OR-Gate 142 sowie N Flipflops 144-1 bis 144-N, die zu einem Ring zusammengeschaltet sind, so dass die Timing-Schaltung 140 als Schieberegister fungiert. Die Flipflops 144-1 bis 144-N entsprechen jeweils den Lese/Schreib-Pipelines 110-1 bis 110-N und beginnen die entsprechenden Pipelines 110 bei einem Schreibvorgang an ansteigenden Flanken von Ausgangssignal SR1 bis SRN. Der Schreibschaltkomplex im Speicher 100 beinhaltet einen Schaltkomplex in jeder Pipeline 110 sowie einen Schreibspannungsgenerator 150, den die Pipelines 110-1 bis 110-N gemeinsam nutzen. Im Speicher 100 erzeugt der Schreibspannungsgenerator 150 zwei Schreibsignale Vpp und Vvfy vom Eingangssignal Ain. Das Schreibsignal Vpp erzeugt eine Programmierspannung, die der Schreibschaltkomplex beim Programmieren an das Steuergatter einer Speicherzelle anlegt, um die Schwellenspannung der Speicherzelle zu ändern. Die Spannung des Schreibsignals Vpp entspricht unmittelbar dem aktuellen Pegel des Eingangssignals Ain.
  • Der Schreibspannungsgenerator 150 wählt gewöhnlich einen höheren Spannungspegel für Vpp, wenn eine höhere Schwellenspannung geschrieben wird. Eine geeignete Wahl der Spannung Vpp macht die Programmierzeit zum Schreiben eines präzisen Analogwertes nahezu unabhängig von der Zielschwellenspannung. Somit ist die Schreibauflösung über den Schwellenspannungsbereich gleichförmig. Anhand des Schreibsignals Vvfy, das eine Spannung hat, die der auf die Speicherzelle zu schreibenden Zielschwellenspannung entspricht, wird akkurat bestimmt, wann die Zielschwellenspannung erreicht ist, wonach der Schreibvorgang stoppt. Insbesondere minimiert ein interaktiver Programmieren-und-Prüfen-Schreibprozess wie nachfolgend beschrieben die Effekte einer Speicherzellenvariation. Alternativ stoppt ein zeitlich gesteuerter Schreibprozess den Schreibprozess nach einer bestimmten Zeit und benötigt kein Schreibsignal Vvfy oder den Schaltkomplex in Verbindung mit dem Generierungs- oder Haltesignal Vvfy. In diesem Fall reicht eine einzige Abtast-Halte-Schaltung pro Pipeline aus.
  • In der beispielhaften Ausgestaltung der Erfindung beinhaltet der Generator 150 einen Spannungsschieber, der das Eingangssignal Ain linear, z.B. in einem Bereich von 3 bis 6 Volt, auf das Signal Vpp in einem Bereich von 9 bis 12 Volt und das Signal Vvfy in einem Bereich von 3 bis 6 Volt abbildet. Spannungsgeneratoren für Schreibschaltungen in analogen Speichern oder Speichern mit mehreren Bits pro Zelle sind ausführlicher im US-Patent mit der Seriennummer 5,687,115 beschrieben.
  • Der Schreibschaltkomplex in jeder Pipeline 110 beinhaltet einen Reihendecoder 132, einen Spaltendecoder 134, eine Leseverstärkerschaltung 136, eine Reihenleitungsspannungsauswahlschaltung 138 sowie Abtast-Halte-Schaltungen 121 und 122. Multiplexer 123 und 124 sind mit Abtast-Halte-Schaltungen 121 und 122 gekoppelt und wählen jeweils Trigger-Signale und Eingangssignale für die Abtast-Halte-Schaltungen 121 und 122. Für einen Schreibvorgang wählt der Multiplexer 123 den Ausgang des assoziierten Flipflops 144 zum Triggern beider Abtast-Halte-Schaltungen 121 und 122, und die Eingangswahlschaltung 124 wählt die Signale Vpp und Vvfy und legt sie an jeweilige Eingangsanschlüsse der Abtast-Halte-Schaltungen 121 und 122 an. Wenn das Ausgangssignal von dem assoziierten Flipflop 144 seinen Zustand ändert, dann tasten die Abtast-Halte-Schaltungen 121 und 122 die aktuellen Spannungen der jeweiligen Schreibsignale Vpp und Vvfy ab und speichern sie. Die Spannungswahlschaltung 138, die die geeignete Vorspannung wählt, die der Reihendecoder 132 an die gewählte Reihenleitung anlegt, wählt während eines Schreibvorgangs die Spannung von einer Auswahlschaltung 126. Die Auswahlschaltung 126 alterniert zwischen gewählten gespeicherten Signalen Vpp und Vvfy jeweils von Abtast-Halte-Schaltungen 121 und 122 während eines Schreibvorgangs, wie nachfolgend ausführlicher beschrieben wird.
  • 2 zeigt Timing-Diagramme für einen Aufzeichnungsprozess im Speicher 100. Zunächst setzt ein Signal RESET die Flipflops 144 zurück, und die Speicher-Arrays 130 werden für Schreibvorgänge vorbereitet. Für die meisten nichtflüchtigen Speicher wie EEPROM, EPROM oder Flash-Speicher beinhaltet die Vorbereitung für einen Schreibvorgang das Löschen von Speicherpositionen, auf die Informationen geschrieben werden. Für den Aufzeichnungsbeginn wird das Signal RESET weggenommen, und ein Impuls 205 in einem Eingangssignal ENABLE wird im H-Zustand für etwa einen Taktzyklus eines Taktsignals SAMPLECLK auf das OR-Gate 142 aufgedrückt. Das OR-Gate 142 erzeugt den Enable-Impuls 205 als Eingangssignal zum Flipflop 144-1 und ein Ausgangssignal SR1 von Flipflop 144-1 geht an einer ansteigenden Flanke 210 des Signals SAMPLECLK in den H-Zustand, das während des Impulses 205 im Signal ENABLE auftritt. Als Reaktion auf die nächste ansteigende Flanke 22G des Abtasttakts SAMPLECLK nimmt der Flipflop 144-1 das Signal SR1 weg, und der Flipflop 144-2 drückt das Signal SR2 auf. Somit propagiert ein Impuls durch die Flipflops 144-1 bis 144-N, und die Signale SR1 bis SRN triggern nacheinander die Abtast-Halte-Schaltungen 121 und 122 in den Pipelines 110-1 bis 110-N. So beginnt jede Pipeline 110 mit dem Abtasten von Schreibsignalen Vpp und Vvfy zu unterschiedlichen Zeitpunkten. Der letzte Flipflop 144-N wird mit einem Eingangsanschluss des OR-Gates 142 gekoppelt, so dass das Signal SR1 wieder nach dem Signal 5RN aufgedrückt wird. Der Aufzeichnungsprozess setzt das Starten von Schreibvorgängen durch zyklisches Triggern von Abtast-Halte-Schaltungen 121 und 122 Pipeline für Pipeline fort, bis das Signal RESET den Impuls daran hindert, um den Ring von Flipflops 144 zu propagieren.
  • Während eines Schreibvorgangs tasten Abtast-Halte-Schaltungen 121 und 122 in den Pipelines 110-1 bis 110-N Schreibsignale Vpp und Vvfy als Reaktion auf die entsprechenden Signale SR1 bis SRN ab. Wenn das Signal SR1 zum Zeitpunkt 210 aufgedrückt wird, dann tasten die Abtast-Halte-Schaltungen 121 und 122 in der Pipeline 110-1 Schreibsignale Vpp und Vvfy ab und die Pipeline 110-1 beginnt mit dem Schreiben eines Wertes von Signal Ain in einer Speicherzelle von Array 130-1, das im Intervall 215 erscheint. Wenn das Signal SR2 zum Zeitpunkt 220 aufgedrückt wird, dann tasten die Abtast-Halte-Schaltungen 121 und 122 in der Pipeline 110-2 Schreibsignale Vpp und Vvfy ab, und die Pipeline 110-2 beginnt mit dem Schreiben eines Wertes von Signal Ain in einer Speicherzelle von Array 130-2, das im Intervall 225 erscheint. Die Spannungsauswahlschaltungen 138 jeder Reihe verwenden die abgetasteten Werte der Schreibsignale Vpp und Vvfy vom Multiplexer 126 für einen Schreibprozess, der die Schwellenspannung einer gewählten Speicherzelle auf eine Zielschwellenspannung setzt. Die Zielschwellenspannung ist der Pegel, der die Spannung des Eingangssignals Ain repräsentiert, wenn die Schreibsignale Vpp und Vvfy abgetastet wurden.
  • Ein beispielhafter Schreibprozess beinhaltet das Erzeugen einer Reihe von Programmierimpulsen, die mit Prüfzyklen verschachtelt sind. Bei jedem Programmierimpuls wählt der Multiplexer 126 den Vpp-Abtastwert aus der Abtast-Halte-Schaltung 121, und der Reihendecoder 132 legt die abgetastete Spannung an eine Reihenleitung an, die gemäß einem Eingangsadresssignal gewählt wurde, das eine gewählte Speicherzelle in der Array 130 identifiziert. Die Spannung Vpp liegt gewöhnlich im Bereich von 9 bis 12 Volt. Der Reihendecoder 132 erdet ungewählte Reihenleitungen. Der Spaltendecoder 134 legt eine Programmierspannung Vpc (gewöhnlich zwischen 5 und 6 Volt) an die mit der gewählten Speicherzelle verbundene Spaltenleitung an und erdet ungewählte Spaltenleitungen. Der Decoder 172 erdet die Source-Leitung des die gewählte Speicherzelle enthaltenden Sektors. Die Kombination der an Steuergate, Source und Drain der gewählten Speicherzelle während eines Programmierimpulses angelegten Spannungen bewirkt eine Speicherspur-Heißelektroneninjektion in das floatende Gate der gewählten Speicherzelle und erhöht die Schwellenspannung der gewählten Speicherzelle.
  • Während eines Prüfzyklus wählt der Multiplexer 126 den Vvfy-Abtastwert von der Abtast-Halte-Schaltung 122. Der Reihendecoder 132 legt den abgetasteten Pegel des Signals Vvfy an die gewählte Reihenleitung an und erdet die ungewählten Reihenleitungen. Der Spaltendecoder 134 legt eine Lesespannung Vrc (gewöhnlich etwa 1 bis 2 Volt) an und verbindet den Leseverstärker 136 mit der gewählten Spaltenleitung. Der Spaltendecoder 134 erdet die ungewählten Spaltenleitungen. Der Decoder 172 erdet weiter die Source-Leitung, die mit der gewählten Speicherzelle gekoppelt ist. Wenn die Programmierimpulse die Schwellenspannung der gewählten Speicherzelle auf den abgetasteten Pegel von Signal Vvfy anheben, dann erfasst der Leseverstärker 136 während eines Prüfzyklus, dass die Speicherzelle nicht leitet, und sendet ein Signal zum Stoppen weiterer Programmierimpulse. Der Programmierimpuls kann beispielsweise dadurch gestoppt werden, dass ein weiteres Anlegen der abgetasteten Spannung Vpp an die gewählte Reihenleitung, das Anlegen von Spannung Vpc an die gewählte Spaltenleitung oder beides gestoppt wird. Somit erhöhen die Programmierimpulse die Schwellenspannung auf den Pegel der abgetasteten Spannung Vvfy und werden dann gestoppt. Die verfügbare Schreibzeit für eine Pipeline 110 ist das N-fache der Periode des Taktsignals SAMPLECLK, wobei N die Zahl der Pipelines 110 ist. Demgemäß kann die Zahl der Pipelines gemäß der benötigten Schreibzeit pro Pipeline 110 und der gewünschten Schreibhäufigkeit gewählt werden. Bei einer Schreibzeit Tw von 10 μs werden z.B. 64 Pipelines benötigt, um eine Abtastrate von 6,4 MHz zu erzielen.
  • Die Pipelines 110-1 bis 110-N beginnen mit Schreibvorgängen zu unterschiedlichen Zeitpunkten und überlappen Schreibvorgänge in unterschiedlichen Abschlussphasen. Um dies zuzulassen, werden die Speicher-Arrays 130-1 bis 130-N so getrennt, dass Source-, Drain- und Steuergatterspannungen, die in einer Pipeline 110 erzeugt werden, keine Spannungen in anderen Pipelines 110 stören. Gemäß einem Aspekt der Erfindung wird der Speicher 110 weiterhin als einzelne integrierte Schaltung hergestellt. Alternativ kann der Speicher 100 als zwei oder mehr integrierte Schaltungen hergestellt werden, die jeweils eine oder mehrere Aufzeichnungspipelines enthalten. So können beispielsweise N separate integrierte Schaltungen mit diskreten Schieberegistern und Logik zusammengeschaltet werden.
  • Ein Vorteil von Schreibvorgängen von Pipeline zu Pipeline ist die Reduzierung des gesamten Peak-Programmierstroms, den eine interne Ladungspumpenschaltung zu Spaltendecodern 134 speisen muss. Insbesondere nimmt eine Speicherzelle mehr Programmierstrom von einem Spaltendecoder 134 (d.h. die Programmierspannung Vpc) während der anfänglichen Programmierpulse auf, wenn sich die Schwellenspannung der Speicherzelle am meisten von ihrer Zielschwellenspannung unterscheidet. Während sich die Schwellenspannung einer Zelle der Zielschwellenspannung nähert, fällt der Programmierstrom erheblich ab. Demgemäß nimmt, wenn Schreibvorgänge in N Pipelines gleichzeitig gestartet werden, die Pipeline einen Spitzenstrom auf, der das N-fache des maximalen in einer einzelnen Pipeline gezogenen Stroms Imax ist. Durch Starten der Schreibvorgänge zu unterschiedlichen Zeitpunkten und Überlappen der Schreibvorgänge in verschiedenen Abschlussphasen werden der Spitzenstrom und seine zugehörigen Rauschspitzen in der Stromversorgung reduziert, weil die meisten Pipelines viel weniger Strom als den Maximalstrom Imax ziehen und die anfänglichen hohen Programmierströme der programmierten Speicherzellen über die Zeit verteilt und gemittelt werden.
  • Typischerweise erfolgt das Lesen von nichtflüchtigem analogem Speicher schneller als das Schreiben, und ein sequentielles Lesen von Speicherzellen ohne Überlappung der Lesevorgänge kann ausreichen, um einen Analogwert aus einer Speicherzelle zu lesen oder ein analoges Signal aus einer Reihe von Speicherzellen wiederzugeben. Demgemäß können Pipelines 110 sequentiell für nicht überlappende Lesevorgänge von Speicher-Arrays 130-1 bis 130-N verwendet werden. Ein Wiedergabesystem mit Pipeline-strukturierten oder parallelen Lesevorgängen kann jedoch höhere Abtasthäufigkeiten oder langsamere (und gewöhnlich genauere) Lesevorgänge ermöglichen. Gemäß einem Aspekt der Erfindung können parallele oder Pipeline-strukturierte Lesevorgänge Leseschaltungen gemeinsam nutzen, wodurch die für jede Pipeline benötigte Schaltungsfläche und IC-Speicherkapazität insgesamt verringert werden.
  • Ein beispielhafter Leseprozess in einer Pipeline 110 ändert langsam die Steuergatterspannung einer gewählten Speicherzelle, bis sich die Leitfähigkeit der gewählten Speicherzelle ändert. Wenn sich die Leitfähigkeit ändert, dann ist die Steuergatterspannung etwa gleich der Schwellenspannung der gewählten Speicherzelle und kann in eine den gelesenen Wert repräsentierende Ausgangsspannung umgewandelt werden. Im Speicher 100 beinhaltet der Leseschaltkomplex eine Spannungsrampenschaltung 160, die die Steuergatterspannungen für Pipelines 110 rampenartig ändert. In einem in 3 illustrierten ersten beispielhaften Wiedergabevorgang führt eine Bank (die Hälfte oder ein anderer Bruchteil) der Pipelines parallele Lesevorgänge durch und speichert gelesene Lesewerte in Abtast-Halte-Schaltungen 121. So beinhaltet beispielsweise in einer Ausgestaltung der Erfindung der Speicher 100 acht Pipelines 110, die in zwei Bänke von vier unterteilt werden. Während eine Bank der Pipelines 110 Lesevorgänge durchführt (z.B. Pipelines 110-5 bis 110-8), steuert die Timing-Schaltung 140 die sequentielle Ausgabe von zuvor gelesenen Werten von Abtast-Halte-Schaltungen 121 in einer anderen Bank von Pipelines (z.B. Pipelines 110-1 bis 110-4). Dieser Ansatz beseitigt die Lesezugriffszeit als begrenzenden Faktor der Leseausgaberate dadurch, dass die Leseausgaberate gleich der Frequenz des Abtasttakts SAMPLECLK gemacht wird. Die benötigte Lesezeit, einschließlich der Reihenleitungs-RC-Verzögerung und der Leseverstärkerverzögerung, beeinflusst lediglich die Latenz des Lesevorgangs. So können die Daten mit einer hohen Taktrate ausgelesen werden.
  • Der beispielhafte Wiedergabeprozess beginnt zum Zeitpunkt 300, wenn ein Signal READ aufgedrückt wird, und die Spannungsrampenschaltung 160 beginnt mit dem Erhöhen des Lesesignals Vsr gerade unterhalb einer Mindestschwellenspannung VTmin, die Informationen repräsentiert, die in einer Speicherzelle gespeichert sind, in Richtung auf eine maximale Schwellenspannung VTmax, die in einer Speicherzelle gespeicherte Informationen repräsentiert. Das linear ansteigende Signal Vsr ist nur ein Beispiel für eine Methode, in der die Rampenschaltung 160 das Signal Vsr variieren kann. Alternativ kann die Rampenschaltung 160 das Signal Vsr über einen Bereich monoton erhöhen oder verringern, der die Spannungen VTmax und Vtmin enthält. Das Signal Vsr hat vorzugsweise einen Spannungsbereich, der unter der Spannung VTmin anfängt und bis über die Spannung VTmax hinausgeht. Sobald Signal Vsr die Obergrenze seines Bereichs erreicht, setzt die Rampenschaltung 160 das Signal Vsr schnell zurück auf seine Mindestspannung. Zum Zeitpunkt 310 beginnt Signal Vsr dann langsam wieder anzusteigen. Zwischen den Zeitpunkten 300 und 310 führt jede der Pipelines 110-1 bis 110-4 einen Lesevorgang durch und die Pipelines 110-5 bis 110-8 sind inaktiv. In der einen Lesevorgang durchführenden Bank wählen die Spannungsauswahlschaltungen 138 und die zugehörigen Reihendecoder 132 das Signal Vsr und legen es an die Reihenleitungen an, die mit den gewählten Speicherzellen in den zugehörigen Arrays 130 verbunden sind. Für den Leseprozess kann dasselbe Adresssignal gleichzeitig an jede Array 130 (d.h. Reihen- und Spaltendecoder 132 und 134) angelegt werden, und Adresssignale zu jeder Array 130 werden nach jeder zweiten Rampe des Signals Vsr inkrementiert. Ungewählte Reihenleitungen werden geerdet. Gleichzeitig legen die Spaltendecoder 134 die Lesespannung Vrc an und verbinden Leseverstärker 136 mit den Spaltenleitungen, die mit den gewählten Speicherzellen gekoppelt sind. Für den Lesevorgang verbindet der Multiplexer 123 ein Trigger-Signal vom Leseverstärker 136 mit dem Taktanschluss der Abtast-Halte-Schaltung 121 und der Multiplexer 124 verbindet das Lesesignal Vsr mit dem Eingang der Abtast-Halte-Schaltung 121. Wenn die gewählte Speicherzelle in einer Array 130 die Leitfähigkeit wechselt, dann aktiviert der zugehörige Leseverstärker 136 die assoziierte Abtast-Halte- Schaltung 121, die dann die Spannung von Signal Vsr speichert. Das Abtasten von Signal Vsr kann zu jedem beliebigen Zeitpunkt während des Intervalls 300 bis 310 erfolgen. Wann es in einer bestimmten Pipeline 110 zu einer Abtastung kommt, hängt von dem von dieser Pipeline gelesenen Wert ab.
  • Zum Zeitpunkt 310 ist das Signal Vsr über den Bereich einschließlich VTmin und VTmax gelaufen und jede Pipeline 110-1 bis 110-4 in der ersten Bank hat einen Lesewert in der Abtast-Halte-Schaltung 121 gespeichert. Die Rampenschaltung 160 beginnt wieder, die Spannung von Signal Vsr zu erhöhen, so dass zwischen Zeitpunkt 310 und Zeitpunkt 320 die Pipelines 110-5 bis 110-8 Lesevorgänge durchführen können. Zwischen den Zeitpunkten 310 und 320 führen die Pipelines 110-1 bis 110-4 keine Lesevorgänge durch, aber die Timing-Schaltung 140 steuert die Ausgabe der zuvor gelesenen Werte von den Pipelines 110-1 bis 110-4. Insbesondere wird ein Impuls 305 im Signal ENABLE aufgedrückt, so dass der Flipflop 144-1 das Ausgangssignal SR1 zum Zeitpunkt 310 aufdrückt. Wenn die Signale READ und SR1 aufgedrückt werden, dann sendet die Abtast-Halte-Schaltung 121 in der Pipeline 110-1 ein Ausgangssignal Aout über den Multiplexer 126 und das AND-Gate 128. In der nächsten Periode von Signal SAMPLECLK wird das Signal SR1 weggenommen und Signal SR2 wird aufgedrückt. Wenn die Signale READ und SR2 aufgedrückt werden, dann erzeugt die Abtast-Halte-Schaltung 121 in Pipeline 110-2 das Ausgangssignal Aout. In vier Perioden des Signals SAMPLECLK werden alle Daten von den Pipelines 110-1 bis 110-4 ausgegeben, und die Pipelines 110-5 bis 110-8 vollenden vier Lesevorgänge. Zwischen den Zeitpunkten 320 und 330 lesen die Pipelines 110-1 bis 110-4 den nächsten Satz von Werten aus den Arrays 130-1 bis 130-4, und die Abtast-Halte-Schaltung 121 in den Pipelines 110-5 bis 110-8 erzeugt das Signal Aout.
  • Gemäß einem weiteren Aspekt der Erfindung können die Abtast-Halte-Schaltungen 122 aus Referenzspeicherzellen gelesene Werte abtasten, während die Abtast-Halte-Schaltungen 121 die Schwellenspannungen der gelesenen Speicherzellen abtasten. Ein mit den Ausgangsanschlüssen der Abtast-Halte-Schaltungen 121 und 122 in einer Pipeline 110 gekoppelter Differenzverstärker (nicht dargestellt) kann dann die Ausgangsspannung Aout anhand der Differenz in einem aus einer Speicherzelle gelesenen Wert und einem aus einer Referenzzelle gelesenen Referenzwert erzeugen. Die Verwendung der Differenz zum Erzeugen des Ausgangssignals Aout storniert kann von der systematischen Variation in der Leistung der Speicherarrays 130 [sic].
  • 4 illustriert einen zweiten beispielhaften Lesevorgang. Der zweite Lesevorgang verwendet beide Abtast-Halte-Schaltungen 121 und 122. Der Lesevorgang von 4 beginnt zum Zeitpunkt 400, wenn Signal READ aufgedrückt wird und die Rampenschaltung 160 mit dem Erhöhen der Spannung von Signal Vsr beginnt. Während eines Intervalls zwischen den Zeitpunkten 400 und 410 läuft ein Signal Vsr von Spannung VTmin zu VTmax und alle Pipelines 110 führen Lesevorgänge durch. Die an jede Array angelegten Adresssignale können alle gleich sein, so dass jede Pipeline 110 Speicherzellen mit derselben relativen Position in der Array 130 liest. Die Multiplexer 123 wählen den Leseverstärker 136 zum Triggern des Abtastens durch die Abtast-Halte-Schaltungen 121 und sperren das Triggern der Abtast-Halte-Schaltungen 122. Der Multiplexer 124 legt das Lesesignal Vsr an die Eingangsanschlüsse der Abtast-Halte-Schaltungen 121 an. Somit werden die Ergebnisse der Lesevorgänge in Abtast-Halte-Schaltungen 121 gespeichert. Zum Zeitpunkt 410 ist der erste Satz von Lesevorgängen abgeschlossen und das an die Arrays 130 angelegte Adresssignal wird inkrementiert und ein zweiter Satz von Lesevorgängen beginnt. Die Multiplexer 123 sperren dann das Triggern der Abtast-Halte-Schaltungen 121 und wählen den Leseverstärker 136 zum Triggern der Abtast-Halte-Schaltungen 122. Der Multiplexer 124 legt das Lesesignal Vsr an die Eingangsanschlüsse der Abtast-Halte-Schaltungen 122 an. Der zweite Satz von Lesevorgängen speichert somit Werte, die in den Abtast-Halte-Schaltungen 122 gelesen wurden, und konserviert den Wert, der bereits in der Abtast-Halte-Schaltung 121 ist.
  • Gleichzeitig mit dem zweiten Satz von Lesevorgängen werden die während des ersten Satzes von Lesevorgängen gelesenen Werte aus den Abtast-Halte-Schaltungen 121 ausgegeben. Insbesondere wird an oder vor dem Zeitpunkt 410 ein Impuls im Signal ENABLE aufgedrückt, um mit den Ausgabevorgängen zu beginnen. Zwischen den Zeitpunkten 400 und 410 wählen die Multiplexer 126 den Wert aus den Abtast-Halte-Schaltungen 121. Jedes AND-Gate 128 gibt die Ausgabe des gewählten Wertes aus der assoziierten Abtast-Halte-Schaltung 121 frei, wenn der zugehörige Flipflop 144 das assoziierte eine der Signale SR1 bis SRN aufdrückt. Anfänglich drückt der Flipflop 144-1 das Signal SR1 an der ansteigenden Flanke des Abtasttaktsignals SAMPLECLK auf, und die Pipeline 110-1 erzeugt das Ausgangssignal Aout. Jeder Zyklus des Signals SAMPLECLK veranlasst danach den nächsten Flipflop 144, die Ausgabe aus der nächsten Pipeline 110 freizugeben.
  • Zum Zeitpunkt 420 ist der zweite Satz von Lesevorgängen abgeschlossen und alle Werte, die im ersten Satz von Lesevorgängen gelesen wurden, sind ausgegeben. Die Rollen der Abtast-Halte-Schaltungen 121 und 122 werden in jeder Pipeline 110 umgekehrt. Demgemäß empfangen die Abtast-Halte-Schaltungen 121 zwischen den Zeitpunkten 420 und 430 aus den Arrays 130 gelesene Werte und die Abtast-Halte-Schaltungen 122 erzeugen das Ausgangssignal Aout. Ein konstanter Datenfluss kann dadurch gewahrt werden, dass die Rollen der Abtast-Halte-Schaltungen 121 und 122 für jeden Satz von parallelen Lesevorgängen wiederholt vertauscht werden. Alternativ können zum Zeitpunkt 410 alle abgetasteten Werte aus den Abtast-Halte-Schaltungen 121 zu assoziierten Abtast-Halte-Schaltungen 122 für die sequentielle Ausgabe zwischen den Zeitpunkten 410 und 420 übertragen werden. Durch das Übertragen der abgetasteten Werte zu Abtast-Halte-Schaltungen 122 werden die Abtast-Halte-Schaltungen 121 für einen Satz von Lesevorgängen befreit, die zwischen den Zeitpunkten 410 und 420 erfolgen. Ein Vorteil, den der Wiedergabeprozess von 4 gegenüber dem von 3 hat, ist, dass der Prozess von 4 nur halb so viele Pipelines 110 benötigt, um dieselbe konstante Informationsausgaberate zu bewahren. Da jedoch Schreibvorgänge langsamer zu sein neigen als Lesevorgänge, ist die Schreibgeschwindigkeit gewöhnlich der bestimmende Faktor bei der Ermittlung der Anzahl von Pipelines, die zum Halten einer spezifischen Informationsflussrate benötigt werden, und der erste Prozess kann einen einfacheren Steuerschaltkomplex für Lesevorgänge zulassen.
  • Die 5A und 5B zeigen alternative Wellenformen für Signal Vsr, die für die Lesevorgänge der 3 und 4 geeignet sind. In den 3 und 4 hat das Signal Vsr eine langsame Tief-zu-hoch-Rampe. Die Wellenform von 5A beinhaltet eine langsame Hoch-zu-tief-Spannungsrampe (d.h. ein Gefälle). Mittels Signal Vsr von 5A erfasst der Leseverstärker 136 den Übergang der Zielspeicherzelle von leitend zu nichtleitend während des Abfalls des Lesesignals Vsr, und als Reaktion auf den Übergang triggert der Leseverstärker 136 die Abtast-Halte-Schaltung 121 oder 122. Für die in den 3 und 4 gezeigte Wellenform erfasst der Leseverstärker 136 den Übergang der Zielspeicherzelle von nichtleitend zu leitend.
  • Die Wellenform für Signal Vsr in 5B beinhaltet eine langsam ansteigende (tief zu hoch) und eine langsam abfallende (hoch zu tief) Rampe. Demgemäß kann der Leseverstärker 136 eine gewählte Speicherzellenänderung von nichtleitend zu leitend und von leitend zu nichtleitend erfassen. Der Leseverstärker 136 kann dann die Abtast- Halte-Schaltung 121 zum Abtasten von Signal Vsr für den Übergang von nichtleitend zu leitend triggern und kann die Abtast-Halte-Schaltung 122 zum Abtasten des Signals Vsr für den Übergang von leitend zu nichtleitend triggern. Der zusätzliche Schaltkomplex (nicht dargestellt) kann zum Mitteln der beiden abgetasteten Spannungen und zum Erzeugen des Ausgangssignals Aout hinzugefügt werden. Eine solche Mittelwertbildung kann evtl. Offset und Hysterese zwischen den beiden Übergängen eliminieren oder minimieren.
  • 5B illustriert auch einen alternativen Wiedergabeprozess, der den Beginn von Lesevorgängen in Pipelines 110 staffelt. So beginnt z.B. der Wiedergabeprozess einen Lesevorgang in Pipeline 110-1 zum Zeitpunkt 511 am Anfang einer ansteigenden Rampe 510 im Signal Vsr. Der Lesevorgang für Pipeline 110-1 wird durch die ansteigenden und abfallenden Rampen 510 und 520 von Signal Vsr fortgesetzt und endet zum Zeitpunkt 521. Zum Zeitpunkt 521 gibt die Pipeline 110-1 einen Mittelwert einer Spannung aus, die die Abtast-Halte-Schaltung 121 abgetastet hat, als die gewählte Speicherzelle von nichtleitend zu leitend überging, und einer Spannung, die die Abtast-Halte-Schaltung 122 abgetastet hat, als die gewählte Speicherzelle von leitend zu nichtleitend überging. Die Pipeline 110-2 beginnt einen Lesevorgang zum Zeitpunkt 512 nach dem Start der ansteigenden Rampe 510 und setzt den Lesevorgang durch die abfallende Rampe 520 und einen Teil einer ansteigenden Rampe 530 fort, bevor er zum Zeitpunkt 522 endet. Da der Lesevorgang von Pipeline 110-2 beginnt, nachdem Signal Vsr evtl. über VTmin hinaus angestiegen ist, kann die gewählte Speicherzelle in Pipeline 110-2 zum Zeitpunkt 512 leitend oder nichtleitend sein, je nach der Schwellenspannung der gewählten Speicherzelle. Somit beobachtet der Leseverstärker 136 den Übergang zwischen den Zuständen nichtleitend zu leitend der gewählten Speicherzelle an der ansteigenden Rampe 510 oder der ansteigenden Rampe 530. Wenn ein Übergang an der Neigung 530 festgestellt wird, dann werden Werte, die die Abtast-Halte-Schaltung 121 für einen vorherigen (evtl. unerwünschten) Übergang von nichtleitend zu leitend abgetastet haben, überschrieben. Zum Zeitpunkt 522 gibt die Pipeline 110-2 einen Mittelwert der an zwei Übergängen abgetasteten Spannungen aus.
  • Jeder Lesevorgang für eine Pipeline 110 wird um eine Zeit DT vom Anfang eines vorherigen Lesevorgangs in einer anderen Pipeline 110 versetzt. Für einen verlängerten oder kontinuierlichen Wiedergabevorgang ist das Intervall DT etwa gleich der Zeit RT, die für einen Lesevorgang benötigt wird, dividiert durch die Zahl N der Pipelines 110.
  • Demgemäß können N Pipelines zyklisch Lesevorgänge ohne Ruhezeiten durchführen. Ein Vorteil des Lesevorgangs von Pipeline zu Pipeline ist, dass die Zeit zwischen dem Abtasten von Signal Vsr und der Ausgabe als Signal Aout über die Pipelines 110 gleichmäßiger ist. Wenn die Pipelines 110 Lesevorgänge parallel durchführen, dann muss die letzte Pipeline 110, die einen Ausgabewert erzeugt, häufig einen Abtastwert am längsten halten, und dieser Abtastwert kann sich stärker verschlechtern als Abtastwerte, die von anderen Pipelines 110 ausgegeben werden. Das versetzte oder gestaffelte Starten von Lesevorgängen ist nicht auf das Signal Vsr mit der Wellenform von 5B begrenzt, sondern kann auch benutzt werden, wenn das Signal Vsr andere Wellenformen hat, wie z.B. die in den 4 und 5A gezeigten Wellenformen.
  • Für die oben beschriebenen Lesevorgänge ist das Ausgabesignal Aout die aus den gewählten Speicherzellen gelesene Schwellenspannung. Wenn die Schwellenspannung der gewünschte Ausgang ist, dann kann das Signal Aout ohne weitere Konvertierung als Ausgang verwendet werden. Alternativ gibt es ein Mapping zwischen den Schwellenspannungen von Speicherzellen und dem Spannungsbereich des gewünschten ausgegebenen Analogsignals, und ein Konverter wie z.B. ein Spannungsschieber oder ein Verstärker kann das Signal Aout nach Bedarf konvertieren. Diese Konversion ist gewöhnlich umgekehrt zur Spannungskonversion, die der Schreibspannungsgenerator 150 durchführt, wenn er das Schreibsignal Vvfy vom Eingangssignal Ain erzeugt. In einer alternativen Speicherausgestaltung erzeugt die Spannungsrampenschaltung 160 das Signal Vsr und ein zweites Lesesignal, das das Ergebnis des Anwendens der gewünschten Konversion auf das Signal Vsr ist. Dieses zweite Lesesignal kann mit den Eingangsanschlüssen der Abtast-Halte-Schaltungen 121 und 122 zum Abtasten gekoppelt werden, wenn die Leitfähigkeit des gewählten Speichers wechselt. Demgemäß können die abgetasteten Werte des zweiten gelesenen Signals von den Abtast-Halte-Schaltungen 121 und 122 als Signal Aout ausgegeben werden, und das Signal Aout benötigt keine Konversion.
  • Der Speicher 100 wurde zwar im Zusammenhang mit dem Speichern von analogen Werten in Speicherzellen mit geringfügiger Änderung beschrieben, aber der Speicher 100 könnte auch mehrere Bits Informationen pro Speicherzelle speichern. Der Spannungsgenerator 150 kann insbesondere so gestaltet werden, dass er einen D/A-Wandler zum Empfangen eines digitalen Multibit-Signals und zum Konvertieren des digitalen Multibit-Signals in das analoge Signal Ain beinhaltet. Der Generator 150 kann dann Schreibsignale Vpp und Vvfy mit den geeigneten Programmier- und Prüfspannungen zum Schreiben des digitalen Multibit-Signals auf eine Speicherzelle erzeugen. Ein A/D-Wandler (nicht dargestellt) kann das analoge Ausgangssignal Aout in ein digitales Multibit-Signal konvertieren.
  • 6 zeigt einen Mehrere-Bits-pro-Zelle-Speicher 600 gemäß einer weiteren Ausgestaltung der Erfindung. Der Speicher 600 ist dem Speicher 100 ähnlich und beinhaltet N Schreib/Lese-Pipelines 610, die jeweils eine Speicher-Array 130 mit assoziiertem Reihendecoder 132, Spaltendecoder 134 und Leseverstärker 136 beinhalten. Die Arrays 130 sind Arrays von nichtflüchtigen Speicherzellen wie oben im Bezug auf Speicher 100 von 1 beschrieben. Der Speicher 600 verwendet jedoch Arrays 130 zum Speichern von mehreren Bits an digitalen Informationen in jeder Speicherzelle. Zum Aufnehmen von mehreren Bits pro Speicherzelle beinhaltet der Speicher 600 einen Schreibspannungsgenerator 650, der ein digitales Multibit-Signal Din empfängt, das einen Wert repräsentiert, der auf eine einzelne Speicherzelle geschrieben werden soll. Von dem Signal Din erzeugt der Generator 600 Schreibsignale Vpp und Vvfy mit den geeigneten Pegeln zum Schreiben des Wertes von Signal Din auf eine Speicherzelle. Jede Pipeline 610-1 bis 610-N beinhaltet Abtast-Halte-Schaltungen 121 und 122, die jeweils Werte von Signalen Vpp und Vvfy für Schreib- oder Aufzeichnungsvorgänge wie oben in Bezug auf Speicher 100 beschrieben abtasten und halten.
  • Aufzeichnungsvorgänge im Mehrere-Bits-pro-Zelle-Speicher 600 können große digitale Werte als eine Reihe von kleineren digitalen Werten speichern. Wenn z.B. jede Speicherzelle in den Arrays 130 vier Bits Informationen speichern kann, dann erfordert ein 32-Bit-Datenwert acht Speicherzellen zum Speichern. Ein Aufzeichnungsvorgang kann sequentiell acht 4-Bit-Schreibvorgänge in acht Pipelines 110 starten. Im Gegensatz zum analogen Fall, in dem lange Serien von Abtastwerten geschrieben werden, sind digitale Schreibvorgänge gewöhnlich von einer festen Größe gemäß einem Datenport des Speichers. Demgemäß kann die Periode des Taktsignals SAMPLECLK kürzer sein als die benötigte Schreibzeit, dividiert durch die Zahl N von Pipelines 110, unter der Voraussetzung, dass Aufzeichnungsvorgänge keine der Pipelines wieder zu verwenden brauchen.
  • Für Lesevorgänge erzeugt die Spannungsrampenschaltung 660 das Lesesignal Vsr mit einer Wellenform wie oben beschrieben und ein digitales Signal CT, das der Spannung von Signal Vsr entspricht. In einer beispielhaften Ausgestaltung beinhaltet die Spannungsrampenschaltung 660 einen D/A-Konverter mit einem Eingangsport, der mit einem Zähler gekoppelt ist. Signal CT ist das Ausgangssignal vom Zähler und Signal Vsr ist das Ausgangssignal vom D/A-Wandler. Die US-Patentanmeldung mit der Seriennummer 09/053,716, eingereicht am 1. April 1998, beschreibt ferner Leseschaltungen, die Zähler zum Lesen von Mehrere-Bits-pro-Zelle-Speichern beinhalten. Der Zähler zählt herauf oder herunter, um die Spannung von Signal Vsr zu erhöhen oder zu verringern. Die Spannungsrampenschaltung 660 legt das Lesesignal Vsr an die Multiplexer 138 an, die das Signal Vsr als die Reihenleitungsspannung für die gewählten Speicherzellen wählen. Die Spannungsrampenschaltung 660 legt das Zählsignal CT an die Flipflops 620 in den Pipelines 610 an. In einer alternativen Ausgestaltung können die Flipflops 620 durch Latches oder einen anderen digitalen Speicher ersetzt werden. Die Flipflops 620 in jeder Pipeline 610 haben Eingangsdatenanschlüsse, die das digitale Zählsignal CT empfangen, einen Taktanschluss, der mit dem Leseverstärker 136 gekoppelt ist, und einen Ausgangsdatenport, der mit einem Satz von AND-Gates 628 gekoppelt ist. Für den Lesevorgang legt der Reihendecoder das Signal Vsr an die gewählte Reihenleitung an, der Decoder 172 erdet die Source-Leitungen und der Spaltendecoder legt das Lesesignal Vrc an die gewählte Spaltenleitung an. Der Leseverstärker 136 erfasst, wenn das Signal Vsr den Pegel eines Wechsels der Leitfähigkeit der gewählten Zelle hat. Bei einem Übergang der gewählten Zelle taktet der Leseverstärker 136 die assoziierten Flipflops 620, und die Flipflops 620 registrieren einen digitalen Wert des Signals CT, der der Schwellenspannung der gewählten Speicherzelle entspricht. Zum Ausgeben des digitalen Wertes von einem Satz von Flipflops 620, während das Signal READ aufgedrückt ist, drückt der assoziierte Flipflop 140 in der Timing-Schaltung 140 ein Signal auf, das das AND-Gate 628 veranlasst, den Multibit-Digitalwert von Flipflop 620 als Ausgangssignal Dout zu leiten. Alternativ können alle oder mehrere Pipelines 610 gleichzeitig Bits ausgeben, die das Ausgangssignal Dout bilden. So können z.B. acht Pipelines 610, die vier Bits pro Speicherzelle speichern, ein 32-Bit-Ausgangssignal Dout bereitstellen.
  • 7 zeigt ein Blockdiagramm einer Abtast-Halte-Schaltung 700, die für Speicher gemäß den obigen Ausgestaltungen der Erfindung geeignet sind. Die Abtast-Halte-Schaltung 700 beinhaltet einen Eingangstransistor 710, einen Kondensator 720, einen Operationsverstärker 730 und eine One-Shot-Schaltung 740. Beim Betrieb wird ein abzutastendes Eingangssignal an einen Eingangsanschluss EIN angelegt. Wenn der Transistor 710 eingeschaltet ist, dann lässt es der Transistor 710 zu, dass das Eingangssignal den Kondensator 720 lädt oder entlädt. Der Operationsverstärker 730 legt ein Ausgangssignal mit derselben Spannung wie am Kondensator 720 an einen Ausgangsanschluss AUS an. Der Verstärker 730 verhindert auch Lecks zu oder von dem Kondensator 720 über den Anschluss AUS. Die One-Shot-Schaltung 740 empfängt ein Takt- oder Trigger-Signal am Taktanschluss TAKT, und eine spezifische Flanke im Taktsignal, z.B. eine ansteigende Flanke, erzeugt einen Impuls, der den Transistor 710 abschaltet, um den abgetasteten Wert im Kondensator 720 zu halten. Somit arbeitet die Abtast-Halte-Schaltung 700 als flankengetriggertes Bauelement, das der Leseverstärker 136 oder ein zugehöriger Flipflop 144 triggern kann, um die Abtastung des Eingangssignals zu bewirken.
  • Die Erfindung wurde zwar mit Bezug auf besondere Ausgestaltungen beschrieben, aber die Beschreibung ist lediglich ein Beispiel für die Anwendung der Erfindung und ist nicht als eine Beschränkung anzusehen. Insbesondere befasste sich zwar ein großer Teil der obigen Diskussion mit Speicherzellen, die N-Kanal-Floating-Gate-Transistoren enthalten, die von einem gelöschten Zustand durch Erhöhen der Schwellenspannungen der Floating-Gate-Transistoren programmiert werden, aber alternative Ausgestaltungen der vorliegenden Erfindung können auch andere Typen von Bauelementen wie z.B. P-Kanal-Bauelemente beinhalten und können Speicher enthalten, bei denen durch eine Programmierung einer Speicherzelle die Schwellenspannung der Zelle von einem gelöschten Zustand mit einer hohen Schwellenspannung verringert wird. Ferner beinhalten zwar beschriebene Ausgestaltungen der Erfindung einen Schreib- und Lese-Schaltkomplex, den mehrere Schreib/Lese-Pipelines gemeinsam nutzen, aber in alternativen Ausgestaltungen der Erfindung kann nur ein Leseschaltkomplex oder nur ein Schreibschaltkomplex gemeinsam genutzt werden, so dass jede Pipeline eine komplette Schreibschaltung oder eine komplette Leseschaltung beinhaltet. Verschiedene andere Adaptionen und Kombinationen von Merkmalen der offenbarten Ausgestaltungen liegen im Rahmen der Erfindung gemäß Definition in den nachfolgenden Ansprüchen.

Claims (16)

  1. Speicher, der Folgendes umfasst: eine Mehrzahl von Pipelines (110), wobei jede Pipeline (110) Folgendes umfasst: eine Array (130) von nichtflüchtigen Speicherzellen; eine erste Abtast-Halte-Schaltung (121); eine zweite Abtast-Halte-Schaltung (122); eine Auswahlschaltung (126), die während eines Schreibvorgangs als Reihenleitungsspannung aus einem Satz von Spannungen einschließlich einer ersten Spannung (Vpp) von der ersten Abtast-Halte-Schaltung und einer zweiten Spannung (Vvfy) von der zweiten Abtast-Halte-Schaltung auswählt; einen Reihendecoder (132), der mit der Array und der Auswahlschaltung gekoppelt ist, wobei der Reihendecoder eine Reihenleitung auswählt und die Reihenleitungsspannung von der Auswahlschaltung an die gewählte Reihenleitung anlegt; und einen Spannungsgenerator (150), der ein erstes Schreibsignal mit einer Spannung, die von einem in den Spannungsgenerator (150) eingehenden Datensignal (Ain) abhängig ist, und ein zweites Schreibsignal erzeugt, wobei jede erste Abtast-Halte-Schaltung in den Pipelines (110) zum Abtasten des ersten Schreibsignals gekoppelt ist, und wobei jede zweite Abtast-Halte-Schaltung (122) in den Pipelines (110) zum Abtasten des zweiten Schreibsignals gekoppelt ist.
  2. Speicher nach Anspruch 1, ferner umfassend eine Synchronisationsschaltung (140), die mit der ersten (121) oder der ersten (121) und der zweiten (122) Abtast-Halte-Schaltung in der Pipeline (110) gekoppelt ist, wobei die Synchronisationsschaltung (140) steuert, wann jede erste Abtast-Halte-Schaltung (121) das erste Schreibsignal abtastet und/oder wann jede zweite Abtast-Halte-Schaltung (122) das zweite Schreibsignal abtastet.
  3. Speicher nach Anspruch 2, wobei die Pipelines eine sequentielle Reihenfolge haben und die Synchronisationsschaltung (140) sequentiell bewirkt, dass die erste (121) oder die erste (121) und die zweite (122) Abtast-Halte-Schaltung das erste oder das erste und das zweite Schreibsignal in einer sequentiellen Reihenfolge je nach der die Abtast-Halte-Schaltungen (121, 122) enthaltenden Pipeline (110) abtastet.
  4. Speicher nach Anspruch 1, wobei: die erste Spannung an die gewählte Reihenleitung angelegt wird, um eine Schwellenspannung in einem mit der gewählten Reihenleitung gekoppelten gewählten Speicher zu ändern; und die zweite Spannung an die gewählte Reihenleitung angelegt wird, um zu prüfen, ob die Schwellenspannung in dem gewählten Speicher ein Ziel erreicht hat.
  5. Speicher nach einem der vorherigen Ansprüche, ferner umfassend eine Spannungsrampenschaltung (160), die so geschaltet ist, dass ein Lesesignal mit einer Spannung, die sich über einen Spannungsbereich bewegt, an die Wählschaltungen (126) in den Pipelines (110) anlegt, wobei während eines Lesevorgangs in einer Pipeline (110) die Wählschaltung (126) in der Pipeline (110) das Lesesignal wählt und der Reihendecoder (132) das Lesesignal an die gewählte Reihenleitung anlegt.
  6. Speicher nach Anspruch 5, wobei: die Spannungsrampenschaltung (160) mit der ersten Abtast-Halte-Schaltung (121) in jeder Pipeline (110) gekoppelt ist; jede Pipeline (110) ferner einen Leseverstärker (136) umfasst, der mit der Array (130) und der ersten Abtast-Halte-Schaltung (121) gekoppelt ist; und während eines Lesevorgangs in einer Pipeline (110) der Leseverstärker (136) in der Pipeline bewirkt, dass die erste Abtast-Halte-Schaltung (121) das Lesesignal nach dem Erfassen eines Leitfähigkeitsübergangs einer gelesenen Speicherzelle abtastet.
  7. Speicher, der Folgendes umfasst: eine Mehrzahl von Pipelines, wobei jede Pipeline (110) Folgendes umfasst: eine Array (130) von nichtflüchtigen Speicherzellen; einen Reihendecoder (132), der mit Reihenleitungen in der Array gekoppelt ist; einen Spaltendecoder (134), der mit Spaltenzeilen in der Array gekoppelt ist; eine erste Abtast-Halte-Schaltung (121); eine zweite Abtast-Halte-Schaltung (122); einen Multiplexer (126) mit Eingangsanschlüssen, die mit Ausgangsanschlüssen der ersten oder zweiten Abtast-Halte-Schaltung gekoppelt sind; eine Auswahlschaltung (123); und einen Leseverstärker (136), der während eines Lesevorgangs durch den Spaltendecoder mit einer gewählten Reihenleitung, auf der sich eine gewählte Speicherzelle befindet, und mit einem Taktanschluss der ersten Abtast-Halte-Schaltung gekoppelt ist; und eine Spannungsrampenschaltung (160), die während des Lesevorgangs so geschaltet ist, dass sie an die Reihendecoder (132) in den Pipelines (110) ein Lesesignal (Vsr) mit einer Spannung, die sich über einen Spannungsbereich bewegt, anlegt, wobei während des Lesevorgangs der Reihendecoder (132) das Lesesignal an die gewählte Reihenleitung anlegt, und die Auswahlschaltung (123) so gekoppelt ist, dass gewählt wird, ob der Leseverstärker (136) die Abtastwerte der ersten Abtast-Halte-Schaltung (121) oder der zweiten Abtast-Halte-Schaltung (122) taktet, wenn der Leseverstärker einen Übergang in der Leitfähigkeit der gewählten Speicherzelle erfasst.
  8. Speicher nach Anspruch 7, wobei während des Lesevorgangs die Spannungsrampenschaltung (160) so geschaltet ist, dass sie das Lesesignal an einen Eingangsanschluss der Abtast-Halte-Schaltung anlegt, so dass dann, wenn der Leseverstärker (136) die erste Abtast-Halte-Schaltung (121) taktet, die erste Abtast-Halte-Schaltung (121) das Lesesignal abtastet.
  9. Speicher nach Anspruch 7, ferner umfassend eine Synchronisationsschaltung (140), die Lesevorgänge in wenigstens einigen der Pipelines (110) parallel startet.
  10. Speicherzelle nach Anspruch 7, ferner umfassend eine Synchronisationsschaltung (140), die sequentiell Lesevorgänge in den Pipelines (110) startet.
  11. Speicher nach einem der vorherigen Ansprüche, wobei jede Speicherzelle einen digitalen Multibit-Wert speichert.
  12. Speicher nach Anspruch 11, wobei der Datensignaleingang in den Spannungsgenerator ein digitales Multibit-Signal ist, das einen Wert anzeigt, der in eine der Speicherzellen geschrieben werden soll.
  13. Speicher nach Anspruch 11, ferner umfassend einen A/D-Wandler, der so gestaltet ist, dass er ein analoges Signal aus den Abtast-Halte-Schaltungen in ein digitales Multibit-Signal umwandelt.
  14. Speicher nach einem der Ansprüche 1 bis 10, wobei jede Speicherzelle einen Analogwert speichert.
  15. Speicher nach Anspruch 14, wobei das in den Spannungsgenerator eingegebene Datensignal ein Analogsignal ist, das einen Wert anzeigt, der in eine der Speicherzellen geschrieben werden soll.
  16. Speicher nach einem der Ansprüche 7 bis 15, wobei: der Multiplexer (126) ein Ausgangssignal von der ersten Abtast-Halte-Schaltung (121) bereitstellt, wenn die Auswahlschaltung (126) wählt, dass der Leseverstärker (136) die Abtastwerte der zweiten Abtast-Halte-Schaltung (122) taktet; und der Multiplexer (126) ein Ausgangssignal von der zweiten Abtast-Halte-Schaltung (122) bereitstellt, wenn die Auswahlschaltung (121) wählt, dass der Leseverstärker (136) die Abtastwerte der ersten Abtast-Halte-Schaltung (121) taktet.
DE69920816T 1998-06-23 1999-06-22 Hochbandbreitige Lese- und Schreibearchitektur für nicht-flüchtige Speicher Expired - Lifetime DE69920816T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US103623 1987-10-01
US09/103,623 US5969986A (en) 1998-06-23 1998-06-23 High-bandwidth read and write architectures for non-volatile memories

Publications (2)

Publication Number Publication Date
DE69920816D1 DE69920816D1 (de) 2004-11-11
DE69920816T2 true DE69920816T2 (de) 2006-02-23

Family

ID=22296145

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69920816T Expired - Lifetime DE69920816T2 (de) 1998-06-23 1999-06-22 Hochbandbreitige Lese- und Schreibearchitektur für nicht-flüchtige Speicher

Country Status (5)

Country Link
US (2) US5969986A (de)
EP (1) EP0969479B1 (de)
JP (1) JP4368972B2 (de)
KR (1) KR20000006338A (de)
DE (1) DE69920816T2 (de)

Families Citing this family (207)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6978342B1 (en) 1995-07-31 2005-12-20 Lexar Media, Inc. Moving sectors within a block of information in a flash memory mass storage architecture
US6728851B1 (en) * 1995-07-31 2004-04-27 Lexar Media, Inc. Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
US5845313A (en) 1995-07-31 1998-12-01 Lexar Direct logical block addressing flash memory mass storage architecture
US8171203B2 (en) 1995-07-31 2012-05-01 Micron Technology, Inc. Faster write operations to nonvolatile memory using FSInfo sector manipulation
US6606267B2 (en) * 1998-06-23 2003-08-12 Sandisk Corporation High data rate write process for non-volatile flash memories
US6594036B1 (en) 1998-05-28 2003-07-15 Sandisk Corporation Analog/multi-level memory for digital imaging
EP0971361B1 (de) * 1998-06-23 2003-12-10 SanDisk Corporation Hochdatenrateschreibverfahren für nicht-flüchtige FLASH-Speicher
US7268809B2 (en) * 1998-09-23 2007-09-11 San Disk Corporation Analog buffer memory for high-speed digital image capture
US6320811B1 (en) * 1998-12-10 2001-11-20 Cypress Semiconductor Corp. Multiport memory scheme
US6760068B2 (en) 1998-12-31 2004-07-06 Sandisk Corporation Correction of corrupted elements in sensors using analog/multi-level non-volatile memory
KR100291897B1 (ko) * 1999-03-11 2001-06-01 윤종용 버스트 모드 액세스를 구비한 반도체 메모리 장치
US6278633B1 (en) 1999-11-05 2001-08-21 Multi Level Memory Technology High bandwidth flash memory that selects programming parameters according to measurements of previous programming operations
US6526517B1 (en) * 1999-12-10 2003-02-25 Dell Usa L.P. Staggered computer component startup
US6259627B1 (en) 2000-01-27 2001-07-10 Multi Level Memory Technology Read and write operations using constant row line voltage and variable column line load
US6532556B1 (en) 2000-01-27 2003-03-11 Multi Level Memory Technology Data management for multi-bit-per-cell memories
US6363008B1 (en) 2000-02-17 2002-03-26 Multi Level Memory Technology Multi-bit-cell non-volatile memory with maximized data capacity
US6662263B1 (en) 2000-03-03 2003-12-09 Multi Level Memory Technology Sectorless flash memory architecture
US7079422B1 (en) 2000-04-25 2006-07-18 Samsung Electronics Co., Ltd. Periodic refresh operations for non-volatile multiple-bit-per-cell memory
US6396744B1 (en) 2000-04-25 2002-05-28 Multi Level Memory Technology Flash memory with dynamic refresh
US6297993B1 (en) * 2000-04-25 2001-10-02 Advanced Micro Devices, Inc. Acceleration voltage implementation for a high density flash memory device
US6856568B1 (en) 2000-04-25 2005-02-15 Multi Level Memory Technology Refresh operations that change address mappings in a non-volatile memory
US7167944B1 (en) 2000-07-21 2007-01-23 Lexar Media, Inc. Block management for mass storage
US6501681B1 (en) * 2000-08-15 2002-12-31 Advanced Micro Devices, Inc. Using a low drain bias during erase verify to ensure complete removal of residual charge in the nitride in sonos non-volatile memories
KR100370239B1 (ko) 2000-10-25 2003-01-29 삼성전자 주식회사 고속 블럭 파이프라인 구조의 리드-솔로몬 디코더에적용하기 위한 메모리 장치와 메모리 액세스 방법 및 그메모리 장치를 구비한 리드-솔로몬 디코더
US6535423B2 (en) 2000-12-29 2003-03-18 Intel Corporation Drain bias for non-volatile memory
US6570789B2 (en) 2000-12-29 2003-05-27 Intel Corporation Load for non-volatile memory drain bias
US6744671B2 (en) * 2000-12-29 2004-06-01 Intel Corporation Kicker for non-volatile memory drain bias
US6477086B2 (en) * 2000-12-29 2002-11-05 Intel Corporation Local sensing of non-volatile memory
US6466476B1 (en) 2001-01-18 2002-10-15 Multi Level Memory Technology Data coding for multi-bit-per-cell memories having variable numbers of bits per memory cell
US7177197B2 (en) * 2001-09-17 2007-02-13 Sandisk Corporation Latched programming of memory and method
GB0123416D0 (en) * 2001-09-28 2001-11-21 Memquest Ltd Non-volatile memory control
GB0123415D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Method of writing data to non-volatile memory
GB0123421D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Power management system
GB0123410D0 (en) 2001-09-28 2001-11-21 Memquest Ltd Memory system for data storage and retrieval
US6850441B2 (en) * 2002-01-18 2005-02-01 Sandisk Corporation Noise reduction technique for transistors and small devices utilizing an episodic agitation
KR100840540B1 (ko) * 2002-01-24 2008-06-23 매그나칩 반도체 유한회사 시스템 온 칩을 위한 임베디드 메모리
US7231643B1 (en) 2002-02-22 2007-06-12 Lexar Media, Inc. Image rescue system including direct communication between an application program and a device driver
US6747893B2 (en) 2002-03-14 2004-06-08 Intel Corporation Storing data in non-volatile memory devices
TW200407905A (en) * 2002-11-06 2004-05-16 Leadtek Research Inc Data write-in and read-out method of flash memory and circuit thereof
JP4345399B2 (ja) * 2003-08-07 2009-10-14 エルピーダメモリ株式会社 半導体記憶装置
US7139198B2 (en) * 2004-01-27 2006-11-21 Sandisk Corporation Efficient verification for coarse/fine programming of non-volatile memory
US7068539B2 (en) * 2004-01-27 2006-06-27 Sandisk Corporation Charge packet metering for coarse/fine programming of non-volatile memory
US7725628B1 (en) 2004-04-20 2010-05-25 Lexar Media, Inc. Direct secondary device interface by a host
US7370166B1 (en) 2004-04-30 2008-05-06 Lexar Media, Inc. Secure portable storage device
US7490283B2 (en) 2004-05-13 2009-02-10 Sandisk Corporation Pipelined data relocation and improved chip architectures
JP4511539B2 (ja) * 2004-08-16 2010-07-28 富士通セミコンダクター株式会社 不揮発性半導体メモリ
US7464306B1 (en) 2004-08-27 2008-12-09 Lexar Media, Inc. Status of overall health of nonvolatile memory
US7594063B1 (en) 2004-08-27 2009-09-22 Lexar Media, Inc. Storage capacity status
US20060067127A1 (en) * 2004-09-30 2006-03-30 Matrix Semiconductor, Inc. Method of programming a monolithic three-dimensional memory
US7173859B2 (en) * 2004-11-16 2007-02-06 Sandisk Corporation Faster programming of higher level states in multi-level cell flash memory
US7420847B2 (en) * 2004-12-14 2008-09-02 Sandisk Corporation Multi-state memory having data recovery after program fail
US7120051B2 (en) * 2004-12-14 2006-10-10 Sandisk Corporation Pipelined programming of non-volatile memories using early data
US7158421B2 (en) * 2005-04-01 2007-01-02 Sandisk Corporation Use of data latches in multi-phase programming of non-volatile memories
US7849381B2 (en) * 2004-12-21 2010-12-07 Sandisk Corporation Method for copying data in reprogrammable non-volatile memory
KR100729351B1 (ko) * 2004-12-31 2007-06-15 삼성전자주식회사 낸드 플래시 메모리 장치 및 그것의 프로그램 방법
US7463521B2 (en) 2005-04-01 2008-12-09 Sandisk Corporation Method for non-volatile memory with managed execution of cached data
US7206230B2 (en) 2005-04-01 2007-04-17 Sandisk Corporation Use of data latches in cache operations of non-volatile memories
US7447078B2 (en) * 2005-04-01 2008-11-04 Sandisk Corporation Method for non-volatile memory with background data latch caching during read operations
ITMI20050798A1 (it) 2005-05-03 2006-11-04 Atmel Corp Metodo e sistema per la generazi0ne di impulsi di programmazione durante la programmazione di dispositivi elettronici non volatili
US7656710B1 (en) 2005-07-14 2010-02-02 Sau Ching Wong Adaptive operations for nonvolatile memories
US7873953B1 (en) * 2006-01-20 2011-01-18 Altera Corporation High-level language code sequence optimization for implementing programmable chip designs
US7317348B2 (en) * 2006-01-27 2008-01-08 International Business Machines Corporation Noise reduction in digital systems
US7906982B1 (en) 2006-02-28 2011-03-15 Cypress Semiconductor Corporation Interface apparatus and methods of testing integrated circuits using the same
KR101375955B1 (ko) * 2006-05-12 2014-03-18 애플 인크. 메모리 디바이스 내의 왜곡 추정 및 상쇄
US8239735B2 (en) 2006-05-12 2012-08-07 Apple Inc. Memory Device with adaptive capacity
KR101202537B1 (ko) 2006-05-12 2012-11-19 애플 인크. 메모리 디바이스를 위한 결합된 왜곡 추정 및 에러 보정 코딩
WO2008026203A2 (en) * 2006-08-27 2008-03-06 Anobit Technologies Estimation of non-linear distortion in memory devices
US7280398B1 (en) * 2006-08-31 2007-10-09 Micron Technology, Inc. System and memory for sequential multi-plane page memory operations
US7515456B2 (en) * 2006-09-11 2009-04-07 Infineon Technologies Ag Memory circuit, a dynamic random access memory, a system comprising a memory and a floating point unit and a method for storing digital data
US7450426B2 (en) * 2006-10-10 2008-11-11 Sandisk Corporation Systems utilizing variable program voltage increment values in non-volatile memory program operations
US7474561B2 (en) * 2006-10-10 2009-01-06 Sandisk Corporation Variable program voltage increment values in non-volatile memory program operations
US7975192B2 (en) 2006-10-30 2011-07-05 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
US8151163B2 (en) 2006-12-03 2012-04-03 Anobit Technologies Ltd. Automatic defect management in memory devices
US8489817B2 (en) 2007-12-06 2013-07-16 Fusion-Io, Inc. Apparatus, system, and method for caching data
US9495241B2 (en) 2006-12-06 2016-11-15 Longitude Enterprise Flash S.A.R.L. Systems and methods for adaptive data storage
US8019940B2 (en) * 2006-12-06 2011-09-13 Fusion-Io, Inc. Apparatus, system, and method for a front-end, distributed raid
US9116823B2 (en) 2006-12-06 2015-08-25 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for adaptive error-correction coding
US8161353B2 (en) 2007-12-06 2012-04-17 Fusion-Io, Inc. Apparatus, system, and method for validating that a correct data segment is read from a data storage device
US7477092B2 (en) * 2006-12-29 2009-01-13 Sandisk Corporation Unified voltage generation apparatus with improved power efficiency
US7440342B2 (en) 2006-12-29 2008-10-21 Sandisk Corporation Unified voltage generation method with improved power efficiency
US8151166B2 (en) 2007-01-24 2012-04-03 Anobit Technologies Ltd. Reduction of back pattern dependency effects in memory devices
US8369141B2 (en) 2007-03-12 2013-02-05 Apple Inc. Adaptive estimation of memory cell read thresholds
US7558129B2 (en) * 2007-03-30 2009-07-07 Sandisk 3D Llc Device with load-based voltage generation
US7515488B2 (en) * 2007-03-30 2009-04-07 Sandisk 3D Llc Method for load-based voltage generation
US7580298B2 (en) * 2007-03-30 2009-08-25 Sandisk 3D Llc Method for managing electrical load of an electronic device
US7580296B2 (en) * 2007-03-30 2009-08-25 Sandisk 3D Llc Load management for memory device
US8001320B2 (en) 2007-04-22 2011-08-16 Anobit Technologies Ltd. Command interface for memory devices
US8234545B2 (en) 2007-05-12 2012-07-31 Apple Inc. Data storage with incremental redundancy
US8429493B2 (en) * 2007-05-12 2013-04-23 Apple Inc. Memory device with internal signap processing unit
US7719901B2 (en) * 2007-06-05 2010-05-18 Micron Technology, Inc. Solid state memory utilizing analog communication of data values
US7460398B1 (en) * 2007-06-19 2008-12-02 Micron Technology, Inc. Programming a memory with varying bits per cell
US7508715B2 (en) * 2007-07-03 2009-03-24 Sandisk Corporation Coarse/fine program verification in non-volatile memory using different reference levels for improved sensing
US7599224B2 (en) * 2007-07-03 2009-10-06 Sandisk Corporation Systems for coarse/fine program verification in non-volatile memory using different reference levels for improved sensing
US7898885B2 (en) * 2007-07-19 2011-03-01 Micron Technology, Inc. Analog sensing of memory cells in a solid state memory device
US8259497B2 (en) * 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
US8044705B2 (en) 2007-08-28 2011-10-25 Sandisk Technologies Inc. Bottom plate regulation of charge pumps
US8174905B2 (en) 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
US7782674B2 (en) * 2007-10-18 2010-08-24 Micron Technology, Inc. Sensing of memory cells in NAND flash
US8000141B1 (en) 2007-10-19 2011-08-16 Anobit Technologies Ltd. Compensation for voltage drifts in analog memory cells
US8068360B2 (en) 2007-10-19 2011-11-29 Anobit Technologies Ltd. Reading analog memory cells using built-in multi-threshold commands
WO2009050703A2 (en) 2007-10-19 2009-04-23 Anobit Technologies Data storage in analog memory cell arrays having erase failures
WO2009063450A2 (en) 2007-11-13 2009-05-22 Anobit Technologies Optimized selection of memory units in multi-unit memory devices
US8037337B2 (en) 2007-11-28 2011-10-11 International Business Machines Corporation Structures including circuits for noise reduction in digital systems
US8225181B2 (en) * 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
US7836226B2 (en) 2007-12-06 2010-11-16 Fusion-Io, Inc. Apparatus, system, and method for coordinating storage requests in a multi-processor/multi-thread environment
US9519540B2 (en) 2007-12-06 2016-12-13 Sandisk Technologies Llc Apparatus, system, and method for destaging cached data
US8316277B2 (en) * 2007-12-06 2012-11-20 Fusion-Io, Inc. Apparatus, system, and method for ensuring data validity in a data storage process
US8209588B2 (en) 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
US7586363B2 (en) * 2007-12-12 2009-09-08 Sandisk Corporation Diode connected regulation of charge pumps
US7586362B2 (en) * 2007-12-12 2009-09-08 Sandisk Corporation Low voltage charge pump with regulation
US8456905B2 (en) * 2007-12-16 2013-06-04 Apple Inc. Efficient data storage in multi-plane memory devices
US8085586B2 (en) 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
US8156398B2 (en) 2008-02-05 2012-04-10 Anobit Technologies Ltd. Parameter estimation based on error correction code parity check equations
US8230300B2 (en) 2008-03-07 2012-07-24 Apple Inc. Efficient readout from analog memory cells using data compression
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
US8059457B2 (en) 2008-03-18 2011-11-15 Anobit Technologies Ltd. Memory device with multiple-accuracy read commands
US7768832B2 (en) * 2008-04-07 2010-08-03 Micron Technology, Inc. Analog read and write paths in a solid state memory device
US20090302930A1 (en) * 2008-06-09 2009-12-10 Feng Pan Charge Pump with Vt Cancellation Through Parallel Structure
US7969235B2 (en) 2008-06-09 2011-06-28 Sandisk Corporation Self-adaptive multi-stage charge pump
US8710907B2 (en) 2008-06-24 2014-04-29 Sandisk Technologies Inc. Clock generator circuit for a charge pump
US7683700B2 (en) 2008-06-25 2010-03-23 Sandisk Corporation Techniques of ripple reduction for charge pumps
US7961544B2 (en) * 2008-08-05 2011-06-14 Sandisk Il Ltd. Storage system and method for managing a plurality of storage devices
US8498151B1 (en) 2008-08-05 2013-07-30 Apple Inc. Data storage in analog memory cells using modified pass voltages
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8169825B1 (en) 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
US8000135B1 (en) 2008-09-14 2011-08-16 Anobit Technologies Ltd. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8482978B1 (en) 2008-09-14 2013-07-09 Apple Inc. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
US8713330B1 (en) 2008-10-30 2014-04-29 Apple Inc. Data scrambling in memory devices
US8208304B2 (en) 2008-11-16 2012-06-26 Anobit Technologies Ltd. Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N
US7795952B2 (en) * 2008-12-17 2010-09-14 Sandisk Corporation Regulation of recovery rates in charge pumps
US8174857B1 (en) 2008-12-31 2012-05-08 Anobit Technologies Ltd. Efficient readout schemes for analog memory cell devices using multiple read threshold sets
US8248831B2 (en) 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US7944754B2 (en) * 2008-12-31 2011-05-17 Sandisk Corporation Non-volatile memory and method with continuous scanning time-domain sensing
US8924661B1 (en) 2009-01-18 2014-12-30 Apple Inc. Memory system including a controller and processors associated with memory devices
US8228701B2 (en) * 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
US8259506B1 (en) 2009-03-25 2012-09-04 Apple Inc. Database of memory read thresholds
US8832354B2 (en) 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
US8238157B1 (en) 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US7973592B2 (en) 2009-07-21 2011-07-05 Sandisk Corporation Charge pump with current based regulation
US8339183B2 (en) 2009-07-24 2012-12-25 Sandisk Technologies Inc. Charge pump with reduced energy consumption through charge sharing and clock boosting suitable for high voltage word line in flash memories
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
US8677054B1 (en) 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
US8694814B1 (en) 2010-01-10 2014-04-08 Apple Inc. Reuse of host hibernation storage space by memory controller
US8677203B1 (en) 2010-01-11 2014-03-18 Apple Inc. Redundant data storage schemes for multi-die memory systems
US8243532B2 (en) 2010-02-09 2012-08-14 Infineon Technologies Ag NVM overlapping write method
JP2011233114A (ja) * 2010-04-30 2011-11-17 Toshiba Corp メモリシステム
US8694853B1 (en) 2010-05-04 2014-04-08 Apple Inc. Read commands for reading interfering memory cells
US8572423B1 (en) 2010-06-22 2013-10-29 Apple Inc. Reducing peak current in memory systems
US8595591B1 (en) 2010-07-11 2013-11-26 Apple Inc. Interference-aware assignment of programming levels in analog memory cells
US9104580B1 (en) 2010-07-27 2015-08-11 Apple Inc. Cache memory for hybrid disk drives
US8645794B1 (en) 2010-07-31 2014-02-04 Apple Inc. Data storage in analog memory cells using a non-integer number of bits per cell
US8856475B1 (en) 2010-08-01 2014-10-07 Apple Inc. Efficient selection of memory blocks for compaction
US8694854B1 (en) 2010-08-17 2014-04-08 Apple Inc. Read threshold setting based on soft readout statistics
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
US8909849B2 (en) * 2010-11-15 2014-12-09 Intel Corporation Pipeline architecture for scalable performance on memory
US8339185B2 (en) 2010-12-20 2012-12-25 Sandisk 3D Llc Charge pump system that dynamically selects number of active stages
US8294509B2 (en) 2010-12-20 2012-10-23 Sandisk Technologies Inc. Charge pump systems with reduction in inefficiencies due to charge sharing between capacitances
US8472280B2 (en) 2010-12-21 2013-06-25 Sandisk Technologies Inc. Alternate page by page programming scheme
US9141527B2 (en) 2011-02-25 2015-09-22 Intelligent Intellectual Property Holdings 2 Llc Managing cache pools
US9053766B2 (en) 2011-03-03 2015-06-09 Sandisk 3D, Llc Three dimensional memory system with intelligent select circuit
US8374051B2 (en) 2011-03-03 2013-02-12 Sandisk 3D Llc Three dimensional memory system with column pipeline
US8553476B2 (en) 2011-03-03 2013-10-08 Sandisk 3D Llc Three dimensional memory system with page of data across word lines
US8699247B2 (en) 2011-09-09 2014-04-15 Sandisk Technologies Inc. Charge pump system dynamically reconfigurable for read and program
US8514628B2 (en) 2011-09-22 2013-08-20 Sandisk Technologies Inc. Dynamic switching approach to reduce area and power consumption of high voltage charge pumps
US8400212B1 (en) 2011-09-22 2013-03-19 Sandisk Technologies Inc. High voltage charge pump regulation system with fine step adjustment
US9759772B2 (en) 2011-10-28 2017-09-12 Teradyne, Inc. Programmable test instrument
US10776233B2 (en) 2011-10-28 2020-09-15 Teradyne, Inc. Programmable test instrument
US9251086B2 (en) 2012-01-24 2016-02-02 SanDisk Technologies, Inc. Apparatus, system, and method for managing a cache
US8804452B2 (en) 2012-07-31 2014-08-12 Micron Technology, Inc. Data interleaving module
US8710909B2 (en) 2012-09-14 2014-04-29 Sandisk Technologies Inc. Circuits for prevention of reverse leakage in Vth-cancellation charge pumps
US9123401B2 (en) * 2012-10-15 2015-09-01 Silicon Storage Technology, Inc. Non-volatile memory array and method of using same for fractional word programming
US9692429B1 (en) 2012-11-15 2017-06-27 Gsi Technology, Inc. Systems and methods involving fast-acquisition lock features associated with phase locked loop circuitry
US8836412B2 (en) 2013-02-11 2014-09-16 Sandisk 3D Llc Charge pump with a power-controlled clock buffer to reduce power consumption and output voltage ripple
US9142270B2 (en) 2013-03-08 2015-09-22 Cypress Semiconductor Corporation Pipelining in a memory
US9053768B2 (en) * 2013-03-14 2015-06-09 Gsi Technology, Inc. Systems and methods of pipelined output latching involving synchronous memory arrays
US8981835B2 (en) 2013-06-18 2015-03-17 Sandisk Technologies Inc. Efficient voltage doubler
US9024680B2 (en) 2013-06-24 2015-05-05 Sandisk Technologies Inc. Efficiency for charge pumps with low supply voltages
US9077238B2 (en) 2013-06-25 2015-07-07 SanDisk Technologies, Inc. Capacitive regulation of charge pumps without refresh operation interruption
US9007046B2 (en) 2013-06-27 2015-04-14 Sandisk Technologies Inc. Efficient high voltage bias regulation circuit
US9083231B2 (en) 2013-09-30 2015-07-14 Sandisk Technologies Inc. Amplitude modulation for pass gate to improve charge pump efficiency
US9154027B2 (en) 2013-12-09 2015-10-06 Sandisk Technologies Inc. Dynamic load matching charge pump for reduced current consumption
US9361951B2 (en) * 2014-01-14 2016-06-07 Apple Inc. Statistical peak-current management in non-volatile memory devices
US9917507B2 (en) 2015-05-28 2018-03-13 Sandisk Technologies Llc Dynamic clock period modulation scheme for variable charge pump load currents
US9647536B2 (en) 2015-07-28 2017-05-09 Sandisk Technologies Llc High voltage generation using low voltage devices
US9520776B1 (en) 2015-09-18 2016-12-13 Sandisk Technologies Llc Selective body bias for charge pump transfer switches
KR102412781B1 (ko) * 2015-11-03 2022-06-24 삼성전자주식회사 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 독출 방법
US9997232B2 (en) 2016-03-10 2018-06-12 Micron Technology, Inc. Processing in memory (PIM) capable memory device having sensing circuitry performing logic operations
US10847213B1 (en) 2016-12-06 2020-11-24 Gsi Technology, Inc. Write data processing circuits and methods associated with computational memory cells
US10860320B1 (en) 2016-12-06 2020-12-08 Gsi Technology, Inc. Orthogonal data transposition system and method during data transfers to/from a processing array
US10854284B1 (en) 2016-12-06 2020-12-01 Gsi Technology, Inc. Computational memory cell and processing array device with ratioless write port
US10725777B2 (en) 2016-12-06 2020-07-28 Gsi Technology, Inc. Computational memory cell and processing array device using memory cells
US10770133B1 (en) 2016-12-06 2020-09-08 Gsi Technology, Inc. Read and write data processing circuits and methods associated with computational memory cells that provides write inhibits and read bit line pre-charge inhibits
US10998040B2 (en) 2016-12-06 2021-05-04 Gsi Technology, Inc. Computational memory cell and processing array device using the memory cells for XOR and XNOR computations
US10847212B1 (en) 2016-12-06 2020-11-24 Gsi Technology, Inc. Read and write data processing circuits and methods associated with computational memory cells using two read multiplexers
US10777262B1 (en) 2016-12-06 2020-09-15 Gsi Technology, Inc. Read data processing circuits and methods associated memory cells
US10891076B1 (en) 2016-12-06 2021-01-12 Gsi Technology, Inc. Results processing circuits and methods associated with computational memory cells
US10943648B1 (en) 2016-12-06 2021-03-09 Gsi Technology, Inc. Ultra low VDD memory cell with ratioless write port
US11227653B1 (en) 2016-12-06 2022-01-18 Gsi Technology, Inc. Storage array circuits and methods for computational memory cells
JP2019045960A (ja) * 2017-08-30 2019-03-22 株式会社東芝 ディスク装置
US10877731B1 (en) 2019-06-18 2020-12-29 Gsi Technology, Inc. Processing array device that performs one cycle full adder operation and bit line read/write logic features
US10958272B2 (en) 2019-06-18 2021-03-23 Gsi Technology, Inc. Computational memory cell and processing array device using complementary exclusive or memory cells
US10930341B1 (en) 2019-06-18 2021-02-23 Gsi Technology, Inc. Processing array device that performs one cycle full adder operation and bit line read/write logic features
CN111785308B (zh) * 2020-06-10 2021-09-10 芯天下技术股份有限公司 减少非型闪存编程泵面积的方法、系统、储存介质和终端
US11556416B2 (en) 2021-05-05 2023-01-17 Apple Inc. Controlling memory readout reliability and throughput by adjusting distance between read thresholds
US11847342B2 (en) 2021-07-28 2023-12-19 Apple Inc. Efficient transfer of hard data and confidence levels in reading a nonvolatile memory

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4054864A (en) * 1973-05-04 1977-10-18 Commissariat A L'energie Atomique Method and device for the storage of analog signals
JPS5346621B2 (de) * 1974-10-21 1978-12-15
JPS5456701A (en) * 1977-10-14 1979-05-08 Sanyo Electric Co Ltd Preset receiving device
US4181980A (en) * 1978-05-15 1980-01-01 Electronic Arrays, Inc. Acquisition and storage of analog signals
DE2826870A1 (de) * 1978-06-19 1980-01-03 Siemens Ag Halbleitergeraet zur reproduktion akustischer signale
US4627027A (en) * 1982-09-01 1986-12-02 Sanyo Electric Co., Ltd. Analog storing and reproducing apparatus utilizing non-volatile memory elements
DE3644322A1 (de) * 1986-12-23 1988-07-07 Siemens Ag Bildspeicher
US4809223A (en) * 1987-06-18 1989-02-28 West Virginia University Apparatus and method for long term storage of analog signals
US4852063A (en) * 1987-11-23 1989-07-25 Ford Aerospace & Communications Corporation Programmable voltage offset circuit
US5168465A (en) * 1988-06-08 1992-12-01 Eliyahou Harari Highly compact EPROM and flash EEPROM devices
US4890259A (en) * 1988-07-13 1989-12-26 Information Storage Devices High density integrated circuit analog signal recording and playback system
US4989179A (en) * 1988-07-13 1991-01-29 Information Storage Devices, Inc. High density integrated circuit analog signal recording and playback system
US5055897A (en) * 1988-07-27 1991-10-08 Intel Corporation Semiconductor cell for neural network and the like
JPH07105146B2 (ja) * 1988-07-29 1995-11-13 三菱電機株式会社 不揮発性記憶装置
US4935702A (en) * 1988-12-09 1990-06-19 Synaptics, Inc. Subthreshold CMOS amplifier with offset adaptation
US5163021A (en) * 1989-04-13 1992-11-10 Sundisk Corporation Multi-state EEprom read and write circuits and techniques
US5172338B1 (en) * 1989-04-13 1997-07-08 Sandisk Corp Multi-state eeprom read and write circuits and techniques
US5028810A (en) * 1989-07-13 1991-07-02 Intel Corporation Four quadrant synapse cell employing single column summing line
US5239500A (en) * 1989-09-29 1993-08-24 Centre Suisse D'electronique Et De Microtechnique S.A. Process of storing analog quantities and device for the implementation thereof
US5519654A (en) * 1990-09-17 1996-05-21 Kabushiki Kaisha Toshiba Semiconductor memory device with external capacitor to charge pump in an EEPROM circuit
US5164915A (en) * 1990-09-26 1992-11-17 Information Storage Devices, Inc. Cascading analog record/playback devices
US5126967A (en) * 1990-09-26 1992-06-30 Information Storage Devices, Inc. Writable distributed non-volatile analog reference system and method for analog signal recording and playback
US5241494A (en) * 1990-09-26 1993-08-31 Information Storage Devices Integrated circuit system for analog signal recording and playback
US5220531A (en) * 1991-01-02 1993-06-15 Information Storage Devices, Inc. Source follower storage cell and improved method and apparatus for iterative write for integrated circuit analog signal recording and playback
US5243239A (en) * 1991-01-22 1993-09-07 Information Storage Devices, Inc. Integrated MOSFET resistance and oscillator frequency control and trim methods and apparatus
US5218569A (en) * 1991-02-08 1993-06-08 Banks Gerald J Electrically alterable non-volatile memory with n-bits per memory cell
US5272669A (en) * 1991-02-20 1993-12-21 Sundisk Corporation Method and structure for programming floating gate memory cells
US5294819A (en) * 1992-11-25 1994-03-15 Information Storage Devices Single-transistor cell EEPROM array for analog or digital storage
US5339270A (en) * 1993-06-23 1994-08-16 Vlsi Technology, Inc. AC drain voltage charging source for PROM devices
US5519847A (en) * 1993-06-30 1996-05-21 Intel Corporation Method of pipelining sequential writes in a flash memory
US5430670A (en) * 1993-11-08 1995-07-04 Elantec, Inc. Differential analog memory cell and method for adjusting same
US5694356A (en) * 1994-11-02 1997-12-02 Invoice Technology, Inc. High resolution analog storage EPROM and flash EPROM
US5745409A (en) * 1995-09-28 1998-04-28 Invox Technology Non-volatile memory with analog and digital interface and storage
DE69514802T2 (de) * 1995-09-29 2000-05-31 St Microelectronics Srl Verfahren zum Parallel-Programmieren von Speicherwörtern und entsprechende Schaltung
US5680341A (en) * 1996-01-16 1997-10-21 Invoice Technology Pipelined record and playback for analog non-volatile memory
DE69630663D1 (de) * 1996-01-24 2003-12-18 St Microelectronics Srl Verfahren zum Löschen einer elektrisch programmierbaren und löschbaren nichtflüchtigen Speicherzelle
US5748533A (en) * 1996-03-26 1998-05-05 Invoice Technology, Inc. Read circuit which uses a coarse-to-fine search when reading the threshold voltage of a memory cell
EP0798735B1 (de) * 1996-03-29 2004-07-28 STMicroelectronics S.r.l. Zellendekodiererschaltkreis für einen nichtflüchtigen elektrisch programmierbaren Speicher und entsprechendes Verfahren
US5712815A (en) * 1996-04-22 1998-01-27 Advanced Micro Devices, Inc. Multiple bits per-cell flash EEPROM capable of concurrently programming and verifying memory cells and reference cells
US5867430A (en) * 1996-12-20 1999-02-02 Advanced Micro Devices Inc Bank architecture for a non-volatile memory enabling simultaneous reading and writing
US5847991A (en) * 1997-05-20 1998-12-08 Tong; Hing S. System for recording voice as analog values programmed into single bit cells EEPROMs or flash EEPROM

Also Published As

Publication number Publication date
DE69920816D1 (de) 2004-11-11
US6134145A (en) 2000-10-17
EP0969479A1 (de) 2000-01-05
KR20000006338A (ko) 2000-01-25
US5969986A (en) 1999-10-19
EP0969479B1 (de) 2004-10-06
JP2000082295A (ja) 2000-03-21
JP4368972B2 (ja) 2009-11-18

Similar Documents

Publication Publication Date Title
DE69920816T2 (de) Hochbandbreitige Lese- und Schreibearchitektur für nicht-flüchtige Speicher
DE3013253C2 (de) Schaltungsanordnung zur Speicherung und Abgabe von Analog-Signalen
DE102006054998B4 (de) Latenzsteuerschaltung, Halbleiterspeicherbauelement und Verfahren zum Steuern der Latenz
DE60212982T2 (de) Dynamische spaltenblockauswahl
DE3834759C2 (de)
DE3801380C2 (de)
DE602004008456T2 (de) Integrierte ladungsleseschaltung für resistive speicher
DE3525575C2 (de)
DE60317768T2 (de) Verfahren zum Auslesen einer nichtflüchtigen Speichervorrichtung und zugehörige Vorrichtung
DE2445878C2 (de) Schaltungsanordnung für einen periodisch zu regenerierenden Datenspeicher mit mehreren Speicherschleifen
DE3839114A1 (de) Nichtfluechtige dynamische halbleiterspeicheranordnung mit nand-zellenstruktur
DE10225398A1 (de) Halbleiterspeichervorrichtung mit Speicherzellenarrays, die zum Durchführen eines wahlfreien Zugriffs in der Lage ist
DE2727419A1 (de) Matrixspeicher
DE3543911A1 (de) Digitale verzoegerungseinheit
DE60133513T2 (de) Programmierbarer und elektrisch löschbarer serieller auslesbarer Speicher durch Vorempfang
DE102006030888B4 (de) Verfahren und Vorrichtung zum Erzeugen eines Startwertes für einen Pseudo-Zufallszahlengenerator
DE60023367T2 (de) Abtastvorrichtung und Verfahren zum Abrufen von Multibitdaten
DE19955380C2 (de) Prüfmustergenerator, Prüfvorrichtung und Verfahren zum Erzeugen von Prüfmustern
DE19521637C2 (de) Nichtflüchtiges Registersystem unter Verwendung von amorphen Dünnschichttransistoren mit isoliertem Gate
DE102014118512B4 (de) Verfahren, Gerät und Vorrichtung zur Datenverarbeitung
DE102005032484A1 (de) Nichtflüchtiges Speicherelement und zugehöriges Programmierverfahren
DE10218272A1 (de) Programmierbarer Festwertspeicher, Speicherzelle hierfür und zugehöriges Verfahren zum Schreiben/Lesen von Daten
DE3329096C2 (de)
US6275417B1 (en) Multiple level flash memory
DE102004011418B4 (de) Anordnung und Verfahren zum Lesen einer Speicherzelle

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: GRUENECKER, KINKELDEY, STOCKMAIR & SCHWANHAEUSSER

R082 Change of representative

Ref document number: 969479

Country of ref document: EP

Representative=s name: GRUENECKER, KINKELDEY, STOCKMAIR & SCHWANHAEUS, DE