DD241800A1 - METHOD AND DEVICE FOR CORRECTION MORE BIT ERRORS - Google Patents
METHOD AND DEVICE FOR CORRECTION MORE BIT ERRORS Download PDFInfo
- Publication number
- DD241800A1 DD241800A1 DD28175985A DD28175985A DD241800A1 DD 241800 A1 DD241800 A1 DD 241800A1 DD 28175985 A DD28175985 A DD 28175985A DD 28175985 A DD28175985 A DD 28175985A DD 241800 A1 DD241800 A1 DD 241800A1
- Authority
- DD
- German Democratic Republic
- Prior art keywords
- shift register
- data
- correction
- digits
- shift
- Prior art date
Links
- 238000012937 correction Methods 0.000 title claims abstract description 40
- 238000000034 method Methods 0.000 title claims description 20
- 125000004122 cyclic group Chemical group 0.000 claims abstract description 13
- 230000001960 triggered effect Effects 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 abstract description 2
- 230000015654 memory Effects 0.000 description 11
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Landscapes
- Error Detection And Correction (AREA)
Abstract
Die Erfindung dient zur Korrektur von Buendelfehlern in bitseriellen Datenbloecken. Ihr Ziel ist es, Fehlerbuendel zu korrigieren, die sich aus falschen und/oder fehlenden bzw. zuviel erkannten Stellen zusammensetzen. Zwei Schieberegister, wovon das erste in Vorwaertsrichtung zur Erzeugung und Kontrolle des zyklischen Codes dient, werden zur Korrektur in Rueckwaertsrichtung betrieben und besitzen dafuer Rueckkopplungswege, die das inverse Generatorpolynom realisieren. Beide Schieberegister erhalten die Daten in Rueckwaertsfolge, wobei das erste vom entstandenen Restinhalt und das zweite vom Inhalt Null ausgeht. Die Datenzufuehrung und Taktung erfolgt um den Stellenzahlfehler versetzt. Zwei Vergleichseinrichtungen steuern bei Uebereinstimmung der Schieberegister Beginn und Ende der Korrektur. Die Korrekturdaten entstehen aus der Antivalenz der in das erste Schieberegister eingetragenen und der im Rueckkopplungsweg des zweiten Schieberegisters erzeugten Werte. Bis zum Entstehen der Korrekturdaten werden die Empfangsdaten in Rueckwaertsfolge um den Stellenzahlfehler versetzt. Anwendungsgebiete der Erfindung sind die Informationsspeicherung und die Informationsuebertragung. Fig. 1The invention serves to correct bunching errors in bit serial data blocks. Their goal is to correct bugs that are made up of wrong and / or missing or too much recognized bodies. Two shift registers, the first of which is used in the forward direction for the generation and control of the cyclic code, are operated for correction in the backward direction and therefore have feedback paths which implement the inverse generator polynomial. Both shift registers receive the data in reverse order, the first starting from the remaining content and the second from the content zero. The Datenzuufuehrung and clocking is offset by the digit number error. Two comparators control the beginning and end of the correction when the shift registers match. The correction data arises from the antivalence of the values entered in the first shift register and those generated in the feedback path of the second shift register. Until the correction data is generated, the receive data is offset in reverse order by the digit number error. Areas of application of the invention are the information storage and the information transmission. Fig. 1
Description
Die Erfindung betrifft ein Verfahren und eine Einrichtung zur Korrektur von Mehrbitfehlern, die in Form eines Fehlerbündels in bitseriell dargestellten Datenblöcken auftreten.The invention relates to a method and a device for the correction of multi-bit errors which occur in the form of an error bundle in bit-serially represented data blocks.
Für die Korrektur werden zyklische Codes, vorzugsweise Fire-Codes angewendet. Die Erzeugung des Codes und die Kontrolle beim Empfang wird in bekannter Weise durch ein Schieberegister realisiert.Cyclic codes, preferably fire codes, are used for the correction. The generation of the code and the control at the reception is realized in a known manner by a shift register.
Bitseriell dargestellte Datenblöcke treten bei der Informationsübertragung und bei den meisten Verfahren der Informationsspeicherung auf. Zum Beispiel werden bei Magnetplattenspeichern, aber auch bei optischen Speichern die Daten in Form von bitseriell dargestellten Datenblöcken gespeichert. Auch bei Magnetbandspeichern kann die Informationsdarstellung in jeder Spur als Folge bitserieller Datenblöcke aufgefaßt werden.Bit-sized data blocks occur in information transfer and in most information storage methods. For example, in the case of magnetic disk memories, but also in the case of optical memories, the data is stored in the form of bit-serially represented data blocks. Even with magnetic tape memories, the information representation in each track can be interpreted as a series of bit-serial data blocks.
Bei allen diesen Verfahren kann durch eine zeitlich begrenzte Störung die Information in einem Bereich verfälscht werden. Für die Korrektur derartiger Fehlerbündel kann das Verfahren und die Einrichtung vorteilhaft angewendet werden.In all these methods, the information in one area can be falsified by a time-limited disturbance. For the correction of such error bundles, the method and the device can be advantageously used.
Bei allen Verfahren der Informationsübertragung oder Informationsspeicherung können Fehler auftreten. Da in vielen Fällen der Aufwand zur Erhöhung der Fehlersicherheit sehr hoch ist oder die Einhaltung anderer Parameter unmöglich macht, wurden Methoden zur Fehlerkorrektur entwickelt. Insbesondere haben solche Verfahren eine Bedeutung erlangt, durch die es möglich ist, Fehlerbündel zu korrigieren.In all methods of information transfer or information storage errors may occur. Since in many cases the effort to increase the error safety is very high or makes it impossible to comply with other parameters, methods for error correction have been developed. In particular, such methods have gained importance, by which it is possible to correct error bundles.
Aufbauend auf den bekannten mathematischen Grundlagen wurde eine Vielzahl von Lösungen vorgeschlagen, die Vorteile im Aufwand oder hinsichtlich bestimmter Parameter besitzen.Based on the known mathematical principles, a large number of solutions has been proposed that have advantages in terms of complexity or with regard to certain parameters.
Eine Zusammenfassung der Grundlagen über zyklische Codes und Vorschläge zur Gestaltung von Korrektureinrichtungen wurden von W. PETERSON in dem Buch „Error correcting codes" bereits 1961 angegeben.A summary of the basics on cyclic codes and proposals for the design of correction devices were already given in 1961 by W. PETERSON in the book "Error correcting codes".
Weiterentwicklungen wurden zum einen mit dem Ziel durchgeführt, das Verhältnis zwischen-der Anzahl-redundanter Stellen und der Länge der korrigierbaren Fehlerbündel zu verbessern. Auf diese Zielstellung sind z.B. die DE-OS 1905138, die DE-AS 2014062, die DE-AS 1524891 und mit der Einschränkung auf zwei Bit die DE-AS 2162833 ausgelegt.Further developments have been carried out with the aim of improving the ratio between the number of redundant locations and the length of the correctable error bundles. For this purpose, e.g. DE-OS 1905138, DE-AS 2014062, DE-AS 1524891 and with the restriction to two bits DE-AS 2162833 designed.
Ein anderes Ziel ist die Erhöhung der Geschwindigkeit bei der Korrektur der Informationen, wie es in der DE-AS 2160 595 oder der DE-OS 3032468 als Vorteil angegeben wird.Another aim is to increase the speed of correcting the information, as indicated in DE-AS 2160 595 or DE-OS 3032468 as an advantage.
Mit der Einrichtung nach der DE-OS 2460263 können „Schlupffehler" korrigiert werden, d.h. Fehler, die durch eine Verschiebung um S Stellen aus dem sonst als richtig angenommenen Datenstrom entstehen, wobei der gleiche zyklische Code verwendet wird, wie er zur Korrektur von Fehlern zum Einsatz kommt.With the device according to DE-OS 2460263 "Slip errors" can be corrected, ie errors caused by a shift by S places from the otherwise assumed correct data stream, the same cyclic code is used as it is for correcting errors to Use comes.
Alle bisher bekannten Verfahren setzen aber voraus, daß die Stellenzahl der empfangenen Daten richtig ist und Fehler nur durch Veränderung des Inhaltes der Stellen in einem bestimmten Bereich auftreten oder durch eine Gesamtverschiebung entstehen.However, all previously known methods require that the number of digits of the received data is correct and errors occur only by changing the content of the bodies in a certain area or caused by a total shift.
Bekannte Lösungen gehen davon aus, daß beim fehlerfreien Empfang eines zyklischen Codes der Rest Null bei der Division entsteht und jeder Fehler als Überlagerung mit einem Fehlermuster betrachtet werden kann, das den gleichen Rest wie der Fehler erzeugt. Nach einer definierten Anzahl von Verschiebungen entsteht das Korrekturwort, das dann dem fehlerhaft empfangenen Bereich überlagert wird. Die Korrekturmöglichkeit wird daran erkannt, daß nur bestimmte Stellen einen von Null abweichenden Inhalt aufweisen. Weiterentwickelte Lösungen nutzen die Aufteilung des zur Division und Verschiebung genutzten Schieberegisters oder zusätzlich angeordnete Decodiereinrichtungen, die auf bestimmte Ergebnisse ansprechen bzw. Erkennungseinrichtungen, die den Bereich von Fehlerstellen mit einer angebbaren Wahrscheinlichkeit ermitteln. Andere Lösungen modifizieren das Verfahren durch die Anwendung von Multiplikationseinrichtungen oder von Tabellen zur Umcodierung. Da nur vom Rest ausgegangen wird, ist es nicht möglich, fehlende oder zu viel erkannte Stellen zu korrigieren.Known solutions assume that the error zero reception of a cyclic code, the remainder of zero in the division arises and each error can be regarded as an overlay with an error pattern that generates the same remainder as the error. After a defined number of shifts, the correction word is generated, which is then superimposed on the incorrectly received area. The correction possibility is recognized by the fact that only certain places have a non-zero content. Further developed solutions use the division of the shift register used for division and shift or additionally arranged decoders which respond to specific results or recognition devices which determine the range of error locations with a given probability. Other solutions modify the method through the use of multipliers or tables for transcoding. Since only the rest is assumed, it is not possible to correct missing or too much recognized positions.
Empfangseinheiten für bitserielle Datenblöcke besitzen eine Synchronisiereinrichtung, durch die die stellenrichtige Einordnung der Daten erfolgt. Beim Auftreten starker Störungen werden die empfangenen Daten so verfälscht, daß nur das Störbitmuster erkannt wird. Die Synchronisiereinrichtung spricht nach einer bestimmten Einschwingzeit auf das Störbitmuster an und verliert somit den Synchronismus zur Sendeeinheit. Nach dem Ende der Störungen wird der Synchronismus zu den Empfarigsdaten wieder hergestellt. Das hat zur Folge, daß im Bereich des entstandenen Fehlerbündels auch Stellen fehlen können oder zuviel Stellen erkannt werden können. Derartige Fehler lassen sich mit allen bisher bekannten Einrichtungen nicht korrigieren.Receive units for bit serial data blocks have a synchronizing device, by means of which the correct classification of the data takes place. If strong faults occur, the received data is corrupted so that only the fault bit pattern is detected. The synchronizer responds after a certain settling time on the Störbitmuster and thus loses the synchronism to the transmitting unit. After the end of the disturbances, the synchronism with the receiving data is restored. This has the consequence that in the area of the resulting error bundle can also be missing jobs or too many jobs can be detected. Such errors can not be corrected with all previously known devices.
Das Ziel der Erfindung besteht darin, die Möglichkeiten zur Erkennung und zur Korrektur von Fehlerbündeln zu erweitern und damit die Sicherheit bei der Übertragung und Speicherung von Informationen in bitserieller Darstellung zu erhöhen.The object of the invention is to expand the possibilities for the detection and correction of error bundles and thus to increase the security in the transmission and storage of information in bit-serial representation.
Die Aufgabe der Erfindung besteht darin, ein Verfahren und eine Einrichtung anzugeben, mit der Fehlerbündel korrigiert werden können, die sich aus falschen Stellen, aus fehlenden Stellen, aus zuviel erkannten Stellen oder aus der Kombination von falschen und zuviel oder zuwenig erkannten Stellen zusammensetzen können.The object of the invention is to provide a method and a device with which error bundles can be corrected, which can be composed of wrong places, missing places, too many recognized places or the combination of wrong and too much or too little recognized places.
Erfindungsgemäß wird die Aufgabe dadurch gelöst, daß ein erstes Schieberegister, das in Vorwärtsrichtung in bekannter Weise für die Erzeugung und Kontrolle des zyklischen Codes eingesetzt wird, beim Auftreten eines Fehlers in Rückwärtsrichtung betrieben wird und dafür einen Rückkopplungsweg besitzt, der das zum Generatorpolynom inverse Polynom realisiert und dem, ausgehend vom entstandenen Restinhalt, die Daten in Rückwärtsfolge zugeführt werden. Weiterhin enthält die Lösung ein zweites Schieberegister, das ebenfalls in Rückwärtsrichtung betrieben wird und einen Rückkopplungsweg besitzt, der das zum Generatorpolynom inverse Polynom realisiert und dem, ausgehend vom Inhalt Null, die Daten ebenfalls in Rückwärtsfolge zugeführt werden. Dadurch ergibt sich in dem ersten Schieberegister ein Inhalt, der mit dem Sollinhalt im Bereich vordem Fehlerbündel übereinstimmt und in dem zweiten Schieberegister ein Inhalt, der mit dem Sollinhalt im Bereich nach dem Fehlerbündel übereinstimmt. Die Taktung der Schieberegister und die Bereitstellung der Daten für die Schieberegister erfolgt dabei um so viel Stellen versetzt, wie sich aus der Differenz der empfangenen zur Sollstellenzahl ergibt, wodurch sich in beiden Schieberegistern ein Inhalt ergibt, der sich auf die gleiche Stelle bezieht. Zur Realisierung der Polynome werden Schieberegister benutzt, bei denen die Exklusiv-Oder-Stufen in den Rückkopplungswegen angeordnet sind, so daß sich in den Registern der Quotient des jeweiligen Restes bildet, dessen Teile sich schrittweise linear verschieben. Für ein Polynom der FormAccording to the invention the object is achieved in that a first shift register, which is used in the forward direction in a known manner for the generation and control of the cyclic code, is operated when a fault occurs in the reverse direction and therefore has a feedback path, which implements the inverse polynomial to the generator polynomial and, starting from the resulting residual content, the data is fed in reverse order. Furthermore, the solution includes a second shift register which is also operated in the reverse direction and has a feedback path which realizes the inverse polynomial to the generator polynomial and which, starting from the content zero, the data are also supplied in reverse order. This results in the first shift register, a content that matches the target content in the front error bundle and in the second shift register content that matches the target content in the area after the error bundle. The timing of the shift registers and the provision of the data for the shift registers is done by as many places offset, as is apparent from the difference of the received to the setpoint number, resulting in two shift registers content that refers to the same place. To implement the polynomials shift registers are used in which the exclusive-or stages are arranged in the feedback paths, so that forms in the registers of the quotient of the respective remainder, the parts of which shift gradually linear. For a polynomial of form
G(x) = (XC+1)· P(x) zeigt bei einem Fehlerbündel der LängeG (x) = (X C + 1) * P (x) points to an error bundle of length
die Übereinstimmung der niederwertigsten c Stellen die Stelle an, an der die Korrektur beginnen muß. Über eine erste Vergleichseinrichtung wird nun der Korrekturvorgang eingeleitet, indem das erste Schieberegister unverändert weiterbetrieben wird und das zweite Schieberegister in die Stelle X0 der Rückwärtsrichtung die gleichen Daten eingeschrieben werden, wie sie sich für das erste Schieberegister ergeben. Die einzuschreibenden Korrekturdaten werden durch die Exklusiv-Oder-Verknüpfung der eingeschriebenen Daten der Stelle X0 und der im Rückkopplungsweg des zweiten Schieberegisters entstandenen Daten erzeugt. Gleichzeitig werden die empfangenen Daten mit dem Beginn des Rückwärtslesens der Daten bis zum Beginn der Generierung der Korrekturdaten um die Differenz zwischen empfangener und Sollstellenzahl verschoben. Weitere Merkmale der Erfindung beziehen sich auf Ausführungsvarianten. Das betrifft die Verwendung von Paritätsdetektorschaltungen anstelle der in den Rückkopplungswegen angeordneten Exklusiv-Oder-Stufen für alle drei Rückkopplungswege und daß die für die Durchführung der Korrektur in Rückwärtsfolge gelesenen Daten einem Schieberegister Zugeführt werden, das mit zwei Umschalteinrichtungen verbunden ist, von denen die erste die Daten für das erste Schieberegister bereitstellt und die zweite die Daten sowohl für das zweite Schieberegister als auch für das Wiedereinschreiben der verschobenen Daten bereitstellt, daß die beiden Umschalteinrichtungen entsprechend der Differenz zwischen der empfangenen und der Sollstellenzahl eingestellt werden und daß zwei Adreßzähler vorhanden sind, von denen der erste für das Lesen der Daten bei der empfangenen Stellenzahl beginnt und der zweite für das Schreiben der Daten bei der Sollstellenzahl beginnt und daß beide Zähler rückwärts betrieben werden.the match of the least significant c places the point at which the correction must begin. Via a first comparison device, the correction process is now initiated by the first shift register continues to operate unchanged and the second shift register in the position X 0 of the reverse direction, the same data are written, as they result for the first shift register. The correction data to be written in are generated by the exclusive-ORing of the written-in data of the point X 0 and the data formed in the feedback path of the second shift register. At the same time, the received data is shifted by the difference between the number of received and setpoint positions until the beginning of the generation of the correction data with the beginning of the backward reading of the data. Further features of the invention relate to variants. This concerns the use of parity detector circuits instead of the exclusive OR stages arranged in the feedback paths for all three feedback paths and that the data read to perform the correction in reverse order are fed to a shift register connected to two switching devices, the first of which Provides data for the first shift register and the second provides the data for both the second shift register and the rewrite of the shifted data, that the two switching means are set according to the difference between the received and the set digit numbers and that two address counters are present, of which the first one begins to read the data at the number of digits received and the second begins to write the data at the setpoint count and both counters are operated backwards.
Die erfindungsgemäße Lösung für das Verfahren und die Einrichtung zur Korrektur von Mehrbitfehlem, die in Form von Fehlerbündel in bitseriell dargestellten Datenblöcken auftreten, wobei sich die Fehlerbündel aus fehlerhaften und fehlenden Stellen oder aus fehlerhaften und zuviel erkannten Stellen zusammensetzen können, soll an nachfolgendem Beispiel niedriger Stellenzahl erläutert werden. Dabei zeigenThe solution according to the invention for the method and the device for the correction of multi-bit errors, which occur in the form of error bundles in bit-serially represented data blocks, wherein the error bundles can consist of erroneous and missing points or of incorrect and too many recognized points, will be used in the following example with a low number of digits be explained. Show
Fig. 1: ein Blockschaltbild der erfindungsgemäßen Lösung,1 shows a block diagram of the solution according to the invention,
Fig.2: eine Tabelle für die von der Steuerung erzeugten Schaltzustände,2 shows a table for the switching states generated by the control,
Fig.3: den Inhalt des Schieberegisters SR1, wie er sich beim Empfang des fehlerfreien Polynoms E(x) schrittweise ergibt, Fig. 4: den Inhalt der Schieberegister SR1 und SR 2, wie er sich bei der Korrektur des fehlerhaften Datensatzes E'(x) ergibt, wobei3 shows the contents of the shift register SR1, as it is obtained step by step upon receipt of the error-free polynomial E (x), FIG. 4 shows the contents of the shift registers SR1 and SR2, as it is in the correction of the erroneous data record E '(FIG. x), where
der Datensatz drei fehlerhafte Stellen besitzt, Fig. 5: den Inhalt der Schieberegister SR1 und SR 2, wie er sich bei der Korrektur des fehlerhaften Datensatzes E" (x) ergibt, wobeiFIG. 5 shows the contents of the shift registers SR1 and SR2, as it results from the correction of the erroneous data record E "(x), where
in dem Datensatz drei Stellen fehlen und Fig. 6: den Inhalt der Schieberegister SR1 und SR 2, wie er sich bei der Korrektur des fehlerhaften Datensatzes E"'(x) ergibt, wobei in dem Datensatz drei Stellen zuviel erkannt wurden und drei Stellen fehlerhaft sind.in the record three digits are missing and Fig. 6: the contents of the shift registers SR1 and SR 2, as it results in the correction of the erroneous record E "'(x), where in the record three digits were recognized too much and three digits incorrect are.
Für das Ausführungsbeispiel wird folgendes Polynom zugrundegelegt, das die Korrektur von Bündeln der Länge b Si 3 in Datensätzen der Länge 1 S 35 zuläßt:For the embodiment, the following polynomial is used, which allows the correction of bundles of length b Si 3 in records of length 1 S 35:
G(X) = (X5+1)(X3 + X+1)G (X) = (X 5 +1) (X 3 + X + 1)
= X8+X6+X5 + X3 + X+1= X 8 + X 6 + X 5 + X 3 + X + 1
Das zugehörige inverse Polynom lautet dann:The corresponding inverse polynomial is then:
G*(x) = X8 + X7 + X5 + X3 + X2 + 1 Der Ausgangsdatensatz sei:G * (x) = X 8 + X 7 + X 5 + X 3 + X 2 + 1 The output data set is:
D(x) = X10 + X7 + X5 + X2 + X + 1D (x) = X 10 + X 7 + X 5 + X 2 + X + 1
Alle folgenden Funktionsbeschreibungen beziehen sich auf das Blockschaltbild nach Fig. 1 und die Tabelle der Schaltzustände nach Fig. 2.All the following functional descriptions refer to the block diagram of FIG. 1 and the table of switching states of FIG. 2.
Für die Erzeugung des zyklischen Codes sind während der Zuführung des Datensatzes D(x) die Gatter A1 und A2 über die Leitungen 1 und 2 geöffnet. Somit gelangt der Datensatz über A2 und das Oder-Glied 02 auf den Ausgang C(x). Gleichzeitig wird der Datansatz über Gatter A2, Oder-Glied 01 und Gatter A1 dem in Vorwärtsrichtung betriebenen Schieberegister SR1 zugeführt. Hierfür erhält das Schieberegister SR1 den VorwärtsschiebetaktTvi. Nachdem alle elf Stellen des Datensatzes eingegeben sind, ergibt sich im Schieberegister SR1 ein InhaltFor the generation of the cyclic code, the gates A1 and A2 are opened via the lines 1 and 2 during the feeding of the data record D (x). Thus, the record passes via A2 and the OR gate 02 to the output C (x). At the same time, the data set via gate A2, OR gate 01 and gate A1 is fed to the forwardly operated shift register SR1. For this purpose, the shift register SR1 receives the forward shift clock Tvi. After all eleven digits of the data set have been entered, a content results in the shift register SR1
modX9 = X6 + X5 + X4 + 1modX 9 = X 6 + X 5 + X 4 + 1
I1(X)I 1 (X)
G(x)G (x)
Dieser Inhalt entspricht der Stelle a in Fig. 3. Nunmehr werden die Gatter A1 und A2 gesperrt und über die Leitung 3 wird das Gatter A3 geöffnet. Damit entsteht über A3 und O 2 der anzuhängende RestThis content corresponds to the point a in FIG. 3. Now the gates A1 and A2 are blocked and via the line 3 the gate A3 is opened. This creates over A3 and O 2 of the rest to be attached
R'(x) = Kx) · G(x) mod X9 = X6 + X5 + X3 + X + 1 Am Ausgang C(x) wird also der zyklische Code C(x) = D(x) · X9 + R'(x)R '(x) = Kx) * G (x) mod X 9 = X 6 + X 5 + X 3 + X + 1 At the output C (x) the cyclic code C (x) = D (x) X 9 + R '(x)
Beim Empfangen des zyklischen Codes E(x) sind Gatter A1 und Gatter A4 geöffnet. Die Empfangsdaten werden über Gatter A4, das Oder-Glied 01 und Gatter A1 dem in Vorwärtsrichtung betriebenen Schieberegister SR1 zugeführt, wofür ebenfalls die Taktfolge Tvi angelegt wird. Damit ergibt sich im Schieberegister SR1 schrittweise ein Inhalt, wie er in Fig. 3 in der Reihenfolge von oben nach unten dargestellt ist. Als Ergebnis des fehlerhaften Datensatzes ergibt sich der Inhalt Null. Parallel dazu wird der Datensatz über Gatter A4 und Oder-Glied 05 in den Speicher SP eingegeben, in den er über einen ersten Adreßzähler AZ1 in Vorwärtsfolge eingeordnet wird. In dem Speicher SP steht der fehlerfreie DatensatzWhen receiving the cyclic code E (x), gate A1 and gate A4 are opened. The receive data is fed via gate A4, the OR gate 01 and gate A1 to the forwardly operated shift register SR1, for which purpose the timing sequence Tvi is also applied. This results in the shift register SR1 gradually a content, as shown in Fig. 3 in the order from top to bottom. As a result of the erroneous record, the content is zero. In parallel, the data set via gate A4 and OR gate 05 is entered into the memory SP, in which it is arranged via a first address counter AZ1 in forward sequence. In the memory SP is the error-free record
E(x) = C(x) = D(x) · X9 + R'(x)E (x) = C (x) = D (x) * X 9 + R '(x)
Da das Schieberegister SR2 auf Null steht, zeigen beide Vergleichseinrichtungen VE 1 und VE2 den Wert „Eins" an und signalisieren die Richtigkeit der Daten.Since the shift register SR2 is at zero, both comparators VE 1 and VE2 indicate the value "one" and signal the correctness of the data.
Als zweiter Fall wird angenommen, daß der empfangene Datensatz zwar die richtige Stellenzahl, aber drei fehlerhafte Stellen besitzt, wie in Fig.4 dargestellt. E'(x) besteht aus neun richtigen Stellen, gefolgt von drei fehlerhaften Stellen und anschließend wieder sieben richtigen Stellen. Die schrittweise Entwicklung des Inhaltes des Schieberegisters SR1 beim Empfang des Datensatzes E'(x) zeigt Fig.4 in der Reihenfolge von oben nach unten.In the second case, it is assumed that the received data record has the correct number of digits but three incorrect digits, as shown in FIG. E '(x) consists of nine correct digits, followed by three incorrect digits and then again seven correct digits. The stepwise development of the contents of the shift register SR1 upon receipt of the record E '(x) is shown in Fig.4 in the order from top to bottom.
Das Ergebnis ist in der Reihenfolge der DarstellungThe result is in the order of presentation
11101100 und entspricht l'(x) = X5 + X4 + X2 + X + 111101100 and corresponds to l '(x) = X 5 + X 4 + X 2 + X + 1
Da das Schieberegister SR 2 den Inhalt Null besitzt, zeigt die Vergleichseinrichtung VE 1 keine Übereinstimmung an, d.h. V1 = 0. Da die Stellenzahl richtig war, zeigt der erste Adreßzähler AZ1 k = η an. Das entspricht dem Ablauf nach 3b) in Fig.2. Die richtige Stellenzahl bewirkt, daß die beiden aus Multiplexoren gebildeten Umschalteinrichtungen MX1, MX2 über i = 0 bzw. j = 0 in die Grundstellung gebracht werden. Jetzt werden die Leitungen 5 und 6 auf „Eins" gelegt und beide Schieberegister SR1 und SR 2 in Rückwärtsrichtung betrieben. Hierfür werden ihnen die RückwärtsschiebetakteTR2i bzw. TR2 zugeführt. Im ersten Zyklus wird entsprechend dem ersten Adreßzähler AZ1 die Stelle k = η gelesen und in das Schieberegister SR3 eingeschrieben. Mit dem zweiten Takt des ersten Zyklus wird der Wert über MX1 und A5 dem Schieberegister SR1 sowie über MX2, A6.1, 03., A6.2 undSince the shift register SR 2 has the content zero, the comparator VE 1 does not indicate a match, ie, V1 = 0. Since the digit number was correct, the first address counter AZ1 indicates k = η. This corresponds to the sequence according to 3b) in Fig.2. The correct number of digits causes the two multiplexers formed switching devices MX1, MX2 are brought over i = 0 and j = 0 in the normal position. Now the lines are laid 5 and 6 to "one" and operated in the reverse direction, both shift registers SR1 and SR2. For this purpose, the reverse shift Overclocks them are R supplied 2i and T R2. In the first cycle the point is corresponding to the first address counter AZ1 k = η With the second clock of the first cycle, the value above MX1 and A5 is applied to the shift register SR1 as well as via MX2, A6.1, 03., A6.2 and
04 dem Schieberegister SR 2 zugeführt. Gleichzeitig gelangt der Wert über MX2, A6.1 und 05 auf den Einrgang des Speichers SP " und wird entsprechend dem Stand des zweiten Adreßzählers AZ2 in die Stelle η eingetragen. Danach wiederholt sich dieser Vorgang mit den um „Eins" reduzierten Zählerständen der beiden Adreßzähler AZ1 und AZ2. In den Schieberegistern SR1 und SR2 entsteht dabei ein Inhalt, wie er in Fig.4 in der Reihenfolge von unten nach oben erkennbar ist. Nachdem m = 7 Schritte ausgeführt sind, zeigt VE 1 die Übereinstimmung an. Es wird jetzt Leitung 6 zurückgeschaltet und Leitung 7 auf „Eins" gelegt. Damit werden die Daten nur noch über MX 1 und A5 dem Schieberegister SR1 zugeführt. Die gleichen Werte, wie sie in die Stelle X0 des Schieberegisters SR1 eingetragen werden, werden über A7.1 und 04 auch dem Schieberegister SR2 zugeführt. Das ist in Fig. 4 durch Punktein der Tabelle für SR 2 angegeben. Über A7.1,03 und A7.2 werden die Korrekturdaten gebildet, die über das Oder-Glied 05 in den Speicher SP geschrieben werden. Nach drei Korrekturschritten zeigen beide Vergleichseinrichtungen VE 1 und VE2 Übereinstimmung an, d.h. V1 · V2 = 1 und kennzeichnen damit, daß die Korrektur beendet ist.04 is supplied to the shift register SR 2. At the same time, the value via MX2, A6.1 and 05 arrives at the entry of the memory SP "and is entered in the position η in accordance with the state of the second address counter AZ2, after which this process is repeated with the counter readings of the two address counters reduced by" one " AZ1 and AZ2. In the shift registers SR1 and SR2 thereby creates a content, as can be seen in Figure 4 in the order from bottom to top. After m = 7 steps have been executed, VE 1 indicates the match. Line 6 is now switched back and line 7 is set to "1", so that the data is only fed via MX 1 and A5 to shift register SR 1. The same values as are entered in position X 0 of shift register SR1 are transferred via A7.1 and 04 are also fed to the shift register SR2, which is indicated by dots in the table for SR2 in Fig. 4. The correction data are formed via A7.1, 03 and A7.2, which are fed via the OR gate 05 into the After three correction steps, both comparators VE 1 and VE2 indicate agreement, ie, V1 × V2 = 1, indicating that the correction is complete.
Die restlichen Stellen können vom Eingabevorgang des Datensatzes E'(x) genutzt werden.The remaining digits can be used by the input process of the record E '(x).
Ein dritter Fall liegt vor, wenn ein Datensatz empfangen wurde, in dem Stellen fehlen. Fig. 5 zeigt einen Fall, daß nach dem Empfang von acht richtigen Stellen drei Stellen fehlen. Die schrittweise Entwicklung des Inhaltes des Schieberegisters SR1 beim Empfang des Datensatzes E"(x) ist in Fig. 5 in der Reihenfolge von oben nach unten dargestellt. Der entstehende Inhalt ist amA third case is when a record is received where digits are missing. Fig. 5 shows a case where three digits are missing after receiving eight proper digits. The stepwise development of the contents of the shift register SR1 upon receipt of the record E "(x) is shown in the order from top to bottom in Fig. 5. The resulting content is at
01110001 und entspricht l"(x) = X7 + X3 + X2 + X01110001 and corresponds to l "(x) = X 7 + X 3 + X 2 + X
Die Vergleichseinrichtung VE 1 zeigt fehlende Übereinstimmung an, da das Schieberegister SR 2 zu diesem Zeitpunkt voraussetzungsgemäß den Inhalt Null besitzt. Weiterhin ergibt sich die empfangene Stellenzahl zu k = 16, während die Sollstellenzahl η = 19 ist. In Fig. 2 sind unter 3a) die hierfür erforderlichen Einstellungen mit i = 3 und j = 0 angegeben. Damit ergibt sich folgender Ablauf: Lesen der Stelle kund Einschreiben in das Schieberegister SR 3. Der Wert wird über MX 2, A6.1,03, A6.2 und 04 in das Schieberegister SR 2 eingetragen, das in Rückwärtsrichtung betrieben wird. Gleichzeitig wird der Wert über MX2, A6.1 und 05 im Speicher SP in die Stelle η eingetragen. Nach Dekrementierung von k und η wiederholt sich dieser Vorgang noch zweimal. Das entspricht dem Ablauf der untersten drei Sch ritte für SR 2 in Fig. 5. Ab der vierten Stelle wird auch die LeitungThe comparator VE 1 indicates a mismatch, since the shift register SR 2 has the content zero at this time, as required. Furthermore, the number of digits received is k = 16, while the setpoint number η = 19. In FIG. 2, the settings required for this are indicated under i.sub.3a and j = 0 under 3a). This results in the following sequence: Reading the digit by writing into the shift register SR 3. The value is entered via MX 2, A6.1, 03, A6.2 and 04 in the shift register SR 2, which is operated in the reverse direction. At the same time, the value is entered via MX2, A6.1 and 05 in the memory SP in the position η. After decrementing k and η, this process is repeated twice more. This corresponds to the expiration of the lowest three stages for SR 2 in FIG. 5. The fourth digit also becomes the line
5 auf „Eins" geschaltet und SR1 erhält den RückwärtsschiebetaktTRi. Über MX 1 und A5 wird der um i = 3 Stellen versetzte Wert aus dem Schieberegister SR 3 dem Schieberegister SR1 zugeführt. Nachdem fünf Schritte in dieser Form abgelaufen sind, zeigt V1 = 1 die Übereinstimmung in den in Rückwärtsrichtung niederwertigsten fünf Stellen an. Nun wird die Leitung 6 auf „Null" und die Leitung 7 auf „Eins" geschaltet. Damit erhält nur noch SR1 die um drei Stellen versetzten Daten. Die gleichen Werte, wie sie in die Stelle X0 des Schieberegisters SR1 eingetragen werden, gelangen überA7.1 und 04 auch auf den Eingang des Schieberegisters SR2. Das ist in Fig. 5 durch Punkte in der Tabelle für SR 2 gekennzeichnet. Über A7.1,03, A7.2 und 05 werden die Korrekturdaten in den Speicher SP eingeschrieben.5 is set to "1" and SR1 receives the backward shift clock T R i, via MX 1 and A5, the value offset by i = 3 digits from the shift register SR 3 is supplied to the shift register SR1 1, the line 6 is switched to "zero" and the line 7 to "one", so that only SR1 receives the data offset by three digits, the same values as in the position X 0 of the shift register SR1 is also entered to the input of the shift register SR2 via A7.1 and 04. This is indicated in Figure 5 by points in the table for SR 2. Via A7.1,03, A7.2 and 05, the correction data is written in the memory SP.
Nach drei Korrekturschritten ergibt sich eine volle Übereinstimmung zwischen den beiden Schieberegistern SR1, SR 2, was durch V1 · V2 = 1 angezeigt wird. Der Korrekturvorgang kann abgebrochen werden, da die restlichen Stellen, d.h. die ersten empfangenen Stellen des Datensatzes E" (x) richtig waren. .After three correction steps, there is a full match between the two shift registers SR1, SR2, which is indicated by V1 · V2 = 1. The correction process can be aborted because the remaining locations, i. the first received digits of the record E "(x) were correct.
Ein Beispiel, in dem zuviel Stellen erkannt wurden und zusätzlich falsche Stellen enthalten sind, zeigt Fig. 6. Der Datensatz E"' (x) enthält in der Reihenfolge des Empfanges: Zwölf richtige Stellen, das Fehlerbündel mit drei falschen Stellen und drei Stellen zuviel und am Ende vier richtige Stellen. Dabei kann die Reihenfolge der falschen und zuviel erkannten Stellen im Fehlerbündel beliebig interpretiert werden. Den sich schrittweise ergebenden Inhalt des Schieberegisters SR1 zeigt Fig. 6 in der Reihenfolge von oben nach unten entsprechend der Vorwärtsrichtung von SRLAm Ende des Datensatzes entsteht der InhaltFIG. 6 shows an example in which too many digits were recognized and additionally incorrect digits are contained. The record E "'(x) contains, in the sequence of the reception: twelve correct digits, the error bundle with three incorrect digits and three digits too many and at the end four correct digits, whereby the order of the false and too many recognized digits in the burst can be arbitrarily interpreted., The successive contents of the shift register SR1 are shown in Fig. 6 in the top-down order corresponding to the forward direction of SRL at the end of the record the content arises
10111110, der I"' (χ) = X6 + X5 + X4 + X3 + X2 + 110111110, the I "'(χ) = X 6 + X 5 + X 4 + X 3 + X 2 + 1
entspricht. Die fehlende Übereinstimmung mit dem auf „Null" stehenden Schieberegister SR 2 wird durch V1 = 0 angezeigt. Die empfangene Stellenzahl beträgt k = 22, die Sollstellenzahl η = 19. In der Steuerung wird deshalb i = 0 und j = 3 gebildet. Die Reihenfolge der erzeugten Steuersignale ist in Fig. 2 unter 3c) angegeben. Zunächst wird nur die Leitung 5 auf „Eins" geschaltet. Die aus der Stelle k gelesenen Daten werden in das Schieberegister SR 3 eingetragen und anschließend sofort über MX 1 und A5 dem in Rückwärtsrichtung arbeitenden Schieberegister SR1 zugeführt. Dann wird k um „eins" dekrementiert. Die Einstellung η = 19 und SR 2 mit Inhalt „Null" bleibt bestehen. So werden die ersten drei Schritte ausgeführt, die den untersten drei Schritten des SR1 in Fig. 6 entsprechen. Nachdem die ersten j = 3 Schritte in der genannten Form verarbeitet wurden, wird die Leitung 6 auf „Eins" geschaltet und der Rückwärtsschiebetakt Tr2 dem Schieberegister SR2 zugeführt. Der erste Schritt in dieser Einstellung ist das Lesen der Stelle k - j = η = 19 und Einschreiben des Wertes in das Schieberegister SR 3. Die Daten gelangen weiterhin aus der ersten Stelle des SR3 über MX 1 und Ά5 zum Schieberegister SR1. Die um drei Stellen versetzten Daten werden aus der vierten Stufe des Schieberegisters SR3, d.h. Anschluß Nummer 3 über MX2,A6.1,0 3, A6.2 und 04 dem Schieberegister SR2 zugeführt. Gleichzeitig werden diese Daten über MX2.A6.1 und 05 in die Stelle η = 16 des Speichers SP eingetragen. Dieser Vorgang wiederholt sich mit zurückgezählten Adressen kund n, bis nach dem vierten Schritt der Ausgang V1 = 1 die Übereinstimmung der in Rückwärtsrichtung niederwertigsten fünf Stellen anzeigt. Das führt dazu, daß Leitung 6 zurückgeschaltet und Leitung 7 auf „Eins" gelegt wird. Das Schieberegister SR1 erhält weiterhin die Daten über MX 1 und A5. Die gleichen Werte, wie sie in die Stelle X0 des Schieberegisters SR1 eingetragen werden, gelangen auch über A7.1 und 04 zum Schieberegister SR 2. In Fig.6 sind diese Schritte für das Schieberegister SR 2 durch Punkte charakterisiert. Die Korrekturdaten entstehen über A7.1,0 3 und A7.2 und werden über das Oder-Glied O 5 dem Speicher SP zugeführt. Nach drei Korrekturschritten zeigt V1 · V2 = 1 die volle Übereinstimmung der beiden Schieberegister SR 1,SR2 und damit das Ende der Korrekturan. Die restlichen Stellen wurden aus E"' (x) bereits richtig in den Speicher SP eingeschrieben und können so übernommen werden. In der praktischen Ausführung können die Exklusiv-Oder-Stufen in den Rückkopplungswegen effektiv durch Paritätsdetektorschaltungen ersetzt werden.equivalent. The mismatch with the "zero" shift register SR 2 is indicated by V1 = 0. The number of digits received is k = 22, the setpoint number η = 19. Therefore, in the control, i = 0 and j = 3 are formed The control signals generated are indicated at 3c in Fig. 2. First, only the line 5 is switched to "one". The read data from the point k are entered in the shift register SR 3 and then immediately supplied via MX 1 and A5 to the shift register SR1 operating in the backward direction. Then k is decremented by "one." The setting η = 19 and SR 2 with content "zero" remains. Thus, the first three steps corresponding to the bottom three steps of the SR1 in FIG. 6 are executed. After the first j = 3 steps have been processed in the above-mentioned form, the line 6 is switched to "one" and the reverse shift clock Tr2 is supplied to the shift register SR 2. The first step in this setting is reading the position k -j = η = 19 and writing the value to the shift register SR 3. The data continues to go from the first position of the SR3 to the shift register SR1 via MX 1 and Ά5, and the data offset by three digits becomes the fourth stage of the shift register SR3, that is, port number 3 through MX2 At the same time, these data are entered via MX2.A6.1 and 05 into the position η = 16 of the memory SP This process repeats itself with the addresses counted back until, after the fourth step, the output V1 = 1 indicates the coincidence of the least significant five digits in the reverse direction, which causes the line 6 to switch back and the line 7 to "one " is placed. The shift register SR1 continues to receive the data on MX 1 and A5. The same values as are entered in the position X 0 of the shift register SR1 also pass to the shift register SR 2 via A7.1 and 04. In FIG. 6, these steps are characterized by dots for the shift register SR 2. The correction data are generated via A7.1.0 3 and A7.2 and are supplied via the OR gate O 5 to the memory SP. After three correction steps V1 · V2 = 1 shows the full match of the two shift registers SR 1, SR2 and thus the end of the correction. The remaining digits have already been properly written into the memory SP from E "'(x) and thus can be taken over." In practice, the exclusive-or stages in the feedback paths can be effectively replaced by parity detector circuits.
Die Einrichtung kann für beliebige Werte der Stellenzahl, der korrigierbaren Fehlerbündellänge und Stellenzahldifferenzen ausgelegt werden. Für die Dimensionierung gilt: Ein Polynom der FormThe device can be designed for any number of digits, correctable burst length and digit number differences. For the dimensioning applies: A polynomial of the form
G(x) = (Xc+1)-P(x)G (x) = (X c +1) -P (x)
hat den Gradhas the degree
g=c+p (p = Grad von P[x])g = c + p (p = degree of P [x])
und kann unter der Bedingungand can be under the condition
- c>p +.1 Fehlerbündel der Länge- c> p +.1 error bundle of length
in Datensätzen der Längein records of length
korrigieren.correct.
Dazu ist einzusetzen:For this purpose use:
SR 1,SR 2 mit einer Stellenzahl gSR 1, SR 2 with a number of digits g
VE1 miteinerStellenzahlg -bVE1 with a number of digits -b
VE2 miteinerStellenzahlbVE2 with one digit number b
SR3 miteinerStellenzahl max(i + 1,j + 1)SR3 with a number of positions max (i + 1, j + 1)
MX1 mit einer Anzahl Eingängen i + 1MX1 with a number of inputs i + 1
MX2 mit einer Anzahl Eingängen j + 1MX2 with a number of inputs j + 1
Für die Nennstellenzahl η = d + gFor the nominal number of points η = d + g
des Datensatzes giltof the data record applies
k=n + jSIk = n + jSI
Dazu ist einzusetzen:For this purpose use:
SP miteinerStellenzahlk= η + jSP with a number of digits k = η + j
AZ1 miteinerStellenzahl k = n+jAZ1 with a number of characters k = n + j
AZ2 miteinerStellenzahl ηAZ2 with an item number η
Claims (4)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DD28175985A DD241800A1 (en) | 1985-10-16 | 1985-10-16 | METHOD AND DEVICE FOR CORRECTION MORE BIT ERRORS |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DD28175985A DD241800A1 (en) | 1985-10-16 | 1985-10-16 | METHOD AND DEVICE FOR CORRECTION MORE BIT ERRORS |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| DD241800A1 true DD241800A1 (en) | 1986-12-24 |
Family
ID=5572165
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DD28175985A DD241800A1 (en) | 1985-10-16 | 1985-10-16 | METHOD AND DEVICE FOR CORRECTION MORE BIT ERRORS |
Country Status (1)
| Country | Link |
|---|---|
| DD (1) | DD241800A1 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8273181B2 (en) | 2007-08-30 | 2012-09-25 | Iogen Energy Corporation | Process of removing calcium and obtaining sulfate salts from an aqueous sugar solution |
-
1985
- 1985-10-16 DD DD28175985A patent/DD241800A1/en not_active IP Right Cessation
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8273181B2 (en) | 2007-08-30 | 2012-09-25 | Iogen Energy Corporation | Process of removing calcium and obtaining sulfate salts from an aqueous sugar solution |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE3124425C2 (en) | Method and device for error detection and error correction | |
| DE3128599C2 (en) | Method and device for error detection and error correction | |
| DE3853206T2 (en) | METHOD AND DEVICE FOR BYTIC WRITE ERROR ENCODING. | |
| DE2421112A1 (en) | MEMORY ARRANGEMENT | |
| DE2357004A1 (en) | PROCEDURE AND EQUIPMENT FOR ERROR CORRECTION OF DATA | |
| DE2427463C3 (en) | ||
| DE2724409A1 (en) | DATA PROCESSING SYSTEM | |
| DE2622184A1 (en) | ERROR CORRECTION PROCEDURE | |
| DE2530404A1 (en) | ERROR CORRECTION OF SERIALLY RECORDED DATA WITH THE HELP OF A SUBFIELD CODE | |
| DE2157829C2 (en) | Arrangement for recognizing and correcting errors in binary data patterns | |
| DE2659031A1 (en) | ERROR CORRECTION AND CONTROL SYSTEM | |
| DE2357168A1 (en) | MEMORY MODULE FOR A DATA PROCESSING UNIT | |
| DE69904618T2 (en) | DETECTION TECHNOLOGY OF STORAGE SECTION ERRORS AND SINGLE, DOUBLE AND TRIPLEBIT ERRORS | |
| DE3045609A1 (en) | METHOD AND CIRCUIT FOR DELIVERING A CORRECTED DATA GROUP TO A DETERMINATION CIRCUIT | |
| DE2053836C3 (en) | Arrangement for the correction of error bundles in binary coded data groups | |
| EP0615211A1 (en) | Device for storing security data | |
| DE69324327T2 (en) | Method for errors and deletion correction in digital information and suitable device for carrying out the method | |
| DE1287339B (en) | Circuit arrangement for error detection and correction | |
| DD241800A1 (en) | METHOD AND DEVICE FOR CORRECTION MORE BIT ERRORS | |
| DE2908373C2 (en) | ||
| DE2946163C2 (en) | Data transmission device with buffer memory and devices for backing up data | |
| EP0491073B1 (en) | Method and apparatus for protection of data in memory units | |
| DE3144263C2 (en) | ||
| DE4300025C1 (en) | Error coding data transmission method - recognising and/or correcting one and more bit errors and involves division of data word and test word into four bit wide part words | |
| DE3032468C2 (en) | Circuit arrangement for recognizing the pattern of error bundles |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| ENJ | Ceased due to non-payment of renewal fee |