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 einzelwanddomaenenspeichernInfo
- 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
Links
- 230000005291 magnetic effect Effects 0.000 title claims description 11
- 238000000034 method Methods 0.000 title claims description 10
- 230000015654 memory Effects 0.000 claims description 57
- 208000011580 syndromic disease Diseases 0.000 claims description 43
- 238000012546 transfer Methods 0.000 claims description 22
- 239000004020 conductor Substances 0.000 claims description 20
- 238000012937 correction Methods 0.000 claims description 18
- 230000002950 deficient Effects 0.000 claims description 12
- 239000013598 vector Substances 0.000 claims description 10
- 230000006870 function Effects 0.000 claims description 8
- 230000004069 differentiation Effects 0.000 claims description 3
- 208000019245 null syndrome Diseases 0.000 claims description 2
- 230000000295 complement effect Effects 0.000 claims 1
- 238000011144 upstream manufacturing Methods 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 description 17
- 239000011159 matrix material Substances 0.000 description 8
- 230000008520 organization Effects 0.000 description 7
- 239000000696 magnetic material Substances 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 4
- 230000009897 systematic effect Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000005381 magnetic domain Effects 0.000 description 2
- LKKMLIBUAXYLOY-UHFFFAOYSA-N 3-Amino-1-methyl-5H-pyrido[4,3-b]indole Chemical compound N1C2=CC=CC=C2C2=C1C=C(N)N=C2C LKKMLIBUAXYLOY-UHFFFAOYSA-N 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000005294 ferromagnetic effect Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 229910000889 permalloy Inorganic materials 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 229910052761 rare earth metal Inorganic materials 0.000 description 1
- 150000002910 rare earth metals Chemical class 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
- 101150079396 trpC2 gene Proteins 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity 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. .
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
.
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.
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.
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 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.
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
.
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:
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
+ = Modulo 2 Summe
T = Begleitmatrix des Polynoms y (x) des vierten
Grades mit binären Koeffizienten
T = i-te Potenz der Matrix T
T = i-te Potenz der Matrix T
2 3 4
Wenn g (x) = g +g1x+g_x +g^x +x dann ist
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
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
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)
- 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. 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/0873ORIGINAL INSPECTED
- 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. 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. 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
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)
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)
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 |
-
1977
- 1977-04-25 US US05/790,506 patent/US4100403A/en not_active Expired - Lifetime
-
1978
- 1978-03-23 FR FR7809187A patent/FR2389198A1/fr active Granted
- 1978-03-28 JP JP3495678A patent/JPS53132951A/ja active Granted
- 1978-04-18 DE DE19782816771 patent/DE2816771A1/de not_active Withdrawn
- 1978-04-19 GB GB15491/78A patent/GB1580869A/en not_active Expired
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 |