DE112010005970T5 - Ablesen eines Speicherlements unter Zuhilfenahme eines Ringoszillators - Google Patents

Ablesen eines Speicherlements unter Zuhilfenahme eines Ringoszillators Download PDF

Info

Publication number
DE112010005970T5
DE112010005970T5 DE112010005970T DE112010005970T DE112010005970T5 DE 112010005970 T5 DE112010005970 T5 DE 112010005970T5 DE 112010005970 T DE112010005970 T DE 112010005970T DE 112010005970 T DE112010005970 T DE 112010005970T DE 112010005970 T5 DE112010005970 T5 DE 112010005970T5
Authority
DE
Germany
Prior art keywords
ring oscillator
data
array
value
memory elements
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.)
Withdrawn
Application number
DE112010005970T
Other languages
English (en)
Inventor
Robert Brooks
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.)
Hewlett Packard Enterprise Development LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of DE112010005970T5 publication Critical patent/DE112010005970T5/de
Withdrawn legal-status Critical Current

Links

Images

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/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0004Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/04Arrangements for selecting an address in a digital store using a sequential addressing device, e.g. shift register, counter
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/16Multiple access memory array, e.g. addressing one storage element via at least two independent addressing line groups
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/18Address timing or clocking circuits; Address control signal generation or management, e.g. for row address strobe [RAS] or column address strobe [CAS] signals
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/027Generators characterised by the type of circuit or by the means used for producing pulses by the use of logic circuits, with internal or external positive feedback
    • H03K3/03Astable circuits
    • H03K3/0315Ring oscillators

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Semiconductor Memories (AREA)
  • Read Only Memory (AREA)
  • Logic Circuits (AREA)

Abstract

Es werden Verfahren und Vorrichtungen zum Einsatz mit Datenspeicherelementen bereitgestellt. Ein Ringoszillator wird mit einem ausgewählten Element innerhalb eines Arrays derart gekoppelt, dass eine Rückkopplungsschleife gebildet wird. Eine Schwingungszeit des Ringoszillators wird mit einem Referenzwert verglichen. Danach bestimmt sich ein innerhalb des ausgewählten Elements gespeicherter Datenwert. Die gespeicherten Datenwerte bleiben im Wesentlichen gleich, wenn auf sie über den Ringoszillator zugegriffen wird. Speicherarrays, die Memristor- oder sonstige Speicherelemente aufweisen, können erfindungsgemäß eingesetzt werden.

Description

  • HINTERGRUND
  • Es sind elektronische Speichergeräte verschiedenerlei Arten bekannt. Typischerweise werden Datenwerte mit elektrischen Signalen darin gespeichert und daraus abgelesen. Speicherelemente oder ”Zellen” innerhalb derartiger Speichergeräte können individuell adressieren, damit diese jeweiligen Schreib- und Ablesevorgänge ausgeüfhrt werden können.
  • Einige in jüngerer Zeit entwickelten Arten von Speicherelementen sind jedoch derart, dass den darin gespeicherten Datenwerten unerwünschte Änderungen zugeführt werden können, oder dass sie sonst Angriffen mit bekannten Signalisierungsmethoden unterliegen. Die vorliegende Lehre betrifft die obigen sowie auch andere Fragen.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegenden Ausführungsformen der Erfindung werden nun beispielhaft und unter Bezugnahme auf die beigefügten Zeichnungen beschrieben, die zeigen:
  • 1 ist ein Blockdiagramm einer Datenspeichervorrichtung gemäß einem Ausführungsbeispiel;
  • 2 ist ein Blockdiagramm einer Datenspeichervorrichtung gemäß einem weiteren Ausführungsbeispiel;
  • 3A ist ein Flussdiagramm eines Teils eines Verfahrens gemäß einem Ausführungsbeispiel;
  • 3B ist ein Flussdiagramm eines anderen Teils des Verfahrens der 3A;
  • 4 ist ein Flussdiagramm eines Verfahrens gemäß einem weiteren Ausführungsbeispiel;
  • AUSFÜHRLICHE BESCHREIBUNG
  • EINLEITUNG
  • Es werden Verfahren und Vorrichtungen zum Einsatz mit Datenspeicherelementen bereitgestellt. Ein Ringoszillator wird mit einem ausgewählten Speicherelement innerhalb eines Arrays derart gekoppelt, dass eine Rückkopplungsschleife gebildet wird. Eine Schwingungszeit des Ringoszillators wird gemessen und mit eniem Referenzwert verglichen. Nach dem Vergleich bestimmt sich ein innerhalb des ausgewählten Elements gespeicherter Datenwert. Die gespeicherten Datenwerte bleiben im Wesentlichen gleich, wenn auf sie über den Ringoszillator zugegriffen wird. Speicherarrays, die Memristor- oder sonstige Speicherelemente aufweisen, können erfindungsgemäß eingesetzt werden.
  • In einer Ausführungsform umfasst ein Apparat eine Mehrzahl über jeweilige Zeilen- und Spaltenadressenleitungen Speicherelemente adressierbarer Speicherelemente. Der Apparat umfasst auch einen zur selektiven Kopplung mit den Speicherelementen über die Zeilen- und Spaltenadressenleitungen zur Bildung eines Rückkopplungsweges konfigurierten Ringoszillator. Der Ringoszillator ist durch eine einem innerhalb eines der damit gekoppelten Speicherelemente entsprechende Schwingungszeit charakterisiert.
  • In einer weiteren Ausführungsform umfasst ein System zur Speicherung von Datenwerten einen Array mehrfacher Speicherelemente. Das System umfasst auch einen durch einen Eingangs- und Ausgangsknoten charakterisierten Ringoszillator. Der Ringoszillator funktioniert mit einer charakteristischen Periode gemäß einem innerhalb eines ausgewählten Speicherelements, das mit dem Ringoszillator über die Ein- und Ausgangsknoten gespeicherten Datenwert. Das System umfasst ferner eine zum Vergleichen der charakteristischen Periode mit einem vorbestimmten Referenzwert konfigurierte Regelschaltung für den Array von Speicherelementen. Die Regelschaltung ist ferner zur Übertragung eines digitalen Signals, das auf den dem Vergleich entsprechenden Datenwert hinweist, konfiguriert.
  • In noch einer weiteren Ausführungsform umfasst ein Verfahren das Programmieren aller Speicherelemente eines Speicherarrays auf einen ersten Wert. Ferner umfasst das Verfahren das Programmieren eines ausgewählten Speicherelements des Speicherarrays auf einen zweiten Wert, der ein anderer als der erste ist. Das Verfahren umfasst ferner das Messen einer ersten Schwingungszeit ”P1” eines mit dem ausgewählten Speicherelement gekoppelten Ringoszillators. Ausserdem umfasst das Verfahren das Programmieren aller Speicherelemente auf den zweiten Wert sowie das Programmieren des ausgewählten Speicherelements auf den ersten Wert. Das Verfahren umfasst ferner das Messen einer zweiten Schwingungszeit ”P2” des mit dem ausgewählten Speicherelement gekoppelten Ringoszillators. Ausserdem umfasst das Verfahren das Ermitteln eines Referenzwerts ”V” für den Array anhand der ersten Schwingungszeit P1 und der zweiten Schwingungszeit P2.
  • In einer weiteren Ausführungsform umfasst ein Verfahren zum Zugreifen auf einen Datenspeicherarray das Koppeln eines Ringoszillators mit einem ausgewählten Speicherelement des Datenspeicherarrays über einen Eingangs- und einen Ausgangsknoten des Ringoszillators, so dass eine Rückkopplungsschleife gebildet wird. Das Verfahren umfasst ferner das Messen einer Schwingungszeit des Ringoszillators. Das Verfahren umfasst ferner das Vergleichen der gemessenen Schwingungszeit mit einem vorbestimmten Referenzwert des Datenspeicherarrays. Darüber hinaus umfasst das Verfahren das Bestimmen eines innerhalb des ausgewählten Elements gespeicherten Datenwertes anhand des Vergleichs.
  • ERSTES AUSFÜHRUNGSBEISPIEL DES APPARATES
  • Hierbei wird auf die 1 Bezug genommen, die ein Blockdiagramm eines Apparates 100 ist. Der Apparat 100 dient lediglich der Veranschaulichung und schränkt die vorliegende Erfindung auf keinerlei Weise ein. So können auch andere Apparate, Vorrichtungen oder Systeme erfindungsgemäß konfiguriert und/oder betrieben werden.
  • Der Apparat 100 umfasst einen Speicherarray (Array) 102 aus Datenspeicherelementen 104. Jedes der Datenspeicherelemente 104 (vorliegend auch ”Speicherelemente 104”) ist derart konfiguriert, dass es mindestens zwei unterschiedliche Datenwerte anhand entsprechender Werte mindestens eines elektrischen Merkmals speichert. Zu derartigen elektrischen Merkmalen gehören insbesondere der Widerstand, die Kapazität, die Induktanz oder eine Kombination aus zwei oder mehr davon. In einem Beispiel kann jedes Speicherelement 104 ein Bit aus binären (d. h. Zweiersystem) Daten – einen Wert von Null oder Eins – im Wege einer nicht flüchtigen Einstellung des elektrischen Widerstandes speichern. In einem Beispiel sind einige oder alle der Speicherelemente 104 durch einen Speicherwiderstand oder ”Memristor” 106 abgegrenzt. Es können auch Speicherelemente anderer Arten und/oder andere Datenspeicherschemen (Dreier, Oktal-, Hexadezimalsystem usw.) verwendet werden.
  • Der Array 102 wird klarheitshalber als 4 × 3-Anordnung abgebildet, umfassend insgesamt zwölf Speicherelemente 104. Es versteht sich jedoch, dass Arrays einer beliebigen praktischen Größe und Konfiguration von der vorliegenden Erfindung inbegriffen sind, und zwar bis zu Eintausend-mal-Eintausend (1 K × 1 K) oder sogar darüber. Jedes der Speicherelemente 104 ist über die entsprechenden Zeilen- 108 und Spaltenadressenleitungen 110 individuell adressierbar. Auf ein beliebiges konkretes Speicherelement 104 kann über eine bestimmte Zeilen- 108 und Spaltenadressenleitung 110 zugegriffen und darauf Datenwerte geschrieben oder daraus abgelesen werden.
  • Der Apparat 100 umfasst ebenfalls ein zum Koppeln verschiedener Aspekte des Apparates 100 oder sonstiger Einheiten mit ausgewählten Speicherelementen 104 über die Zeilenadressenleitungen 108 konfiguriertes Zeilenschalternetzwerk 112. Das Zeilenschalternetzwerk 112 kann z. B. insbesondere Feldeffekttransistoren (FETs), Paß-FETs, Pass-Gates, Dioden, bipolare Transistoren, elektromechanische Schalter oder sonstige Vorrichtungen oder Einheiten umfassen. Dem Fachmann der elektrischen und angrenzenden Bereiche ist klar, dass verschiedene geeignete Schalter und Elemente zur Abgrenzung des Zeilenschalternetzwerks 112 einsetzbar sind; daher ist zum Verständnis der vorliegenden Erfindung keine ausführliche Erläuterung erforderlich.
  • Der Apparat 100 umfasst ebenfalls ein zum Koppeln von Aspekten des Apparates 100 oder sonstiger Einheiten mit ausgewählten Speicherelementen 104 über die Spaltenadressenleitungen 110 konfiguriertes Spaltenschalternetzwerk 114. Das Spaltenschalternetzwerk 114 kann z. B. Feldeffekttransistoren (FETs), Paß-FETs, Pass-Gates, Dioden, bipolare Transistoren, elektromechanische Schalter usw. umfassen. Dem Fachmann der elektrischen und angrenzenden Bereiche ist klar, dass das Spaltenschalternetzwerk 114 auf verschiedenerlei Weisen abgrenzbar ist; daher ist zum Verständnis der vorliegenden Erfindung keine ausführliche Erläuterung erforderlich.
  • Der Apparat 100 umfasst ferner einen Ringoszillator 116. Der Ringoszillator 116 kann eine ungerade Anzahl reihengeschalteter logischer Inverter-Gates umfassen oder dadurch abgegrenzt sein. Ferner ist der Ringoszillator 116 durch einen Eingangs- 118 und einen Ausgangsknoten 120 abgegrenzt. Der Ringoszillator 116 ist derart konfiguriert, dass es mit ausgewählten Speicherelementen 104 über das Zeilen- 112 und das Spaltenschalternetzwerk 114 gekoppelt werden kann. Ein ausgewähltes Speicherelement 104 definiert einen Teil eines Rückkopplungspfades oder einer Rückkopplungschleife, wenn dieses über den Eingangsknoten 118, den Ausgangsknoten 120, das Zeilenschalternetzwerk 112 und das Spaltenschalternetzwerk 114 gekoppelt ist.
  • Insbesondere steht ein ausgewähltes Speicherelement 104 in einer Rückkopplungsschleife mit dem Ringoszillator 116 in Reihenschaltung. Die Rückkopplungsschleife kommt erst zustande, wenn ein ausgewähltes Speicherelement 104 über das Zeilen- 112 und das Spaltenschalternetzwerk 114 mit dem Ringoszillator 116 gekoppelt ist. Die elektrischen Merkmale eines derartigen Rückkopplungspfade beeinflussen die Betriebsfrequenz und die entsprechende Periode des Ringoszillators 116, wie weiter unten beschrieben.
  • Der Apparat 100 umfasst ferner einen Speicherarray-Controller (Controller) 122. Der Controller 122 kann verschiedentlich definiert werden, und kann einen Mikrocontroller, einen Mikroprozessor, einen Zustandsautomaten, eine anwendungsspezifische integrierte Schaltung (ASIC) oder einen sonstigen geeigneten Bestandteil umfassen. Der Controller 122 ist zur Steuerung verschiedener normaler Operationen des Apparates 100 konfiguriert.
  • Beispiele der Operationen des Controllers 122 sind insbesondere: Speichern von Datenwerten innerhalb des Arrays 102, Ablesen von Datenwerten aus dem Array 102, Überwachung oder Ermöglichen der Überwachung des Ringoszillators 116, Operationen zur Steuerung des Zeilen- 112 und des Spaltenschalternetzwerks 114, Empfangen von Datenwerten von und Senden von Datenwerten an sonstige Ressourcen 124 des Apparates 100, usw. Durch den Controller 122 können auch andere normale Operationen gesteuert werden.
  • Insbesondere ist der Controller 122 derart konfiguriert, dass er Datenwerte in den Speicherelementen 104 über eine entsprechende elektrische Signalisierung speichert (Ablesen oder Programmieren). In einem Beispiel sind derartige Datenschreibsignale durch zum Erhöhen oder Senken des nicht flüchtigen elektrischen Widerstandes des ausgewählten Speicherelements 104 formattierte Gleichstromimpulse (DC) definiert. Der Controller 122 ist auch zum Ablesen in den Speicherelementen 104 gespeicherten Datenwerte über den Ringoszillator 116 konfiguriert. Die Operationen des Arrays 102 unter Zuhilfenahme des Ringoszillators 116 werden weiter unten näher erläutert.
  • ERSTES AUSFÜHRUNGSBEISPIEL DES SYSTEMS
  • Hierbei wird auf die 2 Bezug genommen, die ein Blockdiagramm eines Datenspeichersystems 200 ist. Das System 200 dient lediglich der Veranschaulichung und schränkt die vorliegende Erfindung auf keinerlei Weise ein. So können auch andere Apparate, Vorrichtungen oder Systeme erfindungsgemäß konfiguriert und/oder betrieben werden.
  • Das System 200 umfasst eine Mehrzahl Speicher-Unterarrays 202. Jeder Unterarray 202 kann z. B. durch den Apparat 100 abgegrenzt werden. Die Unterarrays können auch andere Architekturen aufweisen. Im Einzelnen umfasst jeder Unterarray 202 mehrere Speicherelemente (z. B. 104), die über einen Ringoszillator (z. B. 116) ablesbar sind. Jeder Unterarray 202 ist somit zum Speichern und Ablesen von Datenwerten konfiguriert.
  • Das System 200 umfasst ferner einen Steuerschalter 204. Der Steuerschalter 204 ist zur Steuerung der Speicherung und Ablesung von Daten unter Zuhilfenahme der Unterarrays 202 konfiguriert. Der Steuerschalter 204 ist zum selektiven Adressieren bestimmter Speicher-Unterarrays 202 sowie zur bidirektionalen Kommunikation von Datenwerten zwischen den Unterarrays 202 und sonstigen Ressourcen 206 konfiguriert. Beispiele sonstiger Ressourcen 206 sind insbesondere systemexterne Einheiten 200, ein Mikroprozessor, mit einem Internet-Netzwerk gekoppelte Kommunikationsschaltungen, andere Datenspeichersysteme, usw.
  • Das Datenspeichersystem 200 umfasst klarheitshalber insgesamt zehn Speicher-Unterarrays 202. Erfindungsgemäß sind jedoch verschiedene Datenspeichersysteme mit Unterarrays in einer beliebigen praktisch möglichen Anzahl denkbar, die jeweils über einen Ringoszillator ablesbare, einzeln adressierbare Speicherelemente umfassen.
  • ERSTES AUSFÜHRUNGSBEISPIEL DES VERFAHRENS
  • Hierbei wird auf die 3A Bezug genommen, in der ein Flussdiagramm eines Teils eines Verfahrens nach einem erfindungsgemäßen Ausführungsbeispiel abgebildet wird. Das Verfahren der 3A umfasst bestimmte Operationen und eine bestimmte Schrittfolge. Auch sonstige Verfahren, umfassend sonstige Operationen, bei denen eine oder mehrere der abgebildeten Operationen ausgelassen, oder die in einer anderen Schrittfolge erfolgen, sind erfindungsgemäß auch einsetzbar. Das Verfahren der 3A dient also lediglich der Veranschaulichung und schränkt die Erfindung keineswegs ein. Zum besseren Verständnis des Verfahrens nach 3A wird auch auf die 1 verwiesen.
  • Bei 300 sind alle Elemente eines Speicherarrays auf einen Wert von Null programmiert. Zur Veranschaulichung sind alle Speicherelemente 104 des Arrays 102 derart programmiert, dass sie einen ersten Datenwert Null speichern. Diese Programmierung erfolgt über elektrische Signale, die vom Speicherarraycontroller 122 versendet werden. In einem Beispiel wird jedes Speicherelement 104 sequenziell adressiert, bis alle Speicherelemente 104 programmiert worden sind. In einem weiteren Beispiel werden zwei oder mehr, oder sogar alle Speicherelemente 104 gleichzeitig programmiert.
  • Bei 302 wird ein Element ”E” des Speicherarrays ausgewählt und auf einen Wert von Eins programmiert. In diesem Beispiel wird ein ebenfalls mit ”E” gekennzeichnetes Speicherelement 104 über die entsprechende Zeilen- 108 und Spaltenadressenleitung 110 einzeln adressiert. Der Controller 122 sendet dann entsprechende elektrische Signale, um das Schreiben eines zweiten Datenwertes von Eins auf das bestimmte Speicherelement E zu veranlassen. Das Speicherelement E ist willkürlich ausgewählt und dient nur der Veranschaulichung. Es können zahlreiche Auswahlschemen verwendet werden, die vorliegend nicht beschrieben werden.
  • Bei 304 wird das Element E mit einem Ausgangsknoten des Ringoszillators des Speicherarrays gekoppelt. Vorliegend empfängt das Zeilenschalternetzwerk 112 vom Controller 122 ein Signal, so dass das Speicherelement E mit dem Ausgangsknoten 120 des Ringoszillators 116 gekoppelt wird.
  • Bei 306 wird das Element E mit einem Eingangsknoten des Ringoszillators des Speicherarrays gekoppelt. Vorliegend empfängt das Spaltenschalternetzwerk 114 vom Controller 122 ein Signal, so dass das Speicherelement E mit dem Eingangsknoten 118 des Ringoszillators 116 gekoppelt wird. Das Speicherelement E ist jetzt Teil einer mit dem Ringoszillator 116 gekoppelten Rückkopplungsschleife.
  • Bei 308 wird für den Ringoszillator eine Schwingungszeit P1 gemessen. Vorliegend wird vom Controller 122 eine Schwingungszeit (d. h. Kehrwert der Frequenz) P1 des Ringoszillators 116 erkannt und gemessen. Der Controller 122 speichert dann den Wert P1 intern als Registerwert in der Cache oder einem sonstigen Speicher. Die genaue Form des Speichers im Controller 122 ist vorliegend nicht relevant. Der Ringoszillator 116 wird dann vom Speicherelement E entkoppelt, sobald der Wert P1 gemessen und gespeichert worden ist.
  • Bei 310 sind alle Elemente eines Speicherarrays auf einen Wert von Eins programmiert. Zur Veranschaulichung sind alle Speicherelemente 104 des Arrays 102 derart programmiert, dass sie einen zweiten Datenwert Eins speichern. Diese Programmierung erfolgt über elektrische Signale, die vom Speicherarraycontroller 122 versendet werden. In einem Beispiel wird jedes Speicherelement 104 sequenziell adressiert, bis alle Speicherelemente 104 programmiert worden sind. In einem weiteren Beispiel werden zwei oder mehr, oder sogar alle Speicherelemente 104 gleichzeitig programmiert.
  • Bei 312 wird das Element ”E” des Speicherarrays ausgewählt und auf einen Wert von Null programmiert. Vorliegend wird das Speicherelement E einzeln adressiert, und der Controller 122 schreibt dann den ersten Datenwert Null auf das Speicherelement E. Nun wird auf 3B verwiesen, die ein Flussdiagramm eines anderen Teils des Verfahrens der 3A zeigt.
  • Bei 314 wird das Element E mit einem Ausgangsknoten des Ringoszillators des Speicherarrays gekoppelt. Vorliegend empfängt das Zeilenschalternetzwerk 112 vom Controller 122 ein Signal, so dass das Speicherelement E mit dem Ausgangsknoten 120 des Ringoszillators 116 gekoppelt wird.
  • Bei 316 wird das Element E mit einem Eingangsknoten des Ringoszillators des Speicherarrays gekoppelt. Vorliegend empfängt das Spaltenschalternetzwerk 114 vom Controller 122 ein Signal, so dass das Speicherelement E mit dem Eingangsknoten 118 des Ringoszillators 116 gekoppelt wird.
  • Bei 318 wird für den Ringoszillator eine Schwingungszeit P0 gemessen. Vorliegend wird vom Controller 122 eine Schwingungszeit P0 des Ringoszillators 116 erkannt und gemessen. Der Controller 122 speichert dann den Wert P0 intern als Registerwert in der Cache o. ä.. Der Ringoszillator 116 wird dann vom Speicherelement E entkoppelt, sobald der Wert P0 gemessen und gespeichert worden ist.
  • Bei 320 wird ein Referenzwert V für den Speicherarray anhand der Schwingungszeitwerte P1 und P0 ermittelt. Vorliegend ermittelt der Controller 122 den Referenzwert V nach der nachfolgenden Formel: V = (P1 + P0)/2. Damit wird der Durschnitt der jeweiligen Schwingungszeiten P1 und P0 ermittelt. Der resultierende Wert V wird dann im Controller 122 zur weiteren Verwendung gemäß der nachfolgenden Beschreibung gespeichert.
  • ZWEITES AUSFÜHRUNGSBEISPIEL DES VERFAHRENS
  • Hierbei wird auf die 4 Bezug genommen, in der ein Flussdiagramm eines Teils eines Verfahrens nach einem weiteren erfindungsgemäßen Ausführungsbeispiel abgebildet wird. Das Verfahren der 4 umfasst bestimmte Operationen und eine bestimmte Schrittfolge. Auch sonstige Verfahren, umfassend sonstige Operationen, bei denen eine oder mehrere der abgebildeten Operationen ausgelassen, oder die in einer anderen Schrittfolge erfolgen, sind erfindungsgemäß auch einsetzbar. Das Verfahren der 4 dient also lediglich der Veranschaulichung und schränkt die Erfindung keineswegs ein. Zum besseren Verständnis des Verfahrens nach 4 wird auch auf die 1 verwiesen.
  • Bei 400 empfängt ein Controller eines Speicherarrays eine Adresse eines abzulesenden Speicherelements. Zur Veranschaulichung empfängt der Speicherarraycontroller 122 eine Anforderung von sonstigen Ressourcen 124, einen in einem mit G gekennzeichneten Speicherelement 104 gespeicherten Datenwert abzulesen. Die empfangene Anforderung enthält eine Adresse oder sonstige geeignete Kennzeichnung des konkreten Speicherelements G. Zur weiteren Veranschaulichung ist der Array 102 zur Speicherung binärer (d. h. Zweiersystem) Datenwerte konfiguriert. Erfindungsgemäß sind jedoch auch Speicherarrays denkbar, die zur Speicherung sonstiger Datenwertsysteme (z. B. Dreiersystem, Oktalsystem, usw.) konfiguriert sind.
  • Bei 402 bestimmt der Controller anhand der empfangenen Adresse eine Zeile und eine Spalte des Speicherelements G. Vorliegend verwendet der Controller 122 die bei 400 empfangene Adresse (oder sonstige Kennzeichnung) zur Bestimmung einer ”Kreuzung” einer Zeilen und Spalte des Speicherelements G.
  • Bei 404 wird die Zeile des Speicherelements G mit dem Ausgangsknoten eines Ringoszillators des Arrays gekoppelt. Vorliegend empfängt das Zeilenschalternetzwerk 112 vom Controller 122 ein Signal zur Kopplung des Speicherelements G mit dem Ausgangsknoten 120 des Ringoszillators 116.
  • Bei 406 wird die Spalte des Speicherelements G mit dem Eingangsknoten eines Ringoszillators des Arrays gekoppelt. Vorliegend empfängt das Spaltenschalternetzwerk 114 vom Controller 122 ein Signal zur Kopplung des Speicherelements G mit dem Eingangsknoten 118 des Ringoszillators 116.
  • Bei 408 wird für den Ringoszillator eine Schwingungszeit PM gemessen. Vorliegend wird vom Controller 122 eine Schwingungszeit (d. h. Kehrwert der Frequenz) PM des Ringoszillators 116 gemessen. Der Wert PM wird dann vom Controller 122 intern speichert. Der Ringoszillator 116 wird dann vom Speicherelement G entkoppelt, sobald der Wert PM gemessen und gespeichert worden ist.
  • Bei 410 wird der Messwert PM mit einem vorher gemessenen Referenzwert V des Arrays verglichen. Vorliegend liest der Controller 122 einen vorbestimmten Referenzwert V des Arrays 102 vom internen Speicher ab. Der soeben gemessene Wert PM wird dann vom Controller 122 mit dem Wert V verglichen. Ist der Wert PM größer oder gleich dem Wert V, so fährt das Verfahren mit dem Schritt 412 unten fort. Ist der Wert PM kleiner oder gleich dem Wert V, so fährt das Verfahren mit dem Schritt 414 unten fort.
  • Bei 412 gibt der Controller einen Wert Null zurück. Vorliegend gibt der Controller 122 den sonstigen Ressourcen 124 einen Wert Null oder einen sonstigen ersten Wert zurück. Damit ist das eine Operaton des Verfahrens der Fig. abgeschlossen.
  • Bei 414 gibt der Controller einen Wert Eins zurück. Vorliegend gibt der Controller 122 den sonstigen Ressourcen 124 einen Wert Eins oder einen sonstigen zweiten Wert zurück. Damit ist das eine Operaton des Verfahrens der 4 abgeschlossen.
  • Die vorstehenden Verfahren und der vorstehende Appart dienen der Veranschaulichung zahlreicher erfindungsgemäß denkbarer Ausführungsformen. Generell und ohne Einschränkung der Erfindung sind Datenspeicherarrays, Apparate und Systeme denkbar. Ein derartiger Array umfasst eine Mehrzahl einzeln adressierbarer Speicherelemente, die jeweils zum Speichern eines Datenwerts (binär, trinär, oktal, usw.) anhand eines programmierbaren, nicht flüchtigen elektrischen Merkmals konfiguriert sind. Zu derartigen elektrischen Merkmalen gehören insbesondere der Widerstand, die Kapazität, die Induktanz oder eine Kombination aus zwei oder mehr davon. In einem oder mehreren Beispielen werden die Speicherelemente durch Memristoren definiert. Auch andere Speicherelemente können eingesetzt werden.
  • Ein Ringoszillator wird mit Speicherelementen des Arrays derart gekoppelt, dass eine Rückkopplungsschleife gebildet wird, und der Ringoszillator entsprechend schwingt.. Die Schwingungszeit entspricht den erfindungsgemäßen elektrischen Merkmalen des ausgewählten Speicherelements und damit dem darin gespeicherten Datenwert. Die Schwingungszeit wird dann von einem Controller oder einer sonstigen geeigneten Ressource gemessen und mit einem Referenzwert des Arrays verglichen. Nach dem Vergleich bestimmt sich ein im jeweiligen Speicherelement gespeicherter konkreter Datenwert innerhalb einer Toleranz. Dieser Datenwert wird dann anderen Ressourcen mitgeteilt, in internen Berechnungen oder Operationen verwendet, usw.
  • Die resistiv-kapazitive (RC) Zeitkonstante des ausgewählten Speicherelements liegt deutlich unter der parasitären Zeitkonstante des übrigen Datenspeicherarrays. Die Schwingungszweit unterliegt wiederum der umfangreichsten Beeinflussung durch den aktuellen Zustand des ausgewählten Speicherelements, während parasitäre Merkmale eine vernachlässigbare Wirkung entfalten. Erfindungsgemäß werden also zuverlässige Datenableseoperationen durchgeführt.
  • Die vorliegende Erfindung unterscheidet sich auch von bekannten Methoden, bei denen rein ohm'sche (d. h. Spannung gegenüber Strom) Messungen verwendet werden. Im Einzelnen lässt sich der elektrische Widerstand eines ausgewählten Speicherelements aus dem Gesamtwiderstand eines Arrays derartiger Elemente nach bekannten Verfahren schwer bestimmen. Dieses Problem wird mit den erfindungsgemäßen Ringoszillator-Operationen im Wesentlichen vermieden.
  • Gespeicherte Datenwerte, die mittels eines Ringoszillators abgelesen werden, bleiben aufgrund des Charakters eines schwingenden elektrischen Signals im Wesentlichen unverändert. Besonders nützlich ist dies in einer Ausführungsform, in der Memristoren über Gleichstromsignale programmiert werden, der nicht flüchtige Widerstand aber angesichts eines schwachen Wechselstromsignals im Wesentlichen unverändert bleibt.
  • Generell soll die vorstehende Beschreibung der Veranschaulichung dienen und keineswegs den Erfindungsumfang einschränken. Für den Fachmann sind zahlreiche andere Ausführungsformen und Anwendungen als die vorstehenden Beispiele aus der vorliegenden Beschreibung erkennbar. Der Erfindungsumfang ist also nicht unter Verweis auf die vorstehende Beschreibung, sondern nach den beigefügten Patentansprüchen sowie allen möglichen gleichwertigen Auslegungen der Patentansprüche zu bestimmen. Es ist zu erwarten und auch wünschenswert, dass sich das vorliegende Fachgebiet auch in Zukunft weiterentwickelt und die erfindungsgemäßen Systeme und Verfahren in derartige zukünftige Ausführungsformen integriert werden. Insgesamt ist anzumerken, dass die Erfindung Veränderungen und Variationen zugänglich ist und ihre Schranken ausschließlich in den nachfolgenden Patentansprüchen findet.

