DE2816771A1 - Verfahren und schaltungsanordnung zur feststellung und unterscheidung von fehlern, insbesondere in ladungsgekoppelten speichern und magnetischen einzelwanddomaenenspeichern - Google Patents

Verfahren und schaltungsanordnung zur feststellung und unterscheidung von fehlern, insbesondere in ladungsgekoppelten speichern und magnetischen einzelwanddomaenenspeichern

Info

Publication number
DE2816771A1
DE2816771A1 DE19782816771 DE2816771A DE2816771A1 DE 2816771 A1 DE2816771 A1 DE 2816771A1 DE 19782816771 DE19782816771 DE 19782816771 DE 2816771 A DE2816771 A DE 2816771A DE 2816771 A1 DE2816771 A1 DE 2816771A1
Authority
DE
Germany
Prior art keywords
error
data
memory
syndrome
bit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE19782816771
Other languages
English (en)
Inventor
John Scott Eggenberger
Arvind Motibhai Patel
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2816771A1 publication Critical patent/DE2816771A1/de
Withdrawn 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
    • 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/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Error Detection And Correction (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Detection And Correction Of Errors (AREA)

Description

Anmelderin: International Business Machines
Corporation, Armonk, N.Y. 10504
ru/bm
Verfahren und Schaltungsanordnung zur Feststellung und Unterscheidung von Fehlern, insbesondere in ladungsgekoppelten Speichern und magnetischen Einzelwanddomänenspeichern
Die Erfindung betrifft ein Verfahren nach dem Oberbegriff des Patentanspruchs 1 sowie eine Schaltungsanordnung zur Durchführung des Verfahrens nach dem Oberbegriff des Patentanspruchs 4.
In herkömmlichen Speichersystemen muß die Information von einer Einheit zur anderen über Verbindungsleitungen und Hochleistungsverstärker geleitet werden. Das eigentliche magnetische Material, wie Magnetbänder, Platten oder Trommeln, wird außerdem an Abfühl- und Schreibeinheiten vorbeigeführt, um Datenoperationen auszuführen. In einem Speicher mit magnetischen Einzelwanddomänen, lassen sich diese Funktionen im Gegensatz dazu innerhalb eines zusammenhängenden ferromagnetisehen Mediums ausführen. Magnetische Einzelwanddomänen, die Daten darstellen, bewegen sich in einer Ebene dünner Schichten aus magnetischem Material, wie etwa Seltene Erden oder orthoferriten Kristallen. Sie können in genau definierten Positionen mit hoher Geschwindigkeit und geringer Energie verschoben werden. Das magnetische Material selbst bleibt : stationär.
[Eine der populärsten Organisationsformen für Einzelwanddomänen-' speicher ist die Organisationsform, bestehend aus Haupt- und ■ Nebenschleife, die im einzelnen beschrieben ist in der US-Patentschrift Nr. 3 618 054. Diese Speicherorganisation enthält eine geschlossene Hauptschleife, die typischer Weise durchj eine Anordnung von T/I-Permalloykreisen auf einem Plättchen aus Seltene-Erden-Orthoferrit gebildet wird. Die Einzelwanddomänen laufen kreisförmig um die Schleife herum, durch Ein-
sÄ 976 042 0Q98 U/0873
Wirkung eines in der Ebene des magnetischen Materials sich drehenden magnetischen Feldes. Die Hauptschleife wird im allgemeinen so verlängert, daß eine Anzahl von Nebenschleifen daran ausgerichtet werden kann. Zwei-Weg-übertragungstore ; gestatten die Übertragung von Einzelwanddomänen von der Neben- ; schleife in die Hauptschleife und umgekehrt. Zugriff zur Hauptschleife ist weiterhin möglich durch eine Abfühl- und Leseverbindung und durch eine separate Schreibverbindung. In Fig. 3 der US-Patentschrift Nr. 3 999 172 ist ein nach dem Prinzip der Haupt- und Nebenschleife organisierter Einzelwanddomänenspeicher gezeigt, in dem ein separater Spaltenleiter über Ein-Weg-Schalter mit jeder Nebenschleife gekoppelt ist, um Schreiben zu können, während ein elektrisch unabhängiger Spaltenleiter über entgegengesetzt gepolte Ein-Weg-Schalter zum Lesen mit den Nebenschleifen gekoppelt ist.
Die Speicherorganisation in Haupt- und Nebenschleife ermöglicht ein synchronisiertes Domänenmuster, da die Weiterleitung der magnetischen Einzelwanddomänen in den Schleifen synchron mit der Drehung des in der Materialebene liegenden Feldes erfolgt. D.h., die parallele Übertragung von Einzelwanddomänen von oder ■ zu mehreren Nebenschleifen, von oder zu einer Hauptschleife, : kann simultan erfolgen. Außerdem können mehrere Chips zusammen behandelt werden, von denen jedes ein Paar Hauptschleifen und mehrere zugehörige Neben schleifen enthält. ·, Solche Chips werden im allgemeinen in Zeilen angeordnet und es werden Zeilen aus Datenchips zeitmultiplex so geschichtet, daß man komplexe Speicherstrukturen erhält. Die in Bits codierten Ströme von Einzelwanddomänen in allen Schleifen, in allen : Chips, werden mit den Drehungen des Magnetfeldes im magnetischen Material synchronisiert.
Per Erfindung liegt deshalb die Aufgabe zugrunde, ein Verfahren Und eine Schaltungsanordnung zur Feststellung und Unterschei-
976 042 8098A3/0873
281677
dung zwischen systematischen und störungsinduzierten Fehlern in aus Haupt- und Nebenschleifen aufgebauten Speichern, insbesondere ladungsgekoppelten Speichern und magnetischen Einzelwanddomänenspeichern, gelesenen Daten unterscheiden und diese korrigieren zu können.
Die erfindungsgemäße Lösung der Aufgabe besteht insbesondere im Kennzeichen des Patentanspruchs 1 und des Patentanspruchs Weitere erfindungsgemäße Lösungen bestehen in den Ansprüchen 2 und 3 sowie 5 und 6.
Durch die angegebene erfindungsgemäße Lösung ist es möglich, daß sich systematische und durch Störquellen induzierte Fehler ,in Wörtern unterscheiden lassen, die aus einem Speicher der genannten Art gelesen werden. Dies wird insbesondere vorteilhaft dadurch erreicht, daß die Verbindung eines von Null verschiedenen Syndroms der Prüfbits und der von vorn herein gegebene Fehlerstatus einer Stelle indexiert, durch die Adresse des einer extern gespeicherten Tabelle entnommenen Wortes benutzt wird. Dabei wird die Verbindung eines von Null verschiedenen Syndroms und einer Anzeige für das Vorhandensein einer Maschinenfehlerstelle als Synonym für Maschinenfehler benutzt. Die Schaltungsanordnung zeichnet sich durch besonders geringen technischen Aufwand aus.
Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und werden anschließend näher beschrieben.
£s zeigen:
JFig. 1A in einem Blockdiagramm von einem Speichersy-
: stem zu adressierende codierte Daten, sowie einen
; Decodierer für die verschiedenen Fehleranzeigen,
i I
£ig. 1B im einzelnen die logische Ausführung des in
j Fig. 1A dargestellten Decodierer^ und \
SA 976 O42 809843/0873
des Speichersystems,
Fig. 2 eine Speicheranordnung mit m χ η Haupt-/Nebenschleifen,
Fig. 3A eine Konkordanz zwischen dem Syndrom und der Anzahl von Fehlern pro Wort,
Fig. 3B die Ausgabe des erfindungsgemäßen Fehlerdetektors,
Fig. 4A einen Festwertspeicher (ROM) mit einer Mindestanzahl von Eingabe-/Ausgabeleitungen,
Fig. 4B einen Plan des Fehlerzustandes einer jeden Speicherwortstelle,
Fig. 5 die relative Taktierung zwischen der Speicheransteuerung und der Fehler- oder Zeigeransteuerung vom ROM und
Fign. 6A eine Datenübertragung zwischen Neben- und Haupt- und 6B schleife.
Das in der nachfolgenden Beschreibung im Zusammenhang mit Fig. J2 erwähnte Speichersystem 14, enthält einen aus Haupt- und Nebenschleifen bestehenden Speicher 19, in dem der Taktgeber 53 die Drehfeldquelle 33 treibt, und diese wiederum den Speicher 19.
Wie später noch in Verbindung mit den Fign. 6A bis 6D beschrieben wird, übertragen alle Nebenschleifen auf einem Chip auf einen Befehl hin Parallel-Einzelwanddomänen von ihren entsprechenden Positionen in die Hauptschleife. Die Domänen Werden dann seriell abgefühlt, während sie an einer Leseposi-
976 042 S 0 9 8/. 3 / 0 8 7 3
;tion vorbeilaufen. Neue Daten können ebenfalls zur parallelen ι Rückübertragung in die Nebenschleifen zu gegebener Zeit an einer Schreibposition eingesetzt werden. .
Fehler in der Speicherfabrikation
In einem Einzelwanddomänenspeicher muß jede Schleife und jedes ■Chip physikalisch perfekt sein, damit das System zufriedenstellend arbeitet. Da Chips ganze Gruppen von Registern enthalten, kann ein kleinerer Fehler in einer Nebenschleife zur Verschrottung des ganzen Chip führen. Im Gegensatz zu einem diskrete Komponenten enthaltenden System ist es nicht möglich, ,nur eine fehlerhafte Komponente zu ersetzen und den Rest der !guten Komponenten in Takt zu halten. Obwohl es relativ ein- '. :fach ist, Chips herzustellen, in denen nur ein oder zwei !Nebenschleifen unterbrochen oder anderweitig defekt sind, \
jist es relativ schwierig ein Chip herzustellen, in dem jede Schleife perfekt ist. Wenn daher perfekte Chips verlangt werden, treibt die erforderliche strenge Qualitätsnorm die Gesamtproduktionskosten eines Einzelwanddomänenspeichersystems unerwünscht hoch, durch den hohen Prozentsatz der
i zu verschrottenden Chips. i
Ansteuerung mehrerer zusammenhängender Wörter aus einem aus ,Haupt- und Nebenschleife bestehenden Speicher zur Maximierung I der Datenrate :
In Fig. 2 sind m konventionelle Einzelwanddomänen-Speicher- j chips mit Haupt- und Nebenschleife dargestellt, von denen : jedes η Umlaufschieberegister wie die Nebenschleifen 211, ; 212 und 213 enthält. Um die Information anzusteuern, die in dem in den entsprechenden Nebenschleifen umlaufenden Bitstrom codiert ist, ist jede Nebenschleife 211 an den Hauptschleif enleseleiter 215 über einen Obertragungsschalter R11 verbunden. Der Hauptschleifenleseleiter 215 wiederum endet
SA976042 809843/Q873
in einem Lesedetektor 23, der die darin weitergeleiteten codierten Bitwerte abfühlt. Jeder Übertragungsschalter R läßt wahlweise Elemente des codierten Bitstromes in der Nebenschleife weiter umlaufen oder in den Leseleiter der Hauptschleife übertragen. Die Bewegung des codierten Einzelwanddomänenstromes in der Nebenschleife und im Leseleiter ist ausreichend unterschiedlich, um die Schleife und den Leiter als aus Schieberegistern bestehend zu betrachten, wobei die Zellen dieser Register geometrisch quadratisch oder annähernd quadratisch sind. Für die vorliegende Erfindung wird angenommen, daß eine Hauptschleife, die jede der η Nebenschleifen auf einer Seite geometrisch koppelt, verlangt, daß die i-te Zelle der Hauptschleife als Bitübertragungspunkt für die j-te Nebenschleife dient. Der Bitübertragungspunkt in der Hauptschleife muß wenigstens eine Zelle von derjednigen Hauptschleifenzelle entfernt sein, die als Bitübertragungspunkt für die Nebenschleife j+1 dient. Wenn Zellen auf jeder Seite eines jeden Übertragungspunktes leer sind, folgt daraus, daß eine serielle Datenrate der Hauptschleife wenigstens um die Hälfte reduziert würde, gegenüber der Rate, die erzielt werden kann, wenn die Zellen auf einer Seite des Übertragungspunktes nicht leer wären.
Leere Zellen werden in der bekannten Praxis dadurch vermieden, daß man zu· einem Zeitpunkt in die Hauptschleife eine feste Anzahl von Bits aus jeder Nebenschleife, z.B. 2 Bits, überträgt. Bei jeder übertragung bildet ein Bit einen Teil des ersten Wortes, während das andere Bit zu dem nächstfolgenden Wort gehört.
SA976042 S09843/0873
Fehler bei mehrfach herausgezogenen zusammenhängenden Wörtern und resultierende Zweideutigkeit
Ein Fehler, der aus einem Schleifendefekt entsteht, würde jedes Bit in dieselbe Bitposition in mehreren zweifelhaften vorausgezogenen zusammenhängenden Wörtern setzen. Für die Bits in derselben Bitposition eines Wortpaares kann der Fehler nur das erste oder nur das zweite oder beide Bits betreffen. Das gilt, wenn der Fehler auf systematische oder unkontrollierte Ursachen zurückgeht. Eine systematische Fehlerquelle ist z.B. ein Schleifendefekt, der zur Vernichtung von Einzelwanddomänen führt. Wenn ein gegebener bitcodierter Einzelwanddomänenstrom aus Domänen (binär 1) und dem Fehlen von Domänen (binär 0) besteht, dann kann natürlich die Folge 00 aufgrund dieses Fehlers einen der Werte 11, 01, 10 oder 00 haben.
Jede defekte Nebenschleife beeinträchtigt aber alle Bits, die aus dieser Nebenschleife kommen. Die äußere Anlage und Form des Einzelwanddomänenchips sind so, daß jede Schleife eine vorgegebene Anzahl von Bits, z.B. 2 Bits in einer sequentiellen Datenkette auf den Leseleiter gibt oder vom Schreibleiter nimmt. Eine defekte Nebenschleife verursacht also immer Fehler in derselben Bitposition in aufeinanderfolgenden Wörtern, in einem sequentiellen Fluß eines r Tupel von m Bitwörtern .
Speichersystem mit Haupt-/Nebenschleife und Fehleranzeige
In Fig. 1 ist in Form eines allgemeinen Blockdiagrammes ein die Erfindung enthaltendes Speichersystem dargestellt. Daten in einem vorgegebenen Format werden über die Eingabebahn 1 einem Codierer 2 zugeführt, der die Daten neu formatiert, berechnet und ihnen eine vorgegebene Anzahl von Fehlerprüfbits hinzufügt, und sie dann über die Bahn 13 in bezeichnete Stellen im Speichersystem 14 schreibt. Die Daten werden
eomi/oeYs"
wortseriell und bitparallel in das Speichersystem 14 geleitet. Der Decodierer 26 zieht Daten aus dem Speichersystem 14 ebenfalls wortseriell und bitparallel über die Bahn 25 heraus. Der Decodierer 26 prüft die herausgezogenen Daten auf ihre Fehlerbedingung, durch Neuberechnung der Fehlerprüfbits und Vergleich der neu errechneten Bits mit den empfangenen Fehlerprüfbits. Eine logische Schaltung und andere Anordnungen im Decodierer 26 unterscheiden das Auftreten keines Fehlers, eines weichen Fehlers oder eines harten Fehlers in den herausgezogenen Daten durch Signale auf betreffenden Leitern in der Bahn 51.
Datenformate und die Anwendung des Patel-Codes zur Minimierung j der Redundanz für die Fehlersicherung in herausgezogenen r Wort-Tupeln
Wie schon gesagt wurde, hat jedes Speicherwort eine Länge von m Bits. Von jedem Speicherzugriff sind jeweils r Wörter betroffen. Vereinbarungsgemäß sind die Bits eines jeden Zeichens über r Wörter verteilt. Demnach gibt es für s Bits pro Zeichen pro Wort m/s Zeichen pro Wort, c ist die Anzahl der Prüfzeichen pro Wort. Die Anzahl von Zeichen pro Wort, abzüglich der Anzahl von Prüfzeichen, wird dargestellt durch I(m/s)-c], wie sie an den Codierer gegeben wird. Der Codierer 2 addiert c Prüfzeichen (Bytes) pro Wort, so daß an seinem Ausgang (m/s) = [(m/s)-c]+c in das Speichersystem 14 geschrieben wird, i In gleicher Weise werden m/s Zeichen pro Wort aus dem Speicher geholt. Der Decodierer 26 stellt die Originaldaten £(in/s)-c] wieder her. Das in den Speicher geschriebene und aus ihm gelesene Format der Daten ist m Bits breit und r Wörter tief.
Jedes der herausgezogenen Wörter eines r Tupel von Wörtern, besteht aus c Prüfbits und m/c Datenbits, d.h. in jedem m Bitwort aus dem Speicher befinden sich log, (m Bits)
sä 976 042 8098 4 3/0873
zur Erkennung eines Fehlers. Für jedes r Tupel aus herausgezogenen m Bitwörtern wären dann r(log^ On)) Bits der Erkennung/Korrektur von Fehlern gewidmet. Da das Auftreten eines Fehlers die Gegenbitpositionen in jedem Wort eines r Tupels von nacheinander herausgezogenen Wörtern beeinflußt, ist der Bereich der Fehlererkennung/Korrektur für log- (m) Bits normalerweise auf (m) Bits begrenzt. Dieser Bereich könnte auf rm Bits erweitert werden, durch Errechnung des Wertes für jedes der log- (m) Bits als Funktion der Datenbits in den Gegenbytes in jedem Wort von sich gegenseitig ausschließenden r Tupeln der mehrere Bytes umfassenden Codewörter. Der Wirkungsgrad der Fehlererkennung wird weiterhin dadurch verbessert, daß man s Bits in jedem der nacheinander herausgezogenen Wörter des r Tupels anordnet. Ein solches Codierschema für die Fehlerprüfung findet sich im Patel-Code und ist beschrieben in der OS-Patentschrift Nr. 28 923.
Logische Implementierung des Systems und der Erfindung
In Fig. 1B ist eine logische Implementierung des in Fig. 1A gezeigten Systems dargestellt. Das System wird durch einen gemeinsamen Referenztaktgeber 53 synchronisiert, dessen Taktausgabe C die wesentlichen Elemente des Codierers 2, des Speichers 14 und des Decodierers 26 synchronisiert. Von der Funktion her befaßt sich der Decodierer 2 hauptsächlich mit der Datenformatierung durch einen Symbolformatierer 3 und einen Wortformatierer 11. Die Fehlerprüfbits werden den Symbolen vom Syndromgenerator 7 angehängt. Der Symbolformatierer 3 formatiert insbesondere aufgrund von Eingabedaten auf der Bahn 32 Dateneingabebits zu 8 jeweils 4 Bit großen Symbolen. Diese Werden über die Bahn 5 an den Syndromgenerator 7 geleitet. Der Syndromgenerator 7 wiederum erzeugt zwei 4 Bit große Prüfsymbole als Funktion der Datensymbole nach dem PateljPatent. Der Wortformatierer 11 spricht auf die
sä 976 042 SQ9843/Q873
28187
Ausgabe des Syndromgenerators 7 über die Bahn 9 an und formatiert 32 Datenbits und die 8 Prüfbits zu einem Format, bestehend aus zwei Serien von 20 parallelen Bits«
Das Speichersystem 14 besteht aus einer m χ η Anordnung eines wortorganisierten Haupt-/Nebenschleifenspeichers 19, einer Schreibschaltung 15 zur Umwandlung binär codierter elektrischer Ströme in binär codierte Ströme von Einzelwanddomänen, zur Eingabe in den Haupt-/Nebenschleifenspeicher über die Bahn 17, einer Abfühlschaltung 23 zur Umwandlung binär codierter Einzelwanddomänenströme über die Bahn 21 vom Haupt-/Nebenschleifenspeicher 19 in binär codierte elektrische Signale auf der Bahn 25, sowie der Schaltung zur Aufrechtarhaltung und Ansteuerung, bestehend aus dem Rotationsfeldgenerator 33, dem Treiber 35 und der Steuereinheit 36, die vom gemeinsamen Referenztaktgeber 53 gespeist werden. Die Halte- und Zugriffsschaltung enthält den Rotationsfeldgenerator 33 zur Erzeugung des rotierenden Magnetfeldes, das zur Weiterleitung der Information auf den Einzelwanddomänen-Chips gebraucht wird. Die durch den gemeinsamen Referenztaktgeber ebenfalls in die Schaltung eingeschlossene Steuereinheit regelt die übertragungsleitungstreiber 35, durch Betätigen der betreffenden übertragungsschalter so, daß gelesen und geschrieben wird, und Einzelwanddomänen von und zu den Nebenschleifen geschoben werden.
Der Decodierer 26 wandelt das m χ r Bitformat in ein anderes Format um, und prüft das Syndrom der empfangenen Daten. Synchronisiert mit dem Lesen von Daten, ist die Adresse der Zeile oder der Nebenschleifen, von denen ein gegebenes r Tupel von m Bitwörtern gelesen wird. Diese Information zusammen mit dem Vorhandensein oder Fehlen eines von Null verschiedenen Syndroms, wird an eine Logikschaltung 49 gegeben, die in | diesem System zwei Funktionen hat. Einmal liefert sie ein
sä 976 042 SQ9843/Q873
231677
Signal zur Unterscheidung der Fehlerzustände kein Fehler, Fehler in der Software oder Fehler in der Schaltung. Die zweite Funktion besteht in der Korrektur der Daten vor ihrer Aussendung aus dem Decodierer.
Der Decodierer besteht aus einem Symbolformatierer 28, der besonders auf das 20-Bit-parallele χ 2-Bit-serielle Format anspricht, das von der Abfühlschaltung 23 über die m parallelen Leiter der Bahn 25 kommt. Der Symbolformatierer 28 wandelt die Daten in zehn, jeweils 4 Bit große Symbole um. Der Syndromgenerator 27 erzeugt wiederum ein 8 Bit großes Syndrom, basierend auf der Ausgabe des Symbolformatierers 28 nach dem Patel-Patent. Vom Syndromgenerator 27 sind zwei verschiedene Ausgänge vorgesehen, und zwar ist der erste Ausgang das Syndrom auf der Bahn 31 und der zweite Ausgang sind Daten auf der Bahn 29, die als einer von zwei Eingängen zum Antivalenzschaltglied 52 dient. Der andere Eingang 50 besteht aus Korrekturdaten von der Logikschaltung 49. Die Korrekturinformation wird antivalent mit den Daten auf der Bahn 29 zu einer korrigierten Datenausgabe auf der Bahn 29' verknüpft.
Wie schon früher vorgeschlagen wurde, wird ein r Tupel von Wörtern bei jedem Zugriff aus dem Speicher 19 geholt. Praktisch bedeutet das, daß eine vorgegebene Bitzahl r aus jeder Nebenschleife in einer vorgewählten Zeile übertragen wird. Ein Teil dieser Erfindung besteht darin, die Fehlerstatusbedingung der Nebenschleifen in der gegenwärtig adressierten Zeile zu identifizieren. Ein Vektor oder Zeiger der Fehlerstatusinformation als Funktion der Zeilen der Gruppe ist im Festwertspeicher (ROM) 45 enthalten. Die Adreßeinrichtung des ROM 45 (Adreßzähler 41) wird durch Rückstellung und HaI- ;tung von der Ubertragungsleitungstreiberbahn 37 über die Bahn '37' durch den Rücksetzzähler 39 synchronisiert. Der Rücksetzzähler 39 hält den Adreßzähler 41 zurückgestellt bis zu einer vorbestimmten Verzögerung nach Beginn einer Speicherlese-SA 976 042
3098A3/0873
operation. Die Verzögerung ist zur Synchronisation der Syndromausgabe des Syndromgenerators 27 und der Fehlerstatusausgabe des ROH 45 groß genug. Fig. 5 zeigt die relative Taktierung zwischen Datenadressierung und Zeigeradressierung. Der Adreßzähler 41 zählt bei jedem zweiten umlaufenden Feldzyklus, wenn er nicht durch den Rücksetzzähler 39 zurückgestellt gehalten wird. Die so erhaltene binäre Codierungsausgabe bezeichnet die Nebenschleife, in der die Information steht, deren Syndrom am Ausgang des Syndromgenerators liegt.
Der Festwertspeicher 45 erzeugt Statusinformation, die basierend auf den Prüfergebnissen der Einzelwanddomänen-Chips in den Speicher codiert werden. Diese Prüfergebnisse können vom Werk stammen und Chips mit fehlerhaften Nebenschleifen an Schleifenstellen bezeichnen, die durch die Festwertspeicheradresse vom Adreßzähler 41 angegeben sind. Eine Mindestkonfiguration für Eingabe-/Ausgabeleiter und ein Plan für den ROM, sind in den Fign. 4A und 4B gezeigt»
Das letzte Hauptelement des Decodierers 26 ist die Logikschaltung 49, die auf das Syndrom auf der Bahn 31 und den Fehlerzeiger auf der Bahn 47 anspricht. Diese Schaltung liefert, wie schon gesagt, funktionell sowohl die Fehlerunterscheidung, die der Erfindungsbeitrag ist, als auch die Datenkorrektur. Die Fehlerunterscheidung wird auf die Bahn 51 gegeben, während die Information für die Datenkorrektur über die Bahn 50 an das Antivalenzglied 52 gegeben wird.
ROM, Logikanordnung und Fe^erquellenanzeige
In Fig. 3A ist die Beziehung zwischen dem Null-Sustand und dem Nicht-Null-Zustand eines Syndroms, der Anzahl der Fehler pro Zeiger aus dem ROM 45 und den Fehlerbedingungen 0 Fehler, Fehler in der Software und Fehler in der Schaltung gezeigt.
sä 976 042 S 0 9 8/· 3 / 0 8 7 3
Für das mit dem Patel-Code arbeitende beispielhafte System besteht die Möglichkeit von 0 Fehlern, mehreren Fehlern in der Schaltung und in der Software. Es wurde jedoch festgestellt, daß sich eine statistische Bedeutung für die Existenz von Fehlern in der Schaltung nur von einem von Null verschiedenen Syndrom und einem oder mehreren Fehlern pro Zeiger herleitet. Demzufolge wird "Syndrom =0" einheitlich als Fehlerfreiheit konstruiert. Mit "Syndrom ψ 0 und kein Fehler pro Zeiger", wird das als Fehler in der Software aufgelöst. Wenn einer oder mehrere Fehler pro Zeiger und ein von Null verschiedenes Syndrom auftreten, wird das als Fehler in der Schaltung rekonstruiert. Die logische Ausführung dieser Tabelle findet sich in Fig. 3B.
Die Logikschaltung 49 spricht auf die Fehlerinformation pro Zeiger vom ROM 45 über die Bahn 47 und das Auftreten eines Syndroms von Null oder nicht Null vom Generator 27 über die Bahn 31 an. Die Ausgabe vom ROM wird im Zeigerzähler 301 beendet. Die Ausgabe des Zeigerzählers ist ein direkter Index für die Anzahl von Schleifenfehlern in einer gegebenen Schleifenzeile. Die Ausgaben auf den Bahnen 319, 323 bzw. 335 stellen 0, 1 oder 2 Fehler dar. Die Inversion von 319 .ist gleichzeitig auf der Bahn 321 vorgesehen.
Das vom Generatorausgang 31 erhaltene Syndrom S kann jetzt an '.das Meßgerät 305 angelegt werden, um anzuzeigen, ob das Syndrom = 0 ist. Eine zufriedenstellende Ausführung liegt in der logischen Schaltung vor, die durch die Elemente 306 und 321 bis 331 dargestellt ist.
Wenn 0 Fehler vorliegen, dargestellt durch eine Eins, dann !
ist die Inversion 0. In gleicher Weise ist die Inversion auf ! der Leitung 321 eine Eins, wenn ein oder mehr Fehler durch eine Null auf der Leitung 319 dargestellt werden. Daraus folgt
SA976042 $09843/0873
daß für ein von Null verschiedenes Syndrom, dargestellt durch eine Eins auf der Bahn 306, gleichzeitig mit einer Eins auf der Bahn 321, das UND-Glied 331 und von dort die Schaltungsfehler-Ausgangsleitung erregt wird. Für ein von Null verschiedenes Syndrom auf der Bahn 306 und eine Null auf der : Bahn 321, wird in ähnlicher Weise die Softwarefehler-Ausgabe durch das Endschaltglied 329 erregt. Bei einem Null-Syndrom, wird in gleicher Weise eine Null auf der Bahn 306 die fehlerfreie Ausgabe durch den Inverter 327 erregen.
Die Logikschaltung und Fehlerkorrektur
Die Logikschaltung 49 liefert außerdem noch die Fehlerkorrektur. Der Patel-Code hat die Möglichkeit, einen Fehler oder zwei Fehler zu korrigieren. Wenn der Punktzähler 301 null oder einen Fehler anzeigt, d.h. die Leitungen 319 und 323 liefern ein Eingangssignal an den Syndromprozessor 303 über das ODER-Glied 319, wird das Syndrom S auf der Bahn 31 für die Einzelfehlerkorrektur verarbeitet und Korrektursignale durch das Element 303 erzeugt. In gleicher Weise wird die Punktzählerausgabe 325 erregt, dann würde das Element 307 die notwendigen Signale für die Korrektur von zwei fehler- > haften Zeichen erzeugen. Ein Einzelfehler-Korrektursignal über der Bahn 304 würde durch das Antivalenzglied 52 geleitet. Die für die Korrektur von zwei Fehlern geeigneten Signale werden ebenso vom Element 307 erzeugt und über die Bahn 309 auf die Bahn 50 durch das ODER-Glied 313 geleitet.
Der Vollständigkeit halber sei hier ein zur Implementierung des Elementes 303 geeigneter Prozessor für die Einzelfehlerkorrektur erwähnt, wie er in Fig. 10 der US-Patentschrift Nr. ; 3 868 632 dargestellt ist. Das dort beschriebene Gerät gibt einen Satz von KorrekturSignalen ab, die in der vorliegenden ! Spezifikation auf die Bahn 304 geleitet und schließlich als I ein Eingang an das Antivalenzglied 52 gegeben werden. '
sä 976 042 S 0 9 8 A 3 / 0 8 7 3
Wenn der Leiter 325 ein P2-Signal anzeigt, dann wird das Syndrom vom Prozessor 307 für die Korrektur von zwei Fehlern verarbeitet. Die Ausgabe des Prozessors 307 erscheint auf der Bahn 309 und wird durch die Bahn 50 geleitet.
Der ROM und Fehlerstatus
In den Fign. 4A und 4B sind die Eingangs- und Ausgangsanschlüsse des ROM 45 zusammen mit einem Verzeichnis seines Inhaltes dargestellt. Im Speicher 19 befinden sich η Wortadressen und m Chipstellen. Ein jedes r Wort-Tupel kann ein, zwei oder mehr Chips fehlerhafte Schleifen enthalten. Diese Information wird bei früheren Prüfungen gesammelt und im ROM weggespeichert. Die η Vektoren oder Zeiger werden adressiert durch Signale auf [log-(n)!Leitern, die die Bahn vom Adreßzähler 41 bilden. Der Vektor an jeder der η Adressen hat [m/s] Eintragungen, entsprechend der Anzahl von [m/s] Zeichen eines jeden Codewortes. Jede Eintragung entspricht "s" .benachbarten Chips. Die Eintragung Eins entspricht z.B. den Chips eins und zwei, die Eintragung Zwei den Chips drei und vier usw. Für jede r Tupel-Zeilenadresse (Schleife), speichert der ROM einen [m/s] Bitvektor, in dem ein von Null verschiedener Wert fehlerhafte Chips bezeichnet. In jedem Vektor können bis zu zwei von Null verschiedene Werte auftreten, so daß die resultierenden Fehler in dem entsprechenden r Tupel-Wort durch die Fehlerprüfcodebits korrigierbar sind.
Alle m Chips in einem Modul können defekt sein. Die Fehler können in der Nebenschleife liegen, in der Hauptschleife oder sie können auch das ganze Chip unbrauchbar machen. Alle solche Fehler werden durch den Code solange maskiert, wie nur zwei oder weniger fehlerhafte Chips in einem adressierten ! jr Tupel-Wort betroffen sind. Wenn drei oder vier fehlerhafte Chips ein r Tupel-Wort betreffen, werden solche Fehler mas-
SA976042 809843/0873
kiert, wenn die fehlerhaften Chips auf Paare nebeneinanderliegender Chips begrenzt sind, so daß nur zwei Codesymbole betroffen sind. Wenn ein herausgezogenes r Wort-Tupel außerdem durch solche Fehler nicht betroffen ist, schützt der Code vor unkontrollierten Softwarefehlern. Diese Verbesserung der Zuverlässigkeit läßt sich adaptiv aufrufen, sobald der Vektor aus lauter Nullen besteht. In Fig. 4B gehört zu jeder Stelle der η Nebenschleifenzeilen ein Vektor, der in seinen (m/s) Bitpositionen bis zu zwei Einsen enthält.
übertragung von Einzelwanddomänen zwischen Haupt- und Nebenschleife im einzelnen
In den Fign. 2 und 6A bis 6B ist die Konfiguration des Speichers 19 in Haupt- und Nebenschleifen und die Datenübertragung zwischen diesen Schleifen dargestellt, m Bits eines jeden Wortes werden auf die entsprechenden Bahnen 131, 132 13m an entsprechende Schreibgeneratoren gegeben. Diese wandeln ein elektrisches Signal für eine binäre Eins oder Null in das Äquivalent einer Einzelwanddomäne oder keiner um. Diese Domänen werden auf die entsprechenden Schreibleiter 171, 172 ... 17m gesetzt. Übertragungsschalter W11, W21, W31, ... W 1 auf einem gegebenen Chip, z.B. 271, lassen bei entsprechender Betätigung die Einzelwanddomäne vom Schreibleiter in die Gegenschleife übertragen. Aus der Beschreibung der Fig. 1A ist bekannt, daß r aufeinanderfolgende Wörter in Bits und parallel auf die entsprechenden Schreibleiter gesetzt werden. Jedes serielle Bündel von r binär codierten Einzelwanddomänen wird auf eine vorgewühlte Zeile von Nebenschleifen bei Betätigung der entsprechenden Schrexbübertragungsschalter in dieser Zeile geschrieben. In ähnlicher Weise können r aufeinanderfolgende binär codierte Einzelwanddomänen von jeder Nebenschleife in einer gegebenen Zeile bei Betätigung der Leseübertragungsschalter in die Leseleiter übertragen werden. Während die Speicheradressierung als solche über den
SA 976 O42 309843/0873
Rahmen der vorliegenden Erfindung hinausgeht, kann natürlich eine konventionell gebaute Steuereinheit 36 die Übertragungsschalter so betätigen, daß Zeilen von Nebenschleifen auf beliebiger oder auch einer anderen Basis (sequentiell) angesteuert werden können.
In den Fign. 6A bis 6D ist eine Datenübertragung von einer Neben- zu einer Hauptschleife gezeigt. In Fig. 6A sind drei Nebenschleifen 211, 212 und 213 dargestellt, in denen jeweils eine codierte Einzelwanddomäne umläuft. In diesen Fign. stellt jedes alphanumerische Zeichen eine entsprechende codierte Einzelwanddomäne dar. Die Kopplung einer jeden Nebenschleife mit dem Leseleiter 215 erfolgt in den Leseübertragungsschaltern R11, R01 und Ro1- Wenn diese zu einem beliebigen Zeitpunkt geschlossen werden, werden zwei aufeinanderfolgende codierte Einzelwanddomänen von jeder Schleife in den Leseleiter übertragen. So werden in Fig. 6B die Einzelwanddomänen 1, 3 und 5 von den Nebenschleifen 213, 212 und 211 übertragen. Im nächsten Taktintervall wird der Inhalt des Leseleiters um eine Zelle verschoben, um die betreffende nächste Domänengruppe 2, 4 und 6 aufzunehmen, bevor die Leseübertragungsschalter wieder geöffnet werden. In diesem Fall ist dieses ,das r Wort-Tupel 2, so daß ein entsprechendes Loch von zwei codierten Einzelwanddomänen in denselben relativen Positionen in den in jeder Nebenschleife umlaufenden Daten hinterlassen ,wird. Zwei codierte Einzelwanddomänen können natürlich von einem Schreibleiter am anderen Ende bei entsprechender Taktierung und Stellung der Schreibübertragungsschalter in die Nebenschleife übertragen werden.
Zusammenfassend sei noch einmal darauf hingewiesen, daß eine defekte Nebenschleife alle Bits beeinträchtigt, die von dieser Nebenschleife kommen. Äußerlich ist das Einzelwanddomänen-Chip so angelegt, daß jede Nebenschleife zwei Bits in einer Daten- j kette liefert, die auf einen Leseleiter geht, oder von einem
sä 976 042 8 0 9 8 4 3/0873
Schreibleiter kommt. Eine defekte Nebenschleife führt demzufolge zu Fehlern, die immer in denselben Bitpositionen in zwei aufeinanderfolgenden Wörtern in einem sequentiellen Strom von z.B. m = 20 Bitwörtern liegen. Es gibt also eine wechselseitige Abhängigkeit der Art, in der sich Fehler in der Nebenschleife in Datenfehlern zeigen. Diese Abhängigkeit wird durch eine inhärente Eigenschaft dieser weit verbreiteten Organisationsform von Einzelwanddomänenspeichern hervorgerufen .
Eine Anwendungsform des Patel-Code
Bei der bisherigen Beschreibung des Decodierers 2 in den Fign. 1A und 1B wurden die Daten als ein r Tupel von Wörtern formatiert. Wenn s Bits pro Symbol pro Wort gegeben sind, heißt das, daß die tatsächliche Codierung eines Symbols über alle Wörter im r Tupel verteilt ist. Die Größe von r ist bezogen auf die Übertragungsform zwischen Haupt- und Nebenschleife. Im Ausführungsbeispiel ist das r Wort-Tupel gleichgesetzt den sich gegenseitig ausschließenden Wortpaaren, worin jedes Wort mit m = 20 Bits aus 16 binären Datenbits und 4 binären Prüfbits besteht. Eine bekanntermaßen defekte Nebenschleife in einer gegebenen Speicherorganisation mit Haupt- und Nebenschleifen, erzeugt eine Lösung in den entsprechenden Bitpositionen in beiden Wörtern des Paares. Auf dieser Grundlage kann man das folgende Datenformat für die Fehlerkorrektur erklären.
Wenn Z. das Datensymbol bezeichnet, in dem Z. (0), Z,(1),
Z. (2) und Z. (3) die 4 binären Komponenten darstellen und C± das Prüf symbol ist, in dem C± (0), ΰ±(1), C±(2) und C
die 4 binären Komponenten darstellen und W ein Codewort aus i 8 Datensymbolen und 2 PrüfSymbolen ist, entsprechend einem r j Wort-Tupel von 40 Bits der beiden Speicherwörter V.. und V2, dann
läßt sich das darstellen als W= (Z., Z_, Z3 ..., Zg, C-, C3). j
SA 976 042 309843/0873
Die ersten beiden Komponenten eines jeden Symboles in W, sind vom ersten Wort V1 zugeordnet. Die übrigen beiden Komponenten eines jeden Symboles in W sind von dem zweiten Wort V2 zugeordnet. Somit ergibt sich:
V1 = [Z1(O), Z1(D, Z2(O), Z2(D,..., C1(O), C1(D, C2(O) C2(Dl
C2(3)2]
(2), Z1O), Z2(2), Z2(3),..., C1U), C1O), C2(2),
V1 (O) (D (O) (D (O) (D (O) (D (ο) (D V2 (2) (3) (2) (3) ,,, (2) (3) (2) (3) (2) (3) W Z1 Z2 Z8 C1 C2
32 Datenbits, angeordnet in 8 Symbolen von 4 Bits/Symbol 8 Prüfbits, angeordnet in 2 Symbolen von 4 Bits/Symbol.
für eine höhere Fehlerkorrekturmöglichkeit kann man eine JFehlerprüfcodierung verwenden, die sich mit Symbolen eines Feldes höherer Ordnung befaßt. Dabei ist insbesondere das
4
Galois-Feld GF(2) von 16 Elementen interessant. Die Symbole in diesem Feld können jeweils durch einen vierstelligen binären Vektor dargestellt werden. Die Daten- und Prüfsymbole powie die Fehler, sind Gruppen von vier angegebenen binären 3itpositionen. Ein Symbolfehler in dieser Anordnung entäpricht einer Fehlerkombination in den entsprechenden vier iinären Stellen. Der Einfachheit halber kann der Code anstatt Ln einem Feld in einer vereinfachten Matrix notiert werden. )ie Prüfsymbole errechnen sich aus den Datensymbolen mit folgenden Matrixbeziehungen:
SÄ976042 309843/0873
C-J — Ζλ + Zo "^· · '"^""Q
C2 = Τ21 + T2Z2 + T3Z3 +...+T8Zg
+ = Modulo 2 Summe
T = Begleitmatrix des Polynoms y (x) des vierten
Grades mit binären Koeffizienten
T = i-te Potenz der Matrix T
2 3 4
Wenn g (x) = g +g1x+g_x +g^x +x dann ist
3 3
g (x) = 1+x +x
AT =000 gQ =0001
1 0 0 g1 10 0 0
0 1 0 g2 0 1 O 0
0 0 1g., 0 0 0 1
Eine andere wichtige Eigenschaft der Matrix T besteht darin,
daß die Summe von
Potenz von T ist.
daß die Summe von T + T-* für jedes i und j ebenfalls eine
Die Begleitmatrix T ist expliziet gegeben durch den Koeffi- j zienten g. des Polynoms g (x). Da g von χ ein binäres primi- j tives Polynom des vierten Grades ist, gilt:
Trp2 φ3 _4 _14 „15 j
T15 = T o = ! = i
Ti . T-i . T15-1 I
Die Multiplikation bei Matrix T, erhoben in die i-te Potenz ;
mit einem vierstelligen bin^ :en Vektor, erfolgt durch ein !
RückkopplungsschieberegistejL, in dem die Ruckkopplungsver- j
bindungen entsprechend der Koeffizienz von g (x) erfolgen. \
Diese Eigenschaften der Matrix T vereinfachen die Implemen- J
tierung des Code im Codierer und Decodierer, zur Berechnung j von C1 und C... Der Prozeß der Codierung und Decodierung wird
SA976042 8098(3/0873
- 24 ,in dem Patel-Patent beschrieben.
Mit dem Patel-Code kann man je zwei fehlerhafte Symbole korrigieren, wenn ihre Positionen durch externe Vektoren oder Zeiger angegeben werden. Jedes fehlerhafte Symbol kann ohne solche Zeiger korrigiert werden. Diese Möglichkeit wird im vorliegenden Codeformat und der Einzelwanddomänen-Speicherorganisation angewandt auf die Fehlertoleranz gegen defekte Nebenschleifen und eine Verbesserung der Zuverlässigkeit gegenüber Softwarefehlern, wenn solche Fehler nicht vorhanden sind.
;Bei Anwendung eines weiteren Aspektes des Patel-Code auf die !vorliegende Erfindung, wird die Speicherung von Redundanz-'bitmustern zwei der m Chips im Einzelwanddomänenspeicher [Zugeordnet. In diesem Zusammenhang wird m bezogen auf s und sr durch Beschränkung seiner Lage im Bereich 3s<m<s (1+2sr).
'Relative Taktierung zwischen Datenadressierung und anderen j Systemübertragungen
jln Fig. 5 ist zusammen mit Fig. 1B die relative Taktierung zwischen der Datenadressierung und anderen Übertragungen im System dargestellt. Die in Fig. 5 gezeigte relative Taktie-[rung benutzt die Übertragungsbahn 37 zwischen Haupt- und j
jNebenschleife als Referenz. Der auf die Leitung 37 gelegte Impuls wird abgeleitet von den Übertragungs-Leitungstreibern 35; Die angezogenen r Zyklen stellen die Zeit dar, die zur Ver- ; Schiebung von r codierten Einzelwanddomänen von der Nebenschleife in die Hauptschleife (Leseleiter) erforderlich ist. Die Verschiebung der auf die Lesedetektoren der Abfühlschaltung 23 gegebenen Daten, ist auf die notwendige Weiterleitungszeit-Verzögerung zurückzuführen. Zwischen der Umwandlung der Daten aus der magnetischen Einzelwanddomäne in das Format eines elektrischen Signales in der Abfühlschaltung 23 und der
SA 976 O42 809843/0873
. ι
: i
Betätigung und Ausgabe vom Syndromgenerator 27, besteht außer-ι dem eine gewisse Überlappung. Der Rücksetzzähler 39 sperrt den j Adreßzähler 41 für eine Periode vom Beginn einer Übertragung ! bis einschließlich zur ersten Ausgabe vom Syndromgenerator 27. j Die Bedeutung liegt hier in der sicheren Synchronisation der | Ausgabe vom ROM 45 mit der Adressierung des Speichers 19. ;
SA 976 Ο42
809843/0873
ite

Claims (5)

  1. PATENTANSPRÜCHE
    ("ly Verfahren zur Feststellung und Unterscheidung verschiedenartiger Fehler, die beim Betrieb von wortorganisierten Speichern auftreten, die aus Haupt- und Nebenschleifen aufgebaut sind, in denen die Informationen umlaufen, insbesondere ladungsgekoppelte Speicher und magnetische Einzelwanddoraänenspeicher, dadurch gekennzeichnet, daß in einem ersten Schritt eine Konkordanztabelle zwischen jeder Speicheradresse und ihrem Fehlerstatus aufgestellt wird, daß in einem zweiten Schritt formatierte Daten von wenigstens einer Speicheradresse und dem zugehörigen Fehlerstatus von der Konkordanztabelle adressiert werden, daß in einem dritten Schritt ein Syndrom der adressierten Daten ermittelt wird und in einem vierten Schritt in den adressierten Daten das Vorhandensein entweder eines durch einen Maschinenfehler hervorgerufenen Fehlers beim gleichzeitigen Auftreten eines von Null verschiedenen Syndroms und eines Fehlers in der Gegenspeicheradresse, einen durch eine Störung induzierten Fehler, beim gleichzeitigen Auftreten eines von Null verschiedenen Syndroms und keines Maschinenfehlers oder überhaupt keinen Fehler beim Auftreten eines Null-Syndroms angezeigt wird.
  2. 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß alle Nebenschleifen auf einem Trägerplättchen auf einen Befehl hin Parallel-Einzelwanddomänen von ihren entsprechenden Positionen in die Hauptschleife übertragen, wo sie seriell abgefühlt werden, und daß eine Hauptschleife, die jede von η Nebenschleifen auf einer Seite geometrisch koppelt erfordert, daß die i-te Speicherzelle der Hauptschleife als Bitübertragungspunkt für die j-te Nebenschleife dient.
    sä 976 042 109843/0873
    ORIGINAL INSPECTED
  3. 3. Verfahren nach den Ansprüchen 1 und 2, dadurch gekennzeichnet, daß eine defekte Nebenschleife immer Fehler in derselben Bitposition in aufeinanderfolgenden Wörtern in einem sequentiellen Fluß eines r-Tupel von m-Bitwörtern verursacht.
  4. 4. Schaltungsanordnung zur Durchführug des Verfahrens nach den Ansprüchen 1 bis 3 in einem Speicher mit Haupt- und Nebenschleifen, einem Taktgeber und einer vom Taktgeber gespeisten Drehfeldquelle zum Treiben eines magnetischen Einzelwanddomänenspeichers, dadurch gekennzeichnet, daß ein Decodierer (2) vorgeschaltet ist, der eingegebene Daten neu formatiert, berechnet und ihnen eine vorgegebene Anzahl von Fehlerprüfbits hinzufügt und aus einem Symbolformatierer (3) einen nachgeschalteten Syndrom-Generator (7) und einem Wortformatierer (11) besteht, daß ein weiterer Decodierer (26) am Ausgang des Speichers (14) angeordnet ist, der die gelesenen Daten auf ihre Fehlerbedingung hin prüft, die Fehlerprüfbits weiter rechnet und einen Vergleich dieser nue errechneten Fehlerprüfbits mit den empfangenen Fehlerprüfbits vornimmt, der seinerseits aus einem Symbolformatierer (28) und einem Syndrom-Generator (27) besteht sowie aus einem Rücksetzzähler (39) , einem diesem Zähler nachgeschalteten Adreßzähler (41), der seinerseits einen Festwertspeicher (45) speist, der einen Vektor oder Zeiger der Fehlerstatusinformation als Funktion der Zeilen der Gruppe enthält und daß am Ausgang des Festwertspeichers eine Logikschaltung (49) angeschaltet ist, die einmal ein Signal zur Unterscheidung der Fehlerzustände "kein Fehler, Fehler in der Software oder Fehler in der Schaltung" und zum anderen zur Korrektur der Daten vor dem Ausgeben aus dem Decodierer : (26) dient.
    sä 976 O42 8 0 98^43/087 3
  5. 5. Schaltungsanordnung nach Anspruch 4, dadurch gekennzeichnet, daß der Symbolformatierer (28) auf ein 20 Bit paralleles χ 2 Bit serielles oder ein äquivalentes Format anspricht, das von einer Abfühlschaltung (23) über die m-parallelen Leiter einer Bahn (25) kommt, daß dieser Symbolformatierer (28) die Daten in zehn, jeweils vier Bit große Symbole umwandelt, daß der nachgeschaltete Syndrom-Generator (27) wiederum ein acht Bit großes Syndrom, basierend auf der Ausgabe des Symbolformatierers (28) erzeugt, daß ein erster Ausgang des Syndrom-Generators ein Syndrom und ein zweiter Ausgang die Daten liefert, die auf ein nachgeschaltetes XÜR-Schaltglied laufen, dessen weiterer Eingang (50) Korrekturdaten von der Logikschaltung (49) erhält, wodurch die Korrekturinformation antivalent mit den Daten des einen Ausgangs des Syndrom-Generators (27) zu einer korrigierten Datenausgabe auf der Ausgangsleitung (29') verknüpft werden.
    sä 976 042 509843/0873
DE19782816771 1977-04-25 1978-04-18 Verfahren und schaltungsanordnung zur feststellung und unterscheidung von fehlern, insbesondere in ladungsgekoppelten speichern und magnetischen einzelwanddomaenenspeichern Withdrawn DE2816771A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/790,506 US4100403A (en) 1977-04-25 1977-04-25 Method and means for discriminating between systematic and noise-induced error in data extracted from word organized memory arrays

Publications (1)

Publication Number Publication Date
DE2816771A1 true DE2816771A1 (de) 1978-10-26

Family

ID=25150893

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19782816771 Withdrawn DE2816771A1 (de) 1977-04-25 1978-04-18 Verfahren und schaltungsanordnung zur feststellung und unterscheidung von fehlern, insbesondere in ladungsgekoppelten speichern und magnetischen einzelwanddomaenenspeichern

Country Status (5)

Country Link
US (1) US4100403A (de)
JP (1) JPS53132951A (de)
DE (1) DE2816771A1 (de)
FR (1) FR2389198A1 (de)
GB (1) GB1580869A (de)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2811318C2 (de) * 1978-03-16 1983-02-17 Ibm Deutschland Gmbh, 7000 Stuttgart Einrichtung zur Übertragung und Speicherung eines Teilwortes
US4506362A (en) * 1978-12-22 1985-03-19 Gould Inc. Systematic memory error detection and correction apparatus and method
US4360915A (en) * 1979-02-07 1982-11-23 The Warner & Swasey Company Error detection means
US4360917A (en) * 1979-02-07 1982-11-23 The Warner & Swasey Company Parity fault locating means
US4319357A (en) * 1979-12-14 1982-03-09 International Business Machines Corp. Double error correction using single error correcting code
NL8202365A (nl) * 1982-06-11 1984-01-02 Philips Nv Serie-parallel-serie schuifregistergeheugen, hetwelk redundante parallelgeschakelde opslagregisters bevat, en afbeeldtoestel, voorzien van een zodanig georganiseerd beeldgeheugen.
JPS595497A (ja) * 1982-07-02 1984-01-12 Hitachi Ltd 半導体rom
US4891811A (en) * 1987-02-13 1990-01-02 International Business Machines Corporation Efficient address test for large memories
US5598422A (en) * 1990-04-30 1997-01-28 Dell Usa, L.P. Digital computer having an error correction code (ECC) system with comparator integrated into re-encoder
US5459742A (en) * 1992-06-11 1995-10-17 Quantum Corporation Solid state disk memory using storage devices with defects
US6795849B1 (en) * 2001-04-25 2004-09-21 Lsi Logic Corporation Paradigm for inter-networked storage
EP1560118A1 (de) * 2004-01-27 2005-08-03 Infineon Technologies AG Verfahren und Vorrichtung zur Erkennung und Korrektur von Fehlern
US7526715B2 (en) * 2005-10-17 2009-04-28 Ramot At Tel Aviv University Ltd. Probabilistic error correction in multi-bit-per-cell flash memory

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3245049A (en) * 1963-12-24 1966-04-05 Ibm Means for correcting bad memory bits by bit address storage
DE2134529A1 (de) * 1971-07-10 1973-01-25 Ibm Deutschland Verfahren zur fehlererkennung und -korrektur in aus dem speicher einer programmgesteuerten datenverarbeitungsanlage ausgelesenen informationswoertern
US3774153A (en) * 1971-11-09 1973-11-20 Bell Telephone Labor Inc Field-accessed, single-wall domain apparatus utilizing interacting shift register loops
USRE28923E (en) 1971-12-27 1976-08-03 International Business Machines Corporation Error correction for two bytes in each code word in a multi-code word system
US3792450A (en) * 1972-05-08 1974-02-12 Singer Co System for overcoming faults in magnetic anisotropic material
US3868632A (en) * 1972-11-15 1975-02-25 Ibm Plural channel error correcting apparatus and methods
US3909810A (en) * 1974-02-25 1975-09-30 Texas Instruments Inc Bubble memory minor loop redundancy scheme
US4005405A (en) * 1975-05-07 1977-01-25 Data General Corporation Error detection and correction in data processing systems
US4030067A (en) * 1975-12-29 1977-06-14 Honeywell Information Systems, Inc. Table lookup direct decoder for double-error correcting (DEC) BCH codes using a pair of syndromes
BE849126A (fr) * 1976-12-07 1977-04-01 Dispositif correcteur d'erreur pour decodeur de mot de code

Also Published As

Publication number Publication date
JPS5746160B2 (de) 1982-10-01
JPS53132951A (en) 1978-11-20
US4100403A (en) 1978-07-11
GB1580869A (en) 1980-12-03
FR2389198B1 (de) 1983-02-25
FR2389198A1 (fr) 1978-11-24

Similar Documents

Publication Publication Date Title
DE2853892C2 (de)
DE3751578T2 (de) Datenspeichersystem.
DE3125048C2 (de)
DE2532149C2 (de) Fehlerkorrekturanordnung
DE3128599C2 (de) Verfahren und Vorrichtung zur Fehlererfassung und Fehlerkorrektur
DE2357004A1 (de) Verfahren und einrichtung zur fehlerkorrektur fuer daten
DE2421112A1 (de) Speicheranordnung
DE3040004A1 (de) Verfahren und vorrichtung zum codieren von pruefworten geringer redundanz aus ursprungsdaten
DE2816771A1 (de) Verfahren und schaltungsanordnung zur feststellung und unterscheidung von fehlern, insbesondere in ladungsgekoppelten speichern und magnetischen einzelwanddomaenenspeichern
DE3209679C2 (de)
DE2260850A1 (de) Fehlerkorrektursystem
DE2427463C3 (de)
DE2854748A1 (de) Speichereinrichtung
DE2622184A1 (de) Fehlerkorrekturverfahren
DE2357168C2 (de) Schaltungsanordnung für einen Speichermodul
DE3111447A1 (de) Anzeigeschaltung fuer speicherschreibfehler
DE2357971A1 (de) Verfahren zum codieren und decodieren von daten zur korrektur von dreifachfehlern
DE2530404A1 (de) Fehlerkorrektur von seriell aufgezeichneten daten mit hilfe eines unterfeld-codes
DE2364788A1 (de) Verfahren und vorrichtung zur fehlerkorrigierenden datenuebertragung oder -speicherung
DE2157829C2 (de) Anordnung zum Erkennen und Korrigieren von Fehlern in Binärdatenmustern
DE1961554A1 (de) Fehlerkorrigierendes Sichersystem
DE2941868A1 (de) Anordnung zur vornahme einer fehlerkorrektur und fehlerermittelung bei binaerwoertern
DE2608435A1 (de) Vorrichtung zur fehlererkennung und fehlerkorrektur in digitalen datenverarbeitungsanlagen
DE2123769A1 (de) Verfahren zur Verbesserung von Fehlerkorrektion in einem signalverarbeitenden System
DE2300179C2 (de) Schaltungsanordnung zum Aufzeichnen von Magnetisierungsmustern auf einem magnetischen Aufzeichnungsträger

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee