DE4130907A1 - Cyclic code generator circuit with feedback shift registers - composed of alternate EXCLUSIVE=OR-gates and memories with different error syndromes given by binary polynomials - Google Patents
Cyclic code generator circuit with feedback shift registers - composed of alternate EXCLUSIVE=OR-gates and memories with different error syndromes given by binary polynomialsInfo
- Publication number
- DE4130907A1 DE4130907A1 DE19914130907 DE4130907A DE4130907A1 DE 4130907 A1 DE4130907 A1 DE 4130907A1 DE 19914130907 DE19914130907 DE 19914130907 DE 4130907 A DE4130907 A DE 4130907A DE 4130907 A1 DE4130907 A1 DE 4130907A1
- Authority
- DE
- Germany
- Prior art keywords
- shift registers
- gates
- shift register
- bits
- exor
- 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.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/09—Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
Abstract
Description
Zur Sicherung von Daten gegen Übertragungsfehler werden vorwiegend zyklische Codes (CRC, Cyclic Redundancy Check Codes) benutzt. Diese Codes können mit einfachen elektrischen Schaltungen erzeugt werden, deren Verhalten gut erforscht ist.To secure data against transmission errors predominantly cyclical codes (CRC, Cyclic Redundancy Check Codes). These codes can be done with simple electrical Circuits are generated, the behavior of which is well researched.
In der üblichen Ausführung, bei der die zu sichernden Datenwör ter parallel in ein Schieberegister eingespeist werden, blei ben gewisse Zwei-Bit-Fehler unentdeckt weil die Auswirkung eines Ein-Bit-Fehlers in einem Datenwort durch einen weiteren Ein-Bit-Fehler in einem der folgenden Datenwörter aufgehoben werden kann. Bei bekannten Realisierungen von Fehlerkorrektur schaltungen wurde dieser Nachteil dadurch zu überwinden ver sucht, daß man Fehlercodes mit großer Länge verwendete, wo durch die Wahrscheinlichkeit für nicht zu entdeckende Zwei- Bit-Fehler sehr klein gemacht werden konnte. Die trotzdem nicht zu entdeckenden Fehler wurden toleriert. Die hierbei verwendeten Fehlercodes großer Länge beeinflussen die effek tive Datenübertragungsrate negativ.In the usual version, in which the data word to be backed up ter are fed into a shift register in parallel, lead ben certain two-bit errors undetected because of the impact a one-bit error in one data word by another One bit error in one of the following data words cleared can be. In known implementations of error correction circuits, this disadvantage has been overcome seeks to use long length error codes where by the probability of undetectable two- Bit errors could be made very small. The anyway undetectable errors were tolerated. The one here Error codes of great length affect the effek tive data transfer rate negative.
Der Erfindung liegt die Aufgabe zugrunde, eine Schaltungsan ordnung zur Erzeugung zyklischer Codes anzugeben, welche eine vollständige Entdeckung von Zwei-Bit-Fehlern ermöglicht. Diese Aufgabe wird durch eine Schaltungsanordnung zur Erzeugung zyk lischer Codes mit Merkmalen nach Anspruch 1 gelöst.The invention has for its object a circuit order to generate cyclic codes to specify a Allows full detection of two-bit errors. These Task is through a circuit arrangement for generating zyk lischer codes with features according to claim 1 solved.
Bei dieser Schaltungsanordnung werden mehrere Schieberegister verwendet, welche jeweils durch eine lineare Verkettung von speichernden Elementen und EXOR-Gattern aufgebaut sind. Dabei ist jedem speichernden Element ein EXOR-Gatter vorgeschaltet. Der Ausgang eines jeden Schieberegisters ist mit einem Eingang des EXOR-Gatters am Eingang desselben Schieberegisters verbun den. Die Ausgänge der Schieberegister sind in unterschiedli cher, für das jeweilige Schieberegister charakteristischer Weise mit Eingängen ausgewählter EXOR-Gatter im Innern des jeweiligen Schieberegisters verbunden. Allen Schieberegistern der Schaltungsanordnung wird simultan das gleiche Datenwort transversal in unterschiedlicher, für das jeweilige Schiebe register charakteristischer Weise zugeführt, in dem den EXOR-Gattern eines jeden Schieberegisters eine für dieses Schieberegister charakteristische Permutation der Bits dieses Datenworts zugeführt wird. Hierdurch berechnen alle Schiebe register unterschiedliche Fehlersyndrome.In this circuit arrangement, several shift registers are used used, each by a linear concatenation of storing elements and EXOR gates are constructed. Here an EXOR gate is connected upstream of each storage element. The output of each shift register is with an input of the EXOR gate connected to the input of the same shift register the. The outputs of the shift register are different cher, more characteristic of the respective shift register Way with inputs of selected EXOR gates inside the respective shift registers connected. All shift registers the circuit arrangement becomes the same data word simultaneously transversely in different, for the respective sliding characteristically supplied in which the EXOR gates of each shift register one for this Shift register characteristic permutation of the bits of this Data word is supplied. This will calculate all slides register different error syndromes.
Es ist besonders vorteilhaft in Verbindung mit acht Bit brei ten Datenworten eine Schaltungsanordnung aus zwei Schiebere gistern zu acht Bit Länge zu verwenden, von denen ein Schiebe register ein Fehlersyndrom berechnet, welches durch ein Poly nom erzeugt wird, das den Faktor X + 1 enthält. Hierdurch wird die zuverlässige Erkennung von Fehlern mit einer ungeraden Zahl von fehlerhaften Bits gewährleistet.It is particularly advantageous in connection with eight bits of paste ten data words a circuit arrangement of two sliders ghosts to use eight bits in length, one of which is sliding register calculates an error syndrome, which is indicated by a poly nom is generated that contains the factor X + 1. This will the reliable detection of errors with an odd Guaranteed number of incorrect bits.
Fig. 1 zeigt ein bevorzugtes Ausführungsbeispiel der Schal tungsanordnung mit zwei Schieberegistern sowie acht Bits. Fig. 1 shows a preferred embodiment of the circuit arrangement with two shift registers and eight bits.
Im folgenden wird die Erfindung anhand eines bevorzugten Aus führungsbeispiels näher beschrieben.The invention based on a preferred Aus management example described in more detail.
Ein Ein-Bit-Fehler kann solange durch einen weiteren Ein-Bit- Fehler aufgehoben werden, bis er das Ende eines Schieberegi sters erreicht und später wieder, wenn nach vollen Perioden des Codes ein einzelnes Bit das Schieberegister durchläuft. Bei dieser Schaltungsanordnung werden mehrere, zum Beispiel zwei Schieberegister benutzt, in welche die Bits eines Daten wortes unterschiedlicher Reihenfolge eingespeist werden. Ein Ein-Bit-Fehler kann nur dann durch einen weiteren Ein-Bit-Feh ler aufgehoben werden, wenn in allen verwendeten Schieberegi stern gleichzeitig genau Ein-Fehler-Bit gesetzt ist, und wenn sich diese Bits zum gleichen Zeitpunkt an solchen Stellen be finden, an denen sie durch ein einziges Datenbit gelöscht wer den können. Die Reihenfolgen, in der Datenbits eingespeist werden, werden so gewählt, daß von Beginn an für möglichst viele Schritte ein einzelnes Datenbit nicht das Fehlersyndrom in allen Schieberegistern löschen kann.A one-bit error can be caused by another one-bit Errors are canceled until it ends the shift register sters reached and later again when after full periods of the code a single bit passes through the shift register. This circuit arrangement uses several, for example used two shift registers, in which the bits of a data words in different order. A A one-bit error can only be caused by another one-bit error be canceled if in all used sliders asterisk exactly one error bit is set at the same time, and if these bits are located at such points at the same time find where they are deleted by a single data bit that can. The orders in which data bits are fed are chosen so that from the beginning for as possible many steps a single data bit is not the error syndrome can delete in all shift registers.
Vorzugsweise werden zwei acht Bit Schieberegister benutzt, in welche die Datenbits der Datenworte in umgekehrter Reihenfolge transversal eingespeist werden, wodurch Datenpakete mit einer Länge von bis zu 509 Bytes vollständig gegen Zwei-Bit-Fehler gesichert werden können.Preferably two eight bit shift registers are used, in which are the data bits of the data words in reverse order are fed transversely, whereby data packets with a Length of up to 509 bytes completely against two-bit errors can be secured.
In einer bevorzugten Ausführungsform der Erfindung werden zwei acht Bit lange Schieberegister die jeweils durch eine lineare Verkettung von acht speichernden Elementen S und acht EXOR- Gattern (EXOR) aufgebaut sind, verwendet. Wie in Fig. 1 sicht bar, sind die Ausgänge der beiden Schieberegister auf ihre Eingänge zurückgekoppelt in dem der Ausgang eines jeden Schie beregisters mit einem Eingang des EXOR-Gatters am Eingang des selben Schieberegisters verbunden ist. Fig. 1 zeigt eben falls, daß die Ausgänge der beiden Schieberegister in unter schiedlicher, für das jeweilige Schieberegister charakteri stischer Weise mit Eingängen ausgewählter EXOR-Gatter im Innern des jeweiligen Schieberegisters verbunden sind. Hier durch berechnet jedes der beiden Schieberegister ein unter schiedliches Fehlersyndrom, welches im Fall der in Fig. 1 dargestellten Schaltungsanordnung durch die Polynome In a preferred embodiment of the invention, two eight-bit shift registers are used, each of which is constructed by a linear chain of eight storage elements S and eight EXOR gates (EXOR). As can be seen in FIG. 1, the outputs of the two shift registers are fed back to their inputs in which the output of each shift register is connected to an input of the EXOR gate at the input of the same shift register. Fig. 1 shows just in case that the outputs of the two shift registers are connected in different ways, characteristic for the respective shift register with inputs of selected EXOR gates inside the respective shift register. Here, each of the two shift registers calculates a different error syndrome, which in the case of the circuit arrangement shown in FIG. 1, by the polynomials
Q₁=x⁸+x⁶+x³+x²+1
Q₂=x⁸+x⁷+x²+1=(x+1)*(x⁷+x+1)Q₁ = x⁸ + x⁶ + x³ + x² + 1
Q₂ = x⁸ + x⁷ + x² + 1 = (x + 1) * (x⁷ + x + 1)
erzeugt werden. Den beiden Schieberegistern wird simultan das gleiche Datenwort transversal, aber in unterschiedlicher, für das jeweilige Schieberegister charakteristischer Weise zuge führt. Dies geschieht, indem den EXOR-Gattern eines jeden Schieberegisters eine für dieses Schieberegister charakteri stische Permutation der acht Bits dieses Datenwortes zugeführt wird. be generated. The two shift registers do this simultaneously same data word transversal, but in different, for the respective shift register is characteristic leads. This is done by using the EXOR gates of each Shift registers a characteristic of this shift register static permutation of the eight bits of this data word supplied becomes.
Die in Fig. 1 gezeigte Schaltungsanordnung ist nur ein bevor zugtes Ausführungsbeispiel für eine allgemeinere Klasse von Schaltungsanordnungen, welche aus einer größeren Anzahl M von Schieberegistern besteht. Diese Schieberegister unterscheiden sich jeweils in der Art und Weise der Rückkopplung ihrer Aus gänge auf unterschiedlich ausgewählte EXOR-Gatter im Innern dieser Schieberegister. Desweiteren unterscheiden sich diese Schieberegister durch die unterschiedliche Zuführung der Daten bits auf die EXOR-Gatter im Innern dieser Schieberegister. Je dem Schieberegister wird dabei eine andere Permutation der Datenbits zugeführt.The circuit arrangement shown in FIG. 1 is only a preferred embodiment for a more general class of circuit arrangements, which consists of a larger number M of shift registers. These shift registers each differ in the manner in which their outputs are fed back to differently selected EXOR gates inside these shift registers. Furthermore, these shift registers differ in the different feeding of the data bits to the EXOR gates inside these shift registers. A different permutation of the data bits is fed to each shift register.
Die Schaltungsanordnung hat den Vorteil, daß mit ihr zwei-Bit- Fehler sowie Fehler mit einer ungeraden Zahl von fehlerhaften Bits vollständig erkannt werden.The circuit arrangement has the advantage that it enables two-bit Errors as well as errors with an odd number of errors Bits are fully recognized.
Claims (2)
- a) jedem speichernden Element ein EXOR-Gatter vorgeschaltet ist,
- b) der Ausgang eines jeden Schieberegisters mit einem Eingang des EXOR-Gatters am Eingang desselben Schieberegisters ver bunden ist,
- c) die Ausgänge der Schieberegister in unterschiedlicher, für das jeweilige Schieberegister charakteristischer Weise mit Eingängen ausgewählter EXOR-Gatter im Innern des jeweiligen Schieberegisters verbunden sind,
- d) allen Schieberegistern simultan das gleiche Datenwort aus N Bit (D0, D1, . . .) transversal in unterschiedlicher, für das jeweilige Schieberegister charakteristischer Weise zu geführt werden, indem den N EXOR-Gattern eines jeden Schie beregisters eine für dieses Schieberegister charakteristi sche Permutation der N Bits dieses Datenwortes zugeführt wird, wodurch alle Schieberegister unterschiedliche Feh lersyndrome berechnen.
- a) each storage element is preceded by an EXOR gate,
- b) the output of each shift register is connected to an input of the EXOR gate at the input of the same shift register,
- c) the outputs of the shift registers are connected in a different manner, characteristic of the respective shift register, to inputs of selected EXOR gates inside the respective shift register,
- d) all shift registers are simultaneously fed the same data word from N bits (D 0 , D 1 ,...) transversely in a different manner, which is characteristic of the respective shift register, in that the N EXOR gates of each shift register have one for this shift register characteristic permutation of the N bits of this data word is supplied, whereby all shift registers compute different error syndromes.
Q₁=x⁸+x⁶+x³+x²+1
Q₂=x⁸+x⁷+x²+1=(x+1)*(x⁷+x+1)
begebenen Fehlersyndrome berechnen.2. Circuit arrangement according to claim 1 with two shift registers star of eight bits each, which by the binary polynomials
Q₁ = x⁸ + x⁶ + x³ + x² + 1
Q₂ = x⁸ + x⁷ + x² + 1 = (x + 1) * (x⁷ + x + 1)
calculate the error syndromes.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19914130907 DE4130907A1 (en) | 1991-09-17 | 1991-09-17 | Cyclic code generator circuit with feedback shift registers - composed of alternate EXCLUSIVE=OR-gates and memories with different error syndromes given by binary polynomials |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19914130907 DE4130907A1 (en) | 1991-09-17 | 1991-09-17 | Cyclic code generator circuit with feedback shift registers - composed of alternate EXCLUSIVE=OR-gates and memories with different error syndromes given by binary polynomials |
Publications (1)
Publication Number | Publication Date |
---|---|
DE4130907A1 true DE4130907A1 (en) | 1993-03-25 |
Family
ID=6440803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19914130907 Ceased DE4130907A1 (en) | 1991-09-17 | 1991-09-17 | Cyclic code generator circuit with feedback shift registers - composed of alternate EXCLUSIVE=OR-gates and memories with different error syndromes given by binary polynomials |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE4130907A1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19630343A1 (en) * | 1996-07-26 | 1998-02-05 | Ericsson Telefon Ab L M | Method, device and packet transmission system using error correction of data packets |
EP1422858A1 (en) * | 2002-11-19 | 2004-05-26 | Siemens Aktiengesellschaft | Method of determining residual error probability in data transmission |
DE102007028766A1 (en) | 2007-06-22 | 2008-12-24 | Continental Teves Ag & Co. Ohg | Test method and electronic circuit for the secure serial transmission of data |
DE102007028767A1 (en) | 2007-06-22 | 2008-12-24 | Continental Teves Ag & Co. Ohg | Bidirectional electronic bus communication circuits for use in vehicle control devices, have serial data transmission units where two or more alternative hardware data backup units are provided |
-
1991
- 1991-09-17 DE DE19914130907 patent/DE4130907A1/en not_active Ceased
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19630343A1 (en) * | 1996-07-26 | 1998-02-05 | Ericsson Telefon Ab L M | Method, device and packet transmission system using error correction of data packets |
DE19630343B4 (en) * | 1996-07-26 | 2004-08-26 | Telefonaktiebolaget L M Ericsson (Publ) | Method and packet transmission system using error correction of data packets |
EP1422858A1 (en) * | 2002-11-19 | 2004-05-26 | Siemens Aktiengesellschaft | Method of determining residual error probability in data transmission |
DE102007028766A1 (en) | 2007-06-22 | 2008-12-24 | Continental Teves Ag & Co. Ohg | Test method and electronic circuit for the secure serial transmission of data |
DE102007028767A1 (en) | 2007-06-22 | 2008-12-24 | Continental Teves Ag & Co. Ohg | Bidirectional electronic bus communication circuits for use in vehicle control devices, have serial data transmission units where two or more alternative hardware data backup units are provided |
WO2009000597A1 (en) * | 2007-06-22 | 2008-12-31 | Continental Teves Ag & Co. Ohg | Checking method and electronic circuit for the secure serial transmission of data |
US8352809B2 (en) | 2007-06-22 | 2013-01-08 | Continental Teves Ag & Co. Ohg | Checking method and electronic circuit for the secure serial transmission of data |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10133595B4 (en) | Buffer circuit, memory access method and Reed-Solomon decoder | |
DE102015201384B4 (en) | Apparatus and method for improving data storage by data inversion | |
DE69929652T2 (en) | Data error correction system | |
DE10238841B4 (en) | Parallel processing of the decoding and the cyclic redundancy check when receiving mobile radio signals | |
DE2159108A1 (en) | Arrangement for generating cyclic redundancy check characters | |
DE2914515A1 (en) | METHOD AND DEVICE FOR AN EFFECTIVE ERROR DETECTION AND CORRECTION SYSTEM | |
DE2657826A1 (en) | DEVICE FOR ERROR DETECTION AND ERROR CORRECTION IN THE STORAGE SYSTEM OF A IT SYSTEM | |
EP0545498B1 (en) | Method and circuit for decoding RS-coded data signals | |
DE2320422A1 (en) | PROCEDURE FOR ERROR DETECTION | |
DE102011085602A1 (en) | Apparatus and method for correcting at least one bit error in a coded bit sequence | |
DE2503107A1 (en) | CORRECTION CODE FOR PULSE ERROR | |
DE4105860A1 (en) | Recognition and correction circuitry for faults in RS coded data blocks - has data word forward counter transmitting target value in determining zero position | |
EP0003480B1 (en) | Circuit for converting binary information by means of check bits | |
DE2736967A1 (en) | ASYNCHRONOUS TELEMETRY CIRCUIT | |
DE2217935A1 (en) | Arrangement and procedure for correcting double errors | |
DE19539343C2 (en) | Method for error detection of a digital bit data stream that is transmitted from a transmitter to a receiver | |
DE4130907A1 (en) | Cyclic code generator circuit with feedback shift registers - composed of alternate EXCLUSIVE=OR-gates and memories with different error syndromes given by binary polynomials | |
DE1937248A1 (en) | Self-checking fault detection circuit | |
DE1290565B (en) | Procedure for correcting binary-coded messages at the receiver end | |
DE102013201422B3 (en) | Method for restoring lost and/or damaged data transmitted from transmitting device to receiving device, involves replacing current entry of LDPC parity check matrix with entry of Galois field until entry in matrix is modified | |
DE3104762A1 (en) | BINARY DATA TRANSFER SYSTEM | |
DE102014208996B3 (en) | Procedure for recovering lost and / or corrupted data | |
DE2163105A1 (en) | PROCEDURE AND CIRCUIT ARRANGEMENT FOR DECODING AND CORRECTING A SO-CALLED CONVOLUTIONAL CODE | |
EP0748055B1 (en) | Method for decoding data blocks received by a RDS receiver | |
EP1047199B1 (en) | Data transmission device and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8131 | Rejection |