-
TECHNISCHES GEBIET
-
Die vorliegende Erfindung bezieht sich allgemein auf integrierte Schaltungen und insbesondere auf das Speichern von Kalibrierungsinformationen und anderen Informationen durch als integrierte Schaltungen ausgestaltete Sensorbauelemente.
-
HINTERGRUND
-
Sensorbauelemente müssen häufig Informationen oder Daten intern zur Benutzung durch den Sensor zu bestimmten Zeiten oder beim Auftreten bestimmter Ereignisse speichern. Beispielsweise erzeugen Magnetfeldsensoren häufig Kalibrierungsinformationen und speichern diese zur Benutzung beim Einschalten oder Hochfahren oder zu einem anderen Zeitpunkt.
-
Diese gespeicherten Informationen können jedoch verloren gehen, wenn das Sensorbauelement einem Rücksetzereignis (Reset) oder einem Stromausfall ausgesetzt ist. Für das Beispiel der Magnetfeldsensoren ist beispielsweise anzuführen, dass diese Sensoren häufig in Automobilanwendungen wie bei der Kraftstoffeinspritzung oder sonst in Motorsystemen eingesetzt werden, wo sie bedeutender elektromagnetischer Interferenz, Spannungsspitzen, welche durch Starten und Anhalten des Motors oder durch andere Quellen verursacht werden, oder anderen Stromunterbrechungen ausgesetzt sein können. Diese Unterbrechungen können bewirken, dass die Versorgungsleitungsspannung auf einen Wert unterhalb des für den Sensor notwendigen Minimums fällt, wenn auch gegebenenfalls nur für einen sehr kurzen Zeitraum, was dazu führt, dass der Sensor zurückgesetzt wird und die aktuellen Kalibrierungsinformationen verloren gehen können. Dies ist unerwünscht, da ein Kaltstart des Sensors eine Kalibrierungsprozedur erfordert, welche zusätzliche Zeit benötigt und keine Kalibrierungsinformationen berücksichtigen kann, welche während tatsächlichen Betriebsbedingungen erhalten wird, welche beispielsweise Temperatur- und andere Echtzeiteigenschaften abbilden können, welche ausgehend von dem Einschalten oder allgemein über der Zeit variieren können.
-
Ein verwandtes Problem ist die Beschädigung von Kalibrierungsinformationen. Wenn, während der Sensor in einen Speicher schreibt, ein Stromausfall oder ein Rücksetzen erfolgt, können die Informationen trotzdem in den Speicher geschrieben werden, aber diese Informationen können unvollständig oder beschädigt sein. Selbst wenn der Sensor in der Lage ist, die Informationen nach der Stromunterbrechung beizubehalten, beispielsweise durch Benutzung eines externen Kondensators als Stromquelle, kann der Sensor nicht wissen, ob die Information unverlässlich oder beschädigt ist. Die Benutzung dieser Informationen kann zu einer verringerten Leistungsfähigkeit des Sensors oder zu Fehlern des Sensors führen, welche offensichtlich unerwünscht sind.
-
Es ist daher eine Aufgabe, integrierte Speicherschaltungen, Verfahren und Einrichtungen bereitzustellen, mit welchen diese Probleme behoben werden können und beispielsweise Daten verlässlich gespeichert werden können oder zumindest fehlerhaft gespeicherte Daten einfach erkannt werden können.
-
KURZZUSAMMENFASSUNG DER ERFINDUNG
-
Es werden eine integrierte Schaltung nach Anspruch 1, ein Verfahren nach Anspruch 13 sowie eine Einrichtung nach Anspruch 18 bereitgestellt. Die Unteransprüche definieren weitere Ausführungsbeispiele.
-
Ausführungsbeispiele beziehen sich auf Systeme und Verfahren zum verlässlichen Speichern von Informationen in einem Sensor. Bei einem Ausführungsbeispiel umfasst eine integrierte Schaltung einen ersten Speicherabschnitt, welcher eingerichtet ist, Informationen und ein Validitätsbit zu speichern, einen zweiten Speicherabschnitt, welcher eingerichtet ist, Informationen und ein Validitätsbit zu speichern, und eine Schaltung, welche eine erste Fehlerdetektionsschaltung, welche mit dem ersten Speicherabschnitt gekoppelt ist, eine zweite Fehlerdetektionsschaltung, welche mit dem zweiten Speicherabschnitt gekoppelt ist, und eine Schaltung des langsamen Rücksetzens, welche sowohl mit dem ersten Speicherabschnitt als auch mit dem zweiten Speicherabschnitt gekoppelt ist, wobei der erste Speicherabschnitt zurückgesetzt wird, wenn durch die erste Fehlerdetektionsschaltung ein Fehler detektiert wird, der zweite Speicherabschnitt zurückgesetzt wird, wenn durch die zweite Fehlerdetektionsschaltung ein Fehler detektiert wird, und der erste Speicherabschnitt und der zweite Speicherabschnitt zurückgesetzt werden, wenn durch die Schaltung des langsamen Rücksetzens ein Fehler detektiert wird.
-
Bei einem Ausführungsbeispiel umfasst ein Verfahren ein Setzen eines Validitätsbits eines ersten Speicherabschnitts auf einen ersten Wert, ein Schreiben von Daten in den ersten Speicherabschnitt, ein Setzen eines Validitätsbits des ersten Speicherabschnitts auf einen zweiten Wert, ein Setzen eines Validitätsbits eines zweiten Speicherabschnitts auf einen ersten Wert, ein Schreiben von Daten in den zweiten Speicherabschnitt, und ein Setzen eines Validitätsbits des zweiten Speicherabschnitts auf einen zweiten Wert.
-
Bei einem Ausführungsbeispiel umfasst eine Einrichtung eine Speicherschaltung umfassend einen ersten Speicherabschnitt, welcher eingerichtet ist, Informationen und ein Validitätsbit zu speichern, einen zweiten Speicherabschnitt, welcher eingerichtet ist, Informationen und ein Validitätsbit zu speichern, und eine Schaltung umfassend eine erste Fehlerdetektionsschaltung, welche mit dem ersten Speicherabschnitt gekoppelt ist, eine zweite Fehlerdetektionsschaltung, welche mit dem zweiten Speicherabschnitt gekoppelt ist, und eine Schaltung des langsamen Rücksetzens, welche sowohl mit dem ersten Speicherabschnitt als auch mit dem zweiten Speicherabschnitt gekoppelt ist, wobei der erste Speicherabschnitt zurückgesetzt wird, wenn durch die erste Fehlerdetektionsschaltung ein Fehler detektiert wird, der zweite Speicherabschnitt zurückgesetzt wird, wenn durch die zweite Fehlerdetektionsschaltung ein Fehler detektiert wird, und der erste Speicherabschnitt und der zweite Speicherabschnitt zurückgesetzt werden, wenn durch die Schaltung des langsamen Rücksetzens ein Fehler detektiert wird, und eine Betriebsschaltung, welche eingerichtet ist, die in zumindest dem ersten oder dem zweiten Speicherabschnitt gespeicherten Informationen zu benutzen.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Ausführungsbeispiele der Erfindung werden nachfolgend unter Bezugnahme auf die beigefügten Zeichnungen näher erläutert.
-
Es zeigen:
-
1 ein Blockdiagramm einer Einrichtung umfassend eine Informationsspeicherschaltung gemäß einem Ausführungsbeispiel,
-
2 ein Schaltungsblockdiagramm der Informationsspeicherschaltung der 1,
-
3 eine Darstellung einer Speicherzeit über der Temperatur gemäß einem Ausführungsbeispiel,
-
4 ein Blockdiagramm eines Speicherabschnitts der 1 und 2,
-
5 ein Schreib-Zeit-Ablaufdiagramm gemäß einem Ausführungsbeispiel, und
-
6 ein Flussdiagramm eines Schreibprozesses gemäß einem Ausführungsbeispiel.
-
Zu bemerken ist, dass, obwohl spezifische Ausführungsbeispiele in den Figuren gezeigt und unten stehend beschrieben werden, diese Beschreibung nicht als einschränkend auszulegen ist, da verschiedene Modifizierungen und alternative Formen für Ausführungsbeispiele der Erfindung möglich sind.
-
DETAILLIERTE BESCHREIBUNG
-
Ausführungsbeispiele beziehen sich auf das verlässliche Speichern von Informationen in einem Sensor oder einer anderen Einrichtung. Bei einem Ausführungsbeispiel umfasst eine Informationsspeicherschaltung unabhängige, redundante Speicherabschnitte und eine Fehlerdetektionsschaltung. Die Schaltung kann in Zusammenarbeit mit einer Speicher-Schreib-Prozedur arbeiten, welche ein Validitätsbit benutzt und sequenziell in einen oder den anderen der redundanten Speicherabschnitte derart schreibt, dass zumindest einer der Speicherabschnitte Daten aufweist, welche valide sind, und als solcher erkannt werden kann.
-
In 1 ist ein Blockdiagramm einer Einrichtung 100 dargestellt, beispielsweise eines Geräts oder Bauelements. Allgemein ist die Einrichtung 100 eine funktionale Einrichtung, welche eine Betriebsschaltung 102 zur Durchführung der Funktion oder der Funktionen der Einrichtung aufweist. Beispielsweise kann die Betriebsschaltung 102 eine Mikrosteuerung und andere Schaltungsteile umfassen, welche nötig sind, um die Einrichtung 100 allgemein zu betreiben. Beispielsweise kann bei manchen Ausführungsbeispielen die Einrichtung 100 einen Sensor wie einen Magnetfeldsensor, einen Stromsensor, einen Temperatursensor, einen Beschleunigungssensor oder irgendeine andere Art von Sensor umfassen, wobei die Betriebsschaltung 102 eine Sensorschaltung umfasst. Bei anderen Ausführungsbeispielen kann die Einrichtung 100 ein oder mehrere andere Elemente wie einen Spannungsregler, einen Messwandler oder Energiewandler beispielsweise für Magnetfelder oder Druck, einen Signalpfad, eine digitale Steuerung, einen Ausgangstreiber oder andere Elemente, beispielsweise als Teil einer integrierten Schaltung, umfassen. Zur Vereinfachung wird die Einrichtung 100 im folgenden im Kontext einer Magnetfeldsensoreinrichtung diskutiert, auch wenn diese Diskussion nicht dahingehend ausgelegt werden sollte, dass Ausführungsbeispiele der vorliegenden Erfindung auf Magnetfeldsensoren beschränkt sind.
-
Die Einrichtung 100 umfasst zudem eine Informationsspeicherschaltung 104. Die Informationsspeicherschaltung 104 kann innerhalb der Einrichtung 100 benutzt werden, um von der Betriebsschaltung 102 während des Betriebs benutzte Informationen zu speichern, beispielsweise Kalibrierungsdaten, Ausgangswerte oder andere Informationen. Bei manchen Ausführungsbeispielen kann die Informationsspeicherschaltung 104 zudem benutzt werden, um zu verifizieren, ob in ihr gespeicherte Informationen valide sind. Beispielsweise speichern manche Magnetfeldsensoreinrichtungen Kalibrierungsinformationen während des Betriebs, und diese Informationen können durch die Betriebsschaltung 102 benutzt werden, wenn die Einrichtung 100 zurückgesetzt wird, neu gestartet wird, einer Spannungsspitze oder Stromunterbrechung ausgesetzt wird oder irgendein anderes Ereignis auftritt, welches einen regulären Betrieb der Einrichtung 100 beeinflusst. Die Benutzung dieser gespeicherten Informationen kann bei manchen Ausführungsbeispielen einen schnelleren Neustart und einen genaueren und verlässlicheren Betrieb ermöglichen, anstatt dass Vorgabeinformationen benutzt werden oder darauf gewartet wird, dass neue Informationen erfasst werden, was bei manchen Ausführungsbeispielen gegebenenfalls nicht möglich ist, wenn die Informationen erforderlich sind, um ordnungsgemäß hochzufahren. Wenn diese gespeicherten Informationen jedoch nicht valide sind, beispielsweise weil ein Stromausfall oder ein anderes Ereignis auftrat, während sie in den Speicher 106 oder 108 geschrieben wurden, oder aus irgendeinem anderen Grund, können zusätzliche Fehler innerhalb der Einrichtung 100 auftreten. Daher kann die Informationsspeicherschaltung 104 zudem verifizieren, ob die gespeicherten Informationen valide sind, bevor sie durch die Betriebsschaltung 102 benutzt werden.
-
Bei Ausführungsbeispielen umfasst die Informationsspeicherschaltung 104 redundante Speicherabschnitte 106 und 108 sowie eine Fehlerdetektionsschaltung 110. Die Speicherabschnitte 106 und 108 können beispielsweise bei Ausführungsbeispielen Signalspulen in Form von Latches, andere Register oder andere geeignete Speicherschaltungen umfassen. Die Fehlerdetektionsschaltung 110 umfasst eine Rücksetzschaltung, welche eine Bestimmung ermöglicht, ob ein Stromausfallereignis eine maximale Zeitdauer überschritten hat, so dass eine minimale notwendige Spannung, welche erforderlich ist, um Informationen verlässlich in den Speicherabschnitten 106 und 108 zu speichern, dissipiert oder nicht mehr vorhanden ist. Wenn die in den Speicherabschnitten 106 und 108 gespeicherten Informationen nicht mehr als verlässlich angesehen werden können, weil der Spannungspegel zu weit abgefallen ist, kann die Rücksetzschaltung die Speicherabschnitte 106 und 108 zurücksetzen.
-
In 2 ist ein Ausführungsbeispiel einer Informationsspeicherschaltung 104 detaillierter dargestellt. Bei dem Ausführungsbeispiel der 2 umfasst jeder Speicherabschnitt 106 und 108 eine Gruppe von Latches, welche detaillierter in 4 dargestellt sind und unten stehend diskutiert werden. Jeder Speicherabschnitt 106 und 108 ist mit seiner eigenen Spannungsversorgungsdomäne VDDL1 bzw. VDDL2 gekoppelt. Die Spannung bei VDDL1 und VDDL2 kann je nach Ausführungsbeispiel variieren, beispielsweise abhängig von der Anwendung. Beispielsweise können bei manchen Ausführungsbeispielen VDDL1 und VDDL2 zwischen etwa 2,5 V und 3,5 V liegen, wobei externe Versorgungsspannungen bei ungefähr 3,5 V, ungefähr 12 V, ungefähr 48 V oder einem anderen Spannungspegel liegen können. Jede Versorgungsdomäne VDDL1 und VDDL2 umfasst eine Kapazität 112 bzw. 114, beispielsweise jeweils einen Kondensator, welcher benutzt wird, Energie zu speichern und den jeweils zugeordneten Speicherabschnitt 106 bzw. 108 während kurzer Stromausfälle oder anderer Stromunterbrechungen zu der Einrichtung 100 mit Energie zu versorgen. Bei einem Ausführungsbeispiel umfasst jede Kapazität 112, 114 einen integrierten Kondensator mit 60 pF, obwohl die Größe der Kapazitäten 112 und 114 bei anderen Ausführungsbeispielen variieren kann bzw. anders sein kann. Größere Kapazitäten 112 und 114 würden beispielsweise allgemein Speicherzeiten während Stromverlusten vergrößern, obwohl größere Kapazitäten auf der anderen Seite hinsichtlich Kosten und Flächenverbrauch ungünstiger sind.
-
Jede Versorgungsdomäne VDDL1 und VDDL2 ist zudem über Schalter 116 und 118 mit einer geregelten Spannungsversorgung VDDR gekoppelt. Bei einem Ausführungsbeispiel umfasst jeder Schalter 116, 118 einen Transistor wie einen NMOS-Transistor. Die Schalter 116 und 118 werden durch ein analoges Rücksetzen der Einrichtung 100 gesteuert. Somit sind, solange wie VDDR oberhalb der Rücksetzschwelle liegt, VDDL1 und VDDL2 mit VDDR gekoppelt. Wenn VDDR unterhalb die Rücksetzschwelle fällt, werden VDDL1 und VDDL2 durch die Schalter 116 und 118 von VDDR getrennt und nur über die Kapazitäten 112 und 114 mit Strom bzw. Spannung versorgt.
-
Wenn VDDL1 und VDDL2 und somit der Speicherabschnitt 106 bzw. 108 über einen Leckstrom von internen Transistoren entladen werden, nimmt die Zeit, während der die in den Speicherabschnitten 106 und 108 gespeicherten Informationen verlässlich bleiben, mit steigender Temperatur exponentiell ab. 3 zeigt beispielsweise einen Graph von Speicherzeiten über der Temperatur für eine Testimplementierung. Wie zu sehen ist, nimmt die Speicherzeit, hier in Mikrosekunden gemessen, allgemein mit steigender Temperatur ab und nimmt ab 150 °C schnell ab. Weil es wünschenswert ist, die Zeitspanne, während der die Speicherabschnitte 106 und 108 sich auf die Kapazitäten 112 bzw. 114 zur Strom- und Spannungsversorgung verlassen, besser zu überwachen, um besser zu bestimmen, ob gespeicherte Informationen verlässlich sind, und weil die Temperatur unter Berücksichtigung von Betriebseigenschaften, der Umgebung und anderen Faktoren, welche die Einrichtung 100 beeinflussen, schwer zu steuern oder zu bestimmen ist, umfasst die Schaltung 104 zudem eine Schaltung 120 des langsamen Rücksetzens.
-
Die Schaltung 120 des langsamen Rücksetzens umfasst eine Kapazität 122 und einen Widerstand 124, welche parallel geschaltet sind. Bei einem Ausführungsbeispiel weist die Kapazität 122 einen Kapazitätswert von etwa 20 pF auf, und der Widerstand 124 weist einen Widerstandswert von ungefähr 3 Megaohm (MΩ) auf, auch wenn bei anderen Ausführungsbeispielen andere Werte verwendet werden können. Der Widerstand 124 arbeitet als ein Entladungswiderstand, so dass, wenn die Kapazität 122 durch einen mit dem analogen Rücksetzen gekoppelten Schalter 126 von VDDR entkoppelt wird, die Kapazität 122 anfängt, sich über den Widerstand 124 zu entladen. Die Entladezeit des Widerstands 124 hängt weniger stark von der Temperatur als diejenige der Kapazitäten 112 und 114 ab, so dass die verstrichene Zeit besser gemäß dem Strom, welcher aus der Kapazität 112 über den Widerstand 124 entladen wurde, überwacht werden kann.
-
Beim nächsten Hochfahren der Einrichtung 100 wird ein Komparator 128 wie ein Schmitt-Trigger benutzt, um den Spannungspegel an der Kapazität 122 zu erfassen und diese Spannung mit einem Schwellenwert zu vergleichen. Wenn die Spannung unterhalb des Schwellenwertes liegt, welcher bei einem Ausführungsbeispiel zwischen ungefähr 1,0 V und ungefähr 1,2 V liegen kann, wurde die Zeit, während der Informationen verlässlich in den Speicherabschnitten 106 und 108 gespeichert werden können, überschritten, und die Speicherabschnitte 106 und 108 werden über ein ODER-Gatter 130 bzw. 132 zur selben Zeit, zu der VDDL1 und VDDL2 wieder mit VDDR verbunden werden, zurückgesetzt. Die Länge des Rücksetzpulses kann mit Hilfe von Verzögerungen fallender Flanken vergrößert werden (dies wird unten stehend bezüglich eines Ausführungsbeispiels, welches Verzögerungsschaltungen für die fallende Flanke 131 und 133 umfasst, diskutiert), so dass das Rücksetzsignal verlässlich wird. Dann werden die Kapazität 122 ebenso wie die Kapazitäten 112 und 114 wieder aufgeladen. Der von dem Komparator 128 genutzte Spannungsschwellenwert kann bei anderen Ausführungsbeispielen variieren, und kann beispielsweise niedriger oder höher abhängig von einer verwendeten Technologie, einer Anwendung und/oder anderen Komponenten der Schaltung 104 sein.
-
Zusätzlich dazu, dass sie mit dem Komparator 128 gekoppelt sind, sind die ODER-Gatter 130 und 132 jeweils mit einem weiteren Komparator 134 bzw. 136 gekoppelt, von denen jeweils einer einem der Speicherabschnitte 106 und 108 zugeordnet ist. Die Komparatoren 134 und 136 können bei manchen Ausführungsbeispielen ebenso Schmitt-Trigger sein. Diese Komparatoren 134, 136 können als Implementierung einer Sicherheitsbetriebsart betrachtet werden, ähnlich dem Komparator 128: Beim nächsten Hochfahren folgend einem Stromverlust oder anderem Ereignis können die Komparatoren 134 und 136 benutzt werden, die Spannung an VDDL1 bzw. VDDL2 zu erfassen, und wenn die Spannung unterhalb eines Schwellenwertes ist, wird der jeweilige Speicherabschnitt 106 bzw. 108 zurückgesetzt. Da die ODER-Gatter 130 und 132 jeweils mit einem der Komparatoren 134 und 136 und zudem mit dem Komparator 128 gekoppelt sind, wird ein Rücksetzen an einem der jeweiligen Speicherabschnitte 106 und 108 diesen Speicherabschnitt 106 oder 108 zurücksetzen. Ein Zurücksetzen von der Schaltung des langsamen Zurücksetzens 120 wird wie aus 2 ersichtlich beide Speicherabschnitte 106 und 108 zurücksetzen. UND-Gatter 134 und 137 werden zudem als Schutz benutzt, um parasitäre Spitzen zu vermeiden, welche als Rücksetzsignale zum Rücksetzen der Speicherabschnitte 106 oder 108 angesehen werden könnten.
-
Die Schaltung 104 umfasst zudem bei einem Ausführungsbeispiel Verzögerungsschaltungen 131 und 133 für fallende Flanken. Bei Ausführungsbeispielen können die Schaltungen 131 und 133 benutzt werden, eine saubere Pulsform zu erzeugen, obwohl sie optional sind. Bei Ausführungsbeispielen kann ein Rücksetzpuls ungefähr 10 ns dauern, was unter Umständen nicht genug ist, um verlässlich ein Rücksetzen auszulösen. Die Schaltungen 131 und 133 verlängern den Puls oder verzögern die fallende Flanke des Pulses, so dass ein verlässlicherer Rücksetzpuls erzeugt wird. Beispielsweise können bei einem Ausführungsbeispiel die Schaltungen 131 und 133 die Länge eines Rücksetzpulses von etwa 10 ns auf etwa 50 ns verlängern. UND-Gatter 135 und 137 sind jeweils zwischen die Schaltungen 131 und 133 gekoppelt (oder die ODER-Gatter 130 bzw. 132 in Ausführungsbeispielen, bei welchen die Schaltungen 131 und 133 weggelassen sind) und ebenso mit dem erwähnten analogen Rücksetzen gekoppelt, so dass ein Rücksetzen an irgendeinem Rücksetzabschnitt, dem dem Speicherabschnitt 106 zugeordneten oder dem dem Speicherabschnitt 108 zugeordneten, ein Rücksetzen des jeweiligen Speicherabschnitts 106 oder 108 auslösen wird, solange das analoge Rücksetzsignal auf einem niedrigen Pegel liegt, da das analoge Rücksetzen von dem Chiprücksetzen als Gattersignal arbeitet, welches, solange es auf niedrigem Pegel liegt, jegliches mögliche Rücksetzen von dem Komparatoren 134, 136 und/oder 128 deaktiviert.
-
In 4 ist ein Ausführungsbeispiel eines Speicherabschnitts 106 dargestellt. Obwohl nur der Speicherabschnitt 106 dargestellt ist, wird im Allgemeinen der Speicherabschnitt 108 die gleiche Ausgestaltung aufweisen. Bei verschiedenen Ausführungsbeispielen weisen die Speicherabschnitte 106 und 108 im Allgemeinen die gleiche Struktur auf, auch wenn diese Struktur sich von der in 4 dargestellten unterscheiden kann. In 4 umfasst der Speicherabschnitt 106 eine Anordnung von drei Latches 148, 140 und 142. Die Latches 138 und 142 speichern Informationsbits, und das Latch 140 speichert ein Fehlerdetektions- oder Validitätsbit. Die genaue Anzahl, Anordnung und Datenspeicherkonfiguration der Latches 138, 140 und 142 kann bei anderen Ausführungsbeispielen von der als Beispiel in 4 dargestellten abweichen. Die Latches 138, 140 und 142 können bei einem Ausführungsbeispiel nur beschrieben werden, wenn ein Gating Pin von jedem Latch, welche hier miteinander und mit dem analogen Rücksetzen gekoppelt sind, auf einem hohen Pegel liegt. Jeder Latch 138, 140, 142 umfasst zudem einen „Write Enable“-Anschluss, d.h. einen Anschluss zum Freigeben eines Schreibvorgangs, wobei dieser Anschluss in 4 als „Offset_enable“, „Valid_enable“ bzw. „Outval_enable“ gekennzeichnet ist. Der Write Enable“-Anschluss und der Gating Pin von jedem Latch 138, 140 und 142 sind mit einem UND-Gatter 144, 146 bzw. 148 gekoppelt.
-
Bei Ausführungsbeispielen wird eine einzigartige Schreibprozedur mit der Schaltung 104 benutzt, um Informationen verlässlich in die Speicherabschnitte 106 und 108 zu schreiben und in diesen zu speichern. Die Schreibprozedur stellt sicher, dass valide Daten in zumindest einem der Speicherabschnitte 106 und 108, welche für die Einrichtung 100 verfügbar sind, gespeichert werden, selbst wenn ein Rücksetzen während eines Schreibprozesses in den einen oder den anderen der Speicherabschnitte auftritt. Dies wird nunmehr unter Bezugnahme auf die 5 und 6 näher erläutert.
-
Bei A in 5 und 202 in 6 wird das Validitätsbit des Speicherabschnitts 106 auf 0 gesetzt. Dann werden bei 204 Informationen in den Speicherabschnitt 106 geschrieben, aber die Informationen sind nicht valide, bis das Schreiben abgeschlossen ist. Bei B und bei 206 wird das Validitätsbit des Speicherabschnitts 106 auf 1 gesetzt, was bedeutet, dass ein erfolgreicher Schreibvorgang abgeschlossen wurde und die im Speicherabschnitt 106 gespeicherte Information beginnend bei B valide ist. Bei C und 208 wird das Validitätsbit des Speicherabschnitts 108 auf 0 gesetzt, und bei 210 werden Informationen in den Speicherabschnitt 108 geschrieben. Die zwischen B und C verstreichende Zeit liegt bei Ausführungsbeispielen in der Größenordnung weniger Mikrosekunden, auch wenn dies bei anderen Ausführungsbeispielen abweichen kann. Bei D und 212 wird das Validitätsbit des Speicherabschnitts 108 auf 1 gesetzt, was bedeutet, dass ein erfolgreicher Schreibvorgang abgeschlossen wurde und die in dem Speicherabschnitt 108 gespeicherten Informationen beginnend B valide sind. Der Prozess kann dann beginnend bei 202 wiederholt werden.
-
Somit sollten immer zumindest in einem der Speicherabschnitte 106 und 108 valide Daten vorliegen, welche als solche durch das Validitätsbit des jeweiligen Speicherabschnitts identifizierbar sind. Informationen werden zu einem bestimmen Zeitpunkt nur in einen Speicherabschnitt (106 oder 108) geschrieben, und wenn ein Stromverlust oder eine andere Unterbrechung während des Schreibens auftritt, wird das Validitätsbit für diesen Speicherabschnitt 106 oder 108 nicht valide sein. Es wird entweder eine 0 oder ein metastabiler Zustand (weder eine 0 noch eine 1) sein. Bei einem metastabilen Zustand sind die internen Knoten des Latch 140 zwischen 0 und 1, was bewirkt, dass die jeweilige Kapazität 112 oder 118 sich schnell entlädt, was ein Rücksetzen durch den Schmitt-Trigger 134 oder 136 beim nächsten Hochfahren auslöst. Wenn das Validitätsbit eine 0 ist, wird dies durch eine digitale Logik in der Einrichtung 100 beim nächsten Hochfahren überprüft, und der entsprechende Speicherabschnitt 106 oder 108 wird zurückgesetzt und Informationen von dem anderen Speicherabschnitt 106 oder 108 werden benutzt. Diese sequentielle Schreibprozedur stellt sicher, dass einer der Speicherabschnitte 106 oder 108 valide Daten zur Benutzung beim nächsten Hochfahren der Einrichtung 100 aufweisen wird.
-
Daher stellen verschiedene Ausführungsbeispiele Einrichtungen, integrierte Schaltungen, Systeme und Verfahren zum verlässlichen Speichern von Informationen und zum Bestimmen, ob Informationen aufgrund einer verstrichenen Zeit oder aus einem anderen Grund nicht länger verlässlich sind, bereit. Verschiedene Ausführungsbeispiele umfassen redundante Speicherabschnitte und benutzen eine einzigartige Schreibprozedur, um sicherzustellen, dass valide Daten zumindest in einem der Speicherabschnitte vorhanden sind. Ausführungsbeispiele bieten daher einen konsistenten Zugriff auf verlässliche Informationen, ermöglichen ein schnelleres Hochfahren, Neustarten, Kalibrieren oder andere Vorgänge von Einrichtungen.
-
Verschiedene Ausführungsbeispiele von Systemen, Einrichtungen und Verfahren wurden hier beschrieben, welche nur als Beispiel dienen und nicht als einschränkend auszulegen sind. Es ist zudem zu bemerken, dass die verschiedenen Merkmale der beschriebenen Ausführungsbeispiele auf verschiedene Weise kombiniert werden können, um andere Ausführungsbeispiele zu benutzen. Bei anderen Ausführungsbeispielen können andere Materialien, Abmessungen, Formen, Anordnungen und dergleichen als die dargestellten benutzt werden.