DE4005462A1 - Zaehlverfahren und zaehlvorrichtung mit permanentspeicher - Google Patents

Zaehlverfahren und zaehlvorrichtung mit permanentspeicher

Info

Publication number
DE4005462A1
DE4005462A1 DE4005462A DE4005462A DE4005462A1 DE 4005462 A1 DE4005462 A1 DE 4005462A1 DE 4005462 A DE4005462 A DE 4005462A DE 4005462 A DE4005462 A DE 4005462A DE 4005462 A1 DE4005462 A1 DE 4005462A1
Authority
DE
Germany
Prior art keywords
state
cell
memory
cells
input
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
DE4005462A
Other languages
English (en)
Inventor
Paul Louis Dubois
Raymond Lippmann
Michael John Schnars
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.)
Delco Electronics LLC
Motors Liquidation Co
Original Assignee
Delco Electronics LLC
Motors Liquidation Co
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 Delco Electronics LLC, Motors Liquidation Co filed Critical Delco Electronics LLC
Publication of DE4005462A1 publication Critical patent/DE4005462A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K21/00Details of pulse counters or frequency dividers
    • H03K21/40Monitoring; Error detection; Preventing or correcting improper counter operation
    • H03K21/403Arrangements for storing the counting state in case of power supply interruption

Landscapes

  • Read Only Memory (AREA)
  • Semiconductor Memories (AREA)

Description

Die Erfindung betrifft die Anwendung von Permanentspeichern zum Zählen und ein Zählverfahren mit Anwendung von solchen Permanentspeichern.
Elektronische Wegstreckenzähler (Odometer) für Kraftfahrzeu­ ge müssen im allgemeinen eingehende Impulse für die gesamte Lebensdauer des Fahrzeuges speichern. Um eine permanente Auf­ zeichnung der Benutzung des Fahrzeuges auch dann sicherzu­ stellen, wenn das Odometer nicht mit Leistung beaufschlagt ist, werden Permanentspeicher benutzt. Zusätzlich ist hohe Auflösung erforderlich. Beispielsweise ist es erwünscht, Daten zu speichern, die jeweils Weglängen von einem Zehntel einer Meile oder eines Kilometers darstellen. Damit müssen sehr hohe Anzahlen von Eingangsimpulsen gezählt und ohne Ver­ lustgefahr gehalten werden. Standard-Binärzähler können wirk­ sam große Zahlen speichern, jedoch sind solche Zähler bei Verwendung von Permanentspeichern einem Verschleiß unterwor­ fen infolge der wiederholten Lösch- und Schreibvorgänge.
Bei einem traditionellen Verfahren zur Vermeidung einer hohen Anzahl von Lösch- und Schreibvorgängen wird ein Flüch­ tigspeicher-Zähler für den Normalbetrieb benutzt und der Zählinhalt wird nur dann in einen Permanentspeicher einge­ schrieben, wenn die Leistungsversorgung aufzuhören droht. Da­ durch werden Schaltkreise nötig, die ein derartiges Aufhören der Leistungsbeaufschlagung erfassen, den normalen Zählbe­ trieb unterbrechen und die Speicherung vornehmen. Alternativ können auch nur Flüchtig-Speicher für Register niederer Ord­ nung benutzt werden, jedoch ist dann eine sehr teure Zusatz- Pufferbatterie für die Flüchtig-Speicher nötig und die da­ uernde Speisung der Flüchtig-Speicher aus der Fahrzeugbatte­ rie kann diese während längerer Stillstandszeiten des Fahr­ zeuges entleeren.
Ein anderer Weg zur Benutzung von Permanentspeichern bei Odo­ metern besteht darin, eine große Anzahl von redundanten Spei­ chern für die Register niederer Ordnung vorzusehen, um den durch häufiges Auffrischen der Daten niederer Ordnung verur­ sachten Verschleiß auf viele Plätze zu verteilen. Die redun­ danten Plätze werden dann jeweils ge"swapt", d.h. in ihrem Ablauf ausgetauscht, um eine längere Lebensdauer zu errei­ chen. Beispielsweise können dann, wenn 24 Datenbits (3 Worte von 8 Bit) in einem konventionellen Binärformat zu speichern sind, 205 996 km (128 000 Meilen) mit einer Auflösung von 0,16 km (0,1 Meilen) aufgezeichnet werden, wenn das zweite Wort auf 10 000 Schreib- oder Löschvorgänge begrenzt wird. Es ist anzunehmen, daß 10 000 Schreib- oder Löschvorgänge an den Speichern vorgenommen werden können, so daß sich eine ak­ zeptable Lebensdauer ergibt. Die beiden 8-Bit-Worte höherer Ordnung bedürfen keiner Redundanz, da sie nicht mehr als 10 000 Mal geschrieben werden. Das niedere Wort wird jedoch 1,28 Millionen Lösch/Schreib-Sequenzen unterzogen. Um sicher­ zustellen, daß kein Platz öfter als 10 000 Mal beschrieben oder gelöscht wird, sind 128 Redundanzreihen von 8 Bit-Spei­ chern oder 1024 Bit zur Aufteilung der Belastung erforder­ lich. Zusätzlich zu den Speicherplätzen müssen auch Logik­ kreise geschaffen werden, um die Lese-, Schreib- und Lösch­ vorgänge in den einzelnen Reihen auszuführen, wie auch Logik­ kreise, um auszuwählen, welche Reihen gerade benutzt werden.
Es ist weiter z.B. in US-PS 46 82 287 vorgeschlagen worden, Permanentspeicher zu benutzen, die linear angeordnet sind, um Bit auf Bit der Reihe nach einzuschreiben. Ein erster Speicher besitzt 256 Zellen und der zweite Speicher 32 Zel­ len. Jeder eingehende Impuls stellt 1 km dar und läßt eine "1" in eine Zelle einschreiben, so daß der erste Speicher 256 km speichern kann, wenn jede Zelle nur einmal beschrie­ ben wird, und dadurch wird die Frequenz der Lösch/Schreib- Vorgänge erniedrigt. Wenn der erste Speicher gefüllt ist, wird er gelöscht, und der zweite Speicher aufgezählt, indem eine "1" in eine Zelle desselben eingesetzt wird, so daß jedes Zeichen im zweiten Speicher 256 km darstellt. Die ge­ samte Speicherkapazität ist dann (256×32) + 256, und so können nur 8448 km mit der empfohlenen Speichergröße gespei­ chert, und es kann nur eine Auflösung von 1 km erreicht wer­ den. Zusätzlich erfordert die Steuerung des Speichers einen Mikrocomputer oder andere komplizierte Logikschaltungen.
Es ist damit ein Ziel der vorliegenden Erfindung, einen Spei­ cher unter Benutzung einer relativ kleinen Anzahl von nicht flüchtigen oder Permanent-Speicherzellen (NVM = nonvolatile memory) und mit begrenzten Lösch/Schreib-Anforderungen für jede Zelle zu schaffen, wobei gleichzeitig große Kapazität und Feinauflösung erreicht werden sollen. Es wird insbesonde­ re angestrebt, einen Speicher zu schaffen, der kleiner als der nach US-PS 46 82 287 ist, dessen Kapazität und Auflösung demgegenüber jedoch weit überlegen ist.
Zur Erreichung dieses Zieles dient das erfindungsgemäße Ver­ fahren zum Zählen von Ereignissen mit einem Permanentspei­ cher, das sich durch die kennzeichnenden Merkmale der Ansprü­ che 1 oder 2 auszeichnet, und dient auch ein Zähler mit den kennzeichnenden Merkmalen der Ansprüche 5 oder 7.
Durch die Erfindung wird ein solcher Speicher mit einer ein­ fachen und wenig aufwendigen Stützschaltung für Steuerzwecke geschaffen, bei dem kein Mikrocomputer benötigt wird.
Weiter wird ein Verfahren zum Zählen von Ereignissen geschaf­ fen, das nur wenige Lese/Schreib-Vorgänge bei einer bestimm­ ten Zelle erfordert und doch eine große Zählkapazität mit einer kleinen Anzahl von Speicherzellen schafft, so daß die­ ses Verfahren besonders für NVM-Anwendungen geeignet ist.
Das erfindungsgemäße Verfahren wird ausgeführt, indem Ereig­ nisse in einen nichtflüchtigen Speicher oder Permanentspei­ cher eingezählt werden, wobei eine erste Vielzahl von Spei­ cherplätzen in serieller Weise in einen ersten Zustand ver­ setzt wird in Reaktion auf eine gleiche Vielzahl von Ein­ gangs-Ereignissen, es wird dann, wenn eine vorher festgesetz­ te Anzahl von Speicherplätzen in den ersten Zustand versetzt wurde, der Zustand der gleichen Speicherplätze in serieller Weise in einen zweiten Zustand versetzt in Reaktion auf wei­ tere Eingangs-Ereignisse, so daß die vorher festgesetzte Zahl von Speicherplätzen wirksam das Zweifache der vorher festgesetzten Zahl von Eingangs-Ereignissen zählt, und in binärer Weise wird in eine andere Vielzahl von Speicherplät­ zen die Anzahl von Durchgängen eingezählt, bei denen alle Speicherplätze in den ersten und dann in den zweiten Zustand versetzt worden sind, wodurch jede Binärzählung das Zweifa­ che der vorher festgesetzten Zahl darstellt.
Die Erfindung ergibt weiter einen Permanentspeicher, der Speicherzellen mit einer begrenzten Toleranz für wiederholte Löschungen besitzt, mit Eingangsmitteln zum Zuführen von Er­ eignisimpulsen, einer linearen Anordnung von Permanentspei­ cherzellen, von denen jede Zelle den ersten und den zweiten Zustand einnehmen und halten kann, mit den Eingangsmitteln gekoppeltem Mittel, das auf Ereignissignale durch Änderung des Zustandes jeweils einer Zelle der Reihe nach in einen ersten Zustand bei jedem Ereignisimpuls reagiert, und dann, wenn alle Zellen den ersten Zustand erreicht haben, wirksam wird, den Zustand jeder Zelle der Reihe nach bei jedem Ereig­ nisimpuls in den zweiten Zustand ändert, Mittel zur Erzeu­ gung eines Ausgangssignals, wenn alle Zellen den zweiten Zu­ stand eingenommen haben, und mit Permanent-Binär-Registermit­ tel zum Zählen der Ausgangssignale, wodurch die Permanent­ speicherzellen minimal zur Zustandsänderung gefordert sind.
Die Erfindung wird nachfolgend anhand der Zeichnung bei­ spielsweise näher erläutert; in der Zeichnung zeigt:
Fig. 1 ein Speicherzustandsdiagramm zur Darstellung des er­ findungsgemäßen seriellen Daten-Einzählverfahrens in eine lineare Anordnung für Daten niederer Ordnung und in ein Binärregister für Daten höherer Ordnung,
Fig. 2A, 2B, 2C und 2D Speicher-Zustandsdiagramme, die un­ terschiedliche Stufen einer Zählsequenz der Linearan­ ordnung aus Fig. 1 darstellen,
Fig. 3 ein Blockschaltbild des erfindungsgemäßen Zählers,
Fig. 4 ein Schaltbild eines in dem Schieberegister nach Fig. 3 benutzten Inverters, und
Fig. 5 ein Schemaschaltbild einer Speicherzelle mit zugeord­ neter Schieberegisterstufe und Stützschaltung für den Zähler nach Fig. 3.
Die nachfolgende Beschreibung ist auf einen Zähler und ein Zählverfahren gerichtet, das speziell für Fahrzeug-Odometer ausgelegt ist, es kann jedoch eingesehen werden, daß auch andere Anwendungen für diese Technologie möglich sind.
Der verbesserte NVM-Zähler benutzt eine Linearanordnung 10 aus Speicherzellen, bei der die Zellen seriell mit Daten nie­ derer Ordnung beschrieben werden, und ein konventionelles Binärregister 12 zum Speichern von Daten hoher Ordnung, wie in Fig. 1 dargestellt. Beginnt man mit einer rückgestellten Linearanordnung 10 (alle Zellen im Zustand 0, wie in Fig. 2A gezeigt), so wird die Linearanordnung 10 erhöht (aufgezählt) durch Ändern der ersten, dann der zweiten und dann der drit­ ten Zelle (in dieser Reihenfolge) in den Zustand 1, wenn der erste, zweite bzw. dritte Eingangsimpuls aufgenommen werden (Fig. 2B). Dieser Vorgang hält an, bis alle Zellen der Li­ nearanordnung 10 im Zustand 1 sind, wobei das Zeichen höch­ ster Wertigkeit die sich als letzte ändernde Zelle ist (Fig. 2C). Nachfolgende Impulse wiederholen den Vorgang, jedoch werden jetzt die Zellen seriell vom Zustand 1 in den Zustand 0 versetzt (Fig. 2D). Die allgemeine Regel ist, daß die sich ändernde Zelle sich immer in den Zustand ändert, der dem des Zeichens höchster Wertigkeit entgegengesetzt ist. Wenn schließlich die Anzahl von Impulsen gleich der doppelten An­ zahl der Zellen in der Linearanordnung 10 ist, sind alle Zellen wieder auf 0 gestellt. Dann wird das Binärregister 12 um 1 erhöht, und der Vorgang läuft für die nachfolgenden Ein­ gangsimpulse in gleicher Weise ab.
Wird diese Anordnung bei einem Wegmesser (Odometer) angewen­ det, so ist es angemessen, in der Linearanordnung 10 128 Zellen zu verwenden, und zwei 8-Bit-Worte im Binärregister 12. Wenn ein Eingangsimpuls jeweils bei 0,16 km (0,1 Meile) zurückgelegtem Weg an den Zähler angelegt wird, gibt die An­ ordnung bei jeweils 41,2 km (25,6 Meilen) einen Ausgangsim­ puls an das Binärregister 12 ab. Während dieser Zeit werden die Zellen der Anordnung einmal beschrieben und einmal ge­ löscht. Nach 10 000 Ausgangsimpulsen wird die Grenze von 10 000 Schreibe/Lösch-Folgen bei der Linearanordnung er­ reicht, und die gesamte aufgezeichnete Wegstrecke beträgt dann 411 991 km (256 000 Meilen).
Um die im Speicher enthaltenen Daten zu lesen, werden die Zellinhalte seriell ausgelesen und in ein Parallelformat wie das des Binärregisters gewandelt, und die Summe aus den In­ halten der Linearanordnung und des Binärregisters wird ange­ zeigt. Wenn das Zeichen höchster Wertigkeit der Linearanord­ nung 0 ist, ist der Wert des Inhalts die Anzahl der 1 enthal­ tenden Zellen in der Linearanordnung. Wenn das Zeichen höch­ ster Wertigkeit 1 ist, ist der Wert des Inhalts der Linearan­ ordnung die Anzahl der Zellen mit Inhalt 0 zuzüglich 128.
Der Erfolg des Zählverfahrens hängt von der Fähigkeit ab, einen integrierten Kreis zur Ausführung des Verfahrens mit geringen Kosten zu schaffen. Die zu beschreibende Schaltung ist leicht als ein IC auszuführen, und die Stützschaltung ist relativ einfach, da sie nur eine vernünftige Anzahl von Transistoren erfordert. Wie in Fig. 3 zu sehen, wird die NVM-Linearanordnung 10 mit einem dynamischen Schieberegister 14 so gekoppelt, daß je eine Schieberegisterstufe mit einer entsprechenden NVM-Zelle gekoppelt wird. Das Schieberegister 14 dient dazu, den Inhalt der Linearanordnung 10 zu lesen und seriell die Daten zu einem Zähler 16 oder zu einem ande­ ren Kreis zur Wandlung in Parallelformat auszuschieben. Der Inhalt des Zählers 16 wird mit dem Inhalt des Binärregisters 12 kombiniert und durch die Anzeige 18 angezeigt. Die Daten werden in der NVM-Linearanordnung 10 erhöht durh eine Erhö­ hungslogik 20, bei der wiederum je eine Stufe mit je einer NVM-Zelle verbunden ist. Eine sekundäre Verwendung des Schie­ beregisters 14 besteht darin, daß ein Inverter in jeder Regi­ sterstufe im Zusammenhang mit der Erhöhungslogik benutzt wird, jedoch wird die Schiebefähigkeit des Schieberegisters 14 an sich bei dem Vorgang des Erhöhens der Anordnung nicht betroffen. Sowohl das Schieberegister 14 wie auch die Erhö­ hungslogik 20 werden durch eine Logiksteuerung 22 gesteuert, die Steuerspannungen an jeden Transistor der Schaltung anlegt. Die Logiksteuerung 22 ist eine relativ einfache Schaltung, die nur einige hundert Transistoren verwendet, um die wiederholten Lese- und Schreib-Funktionen des Zählers einzuleiten und zu überwachen. Ein Ereigniseingang 24 für den Zähler 16 wird an die Logiksteuerung 22 angelegt, um die Erhöhung des Zählers einzuleiten. Falls die Schaltung als ein Odometer benutzt wird, kann das Ereigniseingangssignal zum Festsetzen des Maßstabes benutzt werden, in der Weise, daß Tachometerimpulse zur Ansteuerung dienen, um einen Ein­ gangsimpuls für die Logiksteuerung 22 bei jeweils zurückge­ legter Entfernung von 0,16 km (0,1 Meile) zu erzeugen.
Die Schaltung erfordert Transistoren für nichtflüchtige Spei­ cher (NVM-Transistoren), die dem Fachmann wohl bekannt sind. Der NVM-Transistor kann beispielsweise eine EEPROM-Zelle sein, wie sie in dem Aufsatz von Shiner u.a. "Characteri­ zation and Screening of SiO2 Defects in EEPROM Structures" in 1983 Proceedings of the 2lst Annual Reliability Physics Symposium, S. 248-256 beschrieben ist. Ein derartiger NVM-Transistor erfordert eine relativ hohe Spannung (20 V) für Lösch- und Schreibvorgänge und 5 V und Masse zum Ausge­ ben von Logiksignalen 1 bzw. 0. Der NVM-Transistor wird in einen Rückstellzustand (gelöscht) programmiert, indem eine hohe Spannung an den Drain-Anschluß und Masse an das Gate an­ gelegt wird. Der NVM-Transistor wird in einen Setzzustand programmiert durch Anlegen einer hohen Spannung an das Gate bei an Masse gelegtem Drain. In beiden Fällen wird die Sour­ ceklemme auf Massepotential gehalten. Um Daten aus dem NVM- Transistor auszulesen, wird eine Stromquelle an den Drain an­ gelegt und eine logisch 1 an das Gate. Der NVM-Transistor leitet den Drainstrom an die Sourceklemme, falls der NVM- Transistor gelöscht ist, und leitet nicht, falls er in einen gesetzten Zustand programmiert ist.
Die Schaltung erfordert auch MOSFET sowohl vom n-Kanal- wie vom p-Kanal-Typ. Der n-Kanal-FET erfordert, um zu leiten, eine logische 1 am Gate, während der p-Kanal-FET zum Leiten eine logische 0 am Gate erfordert. Um einen Inverter nach Fig. 4 zu bilden, wird ein p-Kanal-FET 30 mit einem n-Kanal- FET 34 in Reihe zwischen +5 V und Masse angeschlossen. Die Gate-Anschlüsse werden miteinander verbunden, um den Eingang zu bilden, und die Verbindung der beiden FET ist dann der Ausgang. Wenn das Eingangssignal tief ist, leitet der p-Kanal FET 30 und ergibt ein hohes Ausgangssignal, und wenn das Eingangssignal hoch ist, leitet der n-Kanal FET 34 und nimmt das Ausgangssignal zu Masse. Die Gate-Kapazitäten der FET 30, 34 schaffen einen Speicher für ein auf die Gates auf­ geschaltetes Signal, vorausgesetzt, daß die Gates sonst iso­ liert sind, um einen Stromabfluß zu verhindern.
Fig. 5 zeigt ein Schemaschaltbild für eine Stufe 36 des dyna­ mischen Schieberegisters 14 und die einer einzelnen NVM- Zelle 38 zugeordnete Logik. Diese Logik umfaßt einen Erhö­ hungskreis (Aufzählkreis) 40, der den Zustand der NVM-Zelle 38 mit dem der vorhergehenden Stufe vergleicht, und eine Lese/Schreib-Schaltung 42. Die verschiedenen in Fig. 5 iden­ tifizierten Kreisklemmen sind in jeder solchen Stufe vorhan­ den; entsprechende Klemmen jeder Stufe werden für die Ansteu­ erung durch die Logiksteuerung über einen Bus miteinander verbunden.
Die (Schieberegister-)Stufe 36 umfaßt einen FET 44, dessen Drainklemme den Stufeneingang A N-1 bildet, eine Gateklemme 46, und die Source ist mit dem Eingang eines Inverters 48 ge­ koppelt. Der Inverterausgang ist mit dem Drain eines FET 50 verbunden, dessen Source mit dem Eingang eines Inverters 52 verbunden ist. Der Ausgang des Inverters 52 bildet den Aus­ gang A N der Stufe 36. Der FET 50 besitzt eine Gate-Klemme 54. Durch entsprechende Steuerung der Gateklemmen-Signale können Daten durch die Stufe 36 vom Eingang zum Ausgang ge­ schoben werden. Indem die Gateklemme 46 hoch und die Gate­ klemme 54 tief gehalten wird, wird das Eingangssignal zum In­ verter 48 durchgeleitet. Dann wird die Gateklemme 46 herun­ tergenommen und die Spannung an dem Eingang des Inverters 48 aufrechterhalten, und die invertierte Spannung wird an dem Inverterausgang unabhängig von irgendeiner weiteren Änderung am Stufeneingang gehalten. Die Gateklemme 54 wird dann hoch­ genommen, um die Spannung zum Inverter 52 durchzuleiten, der das Signal an seinem Ausgang erzeugt, das gleich dem ur­ sprünglichen Eingangssignal ist. Durch Verbinden der Stufen 36 in der Reihe können Daten aufeinanderfolgend von einer Stufe zur nächsten weitergegeben werden (bucket brigade fas­ hion = eimerkettenweise), so daß ein Schieberegister gebil­ det wird.
Die NVM-Zelle 38 ist zwischen Masse und dem Eingang des In­ verters 52 in der Stufe 36 angeschlossen. Das Gate ist über FET 56 und 58 der Lese/Schreib-Schaltung 42 an Steuerspannun­ gen angeschlossen und das Drain durch FET 60 in der Lese /Schreib-Schaltung 42 an Steuerspannungen. Wie bereits ange­ deutet, werden die Klemmen 57 und 59 des FET 56 wie auch die Klemmen 62 und 64 der FET 58 und 60 durch die Logiksteuerung 22 angesteuert. Die Gates der FET 58 und 60 sind mit FET 66 verbunden, dessen Steuerklemmen 68 und 70 auch durch die Lo­ giksteuerung 22 gesteuert werden, und mit FET 72, der eine Gateklemme 74 besitzt, in der Erhöhungsschaltung 40.
Verschiedene Schritte sind erforderlich, um Daten aus der NVM-Zelle 38 auszulesen. Gateklemmen 54 und 74 werden tief genommen, um die NVM-Zelle 38 gegen den Inverter 48 und die Erhöhungsschaltung 40 zu isolieren; Klemmen 62 und 64 werden tief bzw. hoch genommen, um die Lesespannungen für die NVM- Zelle 38 zu errichten; und Steuerklemmen 68 und 70 werden hoch bzw. tief genommen, um die Lesespannungen an die NVM- Zelle 38 über die FET 58 und 60 anzulegen. Während dieser Be­ triebsschritte wirkt der FET 60 als eine Last für die NVM- Zelle 38, und die hohe Spannung am Drain des FET 60 wird am Eingang des Inverters 52 gespeichert. Dann wird die Steuer­ klemme 70 des FET 66 hochgenommen, um die FET 58 und 60 im Auszustand zu halten, wodurch das Drain der NVM-Zelle 38 iso­ liert wird. Dann werden die Klemmen 57 und 59 des FET 56 hochgenommen, um die NVM-Zelle 38 anzuschalten. Falls die NVM-Zelle 38 sich in einem Zustand 0 befindet, wird sie leiten und den Eingang des Inverters 52 tiefziehen; falls aber die NVM-Zelle 38 im Zustand 1 ist, wird der Eingang des Inverters hoch bleiben. Damit werden die Daten von der NVM- Zelle 38 zur Stufe 36 geladen und erscheinen in invertierter Form am Ausgang der Stufe. Die Daten werden dann aus der Li­ nearanordnung von NVM-Zellen ausgelesen durch gleichzeitiges Laden der Daten von allen Zellen in das Schieberegister 14 und serielles Ausschieben der Daten in invertierter Form zum Zähler 16, wo sie in Binärform gezählt werden zur Kompatibi­ lität mit dem Inhalt des Binärregisters 12.
Die Erhöhungs-(Aufzähl-)schaltung 40 ist ein EXKLUSIV ODER Logikkreis, der den Zustand der NVM-Zelle 38 mit der vorher­ gehenden NVM-Zelle der Anordnung vergleicht und die Lese/ Schreib-Schaltung 42 zum Ändern des Zustandes der Zelle frei­ gibt, falls dieser unterschiedlich zum vorherigen ist. Der FET 72 mit einer Gateklemme 74 (die mit der Logiksteuerung 22 verbunden ist) bildet einen Ausgangsschalter für die Erhö­ hungsschaltung 40. FET 76 und 78 sind in Reihe zwischen dem FET 72 und Masse angeschlossen. Gates 80 und 82 der FET 76 und 78 sind mit Leitungen A N-1 bzw. B N verbunden, welche den Zustand der NVM-Zelle 38 bzw. den invertierten Zustand der vorhergehenden Zelle repräsentieren. Falls beide hoch sind, wodurch angezeigt wird, daß die Zellen in unterschiedlichen Zuständen sind, wird der FET 72 mit Masse verbunden. In glei­ cher Weise sind die FET 84 und 86 in Reihe zwischen dem FET 72 und Masse angeschlossen und ihre Gates 88 und 90 sind mit den Leitungen A N bzw. B N-1 verbunden, welche den Zustand der vorhergehenden Zelle bzw. den invertierten Zustand der NVM- Zelle 38 repräsentieren. Falls beide hoch sind, was anzeigt, daß die Zellen in unterschiedlichen Zuständen sind, wird der FET 72 mit Masse verbunden.
Im Betrieb wird das Erhöhen in Reaktion auf ein an der Logik­ steuerung 22 anliegendes Eingangssignal eingeleitet, wodurch eine Folge von Steuersignalen bestimmt wird. Erstens wird die Gateklemme 74 des FET 72 tief genommen, um die Erhöhungs­ schaltung 40 und die Lese/Schreib-Schaltung 42 zu isolieren, dann werden die Daten von den NVM-Zellen, wie beschrieben, so geladen, daß die Leitungen A N , B N usw. auf die entspre­ chenden Zustände geladen werden. Weiter wird die Logiksteu­ erung 22 den Zustand der letzten NVM-Zelle der Anordnung er­ fassen und die Programmierung des entgegengesetzten Zustan­ des für die nächste zu ändernde Zelle durch Anlegen entspre­ chender Spannungen an die Klemmen 62 und 64 der FET 58 bzw. 60 vorbereiten, wobei die FET 58 und 60 durch eine an ihren Gates über Steuerklemme 70 des FET 66 gespeicherte hohe Span­ nung in den Aus-Zustand vorgespannt werden, und dann wird FET 66 zum Isolieren der Gates abgeschaltet. Alle Zellen in der Anordnung werden gleichzeitig auf diese Weise vorberei­ tet. Dann wird die Gateklemme 74 des FET 72 hoch genommen, um ein Leiten des FET 72 zuzulassen. Nur eine NVM-Zelle in der Anordnung wird einen sich von dem ihres Nachbarn niedri­ gerer Ordnung unterscheidenden Zustand besitzen, und ihre Erhöhungsschaltung 40 wird die Gates der FET 58 und 60 über FET 72 erden, um das Anlegen der Programmierungsspannungen an diese eine NVM-Zelle 38 zuzulassen.
Die gesamte lineare NVM-Anordnung kann gesetzt oder rückge­ stellt werden. Jede NVM-Zelle 38 wird durch Abschalten der FET 44, 50, 56 und 72 isoliert, während die Steuerklemmen 68 und 70 hoch genommen werden. Um die ganze Reihe zu löschen, wird die Klemme 64 hoch (20 V) genommen und die Klemmen 62 und 70 werden während einer für das Löschen der Zelle äusrei­ chenden Zeit tief genommen. Zum Setzen der ganzen Reihe wird der gleiche Vorgang durchgeführt, dabei werden jedoch die Klemme 64 tief und die Klemme 62 hoch genommen.

Claims (9)

1. Verfahren zum Zählen von Ereignissen in einen nichtflüch­ tigen oder Permanent-Speicher (10), dadurch gekennzeich­ net, daß eine erste Vielzahl von Speicherplätzen (38) in serieller Weise in Reaktion auf eine gleich große Viel­ zahl von Eingangsereignissen (24) in einen ersten Zustand gesetzt wird, daß dann, wenn eine vorher festgesetzte Zahl N von Speicherplätzen (38) in den ersten Zustand ge­ setzt wurde, der Zustand der gleichen Speicherplätze (38) in serieller Weise in einen zweiten Zustand geändert wird in Reaktion auf weitere Eingangsereignisse (24), so daß die vorher festgesetzte Anzahl von Speicherplätzen (38) effektiv 2N Eingangsereignisse (24) zählt, und daß in binärer Weise in einer anderen Vielzahl von Speicherplät­ zen gezählt (16) wird, wie oft die vorher festgesetzte Zahl von Speicherplätzen (38) vollständig in den ersten und dann in den zweiten Zustand versetzt wurde, wodurch jede Binärzählung 2N Eingangsereignisse (24) darstellt.
2. Verfahren zum Zählen von Ereignissen in einen Permanent­ speicher (10), dadurch gekennzeichnet, daß ein erster Speicherplatz (38) bei dem ersten Ereignis (24) in einen ersten Zustand versetzt wird, der Zählwert bei jedem Er­ eignis erhöht wird, indem ein weiterer Speicherplatz in den gleichen Zustand wie der erste Platz versetzt wird, so daß die Anzahl von seriellen Plätzen in jedem Zustand von der Ereigniszahl abhängt, daß dann, wenn eine vorher festgesetzte Anzahl von Plätzen insgesamt den gleichen Zu­ stand erreicht hat und weitere Ereignisse auftreten, der erste Platz in einen zweiten Zustand gesetzt wird, und dann das Erhöhen wiederholt wird, daß ein Ausgangsimpuls erzeugt wird, wenn jeder Speicherplatz aus der vorher festgesetzten Anzahl von Speicherplätzen zweimal den Zu­ stand geändert hat, und daß die Ausgangsimpulse in binä­ rer Weise gezählt (16) werden, so daß jede Binärzählung das Zweifache der vorher festgesetzten Zahl darstellt.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß die Kapazität zum Auslesen der Daten aus dem Speicher zusätzlich das Laden des Inhalts der Speicherplätze in entsprechende serielle füchtige Speicherplätze umfaßt, das Verschieben der Zählzustände durch die flüchtigen Speicherplätze zur Erzeugung eines seriellen Ausgangssi­ gnals, wobei der Zählinhalt der Zustände des Signals die aufgezeichneten Ereignisse darstellt, daß die vorher fest­ gesetzten Zahl zu dem Zählinhalt hinzugezählt wird, wenn der erste Speicherplatz sich im zweiten Zustand befindet, um die serielle Zähl-Gesamtmenge zu erhalten, und daß die serielle Zähl-Gesamtmenge zu dem Wert der Binärzählung hinzugefügt wird.
4. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß das Erhöhen ausgeführt wird, indem der Zustand jedes Spei­ cherplatzes mit dem Zustand des vorhergehenden benachbar­ ten seriellen Platzes verglichen und der Zustand des Plat­ zes geändert wird, der sich von dem des vorhergehenden Platzes unterscheidet.
5. Nicht-flüchtiger oder Permanentspeicher mit Speicherzel­ len (38) mit begrenzter Toleranz für wiederholte Löschvor­ gänge, gekennzeichnet durch Eingangsmittel (24) zum Zufüh­ ren von Ereignisimpulsen, durch eine Linearanordnung (10) von Permanentspeicherzellen, wobei jede Zelle zum Halten eines ersten oder eines zweiten Zustands befähigt ist, durch mit dem Eingangsmittel gekoppeltes Mittel (20, 22), das auf Ereignissignale mit Ändern des Zustandes jeder Zelle der Reihe nach reagiert, zu einem ersten Zustand bei jedem Ereignisimpuls, und dann, wenn alle Zellen den ersten Zustand erreicht haben, durch Ändern des Zustandes jeder Zelle der Reihe nach in den zweiten Zustand bei jedem Ereignisimpuls, durch Mittel zum Erzeugen eines Aus­ gangssignals, wenn alle Zellen den zweiten Zustand er­ reicht haben, und Permanent-Binärregister-Mittel (12) zum Zählen der Ausgangssignale, wodurch die nicht-flüchtigen oder Permanent-Speicherzellen in minimaler Weise zur Zu­ standsänderung gefordert sind.
6. Permanentspeicher nach Anspruch 5, dadurch gekennzeich­ net, daß das Mittel (20, 22) zum Ändern des Zustandes jeder Zelle (38) eine geordnete Abfolge von Zellzustands­ änderungen, beginnend mit einer ersten Zelle, bestimmt und Mittel enthält, um einen Zustand der ersten Zelle zu errichten, und jeder Zelle zugeordnete Mittel, um zu be­ stimmen, ob der jeweilige Zustand von dem der vorhergehen­ den Zelle in der Reihe abweicht, und Mittel, die auf Emp­ fang eines Ereignisimpulses hin und in Abhängigkeit von dem bestimmenden Mittel wirksam sind, einen Zellenzustand zu ändern, wenn er sich von dem der vorhergehenden Zelle unterscheidet.
7. Permanentspeicher mit Speicherzellen (38) mit begrenzter Toleranz für wiederholte Löschvorgänge, gekennzeichnet durch einen Ereigniseingang (24), eine Linearanordnung (10) aus nicht-flüchtigen oder Permanent-Zellen ein­ schließlich einer ersten Zelle, wobei jede Zelle in einen ersten und in einen zweiten Zustand setzbar ist, und durch mit dem Eingang gekoppelte Mittel zum sequentiellen Setzen jeder Zelle in den Zustand der ersten Zelle in Reaktion auf Eingangsereignisse, wobei das Setzmittel eine Schaltung umfaßt, um den Zustand jeder Zelle mit dem der vorhergehenden Zelle in der Anordnung zu vergleichen und zu bestimmen, ob die Zustände sich unterscheiden, und Mittel, das auf ein Eingangsereignis hin zum Ändern eines Zellenzustandes wirksam ist, wenn dieser Zustand sich von dem der vorhergehenden Zelle unterscheidet, wodurch die Zahl von in den Zustand der ersten Zelle gesetzten Zellen bei jedem Eingangsereignis um eins ansteigt, bis die Zellen alle in den gleichen Zustand versetzt sind, durch Mittel, die bei einem Eingangsereignis zum Ändern des Zu­ standes der ersten Zelle wirksam sind, wenn alle Zellen in den gleichen Zustand gesetzt sind, durch nicht-flüchti­ ges (permanentes) Binärregister (12) und durch Mittel zum Erhöhen des Binärregisters in Reaktion darauf, daß die Zellen der Linearanordnung den zweiten Zustand erreicht haben.
8. Permanent-Zähler nach Anspruch 7, dadurch gekennzeichnet, daß der Zähler (16) ein Schieberegister (14) mit einer Vielzahl von Stufen umfaßt, Mittel zum Auslesen der in den Permanent-Speicherzellen gespeicherten Information mit Mitteln zum Laden des Zustandes jeder Zelle in die entsprechende Stufe des Schieberegisters, und Mittel zum Schieben der Daten zu einem Ausgangsmittel.
9. Permanent-Zähler nach Anspruch 7, dadurch gekennzeichnet, daß ein Schieberegister (14) vorgesehen ist mit einer Vielzahl von Stufen, wobei jede Stufe jeweils einer Perma­ nent-Speicherzelle (38) zugeordnet ist, daß Mittel zum Laden der Daten der Zellen in die entsprechenden Schiebe­ registerstufen vorgesehen sind und Mittel zum Auslesen der Daten durch Ausschieben der Daten aus dem Register und Zählen der Eingangsereignisse darstellenden Zustände.
DE4005462A 1989-02-23 1990-02-21 Zaehlverfahren und zaehlvorrichtung mit permanentspeicher Withdrawn DE4005462A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/314,024 US4947410A (en) 1989-02-23 1989-02-23 Method and apparatus for counting with a nonvolatile memory

Publications (1)

Publication Number Publication Date
DE4005462A1 true DE4005462A1 (de) 1990-08-30

Family

ID=23218218

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4005462A Withdrawn DE4005462A1 (de) 1989-02-23 1990-02-21 Zaehlverfahren und zaehlvorrichtung mit permanentspeicher

Country Status (3)

Country Link
US (1) US4947410A (de)
JP (1) JPH03171819A (de)
DE (1) DE4005462A1 (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8916017D0 (en) * 1989-07-13 1989-08-31 Hughes Microelectronics Ltd A non-volatile counter
GB8923672D0 (en) * 1989-10-20 1989-12-06 Smiths Industries Plc Electrical counters
JPH03250499A (ja) * 1990-02-27 1991-11-08 Nec Corp データ記憶回路
US5386533A (en) * 1990-11-21 1995-01-31 Texas Instruments Incorporated Method and apparatus for maintaining variable data in a non-volatile electronic memory device
US5181231A (en) * 1990-11-30 1993-01-19 Texas Instruments, Incorporated Non-volatile counting method and apparatus
US5222109A (en) * 1990-12-28 1993-06-22 Ibm Corporation Endurance management for solid state files
JP2758284B2 (ja) 1991-06-20 1998-05-28 株式会社ピーエフユー 電気的に書き込み消去可能な不揮発性メモリを備えたカウンタ
US6230233B1 (en) 1991-09-13 2001-05-08 Sandisk Corporation Wear leveling techniques for flash EEPROM systems
JP3333265B2 (ja) * 1993-04-28 2002-10-15 セイコーインスツルメンツ株式会社 半導体集積回路
US5608770A (en) * 1993-09-21 1997-03-04 Ricoh Company, Ltd. Frequency converter outputting a clock signal having a stable and accurate frequency
US6687325B1 (en) 1999-06-23 2004-02-03 Intel Corporation Counter with non-uniform digit base
US6249562B1 (en) * 1999-08-23 2001-06-19 Intel Corporation Method and system for implementing a digit counter optimized for flash memory
US6836853B1 (en) 1999-12-31 2004-12-28 Intel Corporation Non-volatile memory based monotonic counter
FR2816750B1 (fr) 2000-11-15 2003-01-24 St Microelectronics Sa Memoire flash comprenant des moyens de controle de la tension de seuil de cellules memoire
US7350083B2 (en) 2000-12-29 2008-03-25 Intel Corporation Integrated circuit chip having firmware and hardware security primitive device(s)
US7065607B2 (en) * 2002-06-28 2006-06-20 Microsoft Corporation System and method for implementing a counter
CN100483552C (zh) * 2002-10-28 2009-04-29 桑迪士克股份有限公司 在非易失性存储系统中执行自动磨损平衡的方法
US6792065B2 (en) * 2003-01-21 2004-09-14 Atmel Corporation Method for counting beyond endurance limitations of non-volatile memories
JP4732709B2 (ja) * 2004-05-20 2011-07-27 株式会社半導体エネルギー研究所 シフトレジスタ及びそれを用いた電子機器
US8166217B2 (en) * 2004-06-28 2012-04-24 Marvell International Ltd. System and method for reading and writing data using storage controllers
US7120220B2 (en) * 2004-12-23 2006-10-10 Ramtron International Corporation Non-volatile counter
US7142627B2 (en) * 2004-12-23 2006-11-28 Ramtron International Corporation Counting scheme with automatic point-of-reference generation
US7369432B2 (en) * 2006-02-16 2008-05-06 Standard Microsystems Corporation Method for implementing a counter in a memory with increased memory efficiency
US7573969B2 (en) * 2007-09-27 2009-08-11 Sandisk Il Ltd. Counter using shift for enhanced endurance
US20150169438A1 (en) * 2013-12-18 2015-06-18 Infineon Technologies Ag Method and device for incrementing an erase counter

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0067925A2 (de) * 1981-06-15 1982-12-29 VDO Adolf Schindling AG Schaltungsanordnung zur Speicherung eines mehrstelligen dekadischen Zählwerts einer von einem Fahrzeug zurückgelegten Wegstrecke
US4682287A (en) * 1983-08-30 1987-07-21 Nippondenso Co., Ltd. Electronic odometer

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3532768A1 (de) * 1985-09-13 1987-03-19 Bosch Gmbh Robert Schaltungsanordnung zur addition, speicherung und wiedergabe elektrischer zaehlimpulse
GB8616852D0 (en) * 1986-07-10 1986-08-20 Hughes Microelectronics Ltd Electronic counter
US4757522A (en) * 1986-10-01 1988-07-12 Vdo Adolf Schindling Ag Counting circuit employing more equatably used plural counters for extended life

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0067925A2 (de) * 1981-06-15 1982-12-29 VDO Adolf Schindling AG Schaltungsanordnung zur Speicherung eines mehrstelligen dekadischen Zählwerts einer von einem Fahrzeug zurückgelegten Wegstrecke
US4682287A (en) * 1983-08-30 1987-07-21 Nippondenso Co., Ltd. Electronic odometer

Also Published As

Publication number Publication date
US4947410A (en) 1990-08-07
JPH03171819A (ja) 1991-07-25

Similar Documents

Publication Publication Date Title
DE4005462A1 (de) Zaehlverfahren und zaehlvorrichtung mit permanentspeicher
DE19983565B4 (de) Interner Auffrisch-Modus für eine Flash-Speicherzellenmatrix
DE69605684T2 (de) Algorithmus zur progammierung eines flash-speichers mit einziger niederspannungsnetzversorgung
DE19859494C2 (de) Nichtflüchtiger Mehrebenen-Halbleiterspeicherbaustein mit einer Schaltung zum Einstellen der Datenlesezeit
DE3687018T2 (de) Halbleiterspeicher, faehig eine logische operation auszufuehren.
DE68918469T2 (de) Serieller Lesezugriff von seriellen Speichern mit einer durch den Benutzer definierten Startadresse.
DE10034743B4 (de) Flash-Speicherbauelement und Programmierverfahren hierfür
DE60032644T2 (de) Halbleiter-speicherbaustein
DE69908340T2 (de) Seitenmoduslöschverfahren in flash-speichermatrize
DE2712537C3 (de)
DE69619794T2 (de) Speicherzelle zum lesen und schreiben einer registerbank
DE4121053C2 (de) Speicherzelle mit Floating-Gate-Transistor
DE19631169A1 (de) Matrix-Speicher in Virtual-ground-Architektur
DE2531382B2 (de) Digitaler Matrixspeicher aus Feldeffekt-Transistoren
DE69321245T2 (de) Integrierte Programmierschaltung für eine elektrisch programmierbare Halbleiterspeicheranordnung mit Redundanz
EP0783169A2 (de) Matrix-Speicher (Virtual Ground)
DE69819961T2 (de) Nichtflüchtige Halbleiterspeicheranordnung
DE69021617T2 (de) Speicher, der verteiltes Laden von Datenleitungen verwendet.
EP0123177A1 (de) Verfahren zum Betreiben eines als nichtflüchtigen Schreib-Lese-Speichers ausgebildeten Anwendungsspeichers und Anordnung zur Durchführung des Verfahrens
DE19839089B4 (de) Datenpuffer für einen programmierbaren Speicher mit mehreren Zuständen
DE69500023T2 (de) Elektrisch veränderlicher Festspeicher mit Prüffunktionen
WO2002047089A2 (de) Magnetoresistiver speicher und verfahren zu seinem auslesen
DE69320229T2 (de) DRAM mit geringem Leistungsverbrauch
DE69807007T2 (de) Nichtflüchtige Speicherzellenanordnung mit einer Schreibschaltung mit Verriegelungschaltung und Übertragungstransistor
DE3815549A1 (de) Dynamischer direktzugriffsspeicher

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8130 Withdrawal