DE10018722A1 - Verfahren und Schaltungsanordnung zum Speichern von Datenworten in einem RAM Modul - Google Patents
Verfahren und Schaltungsanordnung zum Speichern von Datenworten in einem RAM ModulInfo
- Publication number
- DE10018722A1 DE10018722A1 DE10018722A DE10018722A DE10018722A1 DE 10018722 A1 DE10018722 A1 DE 10018722A1 DE 10018722 A DE10018722 A DE 10018722A DE 10018722 A DE10018722 A DE 10018722A DE 10018722 A1 DE10018722 A1 DE 10018722A1
- Authority
- DE
- Germany
- Prior art keywords
- word
- data
- bit
- words
- crc
- 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.)
- Ceased
Links
- 238000000034 method Methods 0.000 title claims description 14
- 125000004122 cyclic group Chemical group 0.000 description 3
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 2
- 229910052710 silicon Inorganic materials 0.000 description 2
- 239000010703 silicon Substances 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1012—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
- G06F11/1032—Simple parity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
- G06F11/1056—Updating check bits on partial write, i.e. read/modify/write
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Detection And Correction Of Errors (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Es wird ein Verfahren zum Speichern von Datenworten in einem RAM Modul beschrieben, das insbesondere für sicherheitskritische Anwendungen geeignet ist und sich durch folgende Schritte auszeichnet: Erzeugen eines Prüfbit-Wortes aus mindestens einem Datenwort beim Schreiben des mindestens einen Datenwortes in das RAM Modul, Speichern des Prüfbit-Wortes, Auslesen des Prüfbit-Wortes beim Auslesen des mindestens einen Datenwortes aus dem RAM Modul, Erneutes Erzeugen des Prüfbit-Wortes aus dem mindestens einen ausgelesenen Datenwort, Vergleichen des ausgelesenen Prüfbit-Wortes mit dem erneut erzeugten Prüfbit-Wort und Erzeugen einer Fehlermeldung, wenn diese nicht übereinstimmen. Weiterhin wird eine entsprechende Schaltungsanordnung beschrieben.
Description
Die Erfindung betrifft ein Verfahren und eine Schaltungsan
ordnung zum Speichern von Datenworten in einem RAM Modul,
insbesondere für sicherheitskritische Anwendungen.
RAM (Random Access Memory) Module sind allgemein bekannt
und weit verbreitet. Sie dienen zum wiederholten Speichern
und Auslesen von Daten für eine Vielzahl von Anwendungen.
Der Sicherheit der in dem RAM Modul gespeicherten Daten
muss bei der Auslegung der Speicherarchitektur besondere
Beachtung geschenkt werden. Bei einer bekannten Architektur
wird die Datensicherheit durch eine voll redundante Ausle
gung des Moduls in relativ zuverlässiger Weise gewährlei
stet. Ein wesentlicher Nachteil hierbei besteht jedoch dar
in, dass der Schaltungsaufwand und der Bedarf an Silizium
fläche relativ hoch ist.
Der Erfindung liegt deshalb die Aufgabe zugrunde, ein Ver
fahren und eine Schaltungsanordnung zum Speichern von Da
tenwörtern in einem RAM Modul zu schaffen, dessen Flächen
bedarf wesentlich geringer ist, ohne dass Einschränkungen
im Hinblick auf die Datensicherheit hinzunehmen sind.
Gelöst wird diese Aufgabe mit einem Verfahren gemäß An
spruch 1, dass sich durch folgende Schritte auszeichnet:
Erzeugen eines Prüfbit-Wortes aus mindestens einem Daten wort beim Schreiben des mindestens einen Datenwortes in das RAM Modul, Speichern des Prüfbit-Wortes, Auslesen des Prüf bit-Wortes beim Auslesen des mindestens einen Datenwortes aus dem RAM Modul, Erneutes Erzeugen des Prüfbit-Wortes aus dem mindestens einen ausgelesenen Datenwort, Vergleichen des ausgelesenen Prüfbit-Wortes mit dem erneut erzeugten Prüfbit-Wort und Erzeugen einer Fehlermeldung, wenn diese nicht übereinstimmen.
Erzeugen eines Prüfbit-Wortes aus mindestens einem Daten wort beim Schreiben des mindestens einen Datenwortes in das RAM Modul, Speichern des Prüfbit-Wortes, Auslesen des Prüf bit-Wortes beim Auslesen des mindestens einen Datenwortes aus dem RAM Modul, Erneutes Erzeugen des Prüfbit-Wortes aus dem mindestens einen ausgelesenen Datenwort, Vergleichen des ausgelesenen Prüfbit-Wortes mit dem erneut erzeugten Prüfbit-Wort und Erzeugen einer Fehlermeldung, wenn diese nicht übereinstimmen.
Die Aufgabe wird ferner mit einer Schaltungsanordnung gemäß
Anspruch 7 gelöst, die sich auszeichnet durch: eine erste
Schaltungseinheit zur Erzeugung eines Prüfbit-Wortes aus
mindestens einem Datenwort beim Schreiben und Lesen des
mindestens einen Datenwortes, eine Anzahl von Registern zur
zugeordneten Speicherung von Prüfbit-Worten für die Daten
worte, sowie eine zweite Schaltungseinheit, mit der beim
Lesen von Datenworten das zugeordnete Prüfbit-Wort mit dem
durch die erste Schaltungseinheit erneut erzeugten Prüfbit-
Wort verglichen wird, sowie zur Erzeugung einer Fehlermel
dung, wenn die Prüfbit-Worte nicht übereinstimmen.
Ein besonderer Vorteil dieser Lösung besteht darin, dass
bei im wesentlichen gleicher Datensicherheit wie bei der
eingangs genannten voll redundanten Auslegung die erforder
liche Siliziumfläche und damit auch der Schaltungsaufwand
und die Kosten wesentlich geringer sind.
Die Unteransprüche haben vorteilhafte Weiterbildungen der
Erfindung zum Inhalt.
Weitere Einzelheiten, Merkmale und Vorteile der Erfindung
ergeben sich aus der folgenden Beschreibung einer bevorzug
ten Ausführungsform anhand der Zeichnung. Es zeigt:
Fig. 1 eine schematische Darstellung einer ersten Speicher
architektur;
Fig. 2 eine schematische Darstellung des Ablaufes eines
Schreibvorgangs;
Fig. 3 eine schematische Darstellung des Ablaufes eines Le
sevorgangs;
Fig. 4 die Erzeugung einer wortorientierten Parität;
Fig. 5 eine schematische Darstellung einer zweiten Spei
cherarchitektur; und
Fig. 6 die Erzeugung einer spaltenorientierten Parität.
Ein RAM Modul umfasst gemäß Fig. 1 im wesentlichen ein
wortorientiertes Array 10 aus einer Anzahl von 32 Bit Da
tenwort-Registern 10a, . . ., 10i, . . ., 10x, die reihenweise unter
einander angeordnet dargestellt sind. Jedem Datenwortregi
ster ist ein 2 Bit Paritätswort-Register 11a, . . ., 11i, . . ., 11x
zugeordnet, so dass sich ein 2 Bit Paritäts-Array 11 er
gibt. Weiterhin ist ein 32 Bit Paritätswort-Register 12
vorgesehen, dem wiederum ein 2 Bit Paritätswort-Register 13
zugeordnet ist.
Zum Datenaustausch ist diese Anordnung in bekannter Weise
mit einer Bus-Interfaceeinheit 14 verbunden, über die eine
Verbindung zu einem CPU-Bus hergestellt werden kann. Die
Bus-Interfaceeinheit 14 umfasst weiterhin Schaltungseinhei
ten zum Erzeugen und zum Vergleich der Paritätsworte bei
Schreib- und Lesevorgängen, die in den Fig. 2 und 3 dar
gestellt sind.
Zum Schreiben in das RAM Modul werden gemäß Fig. 2 die be
treffenden Datenwörter von einem 32 Bit Datenbus 20 zu ei
ner ersten Schaltungseinheit 21 geführt, mit der zu jedem
Datenwort ein 2 Bit Paritätswort erzeugt wird. Anschließend
wird das Datenwort in eines der Datenwort-Register 10i in
dem RAM Modul und das 2 Bit Paritätswort in das zugeordnete
2 Bit Paritätswort-Register 11i eingeschrieben.
Zum Lesen von Datenwörtern aus dem RAM Modul wird gemäß
Fig. 3 das adressierte Datenwort zunächst in die erste
Schaltungseinheit 21 überführt. Gleichzeitig wird das zuge
ordnete 2 Bit Paritätswort in eine zweite Schaltungseinheit
22 übertragen. In der ersten Schaltungseinheit 21 wird aus
dem ausgelesenen Datenwort wiederum ein 2 Bit Paritätswort
erzeugt, das in die zweite Schaltungseinheit 22 überführt
und dort mit dem direkt aus dem RAM Modul ausgelesenen 2
Bit Paritätswort verglichen wird. Wenn diese beiden Wörter
nicht übereinstimmen, wird ein Fehlersignal F erzeugt oder
ein entsprechendes Fehler-Flag gesetzt. Wenn die 2 Bit Pa
ritätswörter übereinstimmen, wird das ausgelesene Datenwort
auf den Datenbus 20 übertragen.
Gemäß Fig. 4 setzt sich jedes 32 Bit Datenwort aus einem
ersten und einem zweiten 16 Bit Halbwort HW zusammen, wobei
aus jedem Halbwort ein Bit B des 2 Bit Paritätswortes er
zeugt wird.
Durch die automatische Erzeugung und den automatischen Ver
gleich dieser wortorientierten Paritäten können einzelne
Bitfehler sofort "online" beim Auslesen aus dem RAM Modul
erkannt werden.
Um eine noch höhere Fehlersicherheit zu erreichen, läßt
sich die 2 Bit Paritätserzeugung auch durch eine CRC
(cyclic redundandy check)-Prüfung mit einem für jedes Da
tenwort gemäß einem Polynom berechneten CRC-Wort ersetzen.
Um ein sinnvolles Verhältnis zwischen der Breite eines Da
tenwortes und der Breite eines CRC-Wortes zu erreichen,
wird die Speicherarchitektur so gewählt, dass die Breite
der gespeicherten Datenworte (Speicherworte) ein Vielfaches
der Breite der Datenworte auf dem Datenbus ist. Bei einer
Datenwort-Breite von 32 Bit hat das Speicherwort vorzugs
weise eine Breite von 128 Bit und das CRC-Wort für eine op
timale Fehlersicherheit eine Breite von 9 Bit.
Fig. 5 zeigt eine entsprechende Anordnung, die über die
Bus-Interfaceeinheit 14 mit einem 32 Bit Datenbus (nicht
dargestellt) verbunden ist.
Das RAM Modul umfasst ein Array 60 aus einer Anzahl von 128
Bit Speicherwort-Registern 60a, . . ., 60x, die reihenweise un
tereinander angeordnet dargestellt sind. Jedem Speicher
wort-Register ist ein CRC-Register 61a, . . ., 61x mit zum Bei
spiel jeweils 9 Bit zugeordnet, so dass sich ein CRC-Array
61 ergibt.
Zwischen das Array 60 und die Bus-Interfaceeinheit 14 ist
eine Einheit 70 geschaltet, die einen Multiplexer 71 für
jeweils vier 32 Bit Datenworte sowie ein 128 Bit CRC-
Rechenregister 72 zur Aufnahme von vier 32 Bit Datenworten
aufweist. Weiterhin umfasst die Einheit 70 eine CRC-
Recheneinheit 73, mit der aus dem Inhalt des 128 Bit CRC-
Rechenregisters 72 mit bekannten Rechenverfahren ein 9 Bit
CRC-Wort berechnet und in einem 9 Bit CRC-Register 74 zwi
schengespeichert wird, das wiederum mit der Bus-
Interfaceeinheit 14 verbunden ist.
Die Schreib- und Lesevorgänge laufen im wesentlichen in
gleicher Weise ab, wie es in den Fig. 2 und 3 darge
stellt ist.
Beim Einschreiben in das RAM Modul werden jeweils vier über
die Bus-Interfaceeinheit 14 zugeführte 32 Bit Datenworte
mit dem Multiplexer 71 zyklisch nacheinander in das 128 Bit
CRC-Rechenregister 72 eingespeichert, so dass sich ein 128
Bit Speicherwort ergibt: Mit der CRC-Recheneinheit 73 wird
daraus dann das 9 Bit CRC-Wort berechnet und in das 9 Bit
CRC-Register 74 eingetragen. Anschließend wird der Inhalt
des 128 Bit CRC-Rechenregisters 72 in eines der 128 Bit
Speicherwort-Register 60i des RAM Arrays und der Inhalt des
9 Bit CRC-Registers 74 in das zugeordnete 9 Bit CRC-
Wortregister 61i eingespeichert.
Beim Schreiben eines neuen 32 Bit Datenwortes (oder kleine
rer Worteinheiten) in das RAM Modul ist es erforderlich,
das CRC-Wort des betreffenden 128 Bit Speicherwort-
Registers 60i neu zu berechnen. Dies bedeutet, dass vor dem
Schreiben des neuen Datenwortes zunächst der Inhalt des be
treffenden 128 Bit Speicherwort-Registers 60i vollständig
ausgelesen und in das CRC-Rechenregister 72 eingespeichert
werden muss, um dann mit der CRC-Recheneinheit 73 auf der
Grundlage des neuen Datenwortes das 9 Bit CRC-Wort neu zu
berechnen und in dem CRC-Register 74 abzulegen. Die Inhalte
beider Register 72, 74 werden dann in die entsprechenden
Register 60i, 61i übertragen.
Sofern vor dem Schreiben eines neuen 32 Bit Datenwortes ei
ne Fehlerprüfung durchgeführt werden soll, die zum Beispiel
durch eine Software mit bestimmten Zeitabständen veranlasst
werden kann, wird wie oben erwähnt zunächst der Inhalt des
betreffenden 128 Bit Speicherwort-Registers 60i und der In
halt des zugeordneten CRC-Registers 61i ausgelesen. An
schließend wird mit der CRC-Recheneinheit 73 daraus erneut
das 9 Bit CRC-Wort erzeugt und mit dem ausgelesenen CRC-
Wort verglichen. Wenn diese beiden CRC-Worte nicht überein
stimmen, wird ein Fehlersignal F (oder ein entsprechendes
Fehler-Flag) erzeugt. Wenn die CRC-Worte übereinstimmen,
wird, wie oben erläutert wurde, aus dem das neue 32 Bit Da
tenwort enthaltenden 128 Bit Speicherwort ein neues 9 Bit
CRC Wort berechnet, und beide werden in das entsprechende
128 Bit Speicherwort-Register 60i bzw. das zugeordnete 9
Bit CRC Register 61i des RAM Moduls eingelesen.
Die Fehlerprüfung kann auch dann durchgeführt werden, wenn
ein Datenwort aus dem RAM Modul auf den Datenbus 20 ausge
lesen werden soll. Zu diesem Zweck wird der Inhalt des das
betreffende Datenwort enthaltenden Speicherwort-Registers
60i in das CRC-Rechenregister 72 übertragen und daraus er
neut das CRC-Wort berechnet. Dieses CRC-Wort wird mit dem
in dem zugeordneten CRC-Wort-Register 61i gespeicherten
CRC-Wort verglichen. Wenn beide Worte nicht übereinstimmen,
wird eine Fehlermeldung F erzeugt oder ein entsprechendes
Fehler-Flag gesetzt. Wenn beide CRC-Worte übereinstimmen,
wird das ausgelesene 32 Bit Datenwort auf den Datenbus 20
übertragen. Anschließend wird der Inhalt des CRC-
Rechenregisters 72 in das entsprechende 128 Bit Speicher
wort-Register 60i zurückgeführt.
Fig. 6 zeigt mehrere Speicherwort-Register 10a, 10b, . . .,
10x, für 32 Bit Datenworte sowie ein 32 Bit Paritätswort-
Register 12, wobei für jede Stelle beispielhaft ein Bit mit
dem Wert 0 oder 1 dargestellt ist.
Im Unterschied zu der in den Fig. 4 und 5 gezeigten,
wortorientierten Prüfbit-Erzeugung wird gemäß Fig. 6 eine
spaltenorientierte Parität erzeugt, bei der für jeweils
gleiche Stellen aller Datenworte ein Paritäts-Bit ermittelt
wird, das an eine zugeordnete Stelle in dem 32 Bit Pari
tätswort-Register 12 eingeschrieben wird. Auf diese Weise
ergibt sich ein 32 Bit Paritätswort. Weiterhin kann nun zu
diesem 32 Bit Paritätswort in gleicher Weise wie es für die
wortorientierte Parität anhand der Fig. 4 beschrieben wur
de, ein 2 Bit Paritätswort erzeugt und in dem 2 Bit Pari
tätswort-Register 13 (siehe Fig. 1) abgespeichert werden.
Entsprechend der vorstehend beschriebenen Weise kann auch
eine spaltenorientierte Paritätsprüfung bei der Ausfüh
rungsform gemäß Fig. 5 mit 128 Bit breiten Datenworten
durchgeführt werden.
Während des Schreibens eines neuen Datenwortes in einem der
Wortregister 10i des RAM Moduls wird zunächst der Inhalt
des Datenwortes der zu beschreibenden Speicherstelle im RAM
Modul, d. h. im Beispiel ein 32 Bit Datenwort-Register 10i,
sowie das 32 Bit Paritätswort-Register 12 ausgelesen. An
schließend wird der Wert des spaltenorientierten 32 Bit Pa
ritätsworts erneut ermittelt und beschrieben.
Darauffolgend wird das neue Datenwort in die entsprechenden
Datenwort-Register 10i zurückgeschrieben und der Inhalt des
32 Bit Paritätswort-Registers 12 neu ermittelt. Im An
schluss daran kann zu dem 32 Bit Paritätswort wieder eine 2
Bit Parität erzeugt und in dem 2 Bit Paritätswort-Register
13 (siehe Fig. 1) gespeichert werden.
Während eines normalen Lesevorgangs wird vorzugsweise keine
Fehlerüberprüfung durchgeführt. Eine zusätzliche Fehlerprü
fung kann dadurch erfolgen, daß in der vorstehend beschrie
benen Weise beispielsweise zum Zeitpunkt während eines Le
sevorgangs der Inhalt sämtlicher Datenwort-Register 10i
ausgelesen wird, das spaltenorientierte 32 Bit Paritätswort
erneut erzeugt und mit dem in dem Paritätswort-Register 12
gespeicherten Paritätswort verglichen wird. Wenn die Pari
tätsworte nicht übereinstimmen, wird eine Fehlermeldung F
erzeugt oder ein entsprechendes Fehler-Flag gesetzt. Wenn
die Paritätsworte übereinstimmen, wird das ausgelesene Da
tenwort auf den Datenbus 20 übertragen. Die hier beschrie
bene Ausführungsform zur spaltenorientierten Fehlerprüfung
im ganzen RAM wird sinnvollerweise nicht bei jedem Schreib-
oder Lesevorgang, sondern mit bestimmten Zeitabständen vor
genommen, wobei die Zeitabstände durch die verwendete Soft
ware vorgegeben sein können. Die Entscheidung, ob diese
Fehlerprüfung erfolgt oder nicht, wird bevorzugt durch die
verwendete Software vorgenommen.
Das 2 Bit Paritätswort des 32 Bit Paritätswortes kann in
gleicher Weise zur Fehlerüberprüfung verwendet werden, wie
es anhand der Fig. 2 bis 4 für die 2 Bit Paritätsworte
der Datenwörter beschrieben wurde.
Anstelle der spaltenorientierten Parität kann auch eine
spaltenorientierte CRC (Cyclic Redundancy Check)-Summe ge
bildet und zur Fehlerprüfung verwendet werden. Auch hierbei
wird vor dem Schreiben und/oder Lesen eines Wortes zu
nächst der Inhalt sämtlicher Datenwort-Register 10i sowie
des Prüfbit-Registers 12 ausgelesen und erneut das CRC-Wort
ermittelt. Wenn dieses CRC-Wort nicht mit dem gespeicherten
CRC-Wort übereinstimmt, wird eine Fehlermeldung F erzeugt
oder ein entsprechendes Fehler-Flag gesetzt. Wenn beide
CRC-Worte übereinstimmen, wird der Schreib- oder Lesevor
gang in der oben für die spaltenorientierte Paritätswort-
Erzeugung beschriebenen Weise abgeschlossen.
Mit der spaltenorientierten Parität sowie einem zyklisch
ablaufenden Paritäts-Test bzw. der CRC-Prüfsumme und einer
zyklischen CRC-Berechnung lassen sich auch Fehler im
Adress-Decoder sowie Doppel-Bitfehler und weitere Fehler
ermitteln. Die Tests bzw. Berechnungen werden vorzugsweise
durch eine entsprechende Software durchgeführt.
Claims (12)
1. Verfahren zum Speichern von Datenworten in einem RAM
Modul, gekennzeichnet durch folgende Verfahrens
schritte:
Erzeugen eines Prüfbit-Wortes aus mindestens einem Datenwort beim Schreiben des mindestens einen Daten wortes in das RAM Modul,
Speichern des Prüfbit-Wortes,
Auslesen des Prüfbit-Wortes beim Auslesen des minde stens einen Datenwortes aus dem RAM Modul,
Erneutes Erzeugen des Prüfbit-Wortes aus dem minde stens einen ausgelesenen Datenwort,
Vergleichen des ausgelesenen Prüfbit-Wortes mit dem erneut erzeugten Prüfbit-Wort und Erzeugen einer Feh lermeldung, wenn diese nicht übereinstimmen.
Erzeugen eines Prüfbit-Wortes aus mindestens einem Datenwort beim Schreiben des mindestens einen Daten wortes in das RAM Modul,
Speichern des Prüfbit-Wortes,
Auslesen des Prüfbit-Wortes beim Auslesen des minde stens einen Datenwortes aus dem RAM Modul,
Erneutes Erzeugen des Prüfbit-Wortes aus dem minde stens einen ausgelesenen Datenwort,
Vergleichen des ausgelesenen Prüfbit-Wortes mit dem erneut erzeugten Prüfbit-Wort und Erzeugen einer Feh lermeldung, wenn diese nicht übereinstimmen.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet,
dass das Prüfbit-Wort durch Ermittlung von Paritäts
bits gebildet wird.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet,
dass aus jedem Datenwort ein 2 Bit Paritätswort ge
bildet wird, wobei aus jedem Daten-Halbwort jeweils
ein Paritätsbit ermittelt wird.
4. Verfahren nach Anspruch 1 oder 2, dadurch gekenn
zeichnet, dass aus einer Anzahl von Datenworten ein
Paritätswort erzeugt wird, dessen Paritätsbits je
weils aus gleichen Stellen aller Datenworte ermittelt
werden.
5. Verfahren nach Anspruch 1, dadurch gekennzeichnet,
dass die Prüfbit-Worte durch Berechnung von CRC-
Worten gebildet werden.
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet,
dass jeweils eine Anzahl von Datenworten zu einem
Speicherwort zusammengefasst wird und daraus ein zu
geordnetes CRC-Wort berechnet wird.
7. Schaltungsanordnung zum Speichern von Datenworten in
einem RAM Modul, gekennzeichnet durch:
eine erste Schaltungseinheit (21) zur Erzeugung eines Prüfbit-Wortes aus mindestens einem Datenwort beim Schreiben und Lesen des mindestens einen Datenwortes,
eine Anzahl von Registern (11i, 61i) zur zugeordneten Speicherung von Prüfbit-Worten für die Datenworte,
sowie eine zweite Schaltungseinheit (22), mit der beim Lesen von Datenworten das zugeordnete Prüfbit- Wort mit dem durch die erste Schaltungseinheit (21) erneut erzeugten Prüfbit-Wort verglichen wird, sowie zur Erzeugung einer Fehlermeldung (F), wenn die Prüf bit-Worte nicht übereinstimmen.
eine erste Schaltungseinheit (21) zur Erzeugung eines Prüfbit-Wortes aus mindestens einem Datenwort beim Schreiben und Lesen des mindestens einen Datenwortes,
eine Anzahl von Registern (11i, 61i) zur zugeordneten Speicherung von Prüfbit-Worten für die Datenworte,
sowie eine zweite Schaltungseinheit (22), mit der beim Lesen von Datenworten das zugeordnete Prüfbit- Wort mit dem durch die erste Schaltungseinheit (21) erneut erzeugten Prüfbit-Wort verglichen wird, sowie zur Erzeugung einer Fehlermeldung (F), wenn die Prüf bit-Worte nicht übereinstimmen.
8. Schaltungsanordnung nach Anspruch 7, dadurch gekenn
zeichnet, dass die Anzahl von Registern durch erste 2
Bit Paritätsregister (11i) gebildet ist, wobei jedem
Datenwort ein 2 Bit Paritätsregister zugeordnet ist.
9. Schaltungsanordnung nach Anspruch 7, dadurch gekenn
zeichnet, dass die Anzahl von Registern durch CRC-
Register (61i) gebildet ist, wobei jeweils vier Da
tenworten ein CRC-Register zugeordnet ist.
10. Schaltungsanordnung nach Anspruch 9, gekennzeichnet
durch einen Multiplexer (71) zur Speicherung von je
weils vier Datenworten als ein Speicherwort, sowie
eine CRC-Recheneinheit (73) zur Berechnung des CRC-
Wortes aus einem Speicherwort sowie zur Speicherung
des CRC-Wortes in einem zugeordneten CRC-Register
(61i, 74).
11. Schaltungsanordnung nach Anspruch 10, dadurch gekenn
zeichnet, dass die Datenworte 32 Bit Worte und die
CRC-Worte 9 Bit Worte sind.
12. Schaltungsanordnung nach einem der Ansprüche 7 bis
11, gekennzeichnet durch ein zweites Register (12)
zur Speicherung eines Prüfbit-Wortes, dessen Bits je
weils aus gleichen Stellen aller Datenworte ermittelt
werden, sowie ein drittes Register (13) zur Speiche
rung eines Prüfbit-Wortes, das aus dem Inhalt des
zweiten Registers (12) ermittelt wird.
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10018722A DE10018722A1 (de) | 1999-09-22 | 2000-04-15 | Verfahren und Schaltungsanordnung zum Speichern von Datenworten in einem RAM Modul |
DE50016020T DE50016020D1 (de) | 1999-09-22 | 2000-08-29 | Verfahren und schaltungsanordnung zum speichern von datenworten in einem ram modul |
US10/088,957 US6901552B1 (en) | 1999-09-22 | 2000-08-29 | System for storing data words in a RAM module |
EP00956493A EP1222545B1 (de) | 1999-09-22 | 2000-08-29 | Verfahren und schaltungsanordnung zum speichern von datenworten in einem ram modul |
JP2001525526A JP2004500623A (ja) | 1999-09-22 | 2000-08-29 | Ramモジュールにデータ語を記憶する方法と回路装置 |
PCT/EP2000/008398 WO2001022225A1 (de) | 1999-09-22 | 2000-08-29 | Verfahren und schaltungsanordnung zum speichern von datenworten in einem ram modul |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19945494 | 1999-09-22 | ||
DE10018722A DE10018722A1 (de) | 1999-09-22 | 2000-04-15 | Verfahren und Schaltungsanordnung zum Speichern von Datenworten in einem RAM Modul |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10018722A1 true DE10018722A1 (de) | 2001-03-29 |
Family
ID=7922955
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10018722A Ceased DE10018722A1 (de) | 1999-09-22 | 2000-04-15 | Verfahren und Schaltungsanordnung zum Speichern von Datenworten in einem RAM Modul |
DE50016020T Expired - Lifetime DE50016020D1 (de) | 1999-09-22 | 2000-08-29 | Verfahren und schaltungsanordnung zum speichern von datenworten in einem ram modul |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE50016020T Expired - Lifetime DE50016020D1 (de) | 1999-09-22 | 2000-08-29 | Verfahren und schaltungsanordnung zum speichern von datenworten in einem ram modul |
Country Status (1)
Country | Link |
---|---|
DE (2) | DE10018722A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003025936A2 (de) * | 2001-09-13 | 2003-03-27 | Continental Teves Ag & Co. Ohg | Verfahren zur erkennung von speicherfehlern in elektronischen bremssystemen, rechnersystem und dessen verwendung |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4384353A (en) * | 1981-02-19 | 1983-05-17 | Fairchild Camera And Instrument Corp. | Method and means for internal error check in a digital memory |
DE68926410T2 (de) * | 1988-06-24 | 1996-09-12 | Nippon Electric Co | Mit einer Paritätsteuerungseinheit auf demselben Chip bestückter Mikroprozessor |
-
2000
- 2000-04-15 DE DE10018722A patent/DE10018722A1/de not_active Ceased
- 2000-08-29 DE DE50016020T patent/DE50016020D1/de not_active Expired - Lifetime
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4384353A (en) * | 1981-02-19 | 1983-05-17 | Fairchild Camera And Instrument Corp. | Method and means for internal error check in a digital memory |
DE68926410T2 (de) * | 1988-06-24 | 1996-09-12 | Nippon Electric Co | Mit einer Paritätsteuerungseinheit auf demselben Chip bestückter Mikroprozessor |
Non-Patent Citations (2)
Title |
---|
HÖLSCHER,H., RADER,J.: Mikrocomputer in der Sicherheitstechnik, Verlag TÜV Rheinland, 1984, ISBN 3-88585-180-6 * |
Vertical Parity Correction. In: IBM Technical Disclosure Bulletin, Vol.33, No.6A, Nov. 1990, S.85-87 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003025936A2 (de) * | 2001-09-13 | 2003-03-27 | Continental Teves Ag & Co. Ohg | Verfahren zur erkennung von speicherfehlern in elektronischen bremssystemen, rechnersystem und dessen verwendung |
WO2003025936A3 (de) * | 2001-09-13 | 2004-03-11 | Continental Teves Ag & Co Ohg | Verfahren zur erkennung von speicherfehlern in elektronischen bremssystemen, rechnersystem und dessen verwendung |
Also Published As
Publication number | Publication date |
---|---|
DE50016020D1 (de) | 2010-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3789929T2 (de) | Verfahren und Gerät zur Fehlerkorrektur in einem aus parallelem Prozessor bestehenden Datenverarbeitungssystem. | |
DE2328869C2 (de) | Verfahren und Schaltungsanordnung zum Betreiben eines digitalen Speichersystems | |
DE4242810C2 (de) | EEPROM mit einem Fehlerprüf- und Korrektur-Schaltkreis | |
DE2916710C2 (de) | ||
DE69126057T2 (de) | Ein Informationsverarbeitungsgerät mit einer Fehlerprüf- und Korrekturschaltung | |
DE2619159A1 (de) | Fehlererkennungs- und korrektureinrichtung | |
DE3111447C2 (de) | ||
DE3209679C2 (de) | ||
DE19741174A1 (de) | Speichertestgerät | |
DE2357168C2 (de) | Schaltungsanordnung für einen Speichermodul | |
DE4006285C2 (de) | ||
DE3618136C2 (de) | ||
DE2456709C2 (de) | Schaltungsanordnung zur Fehlererkennung und -korrektur | |
DE2400064A1 (de) | Speicherpruefanordnung und diese verwendendes endgeraetsystem in einem datenverarbeitungssystem | |
EP1222545B1 (de) | Verfahren und schaltungsanordnung zum speichern von datenworten in einem ram modul | |
DE69022402T2 (de) | System zur integrität der speicherdaten. | |
DE2554502C3 (de) | Verfahren und Anordnung zum Adressieren eines Speichers | |
EP0615211B1 (de) | Verfahren zum Speichern sicherheitsrelevanter Daten | |
DE3814875A1 (de) | Logische verknuepfungseinrichtung und logisches verknuepfungsverfahren | |
DE69619373T2 (de) | Verfahren und gerät um fehlercodes wirksam zu speichern | |
DE3319710A1 (de) | Speichersteueranordnung, insbesondere fuer ein fehlertolerantes fernsprech-vermittlungssystem | |
DE10062404A1 (de) | Vorrichtung und Verfahren zum Reduzieren der Anzahl von Adressen fehlerhafter Speicherzellen | |
DE10018722A1 (de) | Verfahren und Schaltungsanordnung zum Speichern von Datenworten in einem RAM Modul | |
DE3433679C2 (de) | ||
EP0036148B1 (de) | Hybrid-Assoziativspeicher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OM8 | Search report available as to paragraph 43 lit. 1 sentence 1 patent law | ||
8110 | Request for examination paragraph 44 | ||
R002 | Refusal decision in examination/registration proceedings | ||
R003 | Refusal decision now final |
Effective date: 20140304 |