Claims (16)

  1. Apparat, umfassend: eine Mehrzahl von über jeweilige Zeilen- und Spaltenadressenleitungen individuell adressierbare Speicherelemente; und einen Ringoszillator, der zur Bildung eines Rückkopplungsweges dazu konfiguriert ist, über die Zeilen- und Spaltenadressenleitungen selektiv mit den Speicherelementen gekoppelt zu werden, und der dadurch charakterisiert ist, dass der Ringoszillator eine Schwingungszeit aufweist, die einem in einem der damit gekoppelten Speicherelemente gespeicherten Datenwert entspricht.
  2. Apparat nach Anspruch 1, ferner umfassend eine zum Senden eines der Schwingungszeit entsprechenden digitalen Signals konfigurierte Regelschaltung, welche einem vorbestimmten Referenzwert der Mehrzahl von Speicherelemente entsprechend funktioniert.
  3. Apparat nach Anspruch 2, bei dem die Regelschaltung ferner zur Speicherung jeweiliger Datenwerte in den Speicherelementen konfiguriert ist.
  4. Apparat nach Anspruch 1, wobei eines oder mehrere der Speicherelemente durch jeweilige Memristoren definiert sind.
  5. Apparat nach Anspruch 1, wobei die in dem mit dem Ringoszillator gekoppelten Datenelement gespeicherten Datenwerte unverändert bleiben, während der Ringoszillator mit dem Datenelement gekoppelt ist.
  6. Apparat nach Anspruch 1, ferner umfassend: ein Zeilenschalternetzwerk, das dazu konfiguriert ist, über die Zeilenadressenleitungen einen Ausgangs- oder Eingangsknoten des Ringoszillators mit ausgewählten Speicherelementen zu koppeln; und ein Spaltenschalternetzwerk, das dazu konfiguriert ist, über die Spaltenadressenleitungen den anderen der Ausgangs- und Eingangsknoten des Ringoszillators mit ausgewählten Speicherelementen zu koppeln.
  7. Apparat nach Anspruch 1, welcher einen zur Speicherung von Datenwerten nach einem binären oder höheren Datenschema konfigurierten Datenspeicherarray definiert.
  8. System zur Speicherung von Datenwerten, umfassend: ein Array aus mehreren Speicherelementen; einen durch einen Eingangs- und Ausgangsknoten charakterisierten Ringoszillator, der mit einer charakteristischen Periode gemäß einem Datenwert, der innerhalb eines ausgewählten Speicherelements gespeichert ist, das mit dem Ringoszillator über die Ein- und Ausgangsknoten mit dem Ringoszillator gekoppelt ist funktioniert; und eine Regelschaltung, die dazu konfiguriert ist, die charakteristische Periode mit einem vorbestimmten Referenzwert des Arrays aus mehreren Datenspeicherelementen zu vergleichen, sowie gemäß dem Vergleich ein den Datenwert andeutendes Datensignal zu senden.
  9. System nach Anspruch 8, wobei das ausgewählte Datenelement einen Teil einer reihengeschalteten Rückkoplungsschleife des Ringoszillators definiert.
  10. Verfahren, umfassend: Programmieren aller Speicherelemente eines Speicherarrays auf einen ersten Wert; Programmieren eines ausgewählten Speicherelements des Speicherarrays auf einen zweiten Wert, der ein anderer als der erste ist; Messen einer ersten Schwingungszeit ”P1” eines mit dem ausgewählten Speicherelement gekoppelten Ringoszillators; Programmieren aller Speicherelemente auf den zweiten Wert; Programmieren des ausgewählten Speicherelements auf den ersten Wert; Messen einer zweiten Schwingungszeit ”P2” eines mit dem ausgewählten Speicherelement gekoppelten Ringoszillators; und Ermitteln eines Referenzwerts ”V” für das Array anhand der ersten Schwingungszeit P1 und der zweiten Schwingungszeit P2.
  11. Verfahren nach Anspruch 10, ferner umfassend das Koppeln des Ringoszillators mit dem ausgewählten Speicherelement, so dass eine Rückkopplungsschleife definiert wird.
  12. Verfahren nach Anspruch 10, wobei der Referenzwert gemäß der nachfolgenden Formel ermittelt wird: V = (P1 + P2)/2.
  13. Verfahren nach Anspruch 10, ferner umfassend die Verwendung des Referenzwertes V bei der Ermittlung eines in einem der Speicherelemente des Arrays gespeicherten Datenwertes.
  14. Verfahren nach Anspruch 10, wobei mindestens eines der Speicherelemente ein Memristor ist.
  15. Verfahren zum Zugreifen auf ein Datenspeicherarray, umfassend: Koppeln eines Ringoszillators mit einem ausgewählten Speicherelement des Datenspeicherarrays über einen Eingangs- und einen Ausgangsknoten des Ringoszillators, so dass eine Rückkopplungsschleife gebildet wird; Messen einer Schwingungszeit des Ringoszillators; Vergleichen der gemessenen Schwingungszeit mit einem vorbestimmten Referenzwert des Datenspeicherarrays; und Bestimmen eines innerhalb des ausgewählten Speicherelements gespeicherten Datenwertes gemäß dem Vergleich.
  16. Verfahren nach Anspruch 15, wobei keine Rückkopplungsschleife vorliegt, wenn der Ringoszillator nicht mit einem Speicherelement des Datenspeicherarrays gekoppelt ist.
