DE19532144C2 - Testverfahren für in einem Speicher als Bitmuster hinterlegte Informationen - Google Patents
Testverfahren für in einem Speicher als Bitmuster hinterlegte InformationenInfo
- Publication number
- DE19532144C2 DE19532144C2 DE1995132144 DE19532144A DE19532144C2 DE 19532144 C2 DE19532144 C2 DE 19532144C2 DE 1995132144 DE1995132144 DE 1995132144 DE 19532144 A DE19532144 A DE 19532144A DE 19532144 C2 DE19532144 C2 DE 19532144C2
- Authority
- DE
- Germany
- Prior art keywords
- memory
- bit
- stored
- checksum
- actual
- 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
- 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
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Detection And Correction Of Errors (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
Die vorliegende Erfindung betrifft ein Testverfahren für in
einem Speicher als Bitmuster hinterlegte Informationen, z. B.
Programmcode, wobei der Speicher eine Anzahl von aufeinander
folgenden Speicherplätzen aufweist und jeder Speicherplatz
aus einer Anzahl von Bits besteht.
Bei Rechnern aller Art kann es geschehen, daß der im Pro
grammspeicher stehende Code aufgrund äußerer Einwirkungen
fehlerhaft wird oder aufgrund einer Fehlfunktion des Rechners
fehlerhaft ausgelesen wird. Besonders kritisch ist eine der
artige Fehlfunktion bei Automatisierungsgeräten, weil durch
Automatisierungsgeräte technische Prozesse gesteuert werden,
z. B. Förderbänder, Aufzüge, Pressen oder Gasbrenner.
Im Stand der Technik sind verschiedene Testverfahren für Pro
grammcode bekannt. Sie sind jedoch entweder sehr aufwendig
oder vergleichsweise unzuverlässig. Aus der Zeitschrift "In
formationstechnik", Band 30, 1988, Heft 4, Seiten 291 bis
299, sind verschiedene Testverfahren für Programmcode be
kannt, z. B. die Prüfsummenbildung und die Bildung von Signa
turen. Letztere wird oftmals auch als zyklischer Redundanz
check (CRC) bezeichnet. Die für die beschriebenen Testverfah
ren genannten Gesamtgüten sind in der Praxis jedoch nicht er
reichbar. Tatsächlich ergeben sich nur Gesamtgüten in der
Größenordnung von ca. 95%. Mit den beschriebenen Testverfah
ren läßt sich demnach mit der heute geforderten Sicherheit
nicht feststellen, ob in einem Speicher hinterlegte Informa
tionen fehlerhaft sind bzw. fehlerhaft gelesen werden.
Die Aufgabe der vorliegenden Erfindung besteht darin, ein
Testverfahren anzugeben, mit dem mit hoher Fehlerauf
deckungswahrscheinlichkeit schnell, einfach und sicher fest
gestellt werden kann, ob in einem Speicher hinterlegte Infor
mationen fehlerhaft sind bzw. fehlerhaft ausgelesen werden.
Die Aufgabe wird durch ein Testverfahren mit folgenden
Schritten gelöst:
- - die in den Speicherplätzen abgespeicherten Bitmuster werden aus den Speicherplätzen ausgelesen und aufaddiert und so eine Ist-Prüfsumme gebildet;
- - über die in den Speicherplätzen abgespeicherten Bitmuster wird durch Verknüpfung mit dem Signaturwert und 1-Bit- Schiebeoperation des Verknüpfungsergebnisses und Verknüp fung einzelner Bitstellen mit dem höchstwertigen Signatur bit eine Ist-Parallelsignatur gebildet; und
- - die im Speicher hinterlegten Informationen werden nur dann als fehlerfrei behandelt, wenn sowohl die Ist-Prüfsumme mit einer vorab ermittelten, im Speicher hinterlegten Soll-Prüfsumme als auch die Ist-Parallelsignatur mit einer vorab ermittelten, ebenfalls im Speicher hinterlegten Soll-Paral lelsignatur übereinstimmt.
Erfindungsgemäß wird also nicht ein einziges Testverfahren
angewendet, sondern es werden zwei Testverfahren angewendet,
nämlich einerseits die Prüfsummenbildung und andererseits die
Signaturbildung. Überraschender Weise hat sich nämlich her
ausgestellt, daß Fehler, welche von der Prüfsummenbildung
nicht erfaßt werden, von der Signaturbildung erfaßt werden
und umgekehrt. Die Kombination beider Verfahren ist also ex
trem zuverlässig. In Versuchen wurde festgestellt, daß alle
Zweibitfehler, alle Dreibitfehler und über 99,99% aller Vier
bitfehler sicher detektiert wurden.
Die Wahrscheinlichkeit, einen Fehler zu entdecken, wird noch
weiter erhöht, wenn die Ist-Prüfsumme in einer Recheneinheit
gebildet wird, die - verglichen mit den Speicherplätzen - die
doppelte Anzahl von Bits aufweist.
Weitere Einzelheiten ergeben sich aus dem nachfolgend be
schriebenen Ausführungsbeispiel. Dabei zeigen:
Fig. 1 ein Automatisierungsgerät,
Fig. 2 den Speicheraufbau,
Fig. 3 die Prüfsummenbildung und
Fig. 4 die Signaturbildung.
Fig. 1 zeigt zunächst eine speicherprogrammierbare Steuerung 1
als Beispiel eines Rechners. Die speicherprogrammierbare
Steuerung 1 weist einen Mikroprozessor 2 auf, der ein Anwen
derprogramm abarbeitet, welches im Remanentspeicher 3 abge
speichert ist. Bei der Abarbeitung des Anwenderprogramms
greift der Prozessor 2 über den Controller 4 auf die Schnitt
stelle 5 zu. Dies ist erforderlich, um von dem technischen
Prozeß 6 Prozeßsignale einzulesen bzw. Stellbefehle an den
technischen Prozeß auszugeben.
Die eingelesenen Prozeßsignale bzw. die auszugebenden Stell
befehle sowie gegebenenfalls weitere Daten sind im Schreib-
Lese-Speicher 7 zwischengespeichert. Der Prozessor 2, der Re
manentspeicher 3, der Controller 4 sowie der Schreib-Lese-
Speicher 7 sind über den Bus 8 miteinander verbunden.
Gemäß Fig. 2 besteht der Remanentspeicher 3 aus einer Anzahl
von aufeinanderfolgenden Speicherplätzen 9. Im vorliegenden
Fall besteht jeder Speicherplatz aus 8 Bits 10, ist also ein
Byte lang. Die Speicherplätze 9 könnten aber auch eine andere
Anzahl von Bits aufweisen, z. B. 16 oder 32 Bit.
Die Speicherplätze 11, 11′ und 12 gehören zwar organisatorisch
zum Remanentspeicher 3, enthalten aber im Gegensatz zu den
Speicherplätzen 9 keinen Programmcode. In den Speicherplätzen
11 und 11′ sind das obere und das untere Byte eines Wortes
(= 2 Byte) hinterlegt. Dieses Wort stellt die Soll-Prüfsumme
der Speicherplätze 9 dar. Ebenso ist im Speicherplatz 12 die
Soll-Parallelsignatur der Speicherplätze 9 hinterlegt. Sowohl
die Soll-Prüfsumme als auch die Soll-Parallelsignatur wurden
vorab - z. B. unmittelbar nach der Programmerstellung - ermit
telt und beim Abspeichern des Programms in die Speicherplätze
9 in den Speicherplätzen 11, 11′ und 12 hinterlegt.
Fig. 3 zeigt nun die Bildung der Ist-Prüfsumme. Zunächst wird
die Recheneinheit 13 bzw. das Register 13 des Mikroprozessors 2
gelöscht, also alle 16 Bits auf Null gesetzt. Sodann
werden nacheinander die Speicherplätze 9 des Speichers 3 aus
gelesen und dem 16-Bit-Addierer 14 zugeführt. Der Addierer 14
addiert das jeweilige Byte des betreffenden Speicherplatzes 9
zu dem im Register 13 abgespeicherten Wert hinzu und spei
chert das Ergebnis wieder im Register 13 ab. Nachdem alle
Speicherplätze 9 einmal ausgelesen und zu dem im Register 13
abgespeicherten Wert addiert wurden, steht im Register 13 die
Ist-Prüfsumme zur Verfügung, welche mit der in den Speicher
plätzen 11 und 11′ hinterlegten Soll-Prüfsumme verglichen
werden kann.
Gleichzeitig mit dem Zuführen des Inhalts des Speicherplatzes
9 zum Addierer 14 wird, wie in Fig. 4 dargestellt, der Inhalt
des Speicherplatzes 9 auch dem 8-Bit-Hilfsregister 15 zuge
führt. Der Inhalt des Hilfsregisters 15 wird dann bitweise
den 1-Bit-Addierern 16 zugeführt, denen als zweites Eingangs
signal der Ausgang der Und-Gatter 17 zugeführt wird. Das
Additionsergebnis wird dann in den Einbit-Speichern 18 zwi
schengespeichert und an den jeweils nachfolgenden Addierer 16
weitergeleitet. Das Ausgangssignal des letzten Einbit-Spei
chers 18 wird auf die Und-Gatter 17 zurückgeführt. Den
Und-Gattern 17 wird als zweites Signal jeweils der Inhalt eines
Einbit-Registers 19 zugeführt. Die Gesamtheit der Inhalte der
Einbit-Register 19 wird als das sogenannte generische Polynom
bezeichnet. Nach dem Durchführen der jeweiligen Addier- und
Schiebebefehle steht dann in den Einbit-Speichern 18 die
Ist-Parallelsignatur zur Verfügung. Diese Parallelsignatur kann
mit der im Speicherplatz 12 hinterlegten Soll-Parallelsigna
tur verglichen werden.
Erfindungsgemäß werden die im Festwertspeicher 3 hinterlegten
Informationen nur dann als fehlerfrei behandelt, wenn sowohl
die Ist-Prüfsumme mit der Soll-Prüfsumme übereinstimmt als
auch die Ist-Parallelsignatur mit der Soll-Parallelsignatur
übereinstimmt. Anders ausgedrückt: Der Inhalt des Registers 13
muß gleich dem Inhalt der Speicherplätze 11 und 11′ sein,
der Inhalt der Einbit-Register 18 muß gleich dem des Spei
cherplatzes 12 sein.
Claims (2)
1. Testverfahren für in einem Speicher (3) als Bitmuster hin
terlegte Informationen, z. B. Programmcode, wobei der Spei
cher (3) eine Anzahl von aufeinanderfolgenden Speicher
plätzen (9) aufweist und jeder Speicherplatz (9) aus einer
Anzahl von Bits (10) besteht, mit folgenden Schritten:
- - die in den Speicherplätzen (9) abgespeicherten Bitmuster werden aus den Speicherplätzen (9) ausgelesen und aufad diert und so eine Ist-Prüfsumme gebildet;
- - über die in den Speicherplätzen (9) abgespeicherten Bit muster wird durch Verknüpfung mit dem Signaturwert und 1-Bit-Schiebeoperation des Verknüpfungsergebnisses und Verknüpfung einzelner Bitstellen mit dem höchstwertigen Signaturbit eine Ist-Parallelsignatur gebildet; und
- - die im Speicher (3) hinterlegten Informationen werden nur dann als fehlerfrei behandelt, wenn sowohl die Ist-Prüfsumme mit einer vorab ermittelten, im Speicher (3) hinterlegten Soll-Prüfsumme als auch die Ist-Parallelsignatur mit einer vorab ermittelten, ebenfalls im Speicher (3) hinterlegten Soll-Parallelsignatur über einstimmt.
2. Testverfahren nach Anspruch 1, dadurch gekenn
zeichnet, daß die Ist-Prüfsumme in einer Rechen
einheit (13) gebildet wird, die - verglichen mit den Spei
cherplätzen (9) - die doppelte Anzahl von Bits aufweist.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE1995132144 DE19532144C2 (de) | 1995-08-31 | 1995-08-31 | Testverfahren für in einem Speicher als Bitmuster hinterlegte Informationen |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE1995132144 DE19532144C2 (de) | 1995-08-31 | 1995-08-31 | Testverfahren für in einem Speicher als Bitmuster hinterlegte Informationen |
Publications (2)
Publication Number | Publication Date |
---|---|
DE19532144A1 DE19532144A1 (de) | 1997-03-06 |
DE19532144C2 true DE19532144C2 (de) | 1998-01-15 |
Family
ID=7770914
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE1995132144 Expired - Fee Related DE19532144C2 (de) | 1995-08-31 | 1995-08-31 | Testverfahren für in einem Speicher als Bitmuster hinterlegte Informationen |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE19532144C2 (de) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19802728A1 (de) * | 1998-01-24 | 1999-07-29 | Heidenhain Gmbh Dr Johannes | Verfahren und Schaltungsanordnung zur Überwachung von Maschinenparametern |
DE10113317A1 (de) * | 2001-03-20 | 2002-09-26 | Conti Temic Microelectronic | Verfahren zum Betrieb eines von einem Prozessor gesteuerten Systems |
DE10340236A1 (de) * | 2003-08-29 | 2005-04-07 | Infineon Technologies Ag | Anordnung mit einer Datenverarbeitungseinrichtung und einem Speicher |
-
1995
- 1995-08-31 DE DE1995132144 patent/DE19532144C2/de not_active Expired - Fee Related
Non-Patent Citations (2)
Title |
---|
BÄHRING, Helmut: Zur Fehlerüberdeckung von Prüfsummenverfahren, in: Informationstechnik it 30 (1988) 4, S. 291-299 * |
HÖLSCHER, H. und RADER, J.: Mikrocomputer in der Sicherheitstechnik, Verlag TÜV Rheinland, 1984, S. 7-35 bis 7-38 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19802728A1 (de) * | 1998-01-24 | 1999-07-29 | Heidenhain Gmbh Dr Johannes | Verfahren und Schaltungsanordnung zur Überwachung von Maschinenparametern |
DE10113317A1 (de) * | 2001-03-20 | 2002-09-26 | Conti Temic Microelectronic | Verfahren zum Betrieb eines von einem Prozessor gesteuerten Systems |
DE10340236A1 (de) * | 2003-08-29 | 2005-04-07 | Infineon Technologies Ag | Anordnung mit einer Datenverarbeitungseinrichtung und einem Speicher |
DE10340236B4 (de) * | 2003-08-29 | 2006-06-01 | Infineon Technologies Ag | Anordnung mit einer Datenverarbeitungseinrichtung und einem Speicher |
Also Published As
Publication number | Publication date |
---|---|
DE19532144A1 (de) | 1997-03-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69325774T2 (de) | Programmierbare Externspeichersteuerungseinrichtung | |
DE69230773T2 (de) | Datenverarbeitungseinrichtung mit fortschreitend programmierbarem nichtflüchtigen Speicher und Verfahren dazu | |
DE4114410A1 (de) | Halbleiterbauelement mit nichtfluechtigem speicher | |
DE2524046A1 (de) | Elektronische datenverarbeitungsanlage | |
DE102005016050A1 (de) | Speicherfehlererkennungsvorrichtung und Verfahren zum Erkennen eines Speicherfehlers | |
DE2225841B2 (de) | Verfahren und Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers | |
DE102006005817B4 (de) | Fehlererkennungsvorrichtung für einen Adressdecoder und Vorrichtung zur Fehlererkennung für einen Adressdecoder | |
EP1246033A1 (de) | Verfahren zur Überwachung konsistenter Speicherinhalte in redundanten Systemen | |
EP3798772B1 (de) | Industrie-prozesssteuerung | |
DE2513262A1 (de) | Digitale codeumwandlungsanordnung | |
EP1913478B1 (de) | Mikroprozessorsystem zur steuerung bzw. regelung von zumindest zum teil sicherheitskritischen prozessen | |
DE19532144C2 (de) | Testverfahren für in einem Speicher als Bitmuster hinterlegte Informationen | |
DE102006012042A1 (de) | Steuervorrichtung zur fehlersicheren Steuerung einer Maschine | |
DE68926597T2 (de) | Mikrorechner | |
EP1444700B1 (de) | Speichertest | |
DE2549392B2 (de) | Verfahren zur erhoehung der zuverlaessigkeit von integrierten speicherbausteinen und zur verbesserung der ausbeute von nach aussen hin fehlerfrei erscheinenden speicherbausteinen bei ihrer herstellung | |
DE102005060901A1 (de) | Verfahren zur Erkennung einer Versorgungsunterbrechung in einem Datenspeicher und zur Wiederherstellung des Datenspeichers | |
EP0353660B1 (de) | Verfahren zur Fehlersicherung in Speichersystemen von Datenverarbeitungsanlagen, insbesondere Fernsprechvermittlungsanlagen | |
DE102005016051B4 (de) | Speicherüberprüfungsvorrichtung und Verfahren zum Überprüfen eines Speichers | |
EP0013885B1 (de) | Verfahren zur Vermeidung von unerwünschten Paritätsfehlersignalen bei der Paritätprüfung eines Registerfeldes und Paritätsprüfeinrichtung zur Durchführung des Verfahrens | |
DE4335604A1 (de) | Speicher-Prüfschaltung | |
DE2457275C3 (de) | Anordnung zum Überwachen der Adressierung eines Mikroprogramm-Speichers | |
DE4223398C2 (de) | Verfahren und Vorrichtung zur Programmierung von nichtflüchtigen Speichern | |
DE3433679A1 (de) | Verfahren und anordnung zur sicherung von wichtigen informationen in speichereinheiten mit wahlweisem zugriff, insbesondere von steuerbits in als cache-speicher arbeitenden pufferspeichern einer datenverarbeitungsanlage | |
DE3431770A1 (de) | Verfahren und anordnung zur sicherung von wichtigen informationen in speichereinheiten mit wahlweisem zugriff, insbesondere solchen aus ram-bausteinen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |