DE2655653A1 - Correct address and word assignment recognition in data memory - involves single error correcting and double error detecting facility - Google Patents
Correct address and word assignment recognition in data memory - involves single error correcting and double error detecting facilityInfo
- Publication number
- DE2655653A1 DE2655653A1 DE19762655653 DE2655653A DE2655653A1 DE 2655653 A1 DE2655653 A1 DE 2655653A1 DE 19762655653 DE19762655653 DE 19762655653 DE 2655653 A DE2655653 A DE 2655653A DE 2655653 A1 DE2655653 A1 DE 2655653A1
- Authority
- DE
- Germany
- Prior art keywords
- address
- memory
- error
- bits
- check
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1012—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
- G06F11/1016—Error in accessing a memory location, i.e. addressing error
Abstract
Description
Verfahren und Anordnung zur Erkennung der richtigen ZuordnungProcedure and arrangement for recognizing the correct assignment
von Adresse und Speicherarort in einem Datenspeicher.of address and storage location in a data store.
Die Erfindung bezieht sich auf ein Verfahren nach dem Oberbegriff des Patentanspruchs 1. Sie betrifft ferner eine Anordnung zur Durchführung des Verfahrens.The invention relates to a method according to the preamble of claim 1. It also relates to an arrangement for carrying out the method.
In Verbindung mit sogenannten linear adressierten Speichern dient bekanntlich die Adresse zur Festlegung eines bestimmten Speicherorts. Je nach der Organisation des Speichers kann der adressierte Speicherort eine ganze Speicherzelle zur Aufnahme eines aus einer Vielzahl von Bits bestehenden, im allgemeinen als Speicherxfort bezeichneten Information, ein Speicherelement zur Aufnahme eines einzelnen Bits oder ein zwischen diesen Extremwerten liegender Speicherabschnitt sein. Im folgenden werden wortorganisierte Speicher vorausgesetzt.It is used in connection with so-called linearly addressed memories as is well known, the address for defining a specific storage location. Depending on the Organization of the memory, the addressed memory location can be an entire memory cell for receiving one consisting of a large number of bits, generally as a memory extension designated information, a storage element for receiving a single bit or a memory section lying between these extreme values. Hereinafter word-organized memories are required.
Die Funktion der Adresse zur Festlegung eines Speicherorts hat zur Folge, daß jeder Adresse mindestens vorübergehend eine bestimmte, zur Eingabe in diesen Speicherort vorgesehene oder sich in diesem Speicherort befindliche Information, ein Datum, zugeordnet ist. In der Regel interessiert allein diese Zuordnung.The function of the address to define a storage location has to As a result, each address has, at least temporarily, a specific one to be entered in Information intended for this storage location or located in this storage location, a date is assigned. Usually only this assignment is of interest.
Daran ändert sich im Prinzip nichts, wenn die Zuordnung von Zeit zu Zeit absichtlich, etwa durch Löschen oder Uberschreiben des bisherigen Speicherinhalts, verändert oder die ursprünglich vorgegebene Adresse modifiziert wird (z. B. Bildung realer Speicheradressen). Bei einer Verfälschung der Adresse durch Fehler in den Adresswegen einschließlich des Adressdecoders geht die Zuordnung verloren.In principle, nothing changes in this when the assignment of time to Deliberately time, for example by deleting or overwriting the previous memory contents, changed or the originally Modified specified address (e.g. formation of real memory addresses). If the address is falsified the assignment goes through errors in the address paths including the address decoder lost.
Es ist bereits bekannt, Speicherinhalte gegen eine Verfälschung (z. B. durch fehlerhafte Speicherelemente oder Datenwege im Speicher) zu sichern, indem sowohl von den einzugebenden als auch von den gelesenen Daten nach bestimmten gleichbleibenden Vorschriften Prüfbits abgeleitet und dIe beim Schreiben gebildeten und ebenfalls gespeicherten Prüfbits mit den beim Lesen gebildeten Prüfbits verglichen werden. Werden beim Vergleich einander entsprechender Prüfbits Unterschiede festgestellt, dann deutet das auf Datenfehler hin. Gebräuchlich ist zu diesem Zweck eine auf Hamming (The Bell System Technical Journal, Vol. 26, April 1950, Seiten 147 bis 160) zurückgehende Klasse von Korrekturcodes, mit deren Hilfe es möglich ist, innerhalb einer parallel und gleichzeitig behandelten Datenmenge (die im weiteren als Speicherwort bezeichnet wird und beispielsweise 64 Datenbits und 8 Korrekturbits umfaßt) entstandene Einfachfehler zu korrigieren und Doppelfehler zu erkennen. Derartige Codes sind unter der Bezeichnung SEC-DED-Codes (Single Error Correcting-Double Error Detecting) bekannt.It is already known to protect memory contents against corruption (e.g. B. by faulty memory elements or data paths in the memory) by both of the data to be entered and of the data read according to certain constant Regulations derived from check bits and the ones formed when writing and likewise stored check bits are compared with the check bits formed during reading. If differences are found when comparing corresponding check bits, then this indicates data errors. One on Hamming is commonly used for this purpose (The Bell System Technical Journal, Vol. 26, April 1950, pp. 147-160) Class of correction codes with the help of which it is possible within a parallel and the amount of data treated at the same time (hereinafter referred to as the memory word and comprises, for example, 64 data bits and 8 correction bits) resulting single errors correct and identify double errors. Such codes are under the designation SEC-DED codes (Single Error Correcting-Double Error Detecting) known.
Häufig werden auch die Speicheradressen selbst durch ein Paritätsbit, das am Anfang des Adressweges gebildet, mitübertragen und mit einem am Ende des Adressweges in gleicher Weise erzeugten Paritätsbit verglichen wird, gegen Fehler gesichert.The memory addresses themselves are often also represented by a parity bit, formed at the beginning of the address path, transferred and with a at the end of the Address path is compared in the same way generated parity bit against errors secured.
Abgesehen von der grundsätzlich begrenzten Leistungsfähigkeit solcher
Fehlersicherungsverfahren im allgemeinen, ergibt sich bei dieser Fehlersicherung
von Adressen noch der schwerwiegende Nachteil, daß die Adressdecodierung nicht mehr
davon umfaßt wird. Nicht erkannte Verfälschungen der Adresse stören die richtige
Zuordnung von Adresse und Speicherwort. Fehler, die auf den Adresswegen und im Decoder
entstehen können, lassen
sich in einige charakteristische Gruppen
einteilen. Die nachstehende Tabelle stellt für verschiedene Fehlertypen die Ursachen
und deren unmittelbare Wirkungen gegenüber.
Typ A: Die Daten sind falsch. Daber die Prüfbits dazu passen, merkt die Fehlerkorrektureinrichtung nichts davon. Entweder entsteht eine Programmstörung, oder es wird mit falschen Daten weitergearbeitet. Letzteres ist besonders gefährlich, da keine der sonst im Rechner vorhandenen Schutzeinrichtungen einen solchen Fehler erkennen kann.Type A: The data is incorrect. But notice that the test bits match the error correction facility does nothing of this. Either there is a program malfunction, or you will continue to work with the wrong data. The latter is particularly dangerous since none of the other protective devices in the computer have such an error can recognize.
Typ B: Viele Bits des Speicherworts sind fehlerhaft, die Daten und die Prüfbits passen nicht zueinander. Die Fehlerkorrektur, die höchstens Doppelfehler noch sicher erkennen kann, ist überfordert. Sie reagiert aber in etwa 45 % aller Fälle richtig und meldet dann einen nicht korrigierbaren Speicherfehler. In den restlichen Fallen reagiert sie falsch, sie erkennt auf korrigierbare Einzelfehler. Wenn die verfälschten Daten Programmbefehle sind, wird zumeist eine Programmstörung angezeigt. Sind jedoch zu verarbeitende Daten gefälscht, wird zunächst mit diesen falschen Daten weitergearbeitet. Da sich aber im allgemeinen ein Adresstehler über viele Speicheratzörter erstreckt, ist die Wahrscheinlichkeit für die schließliche Erkennung eines Fehlers hoch, weil bei jedem neuen Zugriff in den gestörten Bereich die Fehlerkorrektur mit einer Wahrscheinlichkeit von 45 e0 einen nicht korrigierbaren Fehler meldet.Type B: Many bits of the memory word are incorrect, the data and the check bits do not match. The error correction, the maximum double error can still safely recognize is overwhelmed. But it reacts in about 45% of all Cases correct and then reports an uncorrectable memory error. In the remaining traps it reacts incorrectly, it recognizes correctable individual errors. If the corrupted data are program instructions, it will mostly be a program malfunction displayed. However, if the data to be processed is falsified, it will be used first wrong data continued. But there is generally an address error extends many memory locations, the probability is for the eventual Detection of an error is high, because with each new access in the disturbed area the error correction with a probability of 45 e0 an uncorrectable Reports error.
Typ C: Bei geeigneter Auslegung der Fehlerkorrektur, z. B. durch Invertierung eines jeden zweiten Prüfbits vor der Einspeicherung, reagiert die Fehlerkorrektur richtig; sie meldet einen nicht korrigierbaren Speicherfehler.Type C: With a suitable design of the error correction, e.g. B. by inversion of every second check bit before storage, the error correction responds correct; it reports an uncorrectable memory error.
Typ D: Die Fehlerkorrektur und die Zentraleinheit der Datenverarbeitungsanlage reagieren wie bei Typ B.Type D: The error correction and the central unit of the data processing system react as with type B.
Typ-E: Da nur ein Bit des Speicherworts verfälscht wird, kann die Fehlerkorrektur dies erkennen und das gefälschte Bit korrigieren.Type-E: Since only one bit of the memory word is corrupted, the Error Correction Detect this and correct the forged bit.
Der Fehlertyp A ist der am schwersten erkennbare Adressfehler.Error type A is the most difficult to detect address error.
Aufgrund der Zahl der Bauelemente, die ihn hervorrufen können, ist die Wahrscheinlichkeit für sein Auftreten, zusammen mit dem Fehlertyp D, am größten. Der Erfindung liegt daher die Aufgabe zugrunde, Maßnahmen vorzustellen, mit deren Hilfe die richtige bzw. eine falsche Zuordnung von Adresse und Speicherwort feststellbar ist. Insbesondere sollen die Maßnahmen geeignet sein, Adressfehler des vorher geschilderten Typs A zu erkennen und bei ihrem Auftreten einen Alarm auszulösen. Gemäß der Erfindung wird diese Aufgabe durch ein Verfahren mit den im Patentanspruch 1 aufgeführten Merkmalen gelöst. Ausführungsbeispiele von Anordnungen zur Durchführung des Verfahrens sind den Patentansprüchen 5 bis 9 zu entnehmen. Die Erfindung wird nachstehend anhand der in den Figuren 1 und 2 dargestellten Ausführungsbeispielen näher erläutert.Because of the number of components that can create it is the probability of its occurrence, together with the error type D, is greatest. The invention is therefore based on the object of presenting measures with which Help determine the correct or incorrect assignment of address and memory word is. In particular, the measures should be suitable for address errors of the previously described Detect type A and trigger an alarm when it occurs. According to the invention this object is achieved by a method with those listed in claim 1 Features solved. Embodiments of arrangements for carrying out the method can be found in claims 5 to 9. The invention is illustrated below with reference to the exemplary embodiments illustrated in FIGS. 1 and 2 are explained in more detail.
Dem Ausführungsbeispiel nach Fig. 1 liegt der Gedanke zugrunde, aus der Adresse und dem zugehörigen Speicherwort einen Datenblock zu bilden, der zur Bildung der für die Fehler-Korrektur bzw. -Erkennung notwendigen Prüfbits als Einheit behandelt wird.The embodiment of FIG. 1 is based on the idea of the address and the associated memory word to form a data block that is used for Formation of the check bits necessary for error correction or detection as a unit is treated.
Setzt man nämlich für das Weitere voraus, daß das in den Speicher zu übergebende Speicherwort primär 6!+ Bit umfaßt, dann werden 8 Prüfbits für die Sicherung des Sneicher/orts gegen eine Verfälschung benötigt. Andererseits könnte jedoch mit der zur Verfügung gestellten Redundanz auch ein breiteres Speicherwort gesichert werden. Durch die gemeinsame Behandlung von Adresse und Speicherwort mit den Maßnahmen zur Fehlersicherung nach dem SEC-DED-Verfahren wird daher im allgemeinen keine größere Zahl von Prüfbits erforderlich werden.If one assumes for the further that it is in the memory The memory word to be transferred primarily comprises 6! + bits, then 8 check bits are used for the Securing of the sneaker / site against falsification is required. On the other hand, could however, with the redundancy made available, a wider memory word can also be used secured will. By treating the address and memory word together with the measures for error protection according to the SEC-DED method, therefore, there is generally no larger Number of check bits are required.
Die Figur zeigt ein Datenregister 1, in dem das zur Eingabe in den Speicher2 vorgesehene Speicherwort 3 vorübergehend aufbewahrt wird, analog dazu ist ein Adressenregister 4 zur zeitweiligen Speicherung der Adresse 5 vorgesehen. Adresse 5 und Speicherwort 3 werden einem Prüfbitgenerator 6 (CB-Generator) zugeführt. Hier werden aus dem Datenblock, der durch die Aneinanderreihung von Adresse und Speicherwort entstanden ist, Prüfbits abgeleitet, deren Anzahl sich nach der Breite des Datenblocks richtet. Die einzelnen Prüfbits werden durch modulo-2-Addition bestimmter Datenbits erzeugt, wobei sich die Regeln, nach denen die einzelnen Datenbits berücksichtigt werden, sich von Prüfbit zu Prüfbit unterscheiden. Es ist zu erwähnen, daß die von Hamming angegebene Klasse von Korrektur-Codes eine Vielzahl von Möglichkeiten umfaßt, die hinsichtlich ihrer Leistung zur Fehler-Korrektur bzw. -Erkennung gleichwertig sind. Spezielle Korrekturcodes, die einen einfachen Aufbau der zu ihrer Bildung und Auswertung benötigten Schaltungsanordnungen zulassen, sind z. B. durch die Literaturstelle "IBM Journal of Research and Development", Vol. 14, Juli 1970, Seiten 395 bis 400 und durch die DT-OS 2 344 019 bekannt geworden.The figure shows a data register 1 in which the input to the Memory word 3 provided for memory 2 is temporarily stored, analogously to this an address register 4 is provided for temporarily storing the address 5. Address 5 and memory word 3 are fed to a check bit generator 6 (CB generator). Here, the data block, which is created by the stringing together of address and Memory word has arisen, test bits are derived, the number of which depends on the width of the data block. The individual check bits are determined by modulo-2 addition Data bits generated, whereby the rules according to which the individual data bits are taken into account differ from check bit to check bit. It should be mentioned that those of Hamming specified class of correction codes encompasses a variety of ways which are equivalent in terms of their performance for error correction or detection are. Special correction codes that provide a simple structure to their formation and allow evaluation required circuit arrangements are, for. B. by the reference "IBM Journal of Research and Development", Vol. 14, July 1970, pages 395-400 and became known through DT-OS 2 344 019.
Der Prüfbit-Generator 6 kann technisch auf verschiedene Weise ausgeführt sein. Beispielsweise können hierzu EXCLUSIV-ODER-Glieder oder Verknüpfimgsglieder von der durch die DT-PS 1 929 144 bekannten Art verwendet werden.The test bit generator 6 can technically be implemented in various ways be. For example, EXCLUSIVE-OR elements or logic elements can be used for this purpose of the type known from DT-PS 1 929 144 can be used.
Die in dem Prüfbit-Generator 6 erzeugten Prüfbits C~ bis C7 werden bei einem Schreibvorgang zusammen mit dem Speicherwort 3 in den Speicher 2 übernommen. Selbstverständlich ist hierbei die Mitwirkung der Adresse erforderlich. Um anzudeuten, daß die Adresse selbst nicht in den Speicher 2 eingeschrieben wird, ist die entsprechende Wirkverbindung 5' in der Zeichnung mit gestrichelten Linien dargestellt.The check bits C ~ to C7 generated in the check bit generator 6 become transferred to memory 2 together with memory word 3 during a write operation. It goes without saying that the address must also be involved in this process. To suggest that the address itself is not written into the memory 2, is the corresponding Active connection 5 'in the drawing with dashed lines Lines shown.
Beim Lesen des Speichers 2 wird das Speicherwort 3 zusammen mit den Prüfbits C~ bis C7 ausgegeben. Gleichzeitig werden in einem zweiten Prüfbit-Generator 7 aus dem gelesenen Speicherwort und der Adresse erneut Prüfbits C~'bis C71 abgeleitet, Eie mit den Prüfbits C~ bis C7 identisch sind, wenn weder die Adresse noch das Speicherwort gefälscht wurden. Ist dagegen ein Fehler im Speicherwort aufgetreten oder liegt die richtige Zuordnung von Adresse und Speicherwort nicht mehr vor, dann unterscheiden sich die Prüfbits C~bis C7' von den Prüfbits C~ bis C7. Der bitweise Vergleich der Prüfbits wird in einem Vergleicher 8 vorgenommen. Das Ergebnis dieses Vergleichs bildet ein als Syndrom bezeichnetes Fehlerkennungzeichen mit den Syndrombits S~ bis S7, das Rückschlüsse über das Auftreten eines Fehlers oder über den Ort des Fehlers innerhalb des gefälschten Datenblocks zuläßt, sofern es sich um einen Einfachfehler handelt. Ein Fehler ist nicht aufgetreten, wenn das Syndrom den binären Wert Null hat, d. h. wenn alle Syndrombits S~ bis S7 gleich Null sind.When reading the memory 2, the memory word 3 together with the Check bits C ~ to C7 output. At the same time, a second check bit generator 7 from the read memory word and the address again test bits C ~ 'to C71 derived, Eie are identical to check bits C ~ to C7 if neither the address nor the memory word were counterfeited. If, on the other hand, an error has occurred or is in the memory word the correct assignment of address and memory word no longer before, then differentiate the check bits C ~ to C7 'differ from the check bits C ~ to C7. The bitwise comparison of the Check bits are carried out in a comparator 8. The result of this comparison forms a misidentification character called a syndrome with the syndrome bits S ~ to S7, which draws conclusions about the occurrence of an error or about the location of the Permits errors within the forged data block, provided it is a simple error acts. An error has not occurred if the syndrome has the binary value zero has, d. H. if all syndrome bits S ~ to S7 are equal to zero.
Hat dagegen mindestens eines der Syndrombits den Wert 1, dann bedeutet das, daß ein Fehler aufgetreten ist.If, on the other hand, at least one of the syndrome bits has the value 1, then means that an error has occurred.
Die Syndrombits S~ bis S7 werden einem Fehlerortdecoder 9 zugeführt, der den Informationsgehalt des Syndroms auswertet. Uber die Leitungen 10 bzw. 11 gibt der Fehlerortdecoder 9 Alarmsignale ab, wenn Einfach- oder Doppelfehler erkannt wurden. Wird ein Einfachfehler festgestellt, dann gibt der Fehlerortdecoder gleichzeitig über eine der Leitungen des Leitungsbündels 12 ein Signal an die Korrekturschaltung 15 ab. Jede dieser Leitungen ist einem Bit des Speicherwortes 3 zugeordnet. Die Korrekturschaltung 13 besteht beispielsweise aus EXCLUSIV-ODER-Gliedern, an deren Eingängen jeweils ein Bit des Speicherworts und ein von dem Fehlerortdecoder 9 geliefertes Steuersignal anliegen.The syndrome bits S ~ to S7 are fed to an error location decoder 9, who evaluates the information content of the syndrome. Via lines 10 and 11, respectively the fault location decoder emits 9 alarm signals when a single or double fault is detected became. If a single error is detected, the error location decoder emits at the same time a signal to the correction circuit via one of the lines of the line bundle 12 15 from. Each of these lines is assigned to a bit of the memory word 3. the Correction circuit 13 consists, for example, of EXCLUSIVE-OR gates, on whose Inputs each one bit of the memory word and one supplied by the error location decoder 9 Control signal present.
Wenn eines der vom Fehlerortdecoder 9 abgegebenes Steuersignal den binären Wert 1 besitzt und damit das zugeordnete Bit im Speicherwort als gefälscht gekennzeichnet, wird dieses Bit umgepolt. Es wäre jedoch nicht zweckmäßig, ein gefälschtes Bit im Bereich der Adresse des gesicherten Datenblocks zu korrigieren, da in den meisten Fällen nicht erkannt werden kann, ob ein Adressfehler während des Schreibens oder während des Lesens aufgetreten ist. Beim Auftreten eines Einfachfehlers im Bereich der Adresse wird daher ebenfalls ein Fehlersignal ausgelöst.If one of the control signals emitted by the fault location decoder 9 den has a binary value of 1 and thus the assigned bit in the memory word is falsified the polarity of this bit is reversed. However, it wouldn't be expediently, a forged bit in the area of the address of the secured data block to be corrected, since in most cases it cannot be recognized whether an address error is present occurred while writing or reading. When a A single error in the area of the address therefore also triggers an error signal.
Die Ausgabe dieses Fehlersignals kann über die Leitung 11 zur Anzeige von Doppelfehlern oder über eine weitere Leitung 14 geschehen.The output of this error signal can be displayed via line 11 of double errors or via a further line 14.
Es wurde eingangs schon darauf hingewiesen, daß den Adressen zur Feststellung möglicher Verfälschungen auf dem Adressweg häufig ein Paritätsbit beigefügt wird. Durch Überprüfung des Paritätsbits am Eingang des Adressdecoders können so bis zu dieser Stelle entstandene Einfachfehler der Adresse erkannt werden. Anstatt aus der Adresse und dem zugeordneten Speicherwort gemäß dem vorher beschriebenen Ausführungsbeispiel einen gemeinsamen Datenblock zu bilden, und diesen der SEC-DED-Fehlerkorrektur zu unterwerfen, ist es möglich, die aus dem Speicherwort allein abgeleiteten Prüfbits mit dem Paritätsbit der Adresse logisch zu verknüpfen. Ein diesbezügliches Ausführungsbeispiel zeigt die Figur 2.It was already pointed out at the beginning that the addresses for determination A parity bit is often added to possible corruptions on the address path. By checking the parity bit at the input of the address decoder, up to Any single errors in the address that arise at this point can be recognized. Instead of the address and the assigned memory word according to the previously described embodiment to form a common data block and to assign this to the SEC-DED error correction subject, it is possible to use the check bits derived from the memory word alone to be logically linked with the parity bit of the address. A related embodiment shows the figure 2.
Der in Figur 2 dargestellte Paritätsbit-Genertor 16 befindet sich im allgemeinen am Anfang des Adressweges. Ein zweiter Paritätsbit-Generator am Ende des Adressweges und die zugehörige Vergleichs- und Auswerteeinrichtung sind (ebenso wie der Adressdecoder)in der Fig. 2 nicht dargestellt, weil sie für den vorliegenden Fall nicht weiter von Interesse sind. Ein Prüfbit-Generator 17 (CB-Generator) bildet aus dem Speicherwort 3 die Prüfbits C~ bis C7. Bei einem Schreibvorgang werden mit dem Speicherwort 3 die Prüfbits C2 bis C7 unmittelbar in den Speicher 2 eingegeben. Zu den Prüfbits CX und C1 wird zuvor das Adress-Paritätsbit 18 modulo-2 addiert. Das geschieht mit Hilfe der beiden EXCLUSIV-ODER-Glieder 19 und 20. Die modifizierten Prüfbits C~* und Cl* werden ebenfalls in Zuordnung zum Speicherwort 3 in den Speicher 2 eingeschrieben.The parity bit generator 16 shown in FIG. 2 is located generally at the beginning of the address path. A second parity bit generator at the end of the address path and the associated comparison and evaluation device are (also like the address decoder) in Fig. 2 not shown because they are for the present Case are of no further interest. A check bit generator 17 (CB generator) forms the check bits C ~ to C7 from memory word 3. During a write process, with the test bits C2 to C7 entered directly into the memory 2 after the memory word 3. The address parity bit 18 is added modulo-2 beforehand to the check bits CX and C1. This is done with the help of the two EXCLUSIVE-OR elements 19 and 20. The modified ones Check bits C ~ * and Cl * are also assigned to memory word 3 in the memory 2 registered.
Beim Lesen eines Speicherworts 3 werden gleichzeitig die Prüfbits C~*, Ci* und C2 bis C7 ausgegeben. Aus dem gelesenen Speicherwort 3 werden wieder wie beim Einschreiben in den Speicher durch den Prüfbit-Generator 21 Prüfbits C0' bis C7' gebildet. Analog zu dem Vorgehen beim Einschreiben wird vor dem Prüfbitvergleich zu den Prüfbits C#' und C1' das Adress-Paritätsbit modulo-2 addiert. Die modulo-2-Addition wird durch die beiden EXCLUSIV-ODER-Glieder 22 und 23 durchgeführt. Der Vergleich der Prüfbits, die Auswertung des Prüfungsergebnisses (Syndrom) und gegebenenfalls die Korrektur des Speicherworts 3 erfolgen wie im Ausführungsbeispiel nach Fig. 1.When reading a memory word 3, the check bits are simultaneously C ~ *, Ci * and C2 to C7 are output. The read memory word 3 becomes again as when writing into the memory by the check bit generator 21 check bits C0 ' to C7 'formed. Analogous to the procedure for writing, before the check bit comparison the address parity bit modulo-2 is added to the check bits C # 'and C1'. The modulo-2 addition is carried out by the two EXCLUSIVE-OR gates 22 and 23. The comparison the test bits, the evaluation of the test result (syndrome) and, if applicable the correction of the memory word 3 takes place as in the exemplary embodiment according to FIG. 1.
Die Modifikation der Prüfbits durch das Adress-Paritätsbit ist nicht auf zwei Prüfbits beschränkt. Allgemein muß immer eine gerade Anzahl von Prüfbits durch das Adress-Paritätsbit beeinflußt werden. Im vorliegenden Fall können daher auch alle Prüfbits C~ bis C7 bzw. C#' bis C7' durch das Adress-Paritätsbit 18 modifiziert werden.The modification of the check bits by the address parity bit is not limited to two check bits. In general, there must always be an even number of check bits can be influenced by the address parity bit. In the present case, therefore also all check bits C ~ to C7 or C # 'to C7' are modified by the address parity bit 18 will.
Bei einem weiteren Ausführungsbeispiel einer Anordnung zur Erkennung der richtigen Zuordnung von Adresse und Speicherwort erfolgt die zweite EXCLUSIV-ODER-Verknüpfung des Adress-Paritätsbits mit den Prüfbits C~ und C1 (bzw. mit einer geraden Anzahl von Prüfbits) unmittelbar am Ausgang des Speichers 2. Die * EXCLUSIV-0DER-Verknüpfung entfällt dann. Durch die zweimalige Modifikation der Prüfbits C~ und C1 erhalten diese wieder ihren ursprünglichen Wert, wenn kein Fehler aufgetreten ist. Sie sind dann auch identisch mit dem vom zweiten Prüfbit-Generator 21 ausgegebenen Prüfbits C#'. und C1'.In a further exemplary embodiment of an arrangement for recognition the correct assignment of address and memory word is followed by the second EXCLUSIVE-OR link of the address parity bit with the check bits C ~ and C1 (or with an even number of check bits) directly at the output of memory 2. The * EXCLUSIV-0DER link then not applicable. Obtained by modifying the check bits C ~ and C1 twice this reverts to its original value if no error has occurred. they are then also identical to the check bits output by the second check bit generator 21 C # '. and C1 '.
Eine andere vorteilhafte Ausführungsform wird erhalten, wenn das durch den Paritätsbit-Generator 16 aus der Adresse abgeleitete Adress-Paritätsbit 18 anstelle der Adresse selbst dem Speicherwort hinzugefügt wird. Die Fehlersicherungsmaßnahmen gemäß dem SEC-DED-Verfahren, insbesondere die Prüfbitbildung bei der Speicher-Eingabe und -Ausgabe, beziehen sich dann auf das durch das Adress-Paritätsbit erweiterte Speichenvort. Es ist in diesem * am Ausgang des zweiten Prüfbit-Generators Fall besonders auffällig, daß eine Einfachfehlerkorrektur im Bereich der Adresse, hier also eine Korrektur des Adress-Paritätsbits völlig sinnlos wäre. Es dürfen nur Einfachfehler im Speicherwort selbst korrigiert werden. Bei Zusammentreffen eines Adressfehlers und eines Fehlers im Speicherwort reagiert die Fehlersicherungseinrichtung richtig; sie meldet einen nicht korrigierbaren Doppelfehler.Another advantageous embodiment is obtained when that through the parity bit generator 16 derived from the address address parity bit 18 instead the address itself is added to the memory word. The fail-safe measures according to the SEC-DED method, in particular the check bit formation when entering the memory and output, then refer to the one extended by the address parity bit Spoke front. It is in this * at the output of the second check bit generator case It is particularly noticeable that a single error correction in the area of the address is here so a correction of the address parity bit would be completely pointless. Only simple mistakes are allowed corrected in the memory word itself. When an address error occurs and an error in the memory word, the error protection device reacts correctly; it reports an uncorrectable double error.
2 Figuren 9 Patentansprüche L e e r s e i t e2 Figures 9 claims L e r s e i t e
Claims (9)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19762655653 DE2655653C2 (en) | 1976-12-08 | 1976-12-08 | Arrangement for determining the correct assignment of address and memory word in a word-organized data memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19762655653 DE2655653C2 (en) | 1976-12-08 | 1976-12-08 | Arrangement for determining the correct assignment of address and memory word in a word-organized data memory |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2655653A1 true DE2655653A1 (en) | 1978-06-22 |
DE2655653C2 DE2655653C2 (en) | 1982-12-16 |
Family
ID=5995006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19762655653 Expired DE2655653C2 (en) | 1976-12-08 | 1976-12-08 | Arrangement for determining the correct assignment of address and memory word in a word-organized data memory |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE2655653C2 (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0037362A1 (en) * | 1980-03-26 | 1981-10-07 | Licentia Patent-Verwaltungs-GmbH | Arrangement for protected data output |
EP0084460A2 (en) * | 1982-01-19 | 1983-07-27 | Tandem Computers Incorporated | Improvements in and relating to computer memory control systems |
WO1996042053A1 (en) * | 1995-06-09 | 1996-12-27 | Hal Computer Systems, Inc. | Method and apparatus for detecting memory addressing errors |
WO1998009219A1 (en) * | 1996-08-30 | 1998-03-05 | Siemens Aktiengesellschaft | Error recognition in a storage system |
EP0833249A1 (en) * | 1996-09-25 | 1998-04-01 | Nec Corporation | Semiconductor integrated circuit with error detecting circuit |
WO2003043022A2 (en) * | 2001-11-12 | 2003-05-22 | Siemens Aktiengesellschaft | Memory unit test |
DE102019113970A1 (en) * | 2019-05-24 | 2020-11-26 | Infineon Technologies Ag | DETECTION OF ADDRESS ERRORS |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3319710A1 (en) * | 1983-05-31 | 1984-12-06 | Siemens AG, 1000 Berlin und 8000 München | MEMORY CONTROL ARRANGEMENT, ESPECIALLY FOR AN ERROR-TOLERANT TELEPHONE MEDIATION SYSTEM |
US10740174B2 (en) | 2016-11-29 | 2020-08-11 | Taiwan Semiconductor Manufacturing Company, Ltd. | Memory address protection circuit and method |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1250163B (en) * | 1961-11-22 | 1967-09-14 | Western Electric Company, Incorporated, New York, NY (V St A) | Device for the parity check of memory words |
FR2282676A1 (en) * | 1974-08-19 | 1976-03-19 | Sperry Rand Corp | SECURITY SYSTEM FOR COMPUTER MEMORY |
-
1976
- 1976-12-08 DE DE19762655653 patent/DE2655653C2/en not_active Expired
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1250163B (en) * | 1961-11-22 | 1967-09-14 | Western Electric Company, Incorporated, New York, NY (V St A) | Device for the parity check of memory words |
FR2282676A1 (en) * | 1974-08-19 | 1976-03-19 | Sperry Rand Corp | SECURITY SYSTEM FOR COMPUTER MEMORY |
Non-Patent Citations (1)
Title |
---|
IBM Journal of Research and Development, Juli 1970, Seiten 395 bis 400 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0037362A1 (en) * | 1980-03-26 | 1981-10-07 | Licentia Patent-Verwaltungs-GmbH | Arrangement for protected data output |
EP0084460A2 (en) * | 1982-01-19 | 1983-07-27 | Tandem Computers Incorporated | Improvements in and relating to computer memory control systems |
EP0084460A3 (en) * | 1982-01-19 | 1986-06-11 | Tandem Computers Incorporated | Improvements in and relating to computer memory control systems |
WO1996042053A1 (en) * | 1995-06-09 | 1996-12-27 | Hal Computer Systems, Inc. | Method and apparatus for detecting memory addressing errors |
WO1998009219A1 (en) * | 1996-08-30 | 1998-03-05 | Siemens Aktiengesellschaft | Error recognition in a storage system |
US6442726B1 (en) | 1996-08-30 | 2002-08-27 | Siemens Aktiengesellschaft | Error recognition in a storage system |
US6073267A (en) * | 1996-09-25 | 2000-06-06 | Nec Corporation | Semiconductor integrated circuit with error detecting circuit |
EP0833249A1 (en) * | 1996-09-25 | 1998-04-01 | Nec Corporation | Semiconductor integrated circuit with error detecting circuit |
WO2003043022A2 (en) * | 2001-11-12 | 2003-05-22 | Siemens Aktiengesellschaft | Memory unit test |
WO2003043022A3 (en) * | 2001-11-12 | 2004-02-19 | Siemens Ag | Memory unit test |
US7287204B2 (en) | 2001-11-12 | 2007-10-23 | Siemens Aktiengesellschaft | Memory unit test |
CN100458717C (en) * | 2001-11-12 | 2009-02-04 | 西门子公司 | Memory unit test |
US11650877B2 (en) | 2019-03-24 | 2023-05-16 | Infineon Technologies Ag | Detecting address errors |
DE102019113970A1 (en) * | 2019-05-24 | 2020-11-26 | Infineon Technologies Ag | DETECTION OF ADDRESS ERRORS |
DE102019113970B4 (en) | 2019-05-24 | 2022-11-24 | Infineon Technologies Ag | DETECTION OF ADDRESSING ERRORS |
Also Published As
Publication number | Publication date |
---|---|
DE2655653C2 (en) | 1982-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2260850C2 (en) | Circuit arrangement for the detection of single and multiple errors and for the correction of single and certain multiple errors | |
DE2942998C2 (en) | Error correction and detection arrangement | |
DE2853892C2 (en) | ||
DE3125048C2 (en) | ||
DE2421112C2 (en) | Storage arrangement | |
DE69910320T2 (en) | Technology for single error correction in the cache memory with sub-block parity bits | |
DE3111447C2 (en) | ||
DE2430464A1 (en) | DEVICE FOR ERROR-PROOF DATA TRANSMISSION | |
DE2157829C2 (en) | Arrangement for recognizing and correcting errors in binary data patterns | |
DE1250163B (en) | Device for the parity check of memory words | |
DE2655653A1 (en) | Correct address and word assignment recognition in data memory - involves single error correcting and double error detecting facility | |
DE2450468A1 (en) | ERROR CORRECTION FOR A MEMORY | |
DE60215687T2 (en) | ERROR CORRECTION OF MULTIBIT MODULES WITH UNRESTRICTED DETECTION OF DOUBLE ERRORS | |
EP0615211B1 (en) | Device for storing security data | |
DE1959231A1 (en) | Method and device for correcting up to three errors in a code word consisting of 23 bits | |
DE2908373C2 (en) | ||
DE19635240A1 (en) | Storage system | |
DE3716594C2 (en) | Circuit arrangement for telecommunications systems, in particular telephone switching systems, with memory devices in which stored portions of information are checked for correctness | |
DE2134529A1 (en) | PROCEDURE FOR ERROR DETECTION AND CORRECTION IN INFORMATION WORDS READ OUT FROM THE MEMORY OF A PROGRAM-CONTROLLED DATA PROCESSING SYSTEM | |
DE69637427T2 (en) | Method and apparatus for detecting duplicate entries in a lookup table | |
DE3433679C2 (en) | ||
EP0491073B1 (en) | Method and apparatus for protection of data in memory units | |
DE2131848C3 (en) | Method and device for error detection and correction | |
DE2838005C2 (en) | Method and device for correcting 2-bit errors in code words | |
DE2706905A1 (en) | Memory protection system preventing data loss - has shunt switch protecting non-addressed memory elements during access radiation pulse |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OAP | Request for examination filed | ||
OD | Request for examination | ||
D2 | Grant after examination | ||
8339 | Ceased/non-payment of the annual fee |