DE112010005970T 2010-11-01 2010-11-01 Ablesen eines Speicherlements unter Zuhilfenahme eines Ringoszillators Withdrawn DE112010005970T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2010/054922 WO2012060807A1 (en) 2010-11-01 2010-11-01 Storage element reading using ring oscillator

Publications (1)

Publication Number Publication Date
DE112010005970T5 true DE112010005970T5 (de) 2013-08-29

Family

ID=46024722

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112010005970T Withdrawn DE112010005970T5 (de) 2010-11-01 2010-11-01 Ablesen eines Speicherlements unter Zuhilfenahme eines Ringoszillators

Country Status (7)

Country Link
US (1) US8923073B2 (de)
JP (1) JP5529352B2 (de)
KR (1) KR20130141504A (de)
CN (1) CN103201795B (de)
DE (1) DE112010005970T5 (de)
GB (1) GB2498281B (de)
WO (1) WO2012060807A1 (de)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9239604B2 (en) * 2012-08-31 2016-01-19 Vixs Systems, Inc. Video processing device with ring oscillator for power adjustment and methods for use therewith
EP2932505A4 (de) * 2013-03-28 2016-08-10 Hewlett Packard Entpr Dev Lp Vorrichtung und verfahren zum lesen einer speichervorrichtung
US9424951B2 (en) * 2013-08-27 2016-08-23 Synopsys, Inc. Dynamic static random access memory (SRAM) array characterization using an isolated bit-line
US9857409B2 (en) 2013-08-27 2018-01-02 Synopsys, Inc. Negative bias thermal instability stress testing of transistors
US20150063010A1 (en) * 2013-08-27 2015-03-05 Synopsys, Inc. Negative bias thermal instability stress testing for static random access memory (sram)
TWI548203B (zh) * 2014-01-08 2016-09-01 新唐科技股份有限公司 電壓產生器以及振盪裝置與操作方法
US9847124B2 (en) 2015-04-23 2017-12-19 Hewlett Packard Enterprise Development Lp Resistive elements to operate as a matrix of probabilities
US9541605B1 (en) 2015-12-15 2017-01-10 International Business Machines Corporation Magnetic tunnel junction loaded ring oscillators for MRAM characterization

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4831592A (en) * 1986-07-09 1989-05-16 Kabushiki Kaisha Toshiba Nonvolatile semiconductor memory device
US5144525A (en) * 1990-09-27 1992-09-01 Tektronix, Inc. Analog acquisition system including a high speed timing generator
JP2768172B2 (ja) * 1992-09-30 1998-06-25 日本電気株式会社 半導体メモリ装置
KR100631935B1 (ko) * 2000-06-30 2006-10-04 주식회사 하이닉스반도체 반도체 메모리 장치의 셀프 리프레시 회로
JP4088954B2 (ja) * 2002-03-04 2008-05-21 日本電気株式会社 半導体記憶装置の読み出し回路
FR2875329A1 (fr) 2004-09-15 2006-03-17 St Microelectronics Sa Lecture de l'etat d'un element de memorisation non volatile
US7489204B2 (en) 2005-06-30 2009-02-10 International Business Machines Corporation Method and structure for chip-level testing of wire delay independent of silicon delay
US7376001B2 (en) 2005-10-13 2008-05-20 International Business Machines Corporation Row circuit ring oscillator method for evaluating memory cell performance
US7349271B2 (en) 2005-10-13 2008-03-25 International Business Machines Corporation Cascaded test circuit with inter-bitline drive devices for evaluating memory cell performance
US7869253B2 (en) 2006-08-21 2011-01-11 Qimonda Ag Method of determining a memory state of a resistive memory cell and device measuring the memory state of a resistive memory cell
US7414904B2 (en) * 2006-12-12 2008-08-19 International Business Machines Corporation Method for evaluating storage cell design using a wordline timing and cell access detection circuit
US7409305B1 (en) 2007-03-06 2008-08-05 International Business Machines Corporation Pulsed ring oscillator circuit for storage cell read timing evaluation
US7813167B2 (en) 2008-03-21 2010-10-12 Micron Technology, Inc. Memory cell
KR100884983B1 (ko) * 2007-06-26 2009-02-23 주식회사 동부하이텍 표준 셀 라이브러리의 성능 개선을 위한 측정 장치
US7760565B2 (en) * 2007-07-24 2010-07-20 International Business Machines Corporation Wordline-to-bitline output timing ring oscillator circuit for evaluating storage array performance
US7876598B2 (en) 2008-02-28 2011-01-25 Qimonda Ag Apparatus and method for determining a memory state of a resistive n-level memory cell and memory device
US8214699B2 (en) * 2008-06-27 2012-07-03 International Business Machines Corporation Circuit structure and method for digital integrated circuit performance screening
KR100942973B1 (ko) * 2008-06-30 2010-02-17 주식회사 하이닉스반도체 반도체 메모리 장치 및 그의 리셋 제어 회로
US7782107B2 (en) * 2008-06-30 2010-08-24 Oracle America, Inc. Method and apparatus for an event tolerant storage circuit
JP2010102779A (ja) * 2008-10-24 2010-05-06 Hitachi Ltd 半導体記憶装置
US7929338B2 (en) 2009-02-24 2011-04-19 International Business Machines Corporation Memory reading method for resistance drift mitigation

Also Published As

Publication number Publication date
CN103201795B (zh) 2015-10-21
JP2013546112A (ja) 2013-12-26
CN103201795A (zh) 2013-07-10
WO2012060807A1 (en) 2012-05-10
US8923073B2 (en) 2014-12-30
US20130176767A1 (en) 2013-07-11
KR20130141504A (ko) 2013-12-26
GB2498281A (en) 2013-07-10
GB201305158D0 (en) 2013-05-01
GB2498281B (en) 2015-04-08
JP5529352B2 (ja) 2014-06-25

Similar Documents

Publication Publication Date Title
DE112010005970T5 (de) Ablesen eines Speicherlements unter Zuhilfenahme eines Ringoszillators
DE69625494T2 (de) Integrierte schaltung zur speicherung und wiederauffindung von mehreren digitalen bits pro nichtflüchtiger speicherzelle
DE102017118657A1 (de) Anzeigefeld, Schieberegisterschaltung und Ansteuerverfahren dafür
DE3936676C2 (de)
DE112016006170T5 (de) Puf-werterzeugung unter verwendung einer anti-schmelzsicherungs-speicheranordnung
DE102007039462B4 (de) Verfahren und Vorrichtung zur Aufzählung
DE102008059204B4 (de) Verfahren zum Suchen eines Slave-Knotens in einem Kommunikationsnetz, Master-Knoten und Slave-Knoten für ein Kommunikationsnetz
DE3037130A1 (de) Halbleiter-speicherschaltung und adressenbezeichnungsschaltung dafuer
EP1641126A2 (de) Schaltungsanordnung zum Analog/Digital-Wandeln
DE102012102518A1 (de) Verfahren zum Parametrieren eines Feldgeräts
DE102008041947A1 (de) Verfahren und Einrichtung zum irreversiblen Programmieren und Lesen nicht-flüchtiger Speicherzellen
DE102016114614A1 (de) Vorrichtung und Verfahren zum Schreiben von Daten
DE102012209151A1 (de) Setzimpuls für Phasenübergangsspeicher-Programmierung
DE2711679A1 (de) System zum wahlweisen verbinden von datenausgangsleitungen eines speichers mit wahlfreiem zugriff mit einer datenschiene
DE10035137A1 (de) Halbleiterspeichervorrichtung
DE102007062674A1 (de) Integrierte Schaltkreise, Speicher-Steuerungseinheit und Speichermodule
DE102017111544B4 (de) Kombinierte PSI5- / DSI3-Datenschnittstelle für einen gemischten Verbau von Sensoren mit PSI5 und PSI3 Datenbusschnittstelle in Sensorsystemen
DE10318603A1 (de) Eingangsempfängerschaltung
DE69227144T2 (de) Programmierbare logische Einheit
DE102018133465A1 (de) Felderfassungsgerät für ein Feldbusnetzwerk
DE112004002572T5 (de) Nutzung von Rückmeldung zur Wahl der Übertragungsspannung
DE102014008045A1 (de) Verfahren, Einrichtung und Schaltungsanordnung zum Detektieren eines Fehlers auf einem differentiellen Bus
DE19731008A1 (de) Lesespannung-Steuereinrichtung für Halbleiter-Speichereinrichtung
EP1088311B1 (de) Elektronische prüfungsspeichereinrichtung
DE102006050542A1 (de) Verfahren zum Übertragen von Signalen zwischen einem Speicherbauelement und einer Speichersteuereinheit

Legal Events

Date Code Title Description
R081 Change of applicant/patentee

Owner name: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP, HOU, US

Free format text: FORMER OWNER: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P., HOUSTON, TEX., US

R082 Change of representative

Representative=s name: BOEHMERT & BOEHMERT ANWALTSPARTNERSCHAFT MBB -, DE

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee