DE3942150A1 - Verfahren und schaltungsanordnung zur datensicherung in speichereinheiten - Google Patents

Verfahren und schaltungsanordnung zur datensicherung in speichereinheiten

Info

Publication number
DE3942150A1
DE3942150A1 DE19893942150 DE3942150A DE3942150A1 DE 3942150 A1 DE3942150 A1 DE 3942150A1 DE 19893942150 DE19893942150 DE 19893942150 DE 3942150 A DE3942150 A DE 3942150A DE 3942150 A1 DE3942150 A1 DE 3942150A1
Authority
DE
Germany
Prior art keywords
data
section
column vectors
chkd
chks
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.)
Granted
Application number
DE19893942150
Other languages
English (en)
Other versions
DE3942150C2 (de
Inventor
Albrecht Dipl Ing Baur
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.)
Wincor Nixdorf International GmbH
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Priority to DE19893942150 priority Critical patent/DE3942150C2/de
Publication of DE3942150A1 publication Critical patent/DE3942150A1/de
Application granted granted Critical
Publication of DE3942150C2 publication Critical patent/DE3942150C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding 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/1048Adding 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/1056Updating check bits on partial write, i.e. read/modify/write

Description

Die Erfindung betrifft ein Verfahren und eine Schaltungsanord­ nung zur Datensicherung in Speichereinheiten gemäß dem Oberbe­ griff des Patentanspruches 1 bzw. des Patentanspruches 4.
Einträge in Speichern bestehen häufig aus mehreren Abschnitten, die gleichzeitig mit einer Adresse ansteuerbar sind, und von denen jeweils ein Abschnitt ausgewählt wird, um die darin ent­ haltenen Daten gegebenenfalls gegen neue auszutauschen. Um der­ artige Einträge zu sichern, bestehen die beiden Möglichkeiten, entweder den einzelnen Abschnitten ein individuelles Siche­ rungszeichen oder dem ganzen Eintrag ein gemeinsames Siche­ rungszeichen zuzuordnen. Für die Bildung des Sicherungszeichens ist im ersten Fall jeweils nur der zugehörige Abschnitt heran­ zuziehen, jedoch führt bei einer Vielzahl von Abschnitten bzw. Einträgen eine hohe Anzahl von parallel zu den zu sichernden Datenbits eines Eintrags gespeicherten Prüfbits zu einem be­ trächtlichen Speicheraufwand.
Bei Vorhandensein eines gemeinsamen Sicherungszeichens pro Ein­ trag sind alle Abschnitte des Eintrags für die Neugenerierung der Prüfbits zu berücksichtigen. In der US-Patentschrift 40 92 732 ist dieses Prinzip angewandt worden, um einen Prüf­ summenabschnitt aus den einzelnen Abschnitten eines Aufzeich­ nungssystems zu erzeugen. Dabei werden die einander entspre­ chenden Datenbitstellen aller Abschnitte jeweils durch ein Pa­ ritätsbit ergänzt und die einzelnen Paritätsbits dann in dem Prüfsummenabschnitt zusammengefaßt gespeichert. Die Anzahl der Prüfbits entspricht daher der Anzahl der Datenbits pro Ab­ schnitt, und bei Änderung des Inhalts eines Aufzeichnungsab­ schnitts müssen alle zu demselben Prüfsummenabschnitt gehöri­ gen Aufzeichnungsabschnitte gelesen und daraus der neue Prüf­ summenabschnitt ermittelt werden.
Eine Verbesserung dieses aufwendigen Verfahrens ist in "IBM Technical Disclosure Bulletin", Vol. 24, No. 2, July 1981, pa­ ges 986 bis 987 beschrieben. Danach werden die in einem Ab­ schnitt enthaltenen Daten kopiert, bevor sie geändert werden sollen. Diese Kopie wird anschließend mit den neuen Daten für diesen Abschnitt in Beziehung gesetzt, wobei durch eine EXKLU- SlV-ODER-Verknüpfung beider Daten eine Änderungsmaske gebildet wird. Der neue Prüfsummenabschnitt mit dem Prüfcode ergibt sich dann aus der EXKLUSIV-ODER-Verknüpfung der ermittelten Ände­ rungsmaske mit den alten Prüfsummenbits. Hierbei handelt es sich um eine einfache Paritätssicherung, mit der jedoch nur einfache Fehler erkannt werden können.
Bei dem häufig angewandten Sicherungsverfahren mit 2-Bit-Feh­ lererkennung und 1-Bit-Fehlerkorrektur besteht der gemeinsame Prüfteil für einen Eintrag aus n+1 Prüfstellen zur Sicherung von 2n-n-1 Datenbitstellen, so daß die Anzahl der pro Datenab­ schnitt vorhandenen Datenbitstellen mit der der gemeinsamen Prüfbitstellen nicht übereinstimmt - man siehe "Prüfbare und korrigierbare Codes", W. Wesley Peterson, erschienen 1967 im R. Oldenbourg-Verlag, München und Wien. Zum Aufbau derartiger Prüfcodes sei auch auf das Kapitel 8 "Nachrichtentechnik", Steinbuch/Rupprecht, Band 2, Seite 154 ff, Springer-Verlag 1982, hingewiesen. Danach sind Prüfcodes Linearcodes, zusammen­ gesetzt aus Codewörtern, die jeweils den Speichereinträgen aus Datenbitstellen und Prüfbitstellen entsprechen. Aus linear un­ abhängigen Codewörtern läßt sich eine sogenannte Kontrollmatrix für einen vorgegebenen Fehlererkennungs- und/oder Fehlerkorrek­ turgrad ableiten.
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, ein Ver­ fahren und eine Anordnung zu schaffen, die bei nur Teile eines Speichereintrags betreffenden Änderungen die Erzeugung des neuen Prüfteils für ein entsprechend einem höheren Fehlererken­ nungs- und/oder-korrekturgrad gewähltes Sicherungsverfahren mit möglichst geringem Aufwand ermöglichen.
Diese Aufgabe wird hinsichtlich des Verfahrens durch die kenn­ zeichnenden Merkmale des Patentanspruches 1 gelöst.
Durch Verwendung eines gemeinsamen Prüfteils für alle Datenab­ schnitte eines Speichereintrags wird der Speicheraufwand gering gehalten. Der angegebene Aufbau der Kontrollmatrix bietet den Vorteil, daß jeder Prüfbitstelle des Prüfteils genau ein Spal­ tenvektor mit nur einer Eins zuordenbar ist, wodurch die Abhän­ gigkeit des Prüfteils von den Datenbitstellen des Datenteils in einfacher und eindeutiger Weise angegeben werden kann. Die Er­ mittlung des Beitrags der zu entnehmenden Daten und des Bei­ trags der neu hinzukommenden Daten erfolgt anhand der zu einem vorgegebenen Abschnitt gehörigen Spaltenvektoren der Kontroll­ matrix, was zu schaltungstechnischen und zeitlichen Einsparun­ gen führt.
Eine Weiterbildung des erfindungsgemäßen Verfahrens, bei dem der Datenteil der einzelnen Speichereinträge jeweils aus einer geraden Anzahl von Abschnitten besteht, und die Daten eines be­ liebigen Abschnitts änderbar sind, betrifft die vorteilhafte Zuordnung der dem Datenteil vorbehaltenen Spaltenvektoren zu einander entsprechenden Datenbitstellen in den aufeinanderfol­ genden Abschnitten. Durch Festlegung eines Bezugsabschnitts ist es möglich, anhand der ihm zugeordneten Spaltenvektoren die Beiträge der zu verdrängenden und der einzuschreibenden Daten immer auf die gleiche Art und Weise zu ermitteln. Dabei werden die mittels der Spaltenvektoren gebildeten Ergebnisse jeweils lediglich einer zyklischen Verschiebung unterzogen, wenn der Austausch der Daten aus einem anderen Abschnitt als dem Be­ zugsabschnitt erfolgt. Somit braucht kein eigenes Netzwerk pro veränderbarem Datenabschnitt eines Speichereintrags für die Bildung des neuen Prüfteils vorhanden zu sein.
Bei einer Weiterbildung dieses Verfahrens ist nur die Verschie­ bung einer Größe notwendig, nämlich die des in einem zuvor ab­ laufenden Verfahrensschritt durch Bündelung der vorliegenden Ergebnisse gebildeten Zwischenergebnisses. Daran anschließend braucht nur noch die Verknüpfung des alten Prüfteils mit dem gebündelten und gegebenenfalls verschobenen Zwischenergebnis durchgeführt zu werden.
Die Merkmale zur Lösung der Aufgabe hinsichtlich der Schal­ tungsanordnung sind im kennzeichnenden Teil des Patentanspru­ ches 4 enthalten. Neben gesonderten Speichermitteln für die bei einem Datenaustausch in einem vorgegebenen Abschnitt zuerst auszulesenden alten Daten, die neu einzutragenden Daten, sowie für den zu lesenden alten Prüfteil ist eine den beiden Spei­ chermitteln für die Daten nachgeschaltete Verknüpfungslogik vorgesehen, die für die Ermittlung der Beiträge beider Daten zum Prüfteil abhängig von den entsprechenden Spaltenvektoren der Kontrollmatrix sorgt. Ein einfacher Aufbau der Verknüp­ fungslogik ist dadurch gewährleistet, daß in der Kontrollmatrix den Prüfbitstellen des Prüfteiles jeweils ein Spaltenvektor mit genau einer Eins zugeordnet ist.
Weiterbildungen der erfindungsgemäßen Schaltungsanordnung be­ ziehen sich auf den Aufbau der Verknüpfungslogik, die entweder aus identisch aufgebauten, parallel arbeitenden Teilschaltungen zur Ermittlung der beiden Beiträge zusammengesetzt ist, oder lediglich eine Teilschaltung aufweist, in der die Beiträge bei­ der Daten nacheinander gebildet werden. Für den zuletzt genann­ ten Fall ist ein vorgeschalteter Auswahlschalter zur Durch­ schaltung der jeweiligen Datensignale, sowie eine Zwischenspei­ chermöglichkeit für den zuerst gebildeten Beitrag notwendig.
Gemäß einer Weiterbildung der Erfindung werden bei einer Anord­ nung für Speichereinheiten mit Einträgen, deren Datenteil aus einer geraden Anzahl von Abschnitten besteht, und bei denen die Daten eines beliebigen Abschnitts änderbar sind, für die Bil­ dung der Beiträge in der Verknüpfungslogik lediglich die einem vorgegebenen Bezugsabschnitt zugeordneten Spaltenvektoren ver­ wendet. Die Berücksichtigung eines Datenaustausches in einem zum Bezugsabschnitt unterschiedlichen Abschnitt erfolgt durch Einrichtungen zum zyklischen Verschieben der bereitgestellten Ergebnisse. Eine Anordnung der Verschiebeeinrichtungen zwischen den beiden EXKLUSIV-ODER-Schaltungen hat den Vorteil, daß der Verschiebevorgang wegen der vorausgehenden Bündelung der Ergeb­ nisse nur einmal durchgeführt werden muß.
Einzelheiten der Erfindung werden anhand eines in der Zeichnung dargestellten Ausführungsbeispiels näher erläutert. Im einzel­ nen zeigen
Fig. 1 ein Blockschaltbild zur Datensicherung für Speicherein­ träge mit einem veränderbaren Datenabschnitt,
Fig. 2 ein Blockschaltbild zur Datensicherung für Speicherein­ träge mit zwei veränderbaren Datenabschnitten,
Fig. 3 eine Kontrollmatrix,
Fig. 4 eine Verknüpfungslogik entsprechend der den einzelnen Da­ tenbitstellen und Prüfbitstellen zugeordneten Spaltenvek­ toren der Kontrollmatrix,
Fig. 5 eine Verschiebeeinrichtung gemäß Fig. 2 und
Fig. 6 Beispiele für die Datensicherung von Speichereinträgen gemäß den Blockschaltbildern in Fig. 1 und Fig. 2.
Das Blockschaltbild gemäß Fig. 1 zeigt einen Speichereintrag, bei dem der Datenteil aus den beiden Abschnitten EA und KONST besteht, von denen der Datenabschnitt EA änderbare Daten ent­ hält, während im Datenabschnitt KONST unveränderbare Daten ge­ speichert werden. Der Abschnitt CHK-GES dient zur Aufnahme des gemeinsamen Prüfteils für die Sicherung des Datenteils. Bei einem Schreibzugriff auf den Datenabschnitt EA werden die da­ rin gespeicherten, zu verdrängenden Daten DA zuerst ausgelesen und von einem nachgeschalteten Register AREG aufgenommen. An­ schließend sind die in einem Register NREG gespeicherten, neuen Daten DN in den betroffenen Datenabschnitt EA einzuschreiben.
Mit den beiden Registern AREG und NREG für die Daten ist eine Verknüpfungslogik GEN verbunden, in der der Beitrag CHKD zum Prüfteil aus den alten Daten DA und der Beitrag CHKS zum Prüf­ teil aus den neuen Daten DN ermittelt werden. Die Verknüpfung der Beiträge CHKD und CHKS beider Daten erfolgt in einer ersten EXKLUSIV-ODER-Schaltung EXOR1, deren Zwischenergebnis MAS einen Eingang der nachgeschalteten EXKLUSIV-ODER-Schaltung EXOR2 bil­ det. Der andere Eingang ist an den Ausgang des Registers CREG angeschlossen, in dem der den alten Datenteil sichernde Prüf­ teil CHKA zwischengespeichert wird, bevor er mit dem Zwischen­ ergebnis MAS zu dem dem neuen Datenteil entsprechenden Prüfteil CHKN verknüpft wird.
Der im Blockschaltbild gemäß Fig. 2 dargestellte Speichereintrag weist gegenüber dem Blockschaltbild aus Fig. 1 zwei Abschnitte EA1 und EA2 für den Datenteil auf, in dem die Daten jeweils eines beliebigen Abschnitts verändert werden können. Bei einem Schreibzugriff veranlaßt ein Steuersignal W, in welchem der beiden Datenabschnitte EA1 und EA2 ein Datenaustausch stattfin­ det. Daher ist dem für die Aufnahme der alten Daten zuständigen Register AREG eine Multiplexeinrichtung MUX vorgeschaltet, die zur Durchschaltung der Datensignale DA1 oder DA2 an die zugehö­ rigen Abschnitte EA1 und EA2 angeschlossen ist. Nach erfolgtem Auslesen der zu verdrängenden Daten und Eintragen in das Regi­ ster AREG werden die neu einzufügenden Daten DN dem Register NREG entnommen und abhängig vom Steuersignal W im ausgewählten Datenabschnitt eingetragen.
Die Verknüpfungslogik GEN bildet aus den bereitgestellten Da­ tensignalen DA1 oder DA2 und DN die Beiträge CHKD und CHKS zum Prüfteil in gleicher Weise wie in der Anordnung gemäß Fig. 1. Auch die Bündelung in der anschließenden EXKLUSIV-ODER-Schal­ tung EXOR1 zum Zwischenergebnis DIF wird analog zum Sicherungs­ verfahren gemäß Fig. 1 durchgeführt, jedoch besteht der Unter­ schied zum Blockschaltbild in Fig. 1 darin, daß das Zwischener­ gebnis DIF einer zwischengeschalteten Verschiebeeinrichtung AE zugeführt wird. Die Einrichtung AE hat die Funktion, das ermit­ telte Zwischenergebnis DIF dann unverändert als Ergebnis DIFS zur EXKLUSIV-ODER-Schaltung EXOR2 durchzuschalten, wenn der Schreibzugriff auf einen vorgegebenen, festgelegten Bezugsab­ schnitt des Datenteils erfolgt. Bei Ersetzen der in einem ande­ ren Abschnitt als dem Bezugsabschnitt gespeicherten alten Daten wird in der Verschiebeeinrichtung AE eine zyklische Verschie­ bung des Zwischenergebnisses DIF abhängig vom Abstand des aus­ gewählten Abschnitts vom Bezugsabschnitt vollzogen.
Beim gewählten Ausführungsbeispiel besteht der Datenteil aus lediglich zwei Datenabschnitten, von denen der Abschnitt EA1 als Bezugsabschnitt festgelegt ist, so daß bei Schreibzugriffen auf den Abschnitt EA2 das ermittelte Zwischenergebnis DIF le­ diglich einer zyklischen Verschiebung um jeweils eine Bitstelle unterzogen wird. Die Verschiebeeinrichtung AE kann gemäß Fig. 5 als Multiplexeinrichtung M ausgebildet sein, wobei abhängig vom Steuersignal W das Zwischenergebnis DIF oder das um jeweils eine Bitstelle verschobene Zwischenergebnis VDIF durchgeschal­ tet und als Ergebnis DIFS zur Weiterverarbeitung bereitgestellt wird.
Auch ist es möglich, zyklische Verschiebeeinrichtungen AE in den Ausgangspfaden der Verknüpfungslogik GEN nach Bildung der Beiträge CHKD und CHKS anzuordnen, jedoch erfordert dies eine zusätzliche, identisch aufgebaute Verschiebeeinrichtung AE. Die anschließenden Verknüpfungen könnten dann wieder in Serie in den EXKLUSIV-ODER-Schaltungen EXOR1 und EXOR2 stattfinden.
Fig. 3 zeigt eine, bei den Anordnungen von Fig. 1 und Fig. 2 ver­ wendbare und beim vorliegenden Ausführungsbeispiel für ein Si­ cherungsverfahren mit 2-Bit-Fehlererkennung und 1-Bit-Fehler­ korrektur ableitbare Kontrollmatrix H, die der Einfachheit hal­ ber auf vier Prüfbitstellen und vier Datenbitstellen, von denen jeweils zwei die Daten eines der Datenabschnitte bilden, be­ schränkt ist. Die jeweils nur eine Eins aufweisenden Spalten­ vektoren PV0...PV3 sind den Prüfbitstellen CH.3...CH.0 des Prüfteiles, und die Spaltenvektoren DV10...DV21 den einzelnen Datenbitstellen DA1.0...DA2.1 des Datenteiles zugeordnet.
Anhand dieser Kontrollmatrix H sollen nachfolgend die beiden möglichen Fälle der Datensicherung gemäß den Blockschaltbildern von Fig. 1 und Fig. 2 erläutert werden. So werden bei einer Ände­ rung der Daten in einem vorgegebenen Abschnitt EA gemäß Fig. 1 sowohl der Beitrag der zu verdrängenden Daten als auch der Bei­ trag der neuen Daten zum Prüfteil des Speichereintrags anhand der den betroffenen Datenbitstellen DA1.0 und DA1.1 zugeordne­ ten Spaltenvektoren DV10 und DV11 ermittelt. Die Umsetzung der Kontrollmatrix H in die Verknüpfungslogik GEN erfolgt daher ge­ mäß Fig. 4 in der Weise, daß für die Prüfbitstelle CH.3 ledig­ lich die der Datenbitstelle DA1.1 zugehörige Datenleitung, für die Prüfbitstelle CH.2 beide, den Datenbitstellen DA1.0 und DA1.1 zugehörigen Datenleitungen usw. zu berücksichtigen sind. Daraus ergibt sich der Aufbau der Teilschaltung TS, in der bei Berücksichtigung beider Datenleitungen jeweils EXOR-Glieder EXOR3 und EXOR4 vorgesehen sind, während bei Berücksichtigung nur einer Datenleitung diese ohne Bündelung direkt zum Ausgang durchgeschaltet wird. Die Verknüpfungslogik GEN weist zwei sol­ che, identisch aufgebaute Teilschaltungen TS auf, von denen die eine Teilschaltung für die Bildung der Ergebnissignale CHKD.0.. CHKD.3 aus den dem vorgegebenen Datenabschnitt zugehörigen Da­ tenbitstellen, z. B. DA1.0 und DA1.1, zuständig ist, während da­ zu in der zweiten Teilschaltung die Ergebnissignale CHKS.0... CHKS.3 aus den zu den neuen Daten gehörigen Datenbitstellen DN.0 und DN.1 in gleicher Weise erzeugt werden.
Der Vorteil eines derartigen Aufbaus liegt in der gleichzeiti­ gen Verfügbarkeit der Ergebnisse zur anschließenden weiteren Verknüpfung in den EXKLUSIV-ODER-Schaltungen. Bei Verwendung lediglich einer Teilschaltung TS müßte ein Auswahlschalter vor­ geschaltet und eine Pufferungsmöglichkeit zur Zwischenspeiche­ rung der jeweils zuerst in ein- und derselben Schaltung erzeug­ ten Beitragssignale vorhanden sein, bevor eine Weiterverarbei­ tung möglich ist.
Für den Fall, daß die Daten jeweils eines beliebigen Abschnit­ tes des Datenteiles, z. B. EA1 oder EA2 gemäß Fig. 2, veränderbar sind, sind die den Datenbitstellen vorbehaltenen Spaltenvekto­ ren der Kontrollmatrix H in Gruppen von jeweils zwei Spalten­ vektoren unterteilt. Dabei wird jeweils ein noch nicht einer Datenbitstelle zugeordneter Spaltenvektor, z. B. DV10 oder DV11, ausgewählt und dann die sich aus der zyklischen Verschiebung des jeweils ausgewählten Spaltenvektors ergebenden Spaltenvek­ toren, z. B. DV20 oder DV21, den einander entsprechenden Daten­ bitstellen im folgenden Abschnitt zugeordnet. Das Vorhandensein zyklisch verschobener Spaltenvektoren für einander entsprechen­ de Datenbitstellen führt dazu, daß die jeweils einem Datenab­ schnitt des Datenteils zugeordneten Zeileneinträge, die die für die Bildung der einzelnen Prüfbitstellen zu berücksichtigenden Datenbitstellen des Datenabschnitts angeben, sich in den an­ deren Datenabschnitten wiederholen. Dadurch genügt an Stelle einer eigenen Verknüpfungslogik für jeden Datenabschnitt eine einfache Verschiebung der mittels der einem vorgegebenen Be­ zugsabschnitt, z. B. EA1 in Fig. 2, zugeordneten Spaltenvektoren, z. B. DV10 und DV11, gebildeten Ergebnisse entsprechend dem Ab­ stand zum festgelegten Bezugsabschnitt, was durch die Einrich­ tungen AE gemäß Fig. 5 erreicht wird.
Zur Verdeutlichung sind in Fig. 6 Beispiele für die Datensiche­ rung von Speichereinträgen angegeben. Zeile 1a zeigt einen Speichereintrag mit nur einem veränderbaren Datenabschnitt, in dem die enthaltene binäre Datenkombination 10 für die alten Da­ ten DA durch die neue Binärkombination 01 für die neuen Daten DN ersetzt werden soll. Der gemeinsame Prüfteil beinhaltet bei­ spielsweise die Prüfbitkombination 0010.
Von der Verknüpfungslogik werden die Beiträge CHKD und CHKS beider Daten zum Prüfteil abhängig von den bereitgestellten Eingangsdaten DA und DN erzeugt, die sich, wie in Zeile 1b ab­ gebildet, entsprechend der Kontrollmatrix von Fig. 3 zu 0111 und 1101 ergeben. Die Zeile 1c beinhaltet das Zwischenergebnis MAS, das durch EXOR-Verknüpfung der in Zeile 1b enthaltenen Binär­ kombinationen die Werte 1010 annimmt, sowie den neuen gemeinsa­ men Prüfteil CHKN, der durch die anschließende EXOR-Verknüpfung des Zwischenergebnisses MAS mit dem alten Prüfteil CHKA die bi­ näre Bitkombination 1000 aufweist. Nach Durchführung eines Schreibzugriffs auf den vorgegebenen, veränderbaren Datenab­ schnitt ergibt sich schließlich der in Zeile 1b dargestellte neue Speichereintrag mit dem dem neuen Datenteil entsprechenden Prüfteil.
Zeile 2a zeigt das Beispiel eines Speichereintrags aus zwei veränderbaren Datenabschnitten mit den binären Datenbitkombina­ tionen 01 und 11 für die alten Daten DA1 und DA2. Die neu ein­ zutragenden Daten DN bestehen aus der Bitkombination 10. Für den Fall, daß die alten Daten DA1 durch die neuen Daten DN er setzt werden, erhalten die Beiträge CHKS bzw. CHKD gemäß Zeile 2b die Werte 0111 bzw. 1101, durch deren EXOR-Verknüpfung das in Zeile 2c abgebildete Zwischenergebnis DIF entsteht. Werden die alten Daten aus einem festgelegten Bezugsabschnitt, hier DA1, durch neue Daten DN ersetzt, so stimmt das Zwischenergeb­ nis DIF mit dem Ergebnis DIFS zur anschließenden weiteren EXOR-Verknüpfung überein, so daß der neue gemeinsame Prüfteil CHKN zu 0010 wird. Zusammen mit den neuen Daten 10 und den unveränderten Daten 11 für den Datenteil erhält man den neuen Speichereintrag gemäß Zeile 2d.
Im Unterschied zur Zeile 2b ist in Zeile 3b der Fall vorgese­ hen, daß die neuen Daten DN die veränderbaren Daten DA2 erset­ zen. In bekannter Weise erfolgt von der Verknüpfungslogik die Generierung der Beiträge CHKD und CHKS, die durch erneute EXOR- Verknüpfung zum Zwischenergebnis DIF führen. Im Gegensatz zum oben beschriebenen Beispiel findet jetzt eine zyklische Ver­ schiebung der Bitwerte des Ergebnisses DIF um jeweils eine Bit­ stelle statt, so daß das verschobene Ergebnis DIFS die Binär­ werte 1110 enthält. Die EXOR-Verknüpfung mit dem bisher gespei­ cherten alten Prüfteil CHKA ergibt für den neuen gemeinsamen Prüfteil CHKN die Kombination 1100. Den Inhalt des neuen Spei­ chereintrags kann man der Zeile 3d entnehmen.

Claims (8)

1. Verfahren zur Datensicherung in Speichereinheiten, bei denen die einzelnen Speichereinträge aus einem in wenigstens zwei Ab­ schnitte unterteilten Datenteil und einem Prüfteil zur Siche­ rung des Datenteils bestehen, wobei die Daten in wenigstens einem vorgegebenen Abschnitt änderbar sind, und bei denen zur Sicherung entsprechend einem vorgegebenen Fehlererkennungs­ und/oder -korrekturgrad ein Linearcode mit den Speichereinträ­ gen entsprechenden Codewörtern und mit einer aus linear unab­ hängigen Codewörtern dieses Codes abgeleiteten Kontrollmatrix verwendet wird, dadurch gekennzeich­ net, daß eine Kontrollmatrix (H) verwendet wird, in der die nur eine Eins aufweisenden Spaltenvektoren (z. B. PV0...PV3) den Prüfbitstellen des Prüfteiles (z. B. CH.3...CH.0) und die übrigen Spaltenvektoren (z. B. DV10...DV21) den Datenbitstellen des Datenteiles (z. B. DA1.0...DA2.1) zugeordnet sind, daß bei einer Änderung der Daten in dem vorgegebenen Abschnitt (z. B. EA) sowohl der Beitrag (CHKD) der zu verdrängenden Daten als auch der Beitrag (CHKS) der neuen Daten zum Prüfteil des Spei­ chereintrags entsprechend den zugehörigen Spaltenvektoren (z. B. DV10, DV11) der Kontrollmatrix (H) ermittelt wird, und daß aus den beiden Beiträgen (CHKS und CHKD) und dem alten Prüfteil (CHKA) mittels einer "EXKLUSIV-ODER"-Verknüpfung aller drei Größen der dem neuen Datenteil entsprechende Prüfteil (CHKN) gebildet wird.
2. Verfahren nach Anspruch 1 für Speichereinheiten, bei denen der Datenteil der einzelnen Speichereinträge in jeweils 2j(j=1, 2...) Abschnitte unterteilt ist und die Daten jeweils eines beliebigen Abschnittes veränderbar sind, dadurch gekennzeichnet, daß die den Datenbitstellen (z. B. DA1.0...DA2.1) vorbehaltenen Spaltenvektoren (z. B. DV10 ...DV21) der Kontrollmatrix (H) in Gruppen von jeweils 2j Spal­ tenvektoren unterteilt werden, wobei jeweils ausgehend von einem noch nicht einer Datenbitstelle zugeordneten Spaltenvek­ tor (z. B. DV10) die restlichen Spaltenvektoren (z. B. DV20) in­ nerhalb einer Gruppe sich jeweils durch schrittweises zykli­ sches Verschieben des gewählten verfügbaren Spaltenvektors er­ geben und die Spaltenvektoren in derselben Reihenfolge nachein­ ander den jeweils einander entsprechenden Datenbitstellen (z. B. DA1.0 und DA2.0) in den 2j aufeinanderfolgenden Abschnitten zu­ geordnet werden, und daß die von den auszutauschenden Daten ab­ hängigen Beiträge durch Bildung von Ergebnissen (CHKD und CHKS) mittels der einem vorgegebenen Bezugsabschnitt des Datenteils zugeordneten Spaltenvektoren (z. B. DV10 und DV11) und durch an­ schließende zyklische Verschiebung der Ergebnisse entsprechend dem Abstand vom betroffenen Abschnitt erzeugt werden, bevor sie der "EXKLUSIV-ODER"-Verknüpfung mit dem alten Prüfteil zuge­ führt werden.
3. Verfahren nach Anspruch 2, dadurch ge­ kennzeichnet, daß die gebildeten Ergebnisse (CHKD und CHKS) zunächst durch eine "EXKLUSIV-ODER"-Verknüpfung ge­ bündelt werden und das gebündelte Zwischenergebnis (DIF) ent­ sprechend dem Abstand vom betroffenen Abschnitt verschoben wird, bevor es mit dem alten Prüfteil (CHKA) zur Bildung des neuen Prüfteils (CHKN) verknüpft wird.
4. Schaltungsanordnung zur Datensicherung in Speichereinheiten, bei denen die einzelnen Speichereinträge aus einem in wenig­ stens zwei Abschnitte unterteilten Datenteil und einem Prüfteil zur Sicherung des Datenteils bestehen, wobei die Daten in we­ nigstens einem vorgegebenen Abschnitt änderbar sind, und bei denen zur Sicherung entsprechend einem vorgegebenen Fehlerer­ kennungs- und/oder -korrekturgrad ein Linearcode mit den Spei­ chereinträgen entsprechenden Codewörtern und mit einer aus li­ near unabhängigen Codewörtern dieses Codes abgeleiteten Kon­ trollmatrix verwendet wird, gekennzeichnet durch
  • - gesonderte Speichermittel (AREG, NREG, CREG) für die aus einem ausgewählten Speichereintrag zu verdrängenden Daten (DA) und die stattdessen neu einzutragenden Daten (DN), sowie für den im Speichereintrag enthaltenen Prüfteil (CHKA), eine mit den beiden Speichermitteln (AREG, NREG) für die Da­ ten verbundene Verknüpfungslogik (GEN) zur Ermittlung der Beiträge (CHKD und CHKS) beider Daten zum Prüfteil anhand der den einzelnen Datenbitstellen (z. B. DA1.0 und DA1.1) entspre­ chenden Spaltenvektoren (z. B. DV10 und DV11) der Kontrollma­ trix (H), in der die jeweils nur eine Eins aufweisenden Spal­ tenvektoren (PV0...PV3) den Prüfbitstellen (CH.3...CH.0) des Prüfteiles zugeordnet sind, und durch
  • - zwei "EXKLUSIV-ODER"-Schaltungen zur Erzeugung des neuen Prüfteiles (CHKN) durch Verknüpfung der durch die beiden Bei­ träge (CHKD und CHKS) und den alten Prüfteil (CHKA) gegebenen Größen miteinander.
5. Schaltungsanordnung nach Anspruch 4, dadurch gekennzeichnet, daß die Verknüpfungslogik (GEN) aus zwei gleich aufgebauten und parallel arbeitenden Teilschal­ tungen (TS) besteht, von denen eine den Beitrag (z. B. CHKD.0... CHKD.3) der alten und eine den Beitrag (z. B. CHKS.0...CHKS.3) der neuen Daten ermittelt.
6. Schaltungsanordnung nach Anspruch 4, dadurch gekennzeichnet, daß die Verknüpfungslogik (GEN) aus einer die Beiträge beider Daten nacheinander ermittelnden Teilschaltung (TS) mit vorgeschaltetem Auswahlschalter für die beiden Daten und einem Zwischenspeicher für den jeweils zuerst ermittelten Beitrag besteht.
7. Schaltungsanordnung nach einem der Ansprüche 4 bis 6 für Speichereinheiten, bei denen der Datenteil der einzelnen Spei­ chereinträge in jeweils 2j (j=1, 2...) Abschnitte unterteilt ist und die Daten jeweils eines beliebigen Abschnittes veränderbar sind, gekennzeichnet durch
  • - eine der Verknüpfungslogik (GEN) zugrundegelegte Kontrollma­ trix (H), bei der die den Datenbitstellen (z. B. DA1.0... DA2.1) vorbehaltenen Spaltenvektoren (z. B. DV10...DV21) der Kontrollmatrix (H) in Gruppen von jeweils 2j Spaltenvektoren unterteilt sind, wobei jeweils ausgehend von einem noch nicht einer Datenbitstelle zugeordneten Spaltenvektor (z. B. DV10) die restlichen Spaltenvektoren (z. B. DV20) innerhalb einer Gruppe sich jeweils durch schrittweises zyklisches Verschie­ ben des gewählten verfügbaren Spaltenvektors ergeben und die Spaltenvektoren in derselben Reihenfolge nacheinander den je­ weils einander entsprechenden Datenbitstellen (z. B. DA1.0 und DA2.0) in den 2j aufeinanderfolgenden Abschnitten zugeordnet sind, wobei für die Bildung der Ergebnisse (CHKD und CHKS) lediglich die den Datenbitstellen (z. B. DA1.0 und DA1.1) eines vorgegebenen Abschnitts (z. B. EA1) als Bezugsabschnitt zugeordneten Spaltenvektoren (z. B. DV10 und DV11) berücksich­ tigt werden, und durch
  • - Einrichtungen (AE) zum zyklischen Verschieben der von der Verknüpfungslogik (GEN) für die beiden Beiträge gelieferten Ergebnisse (CHKD und CHKS) entsprechend dem Abstand des vom Datenaustausch betroffenen Abschnittes vom Bezugsabschnitt (z. B. EA1).
8. Schaltungsanordnung nach Anspruch 7, dadurch gekennzeichnet, daß die Einrichtungen (AE) zum zyklischen Verschieben zwischen den beiden "EXKLUSIV-ODER"- Schaltungen (EXOR1 und EXOR2) angeordnet sind, so daß die von der Verknüpfungslogik (GEN) für die beiden Beiträge gelieferten Ergebnisse (CHKD und CHKS) zunächst gebündelt werden.
DE19893942150 1989-12-20 1989-12-20 Verfahren und Schaltungsanordnung zur Datensicherung in Speichereinheiten Expired - Fee Related DE3942150C2 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19893942150 DE3942150C2 (de) 1989-12-20 1989-12-20 Verfahren und Schaltungsanordnung zur Datensicherung in Speichereinheiten

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19893942150 DE3942150C2 (de) 1989-12-20 1989-12-20 Verfahren und Schaltungsanordnung zur Datensicherung in Speichereinheiten

Publications (2)

Publication Number Publication Date
DE3942150A1 true DE3942150A1 (de) 1991-06-27
DE3942150C2 DE3942150C2 (de) 1994-11-03

Family

ID=6395932

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19893942150 Expired - Fee Related DE3942150C2 (de) 1989-12-20 1989-12-20 Verfahren und Schaltungsanordnung zur Datensicherung in Speichereinheiten

Country Status (1)

Country Link
DE (1) DE3942150C2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002086720A2 (en) * 2001-04-23 2002-10-31 Sun Microsystems, Inc. Method and apparatus for updating an error-correcting code during a partial line store

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4092732A (en) * 1977-05-31 1978-05-30 International Business Machines Corporation System for recovering data stored in failed memory unit

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4092732A (en) * 1977-05-31 1978-05-30 International Business Machines Corporation System for recovering data stored in failed memory unit

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
IBM Technical Disclosure Bulletin, Vol. 24, No. 2, Juli 1981, S. 986 u. 987 *
PETERSON, W.W.: Prüfbare und korrigierbare Codes, R. Oldenbourg-Verlag, München u. Wien 1967 *
SKINBUCH/RUPPRECHT: Nachrichtentechnik, Bd. 2, Springer Verlag, 1982 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002086720A2 (en) * 2001-04-23 2002-10-31 Sun Microsystems, Inc. Method and apparatus for updating an error-correcting code during a partial line store
WO2002086720A3 (en) * 2001-04-23 2004-01-08 Sun Microsystems Inc Method and apparatus for updating an error-correcting code during a partial line store
US6848071B2 (en) 2001-04-23 2005-01-25 Sun Microsystems, Inc. Method and apparatus for updating an error-correcting code during a partial line store

Also Published As

Publication number Publication date
DE3942150C2 (de) 1994-11-03

Similar Documents

Publication Publication Date Title
DE2260850C2 (de) Schaltungsanordnung zur Erkennung von Einzel- und Mehrfachfehlern und zur korrektur von Einzel- und bestimmten Mehrfachfehlern
EP0038947B1 (de) Programmierbare logische Anordnung
DE2328869C2 (de) Verfahren und Schaltungsanordnung zum Betreiben eines digitalen Speichersystems
DE2132565C3 (de) Umsetzer
DE2723523A1 (de) Kompression und dekompression von gespeicherten digitaldaten
DE2646163A1 (de) Speicher-ausbesserungs-schaltung
DE2646162B2 (de) Schaltungsanordnung zum Ersetzen fehlerhafter Informationen in Speicherplätzen eines nicht veränderbaren Speichers
DE2357116A1 (de) Speichermodul fuer eine datenverarbeitungseinheit
DE2256135C3 (de) Verfahren zum Prüfen von monolithisch integrierten Halbleiterschaltungen
DE2518588C3 (de) Verfahren zur Überwachung der Folgerichtigkeit von Codesignalgruppen in Einrichtungen der Nachrichtentechnik
DE2357168C2 (de) Schaltungsanordnung für einen Speichermodul
DE2151472A1 (de) Mikroprogrammspeicher fuer Elektronenrechner
DE2350146A1 (de) Verfahren und netzwerk zur neuordnung eines rechnerspeichersystems
EP0067301A2 (de) Einrichtung zur Erzeugung von Prüfbits zur Sicherung eines Datenwortes
DE2610411A1 (de) Datenverarbeitungsanlage
DE2353635C2 (de) Vorrichtung zur Datenverarbeitung
DE2456709C2 (de) Schaltungsanordnung zur Fehlererkennung und -korrektur
DE2153542A1 (de) Codierer für eine binäre Informationsbitfolge
DE2758151A1 (de) Einrichtung zum sortieren von datensaetzen
DE2361512C2 (de) Schaltungsanordnung zur Prüfung eines Additionsresultates
DE3722907A1 (de) Maximallaengen-schieberegister-folgegenerator
DE3410496C2 (de)
DE3942150C2 (de) Verfahren und Schaltungsanordnung zur Datensicherung in Speichereinheiten
DE3819706A1 (de) Vorrichtung zum erzeugen einer linear auftretenden maximallaengencodefolge
EP0238978A1 (de) Modulo-2-Addierer zur Verknüpfung von drei Eingangssignalen

Legal Events

Date Code Title Description
8127 New person/name/address of the applicant

Owner name: SIEMENS NIXDORF INFORMATIONSSYSTEME AG, 4790 PADER

8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee