DE602004010134T2 - Kompensation einer langen lesezeit einer speichervorrichtung in datenvergleichs- und schreiboperationen - Google Patents

Kompensation einer langen lesezeit einer speichervorrichtung in datenvergleichs- und schreiboperationen Download PDF

Info

Publication number
DE602004010134T2
DE602004010134T2 DE602004010134T DE602004010134T DE602004010134T2 DE 602004010134 T2 DE602004010134 T2 DE 602004010134T2 DE 602004010134 T DE602004010134 T DE 602004010134T DE 602004010134 T DE602004010134 T DE 602004010134T DE 602004010134 T2 DE602004010134 T2 DE 602004010134T2
Authority
DE
Germany
Prior art keywords
memory
data
write
read
temporary
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
DE602004010134T
Other languages
English (en)
Other versions
DE602004010134D1 (de
Inventor
Eric H. Persoon
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.)
NXP BV
Original Assignee
NXP BV
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 NXP BV filed Critical NXP BV
Publication of DE602004010134D1 publication Critical patent/DE602004010134D1/de
Application granted granted Critical
Publication of DE602004010134T2 publication Critical patent/DE602004010134T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/14Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using thin-film elements
    • G11C11/15Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using thin-film elements using multiple magnetic layers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2263Write conditionally, e.g. only if new data and old data differ

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Static Random-Access Memory (AREA)
  • Measurement Of Current Or Voltage (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Mram Or Spin Memory Techniques (AREA)

Description

  • Die Erfindung betrifft eine Speichervorrichtung mit einer langen Lesezeit, verglichen mit der Schreibzeit, sowie ein Verfahren zum Vergleich von Daten, die in Speicherbereichen eines derartigen Speichers gespeichert sind, mit ankommenden Daten, die in einer Schreibanforderung enthalten sind.
  • Neue Speichertechnologien, wie zum Beispiel der magnetoresistive Random Access Memory (MRAM) und der ferroelektrische RAM (FeRAM) haben aufgrund ihrer Möglichkeiten, nichtflüchtigen Speicher mit einem Bündel sinnvoller Eigenschaften der gegenwärtigen Speichertechnologien, wie zum Beispiel hohe Dichte, hohe Geschwindigkeit, niedriger Energieverbrauch und niedrige Kosten, zu verbinden, immer stärkere Beachtung gefunden.
  • Eine bekannte MRAM-Technologie basiert auf Speicherzellen, die eine Schichtenstruktur mit einem Element mit magnetischem Tunnelübergang (magnetic tunnelling junction – MTJ) zwischen zwei sich kreuzenden Elektroden aufweisen. Die Speicherzellen sind üblicherweise in Form einer Matrix angeordnet. Die Elektroden werden als Bitleitung und Wortleitung bezeichnet. Das MTJ-Element fungiert als programmierbarer Widerstand, der zwei verschiedene Widerstandwerte aufweist.
  • Bei einem Schreibvorgang wird eine Speicherzelle ausgewählt, indem ein Strom sowohl durch die Bitleitung als auch durch die Wortleitung durchgeleitet wird. An ihrem Kreuzungspunkt wirken die beiden Magnetfelder, die durch die Ströme der Wortleitung und der Bitleitung erzeugt werden, mit dem magnetischen Moment der Schichten des MTJ-Elements zusammen. Die beiden Felder verstärken ein Feld, das stark genug ist, um das MTJ-Element am Schnittpunkt der ausgewählten Wortleitung und der ausgewählten Bitleitung zwischen Widerstandszuständen hin- und herzuschalten. Der Widerstandzustand, der in die Zelle programmiert ist, hängt von der Richtung des Stroms in der Bitleitung ab.
  • Bei einem Lesevorgang wird ein geringer Abtaststrom an die ausgewählte Bitleitung angelegt, um den Widerstandszustand einer ausgewählten Speicherzelle zu ermitteln. Um sicherzustellen, dass der Abtaststrom nur durch die ausgewählte Zelle fließt, wird ein Auswahlelement, wie zum Beispiel ein Transistor, mit jeder Speicherzelle zwischen der Bitleitung und einer dritten Elektrode, die als Basiselektrode bezeichnet wird, verbunden.
  • Der Auswahltransistor des ausgewählten Speichers wird in einen leitenden Zustand geschaltet, wenn eine Abtastspannung an der ausgewählten Bitleitung und der ausgewählten Basiselektrode angelegt wird. Da die Auswahltransistoren sämtlicher anderen Speicherzellen einen Stromfluss durch sie hindurch blockieren, fließt der Abtaststrom nur an dem Schnittpunkt zwischen der aktivierten Bitleitung und der Basiselektrode durch die Zelle. Je nach dem Widerstandszustand dieser Speicherzelle übernimmt der Abtaststrom einen von zwei möglichen Stromwerten, die auf die beiden möglichen Bitwerte hinweisen, die in der Speicherzelle gespeichert werden können. Eine Speicherzelle, die einen Auswahltransistor zusammen mit einem MTJ-Element aufweist, wird als 1T1MTJ-Speicherzelle bezeichnet.
  • Der Hauptnachteil von MRAM-Vorrichtungen, die auf 1T1MTJ-Speicherzellen basieren, besteht darin, dass die Dichte von Speicherzellen niedriger ist als die von konkurrierenden Halbleiterspeichervorrichtungen. Dies ist auf die bedeutende Größe der Speicherzellen zurückzuführen und wird vor allem durch den Auswahltransistor verursacht. Der Auswahltransistor ist wesentlich größer als das MTJ-Element der Speicherzelle, zu dem er gehört. Durch das Weglassen des Transistors der Speicherzellen ist eine wesentlich höhere Zellendichte möglich, die vergleichbar ist mit der von Halbleiterspeichervorrichtungen und die noch größer sein kann, wenn eine dreidimensionale Zellenanordnung verwendet wird. Speicherzellen mit nur einem MTJ-Element und ohne Transistor werden als 0T1MTJ-Speicherzellen bezeichnet.
  • Ein erster wesentlicher Nachteil von 0M1MTJ-Speicherzellen besteht darin, dass durch das Weglassen des Transistors die Trennschärfe eines Lesevorgangs beseitigt wird. Bei einem 0T1MTJ-Speicher wird der Abtaststrom eines Lesevorgangs in Beiträge von mehreren Strompfaden durch benachbarte Zellen, die eine Verbindung zwischen der aktivierten Bitleitung und der Wortleitung herstellen, aufgeteilt. Jeder Pfad weist eine unterschiedliche Speicherzelle auf, da es keine Möglichkeit gibt, die Wahl einer Speicherzelle rückgängig zu machen. Daher ist es schwierig, den Zustand einer spezifischen Speicherzelle im Lesevorgang zu ermitteln. Dieses Problem wird hier auch als Verlustproblem („leakage Problem") bezeichnet.
  • Alle bekannten Lösungen für dieses Problem führen folglich zu einer größeren Zeitspanne für das Lesen. Die Zeitspanne, die benötigt wird, um den Bitwert, der in einer Speicherzelle enthalten ist, zu bestimmen, wird auch als Lesezeit bezeichnet. Lesezeiten von 0T1MTJ-Speicherzellen liegen gegenwärtig in einer Größenordnung von einer Mikrosekunde. Eine Lösung, wie in US 2003/0090934 beschrieben, besteht zum Beispiel darin, den Zustand einer Speicherzelle zu lesen, indem zunächst gelesen wird, dann in die Zelle geschrieben wird, dann erneut gelesen wird und mit dem vorherigen Zustand verglichen wird. Wird ein Unterschied entdeckt, wird der ursprüngliche Wert durch einen weiteren Schreibschritt wiederhergestellt. Es ist offensichtlich, dass diese Art eines Lesevorgangs wesentlich längere Zeit beansprucht als ein Schreibvorgang. Die Zeitspanne, die erforderlich ist, um einen Schreibvorgang durchzuführen, wird als Schreibzeit bezeichnet. Spricht man von einem Vergleich der Lesezeit einer Speichervorrichtung mit der Schreibzeit oder der Lesezeit einer anderen Speichervorrichtung, wird angenommen, dass die zu vergleichenden Vorgänge eine ähnliche oder die gleiche Datenmenge aufweisen.
  • Ein weiterer wesentlicher Nachteil von 0T1MTJ-Speicherzeillen besteht darin, dass die lange Lesezeit die Verwendung von energiesparenden Schreibverfahren, die von 1T1MTJ-basierten Speichervorrichtungen bekannt sind, verhindert. Derartige energiesparende Schreibverfahren nutzen einen Vergleich zwischen ankommenden Schreibdaten und gespeicherten Speicherdaten. Genauer gesagt werden Schreibdaten, die mit einer Schreibanforderung empfangen werden, mit den Daten verglichen, die bereits in den Speicherzellen gespeichert sind und die den Adressdaten entsprechen, die mit der Schreibanforderung empfangen werden. Nach dem Vergleich werden nur diejenigen Speicherzellen überschrieben, die Bitwerte speichern, die sich von den jeweiligen Schreibdaten unterscheiden.
  • Ein Schreibvorgang, der einen derartigen Vergleich nutzt, wird hier als ein bedingter Schreibvorgang bezeichnet. Bei einem bedingten Schreibvorgang wird nur ein Teil der Speicherzellen, die von einer Schreibanforderung adressiert werden, tatsächlich mit anderen Werten überschrieben. Es wird Energie gespart, weil die Energie, die für einen Schreibvorgang, der, wie beschrieben, einen Lese-, Vergleichs- und bedingten Schreibvorgang umfasst, benötigt wird, geringer ist als die Energie, die für das unbedingte Über schreiben sämtlicher adressierten Speicherzellen ohne vorheriges Vergleichen verbraucht wird.
  • Eine MRAM-Speichervorrichtung nach dem Stand der Technik, bei der ein energiesparendes Verfahren zum Schreiben in einen nichtflüchtigen Speicher mit 1T1MTJ-Speicherzellen eingesetzt wird, ist in US 2002/0159286 A1 beschrieben.
  • In US 2002/0159286 A1 wird dieses Verfahren eingesetzt, indem eine Speicherzelle für Lesedaten und eine Speicherzelle für Schreibdaten verwendet wird. Speicherdaten aus den Speicherzellen, die von einer laufenden Schreibanforderung adressiert werden, werden vorübergehend in der Speicherzelle für Lesedaten gespeichert. Ankommende Schreibdaten werden vorübergehend in der Speicherzelle für Schreibdaten gespeichert. Eine Datenvergleichsschaltung vergleicht die Schreibdaten und die Speicherdaten, die derselben Speicheradresse zugeordnet sind. Sind die entsprechenden Daten identisch, endet der Schreibvorgang. Sind die entsprechenden Daten unterschiedlich, werden ein Wortleitungstreiber und ein Bitleitungstreiber aktiviert, um die jeweilige Speicherzelle auszuwählen und zu überschreiben.
  • Das Schreibverfahren aus US 2002/0159286 A1 nutzt an sich schon die Tatsache, dass der Unterschied zwischen der Schreibzeit, die für einen bedingten Schreibvorgang einerseits und einen unbedingten Schreibvorgang andererseits erforderlich ist, unerheblich ist. Durch die Verwendung des energiesparenden Schreibverfahrens in einer Speichervorrichtung mit 0T1MTJ-Speicherzellen oder, allgemein gesagt, in einer beliebigen Speichervorrichtung mit einer langen Lesezeit, verglichen mit der Schreibzeit, würde der bedingte Schreibvorgang länger dauern als die lange Zeitspanne, die bereits für einen Lesevorgang benötigt wird. Dadurch würde die Speichervorrichtung zu einem schwachen Konkurrenten für vorhandene Halbleitertechnologien, wie zum Beispiel den Flashspeicher.
  • Kurz gefasst bietet die gegenwärtige MRAM-Technologie einerseits eine eher niedrige Zelldichte, verglichen mit konkurrierenden Halbleitertechnologien. MRAM-Vorrichtungen mit hoher Dichte jedoch können nur auf Kosten einer langen Lesezeit bereitgestellt werden. Eine lange Lesezeit verhindert die Verwendung eines Schreibvorgangs, der einen Leseschritt beinhaltet, zum Beispiel für einen Vergleich mit vorher gespeicherten Daten, und insbesondere, um Energie bei einem Schreibvorgang zu sparen.
  • Es ist festzustellen, dass US 6052302 ein bitweises bedingtes Schreibverfahren und -vorrichtung zur Minimierung des Energieverbrauchs in magnetoresistiven Random Access Memory (MRAM)-Systemen mit integrierter Schaltung (integrated circuit – IC) offenbart. Bei einer ersten Ausführungsform wird der laufende logische Zustand jedes Datenbits eines Wortes, das in dem MRAM gespeichert ist, mit einem entsprechenden Eingabebit verglichen, und nur diejenigen gespeicherten Daten, die unterschiedlich sind, werden geschrieben.
  • Eine lange Lesezeit kann zwar akzeptabel sein bei einem Massendatenspeicher, zum Beispiel, ein hoher Energieverbrauch wäre jedoch ein beträchtlicher Nachteil in Vergleich mit vorhandenen Technologien.
  • Eine Aufgabe der vorliegenden Erfindung besteht darin, eine Speichervorrichtung mit einer langen Lesezeit vorzusehen, die mindestens teilweise die erwähnten Nachteile einer Lesezeit, die im Vergleich mit der Schreibzeit lang ist, auszugleichen.
  • Eine weitere Aufgabe der vorliegenden Erfindung besteht darin, ein Verfahren zum Vergleichen von Daten mit Speicherdaten, die in Speicherbereichen des Speichers gespeichert sind, vorzusehen, welches auch bei einer Speichervorrichtung mit einem langsamen Lesezugriff, verglichen mit dem Schreibzugriff, sinnvoll ist.
  • Gemäß einem ersten Gesichtspunkt der Erfindung ist eine Speichervorrichtung gemäß Anspruch 1 vorgesehen.
  • Diese Speichervorrichtung des ersten Gesichtspunkts der Erfindung beruht auf der allgemeinen Vorstellung, dass die Nachteile einer langen Lesezeit in Vergleich mit einer Schreibzeit mindestens teilweise durch paralleles Lesen mehrerer Daten, die in dem Speicher gespeichert sind, ausgeglichen werden können. Da ein Leseschritt mehrerer Daten parallel in etwa derselben Zeit durchgeführt werden kann wie ein Leseschritt für ein Bit, kann ein Lesevorgang, bei dem eine größere Menge an Speicherdaten gelesen werden sol len, in einer Speichervorrichtung mit einer langen Lesezeit etwa genau so schnell durchgeführt werden wie ein serieller Lesevorgang.
  • Die Lesesteuereinheit ist geeignet, Speicherdaten in den ersten temporären Speicher zu lesen, während die Vergleichseinheit einen Vergleich von Schreibdaten, die in dem zweiten temporären Speicher gespeichert sind, mit entsprechenden Speicherdaten in dem ersten temporären Speicher durchführt.
  • Der zweite temporäre Speicher weist eine Speicherkapazität auf, die größer ist als die des ersten temporären Speichers. Das Verhältnis der Speicherkapazitäten des ersten und des zweiten temporären Speichers ist vorzugsweise gleich oder liegt im Bereich des Verhältnisses zwischen der Schreibzeit und der Lesezeit des Speichers. Falls die Schreibzeit in den Speicher zum Beispiel halb so lang ist wie die Lesezeit, wird der zweite temporäre Speicher für Schreibdaten mit einer doppelt so großen Speicherkapazität wie die des ersten temporären Speichers für Speicherdaten versehen. Die zusätzliche Speicherkapazität ist eine Form dieser Ausführung, die als ein zusätzlicher zweiter temporärer Speicher vorgesehen ist. Bei einer anderen Form wird ein einzelner zweiter temporärer Speicher mit einer größeren Kapazität verwendet.
  • Die Speichervorrichtung der Erfindung weist eine Lesesteuereinheit auf, die mit dem Speicher gekoppelt und geeignet ist, parallel Speicherdaten aus mehreren Bereichen oder aus sämtlichen Bereichen des Speichers, die durch Adressdaten definiert sind, die in einer ankommenden Schreibanforderung enthalten sind, zu lesen. Um den Lesevorgang durchzuführen, ist die Lesesteuereinheit vorzugsweise geeignet, mindestens eine Leseanforderung, die die entsprechenden Adressdaten aufweist, zu erzeugen und sie an den Speicher zu senden.
  • „Paralleles Lesen" bedeutet, dass mehrere Daten, wie zum Beispiel Bits, Bytes oder Wörter, die in mehreren Speicherzellen des Speichers gespeichert sind, mit mindestens teilweiser zeitlicher Überlappung gelesen werden. Paralleles Lesen wird im Folgenden auch als paralleler Lesevorgang bezeichnet. Ein Speicherbereich ist in einer Ausführungsform eine Speicherzelle, in einer anderen Ausführungsform eine Anzahl von Speicherzel len, wie zum Beispiel eine Zeile oder eine Spalte von Speicherzellen oder eine beliebige andere Kombination von Speicherzellen.
  • Ein paralleler Lesevorgang benötigt etwa dieselbe Zeit zum Lesen mehrerer Daten aus dem Speicher wie ein einzelner Lesevorgang eines Bitwertes aus dem Speicher. Daher ist der Zeitgewinn im Vergleich mit einem seriellen Lesevorgang umso größer, je größer die Anzahl der Daten, die parallel gelesen werden, und je größer die zeitliche Überlappung ist. In einer Ausführungsform erfolgt das Lesen aus den verschiedenen Speicherzellen zur selben Zeit, das heißt, mit der größten zeitlichen Überlappung, die technisch möglich ist. Dies verringert die Lesezeit noch weiter, insbesondere bei einer großen Menge an zu lesenden Speicherdaten.
  • Bei der Speichervorrichtung nach dem ersten Gesichtspunkt der Erfindung werden die Speicherdaten, die parallel gelesen werden, auch parallel in dem ersten temporären Speicher empfangen. Entsprechend weist der erste temporäre Speicher einen Eingang auf, der mit dem Speicher gekoppelt ist, welcher geeignet ist, parallel mehrere Bitwerte zu empfangen. Der erste temporäre Speicher weist vorzugsweise kurze Lese- und Schreibzeiten auf. Ein SRAM-Speicher wird zum Beispiel für den ersten temporären Speicher verwendet. Es kann mehr als ein erster temporärer Speicher vorhanden sein.
  • Alle Speicherdaten, die möglicherweise von einer ankommenden Schreibanforderung verändert werden, werden vorzugsweise in einem parallelen Lesevorgang gelesen. Ist mehr als ein erster temporärer Speicher vorgesehen, zum Beispiel in Form von Speicherbänken, können die gelesenen Daten parallel an verschiedene Speicherbänke geschickt werden. Als Alternative wird eine Anzahl von parallelen Lesevorgängen nacheinander durchgeführt, um sämtliche zu vergleichenden Speicherdaten abzudecken. Bei einer bevorzugten Ausführungsform der Speichervorrichtung des ersten Gesichtspunkts der Erfindung ist die Lesesteuereinheit geeignet, nacheinander eine Anzahl paralleler Lesevorgänge aus Speicherbereichen des Speichers derart durchzuführen, dass alle Bereiche, die durch Adressdaten, die in einer ankommenden Schreibanforderung enthalten sind, definiert sind, von den Lesevorgängen abgedeckt werden. Diese Ausführungsform ist nützlich, um Schreiban forderungen, die eine große Menge an Schreibdaten enthalten, zu genügen. Die zu vergleichenden Schreibdaten werden in einer Anzahl von Arbeitsgängen verarbeitet.
  • Die Lesesteuereinheit ist vorzugsweise geeignet zu analysieren, ob die zu lesenden Speicherdaten parallel in einem parallelen Lesevorgang gelesen werden können oder nicht. Falls nicht, erzeugt die Lesesteuereinheit eine entsprechende Anzahl von parallelen Leseanforderungen, um sämtliche Daten abzudecken. Ob es möglich ist, sämtliche Daten in einem parallelen Lesevorgang zu lesen oder nicht, hängt nicht nur von der Menge der Schreibdaten einer ankommenden Schreibanforderung ab, sondern auch von dem Hardwareaufbau der Speichervorrichtung und insbesondere von der Breite des Busses zwischen dem Speicher und dem ersten temporären Speicher. Bei einer Ausführungsform gibt es eine Protokollbeschränkung, durch die Adressdaten in Schreibanforderungen auf einen Bereich begrenzt werden, der in einem parallelen Lesevorgang gelesen werden kann. Schreibanforderungen, die nicht in einem parallelen Lesevorgang behandelt werden können, dürfen nicht erzeugt werden oder werden von der Speichervorrichtung abgewiesen.
  • Der Speicher der Speichervorrichtung ist vorzugsweise so angeordnet, dass parallele Lesevorgänge gefördert werden. Der Speicher kann zum Beispiel in Speicherbänken, die parallel gelesen werden können, angeordnet sein. Das heißt, verschiedene Bänke können parallel gelesen werden. Bei einer anderen Ausführungsform kann jede Bank parallel gelesen werden. Bei einer weiteren Ausführungsform, kann jede Bank ebenso wie verschiedene Bänke parallel gelesen werden.
  • Bei einer bevorzugten Ausführungsform wird die Datenverbindung zwischen dem Speicher und dem ersten temporären Speicher durch einen breiten Datenbus, der die parallele Übertragung großer Datenmengen ermöglicht, hergestellt.
  • Die Speichervorrichtung des ersten Gesichtspunkts der Erfindung weist ferner mindestens einen zweiten temporären Speicher auf, der Daten speichert, die bei einer ankommenden Schreibanforderung empfangen werden. Der zweite temporäre Speicher ist vorzugsweise ebenfalls ein SRAM-Speicher.
  • Eine Vergleichseinheit ist in der Speichervorrichtung des ersten Gesichtspunkts der Erfindung vorgesehen. Die Vergleichseinheit vergleicht Speicherdaten, die in dem ers ten temporären Speicher gespeichert sind, mit Daten, die in dem zweiten temporären Speicher gespeichert sind und die denselben Adressinformationen zugeordnet sind. Die Vergleichseinheit liefert eine Ausgabe, die das Ergebnis des jeweiligen Vergleichs aufzeigt. Die Speichervorrichtung weist in verschiedenen Ausführungsformen eine Vergleichseinheit auf, die geeignet ist, den Vergleich Bit für Bit oder Byte für Byte durchzuführen.
  • Die Ausgabe der Vergleichseinheit kann zum Beispiel verwendet werden, um zu entscheiden, ob Daten, die mit einer Schreibanforderungen empfangen und gerade mit den Speicherdaten verglichen wurden, in den Speicher geschrieben werden sollen. Die Ausgabe kann zum Beispiel verwendet werden, um eine Schreibsteuerkreis auszulösen, der die Schreibdaten, die gerade verglichen wurden, von dem zweiten temporären Speicher zu dem Speicher weiterzuleiten, falls die Ausgabe der Vergleichseinheit anzeigt, dass die Schreibdaten sich von entsprechenden Speicherdaten in dem ersten temporären Speicher unterscheiden.
  • Es besteht kein Erfordernis, mit einem parallelen Lesevorgang zu warten, bis sämtliche Schreibdaten, die zu der Schreibanforderung gehören, empfangen sind. Bei einer Ausführungsform der Speichervorrichtung der Erfindung ist die Lesesteuereinheit geeignet, einen parallelen Lesevorgang unmittelbar nach dem Empfang von Adressdaten, die in der Schreibanforderung enthalten sind, einzuleiten. Hierdurch wird der Fluss der Schreibanforderung weiter beschleunigt. Bei einer Form dieser Ausführungsform werden Adressdaten durch Kontakte empfangen, die getrennt sind von denen zum Empfang von Schreibdaten. Dies ermöglicht das Auslösen des parallelen Lesevorgangs unabhängig von dem Zustand der Eingabe für Schreibdaten. Bei einer anderen Form dieser Ausführungsform werden Adressdaten und Schreibdaten über dieselben Kontakte empfangen. In diesem Fall werden die Adressdaten üblicherweise zu einem vorgegebenen Abschnitt am Anfang der Schreibanforderung geschickt. Daher erfasst die Lesesteuereinheit die Adressdaten und löst den parallelen Lesevorgang aus, während Schreibdaten empfangen werden.
  • Da es vergleichsweise kurze Zeit dauert, um empfangene Schreibdaten in dem zweiten temporären Speicher zu speichern, kann der parallele Lesevorgang mindestens teilweise durchgeführt werden, bevor der zweite temporäre Speicher mit Schreibdaten gefüllt wird. Dies verursacht nur eine geringe Erhöhung der Zeit, die für einen Schreibvorgang benötigt wird. Andererseits bietet diese Ausführungsform eine größere Flexibilität bei einer Anwendung, die die Schreibanforderung erzeugt. Die Anwendung kann die Schreibdaten der Schreibanforderung unabhängig von den Adressdaten, die verwendet werden, um den parallelen Lesevorgang der Daten aus dem Speicher durchzuführen, senden. Dies ermöglicht ebenfalls die Nutzung von Vorgriffs- und Vorabbefehlsverfahren, bei denen die Anwendung vorhersagen kann, an welche Speicherorte Daten geschrieben werden müssen, bevor die tatsächlichen Werte dieser Daten zur Verfügung stehen.
  • Bei dieser Ausführungsform weist der zweite temporäre Speicher die Speicherkapazität auf, die mit neuen ankommenden Schreibdaten zu füllen ist, während Speicherdaten in den ersten temporären Speicher gelesen werden oder das bedingte Schreiben durchgeführt wird, d. h., während Daten des ersten und des zweiten temporären Speichers verglichen werden, oder während der beiden erwähnten Phasen. Die Speichervorrichtung ist daher verfügbar, um neue Schreibdaten oder neue Schreibanforderungen von externen Speicher-Clients zu empfangen, bevor der zweite temporäre Speicher geleert wird. Ein Beispiel für einen Speicher-Client ist eine Anwendung.
  • Die Speichervorrichtung der Erfindung kann grundsätzlich für beliebige ankommende Daten verwendet werden, die mit vorher gespeicherten Speicherdaten verglichen werden sollen. Bei einer Ausführungsform ist die Speichervorrichtung geeignet, einen Schreibvorgang durchzuführen, der die Bereitstellung eines Codes, wie zum Beispiel ein Passwort, zusammen mit der Schreibanforderung beinhaltet. Die Speichervorrichtung hat das Passwort in seinem Speicher und verarbeitet die Schreibanforderung erst, wenn festgestellt wurde, dass das gelieferte Passwort identisch ist mit der gespeicherten Version. Der nach der Überprüfung des Passwortes durchgeführte Schreibvorgang kann ein bedingter Schreibvorgang sein. Falls jedoch ein energiesparender bedingter Schreibvorgang nicht bevorzugt wird, kann das Schreiben erfolgen, ohne dass die Schreibdaten mit den entsprechenden Speicherdaten bei dieser Ausführungsform verglichen werden.
  • Bei einer bevorzugten Ausführungsform ist die Speichervorrichtung des ersten Gesichtspunkts der Erfindung geeignet, einen bedingten Schreibvorgang durchzuführen.
  • Die Speichervorrichtung dieser Ausführungsform weist vorzugsweise eine Schreibsteuereinheit auf, die mit der Vergleichseinheit und dem Speicher gekoppelt ist und die geeignet ist, seriell nur diejenigen Schreibdaten, die in dem zweiten temporären Speicher enthalten sind, in den Speicher zu schreiben, bei dem die Ausgabe der Vergleichseinheit einen Unterschied zu den entsprechenden Speicherdaten, die in dem ersten temporären Speicher enthalten sind, anzeigt. Ein Schreibvorgang, bei der das Datenbit direkt an den Speicher geliefert wird, wird auch als ein direkter Schreibvorgang bezeichnet.
  • Bei einer alternativen Ausführungsform, bei der ein Schreibvorgang im Umschaltmodus ausgeführt wird, wird die Ausgabe der Vergleichseinheit von der Schreibsteuereinheit verwendet, um einen Befehl zu erzeugen, um den Status der jeweiligen Speicherzelle oder Speicherzellen zu verändern, falls die Ausgabe anzeigen, dass sich die verglichenen Daten unterscheiden. Der Status der Speicherzelle entspricht dem darin gespeicherten Informationsbit. Ein Schreibvorgang im Umschaltmodus verändert den gespeicherten Informationsbit, zum Beispiel von „0" auf „1", ohne dass das Schreibdatenbit an den Speicher geliefert wird. Bei einer Ausführungsform kann ein direkter Schreibvorgang oder ein Schreibvorgang im Umschaltmodus durchgeführt werden.
  • Es ist anzumerken, dass US 6545906 B1 ein Verfahren beschreibt, um eine skalierbare magnetoresistive Speicherzelle umzuschalten, einschließlich der Schritte der Bereitstellung einer magnetoresistiven Speichervorrichtung, die zwischen einer Wortleitung und einer Bitleitung eingesetzt ist, so dass Stromwellenformen an die Wort- und Bitleitungen zu verschiedenen Zeiten angelegt werden können, um einen Magnetfeldfluss zu erzeugen, um den Vektor des wirksamen magnetischen Moments der Vorrichtung um etwa 180° zu drehen. Die magnetoresistive Speichervorrichtung weist N ferromagnetische Schichten auf, die antiferromagnetisch gekoppelt sind. N kann eingestellt werden, um den Umfang des magnetischen Schaltens der Vorrichtung zu verändern.
  • Die Ausgabe, die von der Vergleichseinheit geliefert wird, kann bei einer Ausführungsform ein binäres Signal sein, das „identisch" oder „nicht identisch” anzeigt. Bei einer anderen Ausführungsform erzeugt die Vergleichseinheit nur eine Ausgabe, falls verglichene Daten unterschiedlich sind. Dies erspart den Schritt des Interpretieren des Signals in der Schreibsteuereinheit. Die Ausgabe ist in diesem Fall zum Beispiel ein Schreibdatenbit, bei dem sich herausgestellt hat, dass es sich von dem entsprechenden Speicherdatenbit unterscheidet, wodurch ein zusätzlicher Schritt während des Schreibvorgangs gespart wird. Bei einem Speicher, der ein Schreiben im Umschaltmodus durchführt, ist ein weiteres Beispiel einer Ausgabe der Vergleichseinheit die Adresse der zu überschreibenden Speicherzelle. Dies setzt voraus, dass die Schreibsteuereinheit die Adressinformationen nicht über einen anderen Kanal erhält.
  • Um noch mehr Zeit zu sparen, ist die Lesesteuereinheit bei einer anderen Ausführungsform geeignet, einen parallelen Lesevorgang durchzuführen, während die Schreibsteuereinheit einen oder mehrere Schreibvorgänge durchführt.
  • Der allgemeine Gedanke der vorliegenden Erfindung und der erwähnten Ausführungsformen kann insbesondere bei einer MRAM-Vorrichtung mit einer langen Lesezeit im Vergleich zu der Schreibzeit verwendet werden, wie zum Beispiel bei einer MRAM-Vorrichtung mit einem Speicher, der 0T1MTJ-Speicherzellen aufweist. Aufgrund des Verlustproblems ist die Lesezeit eines 0T1MTJ-Speichers wesentlich länger als die eines herkömmlichen 1T1MTJ-Speichers. Die Speichervorrichtung dieser Ausführungsform ist in der Lage, den Leseschritt, der zum Beispiel aus einem bedingten Schreibvorgang besteht, innerhalb einer Zeitspanne durchzuführen, die bei einer großen zu lesenden Datenmenge mit derjenigen einer Reihe von Lesevorgängen, die bei einer 1T1MTJ-Vorrichtung nach dem Stand der Technik verwendet werden, konkurrieren kann. Die Ausführungsform der Erfindung ermöglicht es, die Vorteile einer hohen Zelldichte einer 0T1MTJ MRAM-Speichervorrichtung mit dem geringen Energieverbrauch eines bedingten Schreibvorgangs, wie von 1T1MTJ-Vorrichtungen bekannt, zu kombinieren.
  • Daher ermöglicht es die Speichervorrichtung des ersten Gesichtspunkts der Erfindung, die Vorteile eines energiesparenden bedingten Schreibvorgangs, der aus MRAM-Technologien mit kurzen Lesezeiten bekannt ist, bei einer Speichertechnologie, die eine lange Lesezeit aufweist, zu nutzen, immer in Vergleich mit der entsprechenden Schreibzeit. Je größer die Anzahl der in den Speicher zu schreibenden Bits ist, desto besser ist die Leistung der Speichervorrichtung der Erfindung bei einem Schreibvorgang, der einen Lese schritt beinhaltet, im Vergleich mit einer Speichervorrichtung, die eine kurze Lesezeit aufweist. Bei einer größeren Menge Schreibdaten kann die Schreibzeit der Speichervorrichtung der Erfindung mit der von Vorrichtungen nach dem Stand der Technik mit kurzen Lesezeiten vergleichbar gemacht werden.
  • Gemäß einem zweiten Gesichtspunkt der vorliegenden Erfindung ist ein Verfahren vorgesehen, wie in Anspruch 9 dargelegt.
  • Das Verfahren des zweiten Gesichtspunkts der Erfindung entspricht der Speichervorrichtung des ersten Gesichtspunkts der Erfindung. Daher können alle dort erwähnten Merkmale und Vorteile auf das Verfahren des zweiten Gesichtspunkts der Erfindung übertragen werden. Das Verfahren ermöglicht es insbesondere, einen bedingten Schreibvorgang auch in einer Speichervorrichtung mit Speicherzellen, die eine längere Lesezeit als Schreibzeit aufweisen, durchzuführen. Dies wird durch paralleles Lesen der Daten aus mehreren Bereichen oder aus sämtlichen Bereichen des Speichers erreicht, die durch Adressdaten, die in einer ankommenden Schreibanforderung enthalten sind, definiert sind.
  • Bevorzugte Ausführungsformen des Verfahrens des zweiten Gesichtspunkts der Erfindung entsprechen denjenigen der Speichervorrichtung des ersten Gesichtspunkts der Erfindung.
  • Eine Ausführungsform weist einen Schritt des Schreibens nur derjenigen Schreibdaten aus dem zweiten temporären Speicher in den Speicher, die sich von den entsprechenden Speicherdaten unterscheiden, auf. Der Schreibschritt wird bei einer Ausführungsform als ein direkter Schreib- oder als ein Schreibvorgang im Umschaltmodus durchgeführt.
  • Bei einer anderen Ausführungsform werden die Schritte b) und c) parallel zu Schritt d) ausgeführt.
  • Bei einer weiteren Ausführungsform wird eine Anzahl von parallelen Lesevorgängen (Schritt b) aus Speicherbereichen des Speichers derart durchgeführt, dass alle Bereiche, die durch Adressdaten, die in der ankommenden Schreibanforderung enthalten sind, definiert sind, von den Lesevorgängen abgedeckt werden.
  • Bei einer weiteren Ausführungsform erfolgt ein paralleler Lesevorgang unmittelbar nach dem Empfang von Adressdaten, die in der Schreibanforderung enthalten sind.
  • Bei einer weiteren Ausführungsform werden Schreibdaten seriell von dem zweiten temporären Speicher in den Speicher geschrieben.
  • Bei einer weiteren Ausführungsform wird ein paralleler Lesevorgang durchgeführt, während ein oder mehrere Schreibvorgänge durchgeführt werden.
  • Weitere Merkmale und Vorteile der Erfindung werden im Folgenden mit Bezug auf die Figuren beschrieben.
  • 1 ist ein vereinfachtes Blockdiagramm, das eine Ausführungsform der Speichervorrichtung der Erfindung zeigt;
  • 2 ist ein Ablaufdiagramm, das eine Ausführungsform des Verfahrens der Erfindung zeigt.
  • 1 zeigt ein vereinfachtes Blockdiagramm einer Speichervorrichtung 10. Das Diagramm zeigt nur die Strukturelemente und die Verbindungen zwischen ihnen, die dazu beitragen, dem Fachmann die Erfindung zu erläutern. Für einen durchschnittlichen Fachmann ist es jedoch offensichtlich, dass diese Beschreibung genügend Informationen enthält, damit ein durchschnittlicher Fachmann die Erfindung einsetzen kann.
  • Die Speichervorrichtung 10 weist eine Schnittstelleneinheit 12 zur Kommunikation mit externen Speicher-Clients auf. Die Schnittstelleneinheit 12 empfangt Adressdaten und Schreibdaten, die in einer Schreibanforderung, die bei einem externen Speicher-Client erzeugt wird, enthalten sind, über getrennte Eingangsanschlüsse.
  • Die Schnittstelleneinheit 12 ist mit einem Schreibspeicher 14, hier auch als zweiter temporärer Speicher bezeichnet, und einer Lesesteuereinheit 16 gekoppelt. Der Schreibspeicher 14 ist mit einer Vergleichseinheit 18 gekoppelt. Die Vergleichseinheit 18 ist mit der Lesesteuereinheit 16, dem Schreibspeicher 14 und einem Lesespeicher 20, hier auch als erster temporärer Speicher bezeichnet, gekoppelt.
  • Die Speichervorrichtung 10 weist ferner eine Schreibsteuereinheit 22 mit einem Eingang auf, der mit der Vergleichseinheit 18 gekoppelt ist, und einem Ausgang, der mit einem MRAM 24 gekoppelt ist. Es ist festzustellen, dass die Vergleichseinheit 18 als we sentlicher Bestandteil der Schreibsteuereinheit 22 vorgesehen werden kann. Der MRAM 24 weist eine matrixähnliche oder alternativ eine dreidimensionale Anordnung von 0T1MTJ-Speicherzellen auf, wie zum Beispiel diejenigen, die im Allgemeinen als Koppelpunkt-Speicherzellen bezeichnet werden. Der Speicher 24 ist in Bänken (nicht dargestellt) angeordnet, die parallel gelesen werden können. Eine Verbindung zwischen dem MRAM 24 und dem Lesespeicher 20 wird über einen besonders breiten Datenbus 26 eingerichtet.
  • Beim Betrieb wird eine Schreibanforderung, die Schreibdaten und Adressdaten enthält, an der Schnittstelleneinheit 12 empfangen. Pfeile mit einer dicken durchgezogenen Linie zeigen den Fluss von Adressdaten in der Speichervorrichtung 10 an. Adressdaten werden über andere Kontakte als Schreibdaten empfangen. Die Adressdaten werden von der Schnittstelleneinheit 12 zu der Lesesteuereinheit 16 übermittelt. Aus Gründen der Einfachheit wird für das vorliegende Beispiel davon ausgegangen, dass die Adressdaten eine Menge an Speicherdaten definieren, die unter Verwendung eines parallelen Lesevorgangs gelesen werden können. Die Lesesteuereinheit 16 erzeugt aus den Adressdaten eine entsprechende Leseanforderung und sendet sie an den MRAM 24.
  • Die Speicherdaten, die in den Speicherbereichen (Zellen), die durch die Adressdaten definiert sind, gespeichert sind, werden dann parallel gelesen und parallel zu dem Lesespeicher 20 geschickt. Bei einem Beispiel werden Hunderte Bits parallel über den Datenbus 26 übertragen.
  • Die Daten, die aus dem Speicher 24 gelesen werden, weisen aufgrund des bekannten Leckstromproblems eines Speichers, der auf 0T1MTJ-Speicherzellen beruht, Verzerrungen der echten Daten auf. Aufgrund dessen erfordert das Bestimmen, ob ein bestimmtes Speicherdatenbit, das aus Speicher 24 gelesen wird, eine Null oder eine Eins ist, eine besondere Verarbeitung, die für die lange Lesezeit der Vorrichtung, verglichen mit einer 1T1MTJ-Vorrichtung, verantwortlich ist.
  • Als Beispiel für ein Leseverarbeitungsverfahren werden die gemessenen Widerstandswerte eines Leseschritts zunächst in einem Zwischenlesespeicher (nicht dargestellt), der zwischen dem Speicher 24 und dem Lesespeicher 20 gekoppelt ist, gespeichert. Die Daten in dem Zwischenlesespeicher werden dann einem Bewertungsverfahren unterworfen, um den Status (eins oder null) jeder Speicherzelle zu bestimmen. Als einfaches Beispiel für ein Bewertungsverfahren werden die Speicherdaten aus dem Speicher 24 gelesen, dann ein Bit im Speicher 24 verändert und die Daten erneut aus dem Speicher 24 gelesen. Dies kann verwendet werden, um zu bestimmen, ob der Wert dieses Bits eins oder null war. Die bestimmten Werte können dann über den Datenbus 26 aus dem Zwischenlesespeicher in den Speicher 20 übertragen werden.
  • Der Lesespeicher 20 weist ein Eingangsregister auf, das geeignet ist, parallel die Speicherdaten, die aus dem MRAM 24 gelesen werden, zu empfangen. Dann speichert er die Daten vorübergehend. Es ist festzustellen, dass der eben beschriebene parallele Lesevorgang eine parallele Ausgabe von Speicherdaten aus dem MRAM 24 erzeugt, die parallel vom MRAM 24 zum Lesespeicher 20 geschickt werden. Die Speicherdaten werden derart im Lesespeicher 20 gespeichert, dass die Zuordnung der Speicherdaten zu den entsprechenden Adressdaten gesichert wird.
  • Während der Zeit, in der der Lesespeicher 20 mit Speicherdaten gefüllt wird, wird der Schreibspeicher 14 mit Schreibdaten der Schreibanforderung gefüllt. Die Schreibdaten werden derart im Schreibspeicher 20 gespeichert, dass die Zuordnung der Speicherdaten zu den entsprechenden Adressdaten gesichert wird.
  • Da die Zeit, die für das Schreiben in den Speicher 14 benötigt wird, wesentlich kürzer ist als die Zeit, die für das Lesen aus dem MRAM 24 benötigt wird, kann das Schreiben in den Schreibspeicher 14 später beginnen als das Lesen aus dem MRAM 24. Die tatsächliche Zeit, während der Daten in den Schreibspeicher 14 geschrieben werden, wird von dem Speicher-Client, der die Schreibanforderung sendet, oder von einer internen Speichersteuereinheit (nicht dargestellt), oder von beiden gesteuert. Ein Speicher-Client kann den Ablauf steuern, indem er zunächst nur Adressdaten zu der Speichervorrichtung 10 sendet und Schreibdaten zu einem späteren Zeitpunkt sendet, wenn es für die Anwendung zweckmäßig ist. Eine Speichersteuereinheit kann den Empfang von Schreibdaten blockieren, indem sie anzeigt, dass die Speichervorrichtung belegt ist. Dies ist zum Beispiel sinnvoll, wenn der Schreibspeicher 14 voll ist.
  • Sobald sich Schreibdaten in dem Schreibspeicher 14 befinden und Speicherdaten im Lesespeicher 20, die denselben Adressdaten zugeordnet sind, werden die Schreibdaten und die Speicherdaten seriell vom Schreibspeicher 14 einerseits und vom Lesespeicher 20 andererseits zu der Vergleichseinheit 18 übermittelt. Die Bits, die an den beiden Dateneingängen der Vergleichseinheit 18 empfangen werden, werden verglichen.
  • Falls festgestellt wird, dass ein Schreibbit und ein entsprechendes Speicherbit sich unterscheiden, wird der entsprechende Bitwert, der vom Schreibspeicher 14 empfangen wird, am Ausgang der Vergleichseinheit 18 dargestellt und zusammen mit den betreffenden Adressdaten zur Schreibsteuereinheit 22 weitergeleitet. Die Schreibsteuereinheit 22 überschreibt die entsprechende Speicherzelle im MRAM 24 mit dem Bitwert, der von der Vergleichseinheit 18 empfangen wurde.
  • Falls festgestellt wird, dass ein Schreibbit und ein entsprechendes Speicherbit identisch sind, erfolgt keine Datenausgabe von der Vergleichseinheit 18 an die Schreibsteuereinheit 22.
  • Bei einer alternativen Ausführungsform ist der Schreibspeicher 14 direkt parallel mit dem MRAM 24 und mit der Vergleichseinheit 18 gekoppelt. Die Schreibsteuereinheit 22 ist ferner mit dem Schreibspeicher 14 gespeichert. Im Betrieb vergleicht die Vergleichseinheit 18 einen Bitwert am Ausgang des Schreibspeichers 14 mit einem Bitwert am Ausgang des Lesespeichers 20. Wird festgestellt, dass die Bitwerte sich unterscheiden, meldet die Vergleichseinheit 18 dieses Ergebnis an die Schreibsteuereinheit 22, die das Überschreiben der entsprechenden Speicherzelle des MRAM 24 auslöst. Das Überschreiben kann in einem direkten Schreibvorgang oder in einem Schreibvorgang im Umschaltmodus durchgeführt werden.
  • 2 zeigt ein Ablaufdiagramm eines Schreibverfahrens gemäß der Erfindung. Das Verfahren beginnt bei einem Schritt S10 mit dem Empfang einer Schreibanforderung.
  • In einem Schritt S12 werden Speicherdaten parallel aus mehreren Bereichen oder aus sämtlichen Bereichen des nichtflüchtigen Speichers gelesen, welche durch Adressinformationen, die in der Schreibanforderung enthalten sind, definiert sind. Ein Bereich des Speichers ist zum Beispiel eine Speicherzelle oder eine definierte Anordnung von Spei cherzellen. Es ist festzustellen, dass Schritt S12 erfolgt, sobald die Adressdaten empfangen werden. Die Speichervorrichtung wartet nicht, bis eine Schreibanforderung vollständig empfangen ist, sondern beginnt unverzüglich mit dem parallelen Lesevorgang.
  • Bei dieser Ausführungsform werden der Einfachheit der Beschreibung halber nur Schreibanforderungen behandelt, die unter Verwendung eines parallelen Lesevorgangs in dem Unterprogramm des Vergleichs von Speicherdaten mit ankommenden Schreibdaten verarbeitet werden können.
  • In einem Schritt S14 werden die Speicherdaten, die aus dem Speicher gelesen werden, in einem ersten temporären Speicher gespeichert. In einem Schritt S16 werden die Schreibdaten der Schreibanforderung in einem zweiten temporären Speicher gespeichert.
  • In einem Schritt S18 werden die Speicherdaten, die in dem ersten temporären Speicher enthalten sind, mit den entsprechenden Schreibdaten, die in dem zweiten temporären Speicher enthalten sind, verglichen und denselben Adressinformationen zugeordnet.
  • In einem Schritt S20 wird das Ergebnis des Vergleichs als Ausgabe dargestellt. In einem Schritt S22, beruhend auf der Ausgabe, die in Schritt S20 erzeugt wird, werden nur diejenigen Schreibdaten aus dem zweiten temporären Speicher in den Speicher geschrieben, die sich von den entsprechenden Speicherdaten unterscheiden. Die Schritte S18, S20 und S22 werden seriell durchgeführt, zum Beispiel Bit für Bit oder Byte für Byte.

Claims (16)

  1. Speichervorrichtung (10), umfassend: – einen Speicher (24) zum Speichern von Speicherdaten in Speicherbereichen, die Adressinformationen zugeordnet sind, – eine Schreibsteuereinheit (16), die mit dem Speicher (24) gekoppelt ist und geeignet ist, parallel Speicherdaten von mehreren Bereichen oder von sämtlichen Bereichen des Speichers (24), die durch Adressdaten definiert sind, die in einer ankommenden Schreibanforderung enthalten sind, zu lesen, – eine Vergleichseinheit (18), dadurch gekennzeichnet, dass der Speicher (24) eine lange Lesezeit verglichen mit einer Schreibzeit aufweist und dass die Speichervorrichtung ferner Folgendes umfasst: – mindestens einen ersten temporären Speicher (20), der geeignet ist, Speicherdaten parallel zu empfangen und zu speichern, – mindestens einen zweiten temporären Speicher (14), der geeignet ist, mindestens einen Teil der Daten, die in der ankommenden Schreibanforderung, die an den Speicher gerichtet ist, enthalten sind, zu speichern, dass die Vergleichseinheit (18) mit mindestens einem ersten (20) und einem zweiten (24) temporären Speicher gekoppelt ist und geeignet ist, Speicherdaten, die in dem ersten temporären Speicher (20) gespeichert sind, mit Daten zu vergleichen, die in dem zweiten temporären Speicher (24) gespeichert sind und denselben Adressinformationen zugeordnet sind, und eine Ausgabe zu liefern, die das Ergebnis des jeweiligen Vergleichs aufzeigt, und dass die Lesesteuereinheit (16) geeignet ist, einen parallelen Lesevorgang durchzuführen, während die Vergleichseinheit (18) einen Vergleich von Schreibdaten, die in dem mindestens einen zweiten temporären Speicher (14) gespeichert sind, mit entsprechenden Speicherdaten in dem mindestens einen ersten temporären Speicher (20) durchführt, und dass der mindestens eine zweite temporäre Speicher (14) eine Speicherkapazität aufweist, die größer ist als die des mindestens einen ersten temporären Speichers (20).
  2. Speichervorrichtung nach Anspruch 1, wobei die Speichervorrichtung des mindestens einen zweiten temporären Speichers (14) um einen Faktor, der gleich dem Verhältnis zwischen der Lesezeit und der Schreibzeit ist, größer ist als die des mindestens einen ersten temporären Speichers (20).
  3. Speichervorrichtung nach Anspruch 1, wobei die Lesesteuereinheit (16) geeignet ist, nacheinander eine Anzahl paralleler Lesevorgänge aus Speicherbereichen des Speichers (24) derart durchzuführen, dass alle Bereiche, die definiert sind durch Adressinformationen, die in der ankommenden Schreibanforderung enthalten sind, von der Anzahl der Lesevorgänge abgedeckt sind.
  4. Speichervorrichtung nach Anspruch 1, wobei die Lesesteuereinheit (16) geeignet ist, einen parallelen Lesevorgang unmittelbar nach dem Empfang von Adressdaten, die in der Schreibanforderung enthalten sind, einzuleiten.
  5. Speichervorrichtung nach Anspruch 1, umfassend eine Schreibsteuereinheit (22) auf, die mit der Vergleichseinheit (18) und dem Speicher (24) gekoppelt ist und die geeignet ist, seriell nur diejenigen Schreibdaten in den Speicher zu schreiben, bei denen die Ausgabe der Vergleichseinheit (18) einen Unterschied zu den entsprechenden Speicherdaten, die in dem ersten temporären Speicher (20) enthalten sind, anzeigt.
  6. Speichervorrichtung nach Anspruch 5, wobei die Schreibsteuereinheit (22) geeignet ist, einen Schreibvorgang als direkten Schreibvorgang oder als Schreibvorgang im Umschaltmodus durchzuführen.
  7. Speichervorrichtung nach Anspruch 5 oder 6, wobei die Lesesteuereinheit (16) geeignet ist, einen parallelen Lesevorgang durchzuführen, während die Schreibsteuereinheit (22) einen oder mehrere Schreibvorgänge durchführt.
  8. Speichervorrichtung nach Anspruch 1, wobei der Speicher (24) 0T1MTJ-Speicherzellen aufweist.
  9. Verfahren zum Vergleichen von Daten, die in Speicherbereichen eines Speichers (24) gespeichert sind, mit ankommenden Daten, die in einer Schreibanforderung enthalten sind, wobei der Speicher (24) eine längere Lesezeit als Schreibzeit aufweist, umfassend folgende Schritte: a) Empfang einer Schreibanforderung, die Daten- und Adressinformationen aufweist, wobei die Adressinformationen mindestens einen Speicherbereich (S10) definieren, b) paralleles Lesen der Daten aus mehreren Bereichen oder aus sämtlichen Bereichen des Speichers, die durch Adressdaten definiert sind, die in der ankommenden Schreibanforderung (S12) enthalten sind, gekennzeichnet durch (c) das Speichern der Speicherdaten, die in einem ersten temporären Speicher (S14) gelesen werden, (d) das Speichern mindestens eines Teils der Daten, die durch die Schreibanforderung in einem zweiten temporären Speicher (S16) enthalten sind, (e) das Vergleichen der Speicherdaten, die in dem ersten temporären Speicher enthalten sind, mit den entsprechenden Daten, die in dem zweiten temporären Speicher enthalten sind und die denselben Adressinformationen (S18) zugeordnet sind, (f) das Liefern einer Ausgabe, die das Ergebnis des Vergleichs (S29) aufzeigt, wobei Schritte b) (S12) und c) (S14) parallel mit Schritt d) (S18) durchgeführt werden und wobei der mindestens eine zweite temporäre Speicher (14) eine Speicherkapazität aufweist, die größer ist als die des mindestens einen ersten temporären Speichers (20).
  10. Verfahren nach Anspruch 9, umfassend einen Schritt des Schreibens nur derjenigen Schreibdaten in den Speicher, bei denen die Ausgabe einen Unterschied zu den entsprechenden Speicherdaten (S22) anzeigt.
  11. Verfahren nach Anspruch 10, wobei der Schreibschritt (S22) als direkter Schreib- oder als Schreibvorgang im Umschaltmodus durchgeführt wird.
  12. Verfahren nach Anspruch 9, wobei eine Anzahl von parallelen Lesevorgängen (S12) aus Speicherbereichen des Speichers derart durchgeführt wird, dass alle Bereiche, die durch Adressdaten, die in der ankommenden Schreibanforderung enthalten sind, definiert sind, von der Anzahl der Lesevorgänge abgedeckt sind.
  13. Verfahren nach Anspruch 9, wobei ein paralleler Lesevorgang (S12) unmittelbar nach dem Empfangen von Adressdaten (S10), die in der Schreibanforderung enthalten sind, durchgeführt wird.
  14. Verfahren nach Anspruch 9, wobei Schreibdaten seriell in den Speicher geschrieben werden (S22).
  15. Verfahren nach Anspruch 9, wobei ein paralleler Lesevorgang (S12) durchgeführt wird, während ein oder mehrere Schreibvorgänge (S22) durchgeführt werden.
  16. Verfahren nach Anspruch 9, das in einem MRAM-Speicher mit 0T1MTJ-Speicherzellen (24) durchgeführt wird.
DE602004010134T 2003-07-22 2004-07-12 Kompensation einer langen lesezeit einer speichervorrichtung in datenvergleichs- und schreiboperationen Expired - Lifetime DE602004010134T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP03102247 2003-07-22
EP03102247 2003-07-22
PCT/IB2004/051197 WO2005008675A1 (en) 2003-07-22 2004-07-12 Compensating a long read time of a memory device in data comparison and write operations

Publications (2)

Publication Number Publication Date
DE602004010134D1 DE602004010134D1 (de) 2007-12-27
DE602004010134T2 true DE602004010134T2 (de) 2008-09-11

Family

ID=34072669

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602004010134T Expired - Lifetime DE602004010134T2 (de) 2003-07-22 2004-07-12 Kompensation einer langen lesezeit einer speichervorrichtung in datenvergleichs- und schreiboperationen

Country Status (7)

Country Link
US (1) US7263018B2 (de)
EP (1) EP1649468B1 (de)
JP (1) JP2006528398A (de)
CN (1) CN1826658B (de)
AT (1) ATE378683T1 (de)
DE (1) DE602004010134T2 (de)
WO (1) WO2005008675A1 (de)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4565966B2 (ja) * 2004-10-29 2010-10-20 三洋電機株式会社 メモリ素子
CN100524267C (zh) * 2007-02-15 2009-08-05 威盛电子股份有限公司 数据处理系统及数据处理方法
KR101472797B1 (ko) * 2007-07-16 2014-12-15 삼성전자주식회사 데이터를 읽거나 쓰기 위한 방법 및 장치
EP2564387A1 (de) * 2010-04-26 2013-03-06 Mosaid Technologies Incorporated Schreibschema in einem phasenwechselspeicher
JP5443420B2 (ja) * 2011-03-23 2014-03-19 株式会社東芝 半導体記憶装置
US8806263B2 (en) * 2011-08-26 2014-08-12 Micron Technology, Inc. Methods and apparatuses including a global timing generator and local control circuits
US11328222B1 (en) 2019-05-10 2022-05-10 Innovium, Inc. Network switch with integrated gradient aggregation for distributed machine learning
US10931588B1 (en) * 2019-05-10 2021-02-23 Innovium, Inc. Network switch with integrated compute subsystem for distributed artificial intelligence and other applications
US10931602B1 (en) 2019-05-10 2021-02-23 Innovium, Inc. Egress-based compute architecture for network switches in distributed artificial intelligence and other applications
US11099902B1 (en) 2019-05-10 2021-08-24 Innovium, Inc. Parallelized ingress compute architecture for network switches in distributed artificial intelligence and other applications
US11057318B1 (en) 2019-08-27 2021-07-06 Innovium, Inc. Distributed artificial intelligence extension modules for network switches
US11114149B2 (en) * 2019-11-13 2021-09-07 Wuxi Petabyte Technologies Co, Ltd. Operation methods of ferroelectric memory
WO2021176243A1 (en) 2020-03-03 2021-09-10 Micron Technology, Inc. On-the-fly programming and verifying method for memory cells based on counters and ecc feedback
TWI755154B (zh) * 2020-03-03 2022-02-11 美商美光科技公司 基於計數器及錯誤校正碼反饋用於記憶體單元之即時程式化及驗證方法
CN113642419B (zh) * 2021-07-23 2024-03-01 上海亘存科技有限责任公司 一种用于目标识别的卷积神经网络及其识别方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3146075B2 (ja) * 1992-10-14 2001-03-12 三菱電機株式会社 多重化メモリ装置
US6052302A (en) * 1999-09-27 2000-04-18 Motorola, Inc. Bit-wise conditional write method and system for an MRAM
JP3701886B2 (ja) 2001-04-27 2005-10-05 インターナショナル・ビジネス・マシーンズ・コーポレーション 記憶回路ブロック及びアクセス方法
US6545906B1 (en) * 2001-10-16 2003-04-08 Motorola, Inc. Method of writing to scalable magnetoresistance random access memory element
JP2003151262A (ja) 2001-11-15 2003-05-23 Toshiba Corp 磁気ランダムアクセスメモリ
JP2006523358A (ja) * 2003-03-20 2006-10-12 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 異なるメモリセルに対する同時読み取りおよび書き込み

Also Published As

Publication number Publication date
CN1826658B (zh) 2011-06-15
EP1649468A1 (de) 2006-04-26
CN1826658A (zh) 2006-08-30
JP2006528398A (ja) 2006-12-14
US7263018B2 (en) 2007-08-28
ATE378683T1 (de) 2007-11-15
DE602004010134D1 (de) 2007-12-27
US20060248258A1 (en) 2006-11-02
EP1649468B1 (de) 2007-11-14
WO2005008675A1 (en) 2005-01-27

Similar Documents

Publication Publication Date Title
DE3751171T2 (de) Ferro-elektrischer Speicher mit automatischer Wiederherstellung.
DE602004010134T2 (de) Kompensation einer langen lesezeit einer speichervorrichtung in datenvergleichs- und schreiboperationen
DE3928902C2 (de) Halbleiterspeicher und Verfahren zum Betreiben desselben und Verwendung desselben in einem Video-RAM
DE60208500T2 (de) Speicheranordnung mit einem zwei Register enthaltenden Seitenpufferspeicher sowie entsprechendes Benutzungsverfahren
DE102006020180B3 (de) Verfahren zum Programmieren eines Blocks von Speicherzellen, nicht-flüchtiger Speicher und Speicherkarte
DE3203825C2 (de) Signaldetektorschaltung
DE102005017828A1 (de) Verfahren zum Lesen von Speicherfeldern
DE102005046425A1 (de) Array resistiver Speicherzellen und Verfahren zum Erfassen von Widerstandswerten solcher Zellen
DE2527486B2 (de) Verfahren zur Prüfung bistabiler Speicherzellen
DE10107380C1 (de) Verfahren zum Beschreiben magnetoresistiver Speicherzellen und mit diesem Verfahren beschreibbarer magnetoresistiver Speicher
DE102007041265A1 (de) Wortleitungssteuerung zur Verbesserung der Lese- und Schreibrate
DE69321245T2 (de) Integrierte Programmierschaltung für eine elektrisch programmierbare Halbleiterspeicheranordnung mit Redundanz
DE19756929A1 (de) Zellenarray und Leseverstärkerstruktur mit verbesserten Rauscheigenschaften und verringerter Größe
DE10223711A1 (de) Ferroelektrischer Speicher und Verfahren zu dessen Ansteuerung
DE10038228A1 (de) Zellenblockstruktur eines nichtflüchtigen ferroelektrischen Speichers
DE2620749A1 (de) Matrixspeicher aus halbleiterelementen
DE69924226T2 (de) Verfahren und Vorrichtung zum mehrwertigen Programmierung einer Speicherzelle
DE2041959A1 (de) Randomspeicher
EP0224887A1 (de) Gate Array Anordnung in CMOS-Technik
DE69500023T2 (de) Elektrisch veränderlicher Festspeicher mit Prüffunktionen
DE69326154T2 (de) Integrierte Schaltung für die Programmierung einer Speicherzelle eines nicht flüchtigen Speicherregisters
WO2001065829A1 (de) Verfahren und vorrichtung zum auslesen von bilddaten eines teilbereichs eines bildes
DE69517264T2 (de) Steuerung einer kapazitiven Last
DE10037706A1 (de) Schaltung zum Betreiben eines nichtflüchtigen ferroelektrischen Speichers
DE10105627B4 (de) Mehrfachanschlussspeichereinrichtung, Verfahren und System zum Betrieb einer Mehrfachanschlussspeichereinrichtung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition