DE4209905C1 - Memory contents management system using EEPROM and RAM - compares new data with memory image stored in EEPROM, stores changed addresses of locations and writes corresp. contents in EEPROM - Google Patents
Memory contents management system using EEPROM and RAM - compares new data with memory image stored in EEPROM, stores changed addresses of locations and writes corresp. contents in EEPROMInfo
- Publication number
- DE4209905C1 DE4209905C1 DE19924209905 DE4209905A DE4209905C1 DE 4209905 C1 DE4209905 C1 DE 4209905C1 DE 19924209905 DE19924209905 DE 19924209905 DE 4209905 A DE4209905 A DE 4209905A DE 4209905 C1 DE4209905 C1 DE 4209905C1
- Authority
- DE
- Germany
- Prior art keywords
- memory
- eeprom
- permanent
- sab
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Description
Die Erfindung betrifft ein System zur Verwaltung des Speicher
inhaltes eines überschreibbaren Permanentspeichers. In elektro
nischen Geräten werden in zunehmender Weise Speicherbausteine
verwendet, deren Speicherinhalte auch bei einem Wegfall der
Versorgungsspannung erhalten bleiben. Dennoch sind die Spei
cherinhalte dieser Speicherbausteine mit neuen Daten über
schreibbar. Bevorzugt werden als überschreibbare Permanent
speicher sogenannte EEPROM (Electrically Erasable Programmable
Read Only Memory) als Permanentspeicher eingesetzt. Ebenso wie
andere Permanentspeicher weist auch der EEPROM eine gegenüber
einem dynamischen oder statischen flüchtigen Speicher (RAM)
erhöhte Zugriffszeit auf. Diese Zugriffszeit wird zusätzlich
noch dadurch erhöht, daß aus Kostenersparnis- und Platzerspar
nisgründen häufig EEPROM mit serieller Schnittstelle verwendet
werden.
Neben dem Aspekt der Zugriffszeit auf den Permanentspeicher
ist auch die Speichererhaltungszeit von Bedeutung. Die Her
steller garantieren beispielsweise für eine Anzahl von 10 000
Speicherzyklen bei einem EEPROM eine maximale Speichererhal
tungszeit von 10 Jahren. Wird die Anzahl der Speicherzyklen
überschritten, vermindert sich die Speichererhaltungszeit. Bei
häufigem Einschreiben neuer Daten kann deshalb der Permanent
speicher bereits nach kurzer Zeit seinen Zweck der permanenten
Datenhaltung nicht mehr erfüllen.
Aus der EP 03 98 654 A2 ist eine Einrich
tung bekannt, bei der mit Hilfe einer dem Permanentspeicher zu
geordneten Schreiblesespeicher RAM eine Erhöhung der Lebensdauer
der Permanentspeicher erreicht wird. Hierbei wird ein neuer Da
tensatz in den permanentspeicherstrukturierten Schreib-/Lese
speicher eingeschrieben und anschließend der eingeschriebene
mit dem Datensatz im Permanentspeicher verglichen. Nach einem
Feststellen von Unterschieden wird der neue Datensatz in den
Permanentspeicher abgespeichert.
Die der Erfindung zugrundeliegende Aufgabe besteht darin, ein
System zur Verwaltung des Speicherinhaltes des überschreibba
ren Permanentspeichers zu schaffen, das kurze Zugriffszeiten
auf den Inhalt des Permanentspeichers erlaubt und die Lebens
dauer des Permanentspeichers bei gleichbleibender Anzahl von
Änderungen des Speicherinhaltes noch weiter erhöht.
Diese Aufgabe wird durch die im Patentanspruch 1 angegebenen
Merkmale gelöst.
Hierbei wird in dem dem Permanentspeicher zugeordneten, schnel
len Schreib-/Lesespeicher ein Speicherabbild des Permanentspei
chers abgelegt. Der Speicherinhalt des Permanentspeichers ist
also zweimal vorhanden, wobei lediglich der Permanentspeicher
in der Lage ist, die Daten auch in stromlosem Zustand zu hal
ten. Aus dem Schreib-/Lesespeicher können die gewünschten Da
ten schneller ausgelesen werden als unmittelbar aus dem Perma
nentspeicher. Das Auslesen der Daten ist auch möglich, während
die Inhalte der im Änderungsspeicher vermerkten Speicherstel
len des Speicherabbildes in die entsprechenden Speicherstellen
des Permanentspeichers geschrieben werden.
Vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung
sind in mehreren Unteransprüchen angegeben. Im folgenden wird
ein Ausführungsbeispiel der Erfindung anhand der Zeichnung er
läutert. Es zeigen
Fig. 1 schematisch einige Komponenten eines Blockschaltbilds
für ein Systems zur Verwaltung eines Permanentspeichers,
Fig. 2.1 die Speicherstruktur eines Speicherabbildes,
Fig. 2.2 die Speicherstruktur des Permanentspeichers,
Fig. 3 die Datenstruktur eines Änderungsspeichers,
Fig. 4 ein Ablaufdiagramm zur Eingabe eines Datensatzes,
Fig. 5.1 einen ersten Teil eines Ablaufdiagramms zur Änderung
des Speicherinhaltes des Permanentspeichers,
Fig. 5.2 einen zweiten Teil eines Ablaufdiagramms gemäß Fig.
5.1,
Fig. 6 ein Ablaufdiagramm zur Ausgabe eines Datensatzes, und
Fig. 7 ein Ablaufdiagramm bei der Inbetriebnahme des Systems
zur Verwaltung des Permanentspeichers.
Gemäß dem nachfolgenden Ausführungsbeispiel befindet sich das
System zur Verwaltung eines Permanentspeichers EEPROM sowie
der Permanentspeicher EEPROM selbst in einem Fernsprechendge
rät. Datensätze DS dieses Fernsprechendgerätes enthalten mehr
stellige Rufnummern. Permanentspeicher EEPROM, deren Daten D
änderbar sein sollen, können jedoch in jedem beliebigen ande
ren Gerät Verwendung finden. Die Anwendung des Systems zur
Verwaltung des Speicherinhaltes eines überschreibbaren Perma
nentspeichers EEPROM ist somit nicht auf Fernsprechendgeräte
beschränkt.
Gemäß Fig. 1 wirken in einem System zur Verwaltung des Spei
cherinhaltes eines überschreibbaren Permanentspeichers EEPROM
ein schneller Schreib-/Lesespeicher RAM und eine Steuerung C,
die über einen Datenbus BUS miteinander verbunden sind, zusam
men. Der schnelle Schreib-/Lesespeicher RAM umfaßt zur Eingabe
von Daten D ein Schreibregister SREG und zur Ausgabe von Daten
nach außen ein Leseregister LREG. Ferner sind im schnellen
Schreib-/Lesespeicher RAM ein Speicherbereich zur Aufnahme
eines Speicherabbildes SAB des Permanentspeichers EEPROM und
ein Änderungsspeicher AS zur Registrierung von geänderten
Speicherstellen SPS enthalten. Über ein Ein-/Ausgaberegister
EAR und einen seriellen, sogenannten I2C-Bus ICB ist der
schnelle Schreib-/Lesespeicher RAM mit dem Permanentspeicher
EEPROM verbunden.
Die Strukturierung des Permanentspeichers EEPROM ist in Fig.
2.2 dargestellt. Der Permanentspeicher EEPROM ist in bei
spielsweise 25 Adreßbereiche eingeteilt. Jeder Adreßbereich,
der die Adressen mehrerer Speicherstellen SPS umfaßt, beginnt
mit einer Anfangsadresse N1 und endet mit einer Endadresse N2.
Jeder Adreßbereich ist in der Lage, einen kompletten Datensatz
DS, bestehend aus Länge L, Daten D und einer Prüfsumme PS auf
zunehmen. Im Fall des Telefonendgerätes ist es zweckdienlich,
für jeden Adreßbereich die gleiche Anzahl Speicherstellen SPS
vorzusehen. Rufnummern mit über 20 Stellen sind nicht ge
bräuchlich. Die maximale Länge L der Daten D dieses Beispiels
ist deshalb 20. Wird eine sechsstellige Rufnummer gespeichert,
dann wird für die Länge L der Wert 6 eingetragen. In Abhängig
keit der Länge L und der Daten D bildet die Steuerung C die
Prüfsumme PS. Mit Hilfe dieser Prüfsumme PS ist das System zur
Verwaltung des Permanentspeichers EEPROM jederzeit in der La
ge, die Richtigkeit der Daten D zu überprüfen.
Eine Überprüfung der Daten D anhand der Prüfsumme PS durch die
Steuerung C liefert ein Ergebnis, das Auskunft darüber gibt,
ob die Daten D richtig oder falsch sind. Dieses Ergebnis kann
in unbenutzten Teilen von Speicherstellen SPS abgelegt werden.
Da der Wert der Länge L bei einer maximal zwanzigstelligen
Rufnummer maximal den Wert 20 annehmen kann, werden für das
Speichern der Länge L lediglich 5 Bit benötigt. Geht man davon
aus, daß eine Speicherstelle SPS 8 Bit breit ist, dann ergeben
sich drei freie Bits an der Speicherstelle SPS der Länge L.
Eines dieser freien Bits, beispielsweise das siebte Bit, wird
als Fehlerflag F verwendet. Es genügt, dieses Fehlerflag F nur
im Speicherabbild SAB gemäß Fig. 2.1 des Permanentspeichers
EEPROM zu setzen, da beim Auslesen eines Datensatzes DS aus
dem Permanentspeicher EEPROM stets die Richtigkeit der Daten D
durch Bilden der Prüfsumme PS überprüft wird.
Zur Übertragung der Daten D vom Speicherabbild SAB in den Per
manentspeicher EEPROM wird der Änderungsspeicher AS benötigt.
Die Struktur des Änderungsspeichers AS ist in Fig. 3 darge
stellt. Für jeden zu ändernden Datensatz DS wird im Änderungs
speicher AS ein Änderungssatz ASS angelegt. Zunächst ist in
diesem Änderungssatz ASS ein Offset OFS eingetragen, der den
Abstand zum nachfolgenden Änderungssatz ASS angibt. Durch die
sen Offset OFS ist eine Aneinanderreihung mehrerer Änderungs
sätze ASS möglich. Mehrere Änderungssätze ASS werden zu einem
Ring zusammengeschlossen, indem der Offset OFS des letzten Än
derungssatzes ASS auf den ersten Änderungssatz ASS zeigt. Nach
dem Offset OFS folgt die Datensatzanfangsadresse DSA des zu
ändernden Datensatzes DS. Danach folgt für jede zu ändernde
Speicherstelle SPS ein Datenoffset DOFS. Dieser Datenoffset
DOFS gibt den Abstand von der Datensatzanfangsadresse DSA zur
Adresse der jeweiligen Speicherstelle SPS an. Am Ende des Än
derungssatzes ASS wird ein Prüfsummenoffset PSOFS eingetragen.
Dieser Prüfsummenoffset PSOFS gibt den Abstand der Datensatz
anfangsadresse DSA zu der Speicherstelle SPS an, in der die
Prüfsumme PS gespeichert ist.
Der Änderungsspeicher AS wird bei der Eingabe eines Datensat
zes DS gemäß dem in Fig. 4 gezeigten Ablaufdiagramm verwen
det. In einem ersten Schritt S41 gelangt ein neuer Datensatz
DS mit Angabe des Adreßbereichs, in dem er abgelegt werden
soll, in das Schreibregister SREG des schnellen Schreib-/Lese
speichers RAM. In einem zweiten Schritt S42 überprüft die
Steuerung C, ob das Fehlerflag F des angesprochenen Datensat
zes DS im Speicherabbild SAB gesetzt ist. Wenn der Datensatz
DS nicht als fehlerhaft markiert ist, vergleicht die Steuerung
C in einem dritten Schritt S43 den neuen Datensatz DS-NEU mit
dem im genannten Adreßbereich des Speicherabbildes SAB gespei
cherten Inhalt des alten Datensatzes DS-ALT. Werden keinerlei
Änderungen festgestellt, dann ist der Vorgang der Eingabe
eines neuen Datensatzes DS-NEU beendet. Wenn der ausgesproche
ne Datensatz DS im Speicherabbild SAB als fehlerhaft markiert
ist - wenn also das Fehlerflag F gesetzt ist - dann wird in
einem ersten Nebenschritt S401 das Fehlerflag F rückgesetzt.
In einem zweiten Nebenschritt S402 werden ohne eine Überprü
fung vorzunehmen alle Inhalte der drei Speicherstellen SPS des
angesprochenen Datensatzes DS als geändert registriert. Da
durch ist sichergestellt, daß der Inhalt des Speicherabbildes
SAB nicht vom Inhalt des Permanentspeichers EEPROM abweicht.
In einem weiteren Schritt S44 werden die Anzahl der zu ändern
den Speicherstellen SPS mit zugehörigem Offset DFS und die zu
den zu ändernden Speicherstellen SPS weisenden Datenoffset
DOFS berechnet. Die errechneten Werte und der Prüfsummenoffset
PSOFS werden in der oben angegebenen Reihenfolge in einen Ände
rungssatz ASS des Änderungsspeichers AS eingeschrieben.
In einem fünften Schritt S45 berechnet die Steuerung C die
Prüfsumme PS des neuen Datensatzes DS-NEU. In einem sechsten
Schritt S46 werden zumindest die gegenüber dem alten Datensatz
DS-ALT veränderten Daten D des neuen Datensatzes DS-NEU und
die neue Prüfsumme PS in das Speicherabbild SAB geschrieben.
Anschließend wird in einem siebten Schritt S47 der Änderungs
satz ASS zum Lesen freigegeben. Nach außen hin ist damit die
Eingabe eines neuen Datensatzes DS-NEU beendet.
Das System zur Verwaltung des Speicherinhaltes des über
schreibbaren Permanentspeichers EEPROM überträgt nun gemäß den
Fig. 5.1 und 5.2 die geänderten Daten D des Datensatzes DS
in den Permanentspeicher EEPROM. Die Steuerung C überprüft mit
Hilfe eines Interrupt IR alle 10 msec in einem ersten Schritt
S511, ob eine Schreibsperre SSPA für einen Änderungssatz ASS
aktiv ist. Ist keine Schreibsperre SSPA aktiv, wird in einem
zweiten Schritt S512 überprüft, ob ein Änderungssatz ASS zum
Lesen freigegeben ist. Wenn ja, wird in einem dritten Schritt
S513 überprüft, ob eine Lesesperre LSPE aktiv ist. Wenn kein
Änderungssatz ASS zum Lesen freigegeben ist, dann wird der In
terrupt IR beendet. Dieser wird ebenfalls beendet, wenn die
Lesesperre LSPE aktiv ist. Die Lesesperre LSPE ist immer dann
aktiv, wenn direkt aus dem Permanentspeicher EEPROM Daten D
ausgelesen werden. Ist die Lesesperre LSPE nicht aktiv, dann
wird in einem vierten Schritt S514 die Schreibsperre SSPA für
den Änderungssatz ASS aktiviert. Die Schreibsperre SSPA ver
hindert ein Beschreiben des Änderungssatzes ASS, in dem die
Änderungen des Datensatzes eingetragen sind, der als nächstes
im Permanentspeicher EEPROM geändert werden soll.
Zur Änderung eines Datensatzes DS wird in einem fünften
Schritt S515 die Anzahl der geänderten Speicherstellen berech
net. In einem sechsten Schritt S516 erfolgt die Berechnung der
Quell- und Zieladresse der Speicherstelle SPS, die als nächste
aus dem Speicherabbild SAB in den Permanentspeicher EEPROM
übertragen wird. Die Quelladresse gibt die physikalische
Adresse der Speicherstelle SPS im Speicherabbild SAB an, und
die Zieladresse gibt die logische Adresse der entsprechenden
Speicherstelle SPS im Permanentspeicher EEPPOM an. Diese
Adressen können sich abhängig von der jeweiligen Speicherorga
nisation unterscheiden. Liegen die Ouell- und die Zieladresse
vor, dann wird in einem siebten Schritt S517 die das Lesen aus
dem Permanentspeicher EEPROM verhindernde Schreibsperre SSPE
aktiviert. Im nachfolgenden achten Schritt S518 werden die Da
ten D in das Ein-/Ausgaberegister EAR übertragen und der Pro
grammiervorgang im Permanentspeicher EEPROM eingeleitet. In
einem neunten Schritt S519 wird eine Programmiersperre PSPE
gesetzt und ein Programmierüberwachungszähler PUZ initiali
siert. Anschließend wird der Interrupt IR beendet.
Im nächsten Interrupt IR, nach 10 msec, wird im ersten Schritt
S511 die Schreibsperre SSPA für den Änderungssatz als aktiv
erkannt. Dies hat zur Folge, daß in einem zweiten Programmteil
des Interrupts IR in einem ersten Schritt S5101 überprüft
wird, ob der interne Programmiervorgang im Permanentspeicher
EEPROM abgeschlossen und damit die Programmiersperre PSPE de
aktiviert ist. Ist dies der Fall, dann wird in einem zweiten
Schritt S5102 überprüft, ob die Lesesperre LSPE aktiv ist. Ist
dies der Fall, dann wird der Interrupt IR beendet. Andernfalls
wird der erste Programmteil ab dem sechsten Schritt S516 wie
derholt und damit weitere Daten D vom Speicherabbild SAB in
den Permanentspeicher EEPROM übertragen.
Ist die Programmiersperre PSPE aktiv, dann werden die in Fig.
5.2 dargestellten Schritte abgearbeitet. In einem ersten
Schritt S521 wird überprüft, ob der interne Programmiervorgang
im Permanentspeicher EEPROM bereits beendet ist. Wenn nein,
wird in einem ersten Schritt S5201 eines zweiten Programmteils
der Fig. 5.2 der Programmierüberwachungszähler PUZ inkremen
tiert. In einem zweiten Schritt S5202 wird überprüft, ob der
maximale Zählerstand, z. B. 12, des Programmierüberwachungszäh
lers PUZ bereits erreicht ist. Wenn nein, dann wird der Inter
rupt IR beendet. Ist aber beim zwölften Aufruf in Folge der
Programmiervorgang im Permanentspeicher EEPROM immer noch
nicht abgeschlossen, dann wird in einem dritten Schritt S5203
die Programmiersperre aufgehoben. Anschließend werden ein
fünfter, ein achter und ein neunter Schritt des ersten Pro
grammteils der Fig. 5.2 abgearbeitet. Im fünften Schritt S525
wird das Fehlerflag F im betroffenen Datensatz DS des Spei
cherabbildes SAB gesetzt. Im achten Schritt S528 wird die
Schreibsperre SSPA für den betroffenen Änderungssatz ASS auf
gehoben und im neunten Schritt SSPE wird auch die das Lesen
aus dem Permanentspeicher EEPROM verhindernde Schreibsperre
SSPE aufgehoben. Im Anschluß an den neunten Schritt wird der
Interrupt IR beendet.
Wird im ersten Schritt S521 des ersten Programmteils der Fig.
5.2 ein Ende des internen Programmiervorgangs im Perma
nentspeicher EEPROM festgestellt, dann wird in einem zweiten
Schritt S522 die Programmiersperre PSPE deaktiviert. Im nach
folgenden dritten Schritt S523 werden die soeben in eine Spei
cherstelle SPS des Permanentspeichers EEPROM eingeschriebenen
Daten D zum Ein-/Ausgaberegister EAR des schnellen Schreib-/
Lesespeichers RAM hin ausgelesen und in einem vierten Schritt
S524 mit den dort vorhandenen Soll-Daten D verglichen. Sind
diese Daten D identisch, dann wird in einem sechsten Schritt
S526 die Anzahl der zu ändernden Speicherzellen SPS um eins
vermindert. Im folgenden siebten Schritt S527 wird überprüft,
ob noch weitere Speicherstellen SPS zu ändern sind. Ist dies
nicht der Fall, wird der neunte Schritt S529 abgearbeitet und
der Interrupt IR beendet. Sind noch weitere Speicherstellen
SPS zu ändern, dann werden der achte und der neunte Schritt
S528, S529 abgearbeitet und der Interrupt IR beendet. Wird im
vierten Schritt S524 keine Übereinstimmung der Daten D festge
stellt, dann werden die Schritte fünf, acht und neun S525,
S528, S529 abgearbeitet und der Interrupt beendet.
Der Vorgang des Ausgebens eines Datensatzes DS ist in Fig. 6
in Form eines Ablaufdiagramms dargestellt. Von außen gelangt
eine Anforderung zum Lesen eines bestimmten Datensatzes DS in
das System zur Verwaltung des Permanentspeichers EEPROM. Die
Steuerung C veranlaßt in einem ersten Schritt S61 das Lesen
des angeforderten Datensatzes DS aus dem Speicherabbild SAB in
das Leseregister LREG. In einem zweiten Schritt S62 wird das
Fehlerflag F überprüft. Ist es gesetzt, dann wird eine Fehler
meldung nach außen gegeben, das Leseregister LREG gelöscht und
die Routine beendet. Ist das Fehlerflag nicht gesetzt, dann
wird in einem dritten Schritt S63 die zugehörige Prüfsumme PS
des Datensatzes DS berechnet. In einem vierten Schritt S64
wird diese Prüfsumme PS mit der im Datensatz DS gespeicherten
Prüfsumme PS verglichen. Sind diese Prüfsummen PS identisch,
dann wird der Datensatz über das Leseregister LREG nach außen
abgegeben.
Unterscheiden sich die gespeicherte Prüfsumme PS und die er
rechnete Prüfsumme PS, dann wird der Inhalt des Leseregisters
LREG gelöscht und in einem fünften Schritt S65 die Lesesperre
LSPE aktiviert. In einem sechsten Schritt S66 wird geprüft, ob
die Schreibsperre SSPE aktiv ist. Dadurch wird ein Lesezugriff
auf den Permanentspeicher EEPROM während des Einschreibens von
Daten D in den Permanentspeicher EEPROM verhindert. Sobald die
Schreibsperre SSPE inaktiv ist, wird der angeforderte Daten
satz DS in einem siebten Schritt S67 direkt aus dem Perma
nentspeicher EEPROM gelesen. Anschließend wird in einem ach
ten Schritt S68 die Lesesperre LSPE deaktiviert. Die Steuerung
C bildet in einem neunten Schritt S69 die Prüfsumme PS des aus
dem Permanentspeicher EEPROM ausgelesenen Datensatzes DS und
vergleicht sie mit der in dem Datensatz DS vorhandenen Prüf
summe PS. Stimmen die Prüfsummen PS überein, wird der Daten
satz DS nach außen über das Leseregister LREG ausgegeben. Um
das wiederholte Auslesen des eben nach außen abgegebenen Da
tensatzes DS beschleunigt zu ermöglichen, wird der aus dem
Permanentspeicher EEPROM ausgelesene Datensatz DS an entspre
chender Stelle im Speicherabbild SAB eingeschrieben.
Wird bei der Überprüfung der Prüfsumme PS des aus dem Perma
nentspeicher EEPROM ausgelesenen Datensatzes DS ein Fehler
festgestellt, dann wird das Fehlerflag F des entsprechenden
Datensatzes DS im Speicherabbild SAB gesetzt und eine Fehler
meldung nach außen abgegeben.
Bei der ersten Inbetriebnahme des Fernsprechendgerätes und
bei einer Wiederinbetriebnahme, beispielsweise nach einem Aus
fall der Versorgungsspannung des Fernsprechendgerätes, werden
die Inhalte des Speicherabbildes SAB und des Permanentspei
chers EEPROM einander angepaßt. In Fig. 7 ist in Form eines
Ablaufdiagramms die Abfolge der Schritte bei der Inbetriebnah
me des Systems zur Verwaltung des Permanentspeichers EEPROM
dargestellt. Ausgelöst durch einen Reset RS wird in einem er
sten Schritt S71 ein Initialisierungswert INIT aus einer defi
nierten Speicherstelle SPS des Permanentspeichers EEPROM aus
gelesen. In einem zweiten Schritt S72 wird dieser Initialisie
rungswert INIT mit einem Soll-Initialisierungswert INIT ver
glichen. Sind diese beiden Initialisierungswerte INIT iden
tisch, dann werden von außen über das Schreibregister SREG zu
geführte eine Grundeinstellung enthaltende Datensätze DS in
der oben bei der Beschreibung von Fig. 4 dargelegten Weise in
das Speicherabbild SAB eingeschrieben. In einem vierten
Schritt wird im Speicherabbild SAB der Speicherplatz SPS, in
dem der Initialisierungswert INIT abgelegt ist, gelöscht. Die
Übertragung der nun im Speicherabbild SAB vorliegenden Daten D
erfolgt in einem fünften Schritt S75 gemäß der oben in der Be
schreibung zu Fig. 5 dargelegten Weise. Die Initialisierung
des Permanentspeichers EEPROM erfolgt damit automatisch nach
dem Initialisieren des Speicherabbildes SAB. Der von außen er
kennbare Zeitaufwand für die Initialisierung verringert sich
dabei erheblich. Während der Initialisierung des Permanent
speichers EEPROM können bereits angeforderte Datensätze DS aus
dem Speicherabbild SAB ausgelesen und nach außen abgegeben
werden.
Erfolgt ein Reset RS nachdem die erste Initialisierung des
Fernsprechgerätes zu einem früheren Zeitpunkt bereits einmal
erfolgt war, dann ergibt der Vergleich beim zweiten Schritt
S72 eine Ungleichheit des Initialisierungswertes INIT mit dem
aus dem Permanentspeicher EEPROM ausgelesenen, in der Zwi
schenzeit gelöschten Initialisierungswert INIT. Dies bedeutet,
daß im Permanentspeicher EEPROM gültige Datensätze DS vorhan
den sind, die, um Gleichheit der Daten D zu erreichen, voll
ständig in das Speicherabbild SAB kopiert werden müssen. Gemäß
Fig. 7 wird bei Feststellen einer Ungleichheit der Initiali
sierungswerte INIT während der Ausführung des zweiten Schrit
tes S72 in einem ersten Nebenschritt S701 das Auslesen der Da
ten D aus dem Permanentspeicher EEPROM in das Speicherabbild
SAB veranlaßt. Dieser Übertrag der Daten D erfolgt in der oben
in der Beschreibung zu Fig. 6 in den Schritten 5 bis 11 dar
gestellten Weise.
Das System zur Verwaltung des Speicherinhaltes eines Perma
nentspeichers EEPROM ermöglicht ein quasi gleichzeitiges
Schreiben und Lesen von Daten D. Zudem minimiert es die An
zahl der Speicherzyklen, die zur Übertragung einer gegebenen
Anzahl von Daten D in den Permanentspeicher EEPROM erforder
lich sind, da nur geänderte Daten D in den Permanentspeicher
EEPROM gelangen. Die Lebensdauer des Permanentspeichers EEPROM
erhöht sich dadurch.
Außer den oben als Beispiel angeführten Telefonnummern, die in
die Speicherstellen SPS der Datensätze DS eingeschrieben wer
den, gibt es auch Daten D, die sehr häufig geändert werden.
Beispielsweise sind dies Daten D zur automatischen Gebührener
fassung bei Fernsprechendgeräten. Bei solchen Daten D läßt es
sich nicht vermeiden, die entsprechenden Speicherstellen SPS
im Permanentspeicher EEPROM häufig neu zu beschreiben. Deshalb
werden für solche Daten D mehrere Datensätze DS vorgesehen,
die nacheinander verwendet werden. Ein Adreßbereich eines Da
tensatzes DS wird nach beispielsweise 10 000 Speicherzyklen
nicht mehr weiterverwendet. Derselbe Datensatz DS wird in
einen anderen Adreßbereich geschrieben. Welcher Adreßbereich
zu einem bestimmten Zeitpunkt aktuell die Daten D aufnehmen
soll, kann dem Permanentspeicher EEPROM über ein oder mehrere
Informationsbit im Änderungsspeicher AS mitgeteilt werden. In
Abhängigkeit dieser Informationsbits berechnet die Steuerung C
die entsprechende Zieladresse.
Claims (8)
1. System zur Verwaltung des Speicherinhaltes eines über
schreibbaren Permanentspeichers und eines schnellen Schreib-/
Lesespeichers, die jeweils in aus einer Mehrzahl von adres
sierbaren Speicherstellen bestehende, einen Datensatz aufneh
mende Abschnitte strukturiert sind,
dadurch gekennzeichnet,
- a) daß ein Speicherabbild (SAB) des Permanentspeichers (EEPROM) in einem schnellen Schreib-/Lesespeicher (RAM) abgelegt ist,
- b) daß ein neuer, in einem bestimmten Abschnitt des Perma nentspeichers (EEPROM) einzuschreibender Datensatz (DS-NEU) mit dem in diesem Abschnitt des Speicherabbildes (SAB) vor handenen alten Datensatz (DS-ALT) verglichen wird,
- c) daß die Adressen derjenigen Speicherstellen (SPS) des Ab schnittes, in denen sich der Speicherinhalt ändert, in einem Änderungsspeicher (AS) vermerkt werden,
- d) daß zumindest die gegenüber dem alten Datensatz (DS-ALT) geänderten Daten (D) des neuen Datensatzes (DS-NEU) in das Speicherabbild (SAB) geschrieben werden, und
- e) daß die Inhalte der im Änderungsspeicher (AS) vermerkten Speicherstellen (SPS) des Speicherabbildes (SAB) in die entsprechenden Speicherstellen (SPS) des Permanentspeichers (EEPROM) geschrieben werden.
2. System nach Anspruch 1, dadurch gekenn
zeichnet, daß von außen angeforderte Datensätze DS
aus dem Speicherabbild (SAB) ausgelesen werden.
3. System nach einem der vorhergehenden Ansprüche, da
durch gekennzeichnet, daß jedem Daten
satz DS eine aus den im Datensatz DS gespeicherten Daten (D)
gebildete Prüfsumme (PS) zugefügt ist.
4. System nach einem der vorhergehenden Ansprüche, da
durch gekennzeichnet, daß beim Fest
stellen einer Ungleichheit einer gespeicherten Prüfsumme (PS)
mit einer beim Auslesen eines Datensatzes (DS) errechneten
Prüfsumme (PS) eine Fehlermeldung erfolgt.
5. System nach Anspruch 4, dadurch gekenn
zeichnet, daß das Auslesen eines Datensatzes (DS) aus
dem Speicherabbild (SAB) bei Auftreten einer Fehlermeldung un
terbleibt und der entsprechende Datensatz (DS) direkt aus dem
Permanentspeicher (EEPROM) ausgelesen wird.
6. System nach einem der Ansprüche 4 oder 5, dadurch
gekennzeichnet, daß ein im Speicherabbild (SAB)
in einem bestimmten Abschnitt gespeicherter Datensatz (DS) als
fehlerhaft markiert ist, daß dem System zur Verwaltung des
Permanentspeichers (EEPROM) ein neuer Datensatz (DS-NEU), der
für diesen Abschnitt bestimmt ist, von außen neu zugeführt
wird, daß der neue Datensatz (DS-NEU) vollständig in den Ab
schnitt des Speicherabbildes (SAB) geschrieben wird und daß
der neue Datensatz (DS-NEU) vollständig in den Permanentspei
cher (EEPROM) geschrieben wird.
7. System nach einem der vorhergehenden Ansprüche, da
durch gekennzeichnet, daß bei einer In
betriebnahme des Systems zur Verwaltung des Permanentspeichers
(EEPROM) der Speicherinhalt des Permanentspeichers (EEPROM) in
das Speicherabbild (SAB) übertragen wird.
8. System nach einem der vorhergehenden Ansprüche, da
durch gekennzeichnet, daß bei einer er
sten Inbetriebnahme des Systems zur Verwaltung eines Perma
nentspeichers (EEPROM) die einer Initialisierung dienenden Da
ten (D) zunächst nur in das Speicherabbild (SAB) eingeschrie
ben werden und daß das System anschließend die Daten (D) aus
dem Speicherabbild (SAB) in den Permanentspeicher (EEPROM)
überträgt.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19924209905 DE4209905C1 (en) | 1992-03-26 | 1992-03-26 | Memory contents management system using EEPROM and RAM - compares new data with memory image stored in EEPROM, stores changed addresses of locations and writes corresp. contents in EEPROM |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19924209905 DE4209905C1 (en) | 1992-03-26 | 1992-03-26 | Memory contents management system using EEPROM and RAM - compares new data with memory image stored in EEPROM, stores changed addresses of locations and writes corresp. contents in EEPROM |
Publications (1)
Publication Number | Publication Date |
---|---|
DE4209905C1 true DE4209905C1 (en) | 1993-05-19 |
Family
ID=6455105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19924209905 Expired - Fee Related DE4209905C1 (en) | 1992-03-26 | 1992-03-26 | Memory contents management system using EEPROM and RAM - compares new data with memory image stored in EEPROM, stores changed addresses of locations and writes corresp. contents in EEPROM |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE4209905C1 (de) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4402901A1 (de) * | 1994-02-02 | 1995-08-03 | Sel Alcatel Ag | Vorrichtung und Verfahren zur Speicherung und Wiedergabe von digitalen Daten |
DE19740525C1 (de) * | 1997-09-15 | 1999-02-04 | Siemens Ag | Verfahren zur Abspeicherung und Wiedergewinnung von Daten in einem Steuersystem, insbesondere in einem Kraftfahrzeug |
WO2015110280A1 (de) * | 2014-01-21 | 2015-07-30 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren zum verschlüsseln, speichersystem für ein fahrzeug, kraftfahrzeug mit einem speichersystem und computerlesbares speichermedium |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4716552A (en) * | 1985-03-29 | 1987-12-29 | Advanced Micro Devices, Inc. | Method and apparatus for non-destructive access of volatile and non-volatile data in a shadow memory array |
EP0398654A2 (de) * | 1989-05-16 | 1990-11-22 | Seiko Epson Corporation | Anordnung, um Daten in einen EEPROM zu schreiben |
-
1992
- 1992-03-26 DE DE19924209905 patent/DE4209905C1/de not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4716552A (en) * | 1985-03-29 | 1987-12-29 | Advanced Micro Devices, Inc. | Method and apparatus for non-destructive access of volatile and non-volatile data in a shadow memory array |
EP0398654A2 (de) * | 1989-05-16 | 1990-11-22 | Seiko Epson Corporation | Anordnung, um Daten in einen EEPROM zu schreiben |
Non-Patent Citations (1)
Title |
---|
Electronic Design, 19. Sept. 1985, S. 183-186 u. 188 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4402901A1 (de) * | 1994-02-02 | 1995-08-03 | Sel Alcatel Ag | Vorrichtung und Verfahren zur Speicherung und Wiedergabe von digitalen Daten |
DE19740525C1 (de) * | 1997-09-15 | 1999-02-04 | Siemens Ag | Verfahren zur Abspeicherung und Wiedergewinnung von Daten in einem Steuersystem, insbesondere in einem Kraftfahrzeug |
FR2768529A1 (fr) * | 1997-09-15 | 1999-03-19 | Siemens Ag | Procede de mise en memoire et recuperation de donnees dans un systeme de commande, notamment dans un vehicule automobile |
WO2015110280A1 (de) * | 2014-01-21 | 2015-07-30 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren zum verschlüsseln, speichersystem für ein fahrzeug, kraftfahrzeug mit einem speichersystem und computerlesbares speichermedium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0038947B1 (de) | Programmierbare logische Anordnung | |
EP0195885B1 (de) | Verfahren und Anordnung zum nichtflüchtigen Speichern des Zählerstandes einer elektronischen Zählschaltung | |
DE10308545A1 (de) | Verfahren und Vorrichtung zum Aktualisieren eines verteilten Programms | |
DE2331589A1 (de) | Datenverarbeitungsanordnung | |
EP1183690B1 (de) | Speicheranordnung mit adressverwürfelung | |
DE19921232B4 (de) | Verfahren zum gesicherten Schreiben eines Zeigers für einen Ringspeicher, zugehöriger Ringspeicher, Verwendung des Ringspeichers und Chipkarte mit Ringspeicher | |
DE2703559C2 (de) | ||
DE60222891T2 (de) | Nichtflüchtige Speichervorrichtung und Selbstreparatur-Verfahren | |
EP0123177B1 (de) | Verfahren zum Betreiben eines als nichtflüchtigen Schreib-Lese-Speichers ausgebildeten Anwendungsspeichers und Anordnung zur Durchführung des Verfahrens | |
DE4209905C1 (en) | Memory contents management system using EEPROM and RAM - compares new data with memory image stored in EEPROM, stores changed addresses of locations and writes corresp. contents in EEPROM | |
DE19602039A1 (de) | Halbleiterspeichervorrichtung und Verfahren zum Schreiben von Daten in diese | |
EP0203409B1 (de) | Verfahren und Anordnung zum nichtflüchtigen Speichern des Zählerstandes eines digitalen Zählers | |
DE10322723B3 (de) | Vorrichtung und Verfahren zum Behandeln eines Zustands eines Speichers | |
DE10252059B3 (de) | Verfahren zum Betreiben einer Speicheranordnung | |
DE1295656B (de) | Assoziativer Speicher | |
DE60033818T2 (de) | Verfahren und Schaltung zur Programmierung eines nichtflüchtigen Multibitspeichers mit einer reduzierten Anzahl von Kontaktstiften | |
DE1774849C3 (de) | Adressierungseinrichtung für eine Speicherabschnittkette | |
DE3009317A1 (de) | Hybrid-assoziativspeicher | |
DE2638703A1 (de) | Elektronische speichervorrichtung | |
DE3137152A1 (de) | Speicher-korrektureinheit | |
DE112004002832T5 (de) | Sektorschutzschaltung für einen nichtflüchtigen Halbleiterspeicher, Sektorschutzverfahren und nichtflüchtiger Halbleiterspeicher | |
DE3202495A1 (de) | Verfahren und vorrichtung zur ueberwachung einer kritischen anzahl von loesch- und/oder schreibzyklen eines elektrisch loeschbaren, programmierbaren nur-lese-speichers | |
DE1524791C3 (de) | Schaltungsanordnung zur Kompensation schadhafter Speicherstellen in Datenspeichern | |
DE10128752A1 (de) | Verfahren zur Ablage von Daten in einen Speicherbaustein | |
WO2001071725A1 (de) | Verfahren und vorrichtung zum verarbeiten von fehleradressen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8100 | Publication of the examined application without publication of unexamined application | ||
D1 | Grant (no unexamined application published) patent law 81 | ||
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: SIEMENS AG, 80333 MUENCHEN, DE |
|
8339 | Ceased/non-payment of the annual fee |