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 polynomials

Info

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
Application number
DE19914130907
Other languages
German (de)
Inventor
Klaus Nagel
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE19914130907 priority Critical patent/DE4130907A1/en
Publication of DE4130907A1 publication Critical patent/DE4130907A1/en
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit

Abstract

A general class of circuits is disclosed which comprise a large number of shift registers with negative feedback via variously selected Exclusive-OR gates. In a preferred example each of two cyclic redundancy check code shift registers (CRC1,CRC2) consists of a linear concatenation of eight memories (S) and Exclusive-OR gates (EXOR) alternately. Both shift registers operate simultaneously on the same eight-bit data word (D0-D7) with a characteristics permutation of the bits applied to the gates of each register. ADVANTAGE - Data packets up to any length can be protected completely against two-bit transmission errors.

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)

1. Schaltungsanordnung zur Erzeugung zyklischer Codes, be­ stehend aus M Schieberegistern (CRC1, CRC2, . . .) zu je N Bit, welche jeweils durch eine lineare Verkettung von N speichern­ den Elementen (S) und N EXOR-Gattern (EXOR) aufgebaut sind, wobei
  • 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.
1. Circuit arrangement for generating cyclic codes, consisting of M shift registers (CRC1, CRC2,...) Each with N bits, each of which is constructed by a linear concatenation of N elements (S) and N EXOR gates (EXOR) are, where
  • 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.
2. Schaltungsanordnung nach Anspruch 1 mit zwei Schieberegi­ stern zu je acht Bit, welche die durch die binären Polynome
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.
DE19914130907 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 Ceased DE4130907A1 (en)

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)

* Cited by examiner, † Cited by third party
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

Cited By (7)

* Cited by examiner, † Cited by third party
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