NO851302L - SYSTEM FOR ERROR CORRECTION IN DIGITAL SIGNALS IN REED SOLO CODE - Google Patents
SYSTEM FOR ERROR CORRECTION IN DIGITAL SIGNALS IN REED SOLO CODEInfo
- Publication number
- NO851302L NO851302L NO851302A NO851302A NO851302L NO 851302 L NO851302 L NO 851302L NO 851302 A NO851302 A NO 851302A NO 851302 A NO851302 A NO 851302A NO 851302 L NO851302 L NO 851302L
- Authority
- NO
- Norway
- Prior art keywords
- circuit
- zero
- code
- errors
- equation
- Prior art date
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/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Detection And Correction Of Errors (AREA)
- Circuits Of Receivers In General (AREA)
Abstract
Description
SYSTEM FOR FEIL-KORRIGERING I DIGITALE SIGNALER I REED-SOLOMONKODE SYSTEM FOR ERROR CORRECTION IN DIGITAL SIGNALS IN REED-SOLOMON CODE
Foreliggende oppfinnelse vedrører en fremgangsmåte for koding og dekoding av digitale data ved bruk av en feil-kor-rigeringskode, likesom en koder og en dekoder for iverkset-ting av nevnte fremgangsmåte. Mer presist vedrører oppfinnelsen en fremgangsmåte for koding og dekoding ved bruk av Reed-Solomon-koden og de kodere og dekodere som utfører denne fremgangsmåte. The present invention relates to a method for coding and decoding digital data using an error correction code, as well as an encoder and a decoder for implementing said method. More precisely, the invention relates to a method for encoding and decoding using the Reed-Solomon code and the encoders and decoders that perform this method.
Reed-Solomon-koden er eksempelvis beskrevet i arbeidet "The Theory of Error-Correcting Codes" av F.J. Mac Williams og N.J.A. Sloane, North Holland Publishing Company, 1981, ka-pittel 10. The Reed-Solomon code is described, for example, in the work "The Theory of Error-Correcting Codes" by F.J. Mac Williams and N.J.A. Sloane, North Holland Publishing Company, 1981, Chapter 10.
Det vil erindres at en Reed-Solomon-kode i et begrenset Gallois-felt GF(q) er en Bose, Chaudhuri, Hocquenhem (BCH) kode med lengden N = q - 1. It will be recalled that a Reed-Solomon code in a finite Gallois field GF(q) is a Bose, Chaudhuri, Hocquenhem (BCH) code of length N = q - 1.
CBH kodene er koder hvor generator-polynomet pr. definisjon er som følger: The CBH codes are codes where the generator polynomial per definition is as follows:
hvor 6 er den utpekte avstand, med 6 - 2 = 2t + 1, hvis t representerer antall feil som skal korrigeres. where 6 is the designated distance, with 6 - 2 = 2t + 1, where t represents the number of errors to be corrected.
Røttene av G(x) er derfor dé suksessive potenser av et primitivt element som hører til GF(2). Det betyr at i et kodeord: The roots of G(x) are therefore the successive powers of a primitive element belonging to GF(2). This means that in a password:
har yn_j_ to mulige verdier, 0 eller 1, og yn_j_ has two possible values, 0 or 1, and
xn oppretter posisjonen av Yn_ ±> xn creates the position of Yn_ ±>
I en Reed-Solomon-kode er feltets karakteristikk ikke lenger 2, men ethvert helt primtall b som. resulterer i et felt GF(b^), Hver vn_j_ har ikke lenger to mulige former, men q = In a Reed-Solomon code, the characteristic of the field is no longer 2, but any whole prime number b which. results in a field GF(b^), Each vn_j_ no longer has two possible forms, but q =
bp former. Koeffisienten y . er et kodesymbol.bp forms. The coefficient y . is a code symbol.
n-i nine
En definisjon av polynomet resulterer dermed, hvor koeffisientene ikke lenger bare er hele tall 0 eller 1 (base 2), men elementer av GF(b<p>) som vil bli uttrykt av p binære elementer . A definition of the polynomial thus results, where the coefficients are no longer just whole numbers 0 or 1 (base 2), but elements of GF(b<p>) which will be expressed by p binary elements.
Hvis f. eks. mn= 0, q = 2 3 og hvis det karakteristiske polynom, som genererer elementene i feltet er lik x 3 + x 2 +1, da vil hver koeffisient bli uttrykt i form av et 3-bit ord. If e.g. mn= 0, q = 2 3 and if the characteristic polynomial, which generates the elements of the field is equal to x 3 + x 2 +1, then each coefficient will be expressed in the form of a 3-bit word.
Når det gjelder det binære tilfelle er røttene av polynomet definert slik og for irig = 0 er kodegenerator-polynomet: As for the binary case, the roots of the polynomial are defined as follows and for irig = 0 the code generator polynomial is:
Generator-polynomet må " ha et antall røtter lik det dobbelte antall t av feil som skal korrigeres. Faktisk har roten høyeste potens Røttene av generator-polynomet er derfor The generator polynomial must " have a number of roots equal to twice the number t of errors to be corrected. In fact, the root has the highest power The roots of the generator polynomial are therefore
Ettersom q er lik 8, blir kodeordenes lengde gitt ved N = 7 symboler. En kode C(7, 4) inneholder fire imformasjonssymbo-ler og tre styresymboler med tre biter i hver. Kodeordet kan eksempelvis skrives som: Since q is equal to 8, the length of the code words is given by N = 7 symbols. A code C(7, 4) contains four information symbols and three control symbols with three bits in each. The password can, for example, be written as:
hvor I(x) representerer informasjonssymbolene og R(x) styresymbolene som består av resten når I(x) divideres med G(x). where I(x) represents the information symbols and R(x) the control symbols which consist of the remainder when I(x) is divided by G(x).
En feil erkarakterisert vedsin verdi og posisjon i et gitt kodeord. I binær-kode-tilfellet er det nok å fastslå feilens posisjon, idet dens verdi blir oppnådd ved å supplere den feilaktige verdi i den beregnede posisjon. Korrigering av to feil ved hjelp av en binær kode innebærer derfor å løse et system med to ligninger med to ukjente. Men i tilfelle av en Reed-Solomon-kode dannes et kodesymbol av en pakke på p biter. I dette tilfelle er to feilkarakterisert vedfire parametre, henholdsvis deres to verdier og deres to posisjoner. An error is characterized by its value and position in a given code word. In the binary code case, it is enough to determine the position of the error, its value being obtained by supplementing the erroneous value in the calculated position. Correcting two errors using a binary code therefore involves solving a system of two equations with two unknowns. But in the case of a Reed-Solomon code, a code symbol is formed by a packet of p bits. In this case, two are mischaracterized by four parameters, respectively their two values and their two positions.
Oppfinnelsen når det gjelder både fremgangsmåten for koding og koderen og dekoderen for Reed-Solomon-koden skal nå be-skrives under henvisning til vedlagte tegninger, hvor The invention in terms of both the coding method and the encoder and decoder for the Reed-Solomon code will now be described with reference to the attached drawings, where
fig. 1 i form av et blokk-skjerna representerer koderen for Reed-Solomon-koden som legemliggjør oppfinnelsen, fig. 1 in the form of a block kernel represents the encoder of the Reed-Solomon code embodying the invention,
fig. 2 representerer dekoderen for Reed-Solomon-koden som legemliggjør oppfinnelsen, og fig. 2 represents the decoder of the Reed-Solomon code embodying the invention, and
fig. 3 representerer dekodealgoritmen.fig. 3 represents the decoding algorithm.
1 - KODING1 - CODING
Som angitt ovenfor, er kodens symboler elementer i det be-grensede felt på 2P elementer. Hvert kodesymbol omfatter p biter. As indicated above, the symbols of the code are elements in the limited field of 2P elements. Each code symbol comprises p bits.
Kodesymbolene oppnås ved deling av informasjonsmeldingen I(x) med generator-polynomet G(x). The code symbols are obtained by dividing the information message I(x) by the generator polynomial G(x).
Koden består av m informasjonssymboler og k styresymboler. The code consists of m information symbols and k control symbols.
Koden er angitt ved C(m + k, m). En velkjent fremgangsmåte for koding består av å forhåndsmultiplisere I(x) med x^, hvor k er høyeste grad i generator-polynomet og å dividere det således oppnådde produkt med G(x), dvs. The code is denoted by C(m + k, m). A well-known method for coding consists of pre-multiplying I(x) by x^, where k is the highest degree in the generator polynomial and dividing the thus obtained product by G(x), i.e.
hvor G(x) har den polynomialform som tidligere er antydet med k = m + 6 - 1. Den beskrevne kode er en kode C(255, 247) med 2y d = 2 8, når I (x) = z 247 x 2 + ....Zq where G(x) has the polynomial form previously indicated by k = m + 6 - 1. The described code is a code C(255, 247) with 2y d = 2 8, when I (x) = z 247 x 2 + ...Zq
Koeffisientene A, B, C, D, E, F, G og H er åtte-bit ord. The coefficients A, B, C, D, E, F, G and H are eight-bit words.
Polynomialdivisjonen som skal utføres er:The polynomial division to be performed is:
Resultatet av divisjonen er: The result of the division is:
Første ledd av kvotienten er: The first part of the quotient is:
Første partielle rest er: First partial remainder is:
Andre lett av kvotienten er: Others easily by the quotient are:
Andre partielle rest er: Other partial remainders are:
Når første symbol opptrer ved systeminngangen, er de foregående partielle rester null. LaZ247være dette første symbol. Krets 2 lagrer z 247 temporært, mens krets 3 gir resultatet av multiplisering av z247med hvert av leddene i generator-polynomet. De partielle rester blir lagret i krets 1 i en rekke-følge som er karakteristisk for systemet. When the first symbol appears at the system input, the preceding partial residues are zero. LaZ247be this first symbol. Circuit 2 stores z 247 temporarily, while circuit 3 gives the result of multiplying z 247 by each of the terms of the generator polynomial. The partial residues are stored in circuit 1 in a sequence that is characteristic of the system.
Når det andre symbol ' z- 2^ ankommer til inngangen til systemet, blir det modulo-2 addert til foregående partielle rest av høyeste grad. Resultatet av dette blir lagret i 2. Krets 3 utfører deretter multiplikasjonene med de foregående par-tieller rester og prosessen fortsetter, inntil det 247.symbol er innført i systemet. When the second symbol ' z- 2^ arrives at the input of the system, it is added modulo-2 to the preceding partial remainder of the highest degree. The result of this is stored in 2. Circuit 3 then performs the multiplications with the preceding partial remainders and the process continues, until the 247th symbol is introduced into the system.
Krets 1 er en direktelagerenhet for k ord på p biter. Kretsene 2 og 3 er lagerenheter for p biter. Circuit 1 is a direct storage device for k words of p bits. Circuits 2 and 3 are storage units for p bits.
Krets 4 er en modulo-2 adderer for p biter.Circuit 4 is a modulo-2 adder for p bits.
Når det gjelder krets 5, består denne av en uforanderlig tabell, som når den adresseres med (S^+ Rp^) 1 henholdsvis gir produktene av (S.^+ Rpi^ og hver av koeffisientene i G(x) , As for circuit 5, this consists of an immutable table, which when addressed with (S^+ Rp^) 1 respectively gives the products of (S.^+ Rpi^ and each of the coefficients in G(x) ,
hvor S. er informasjonssymbolet av orden i og R . som denwhere S. is the information symbol of order i and R . like that
1 pi 1 pi
partielle rest av orden i som har samme grad som S^.partial remainder of order i which has the same degree as S^.
Når alle informasjonssymboler som danner I(x) er blitt inn-ført i systemet, inneholder krets 1 de 8 styresymboler, arran-gert i en viss rekkefølge. Disse symboler må bare bringes på linje bak x I(x) for å komplettere kodeordets informasjon. When all information symbols forming I(x) have been entered into the system, circuit 1 contains the 8 control symbols, arranged in a certain order. These symbols only need to be aligned behind x I(x) to complete the codeword's information.
2-DEKODING2-DECODING
Fremgangsmåten for dekoding som er et utførelseseksempel av oppfinnelsen omfatter ett enkelt beregningssystem: - feilsyndromene; - koeffisienten av det feil-lokaliserende polynom; - røttene av det feil-lokaliserende polynom; - feiIdiagrammene som svarer til den beregnede feilposisjon; The method of decoding which is an embodiment of the invention comprises a single calculation system: - the error syndromes; - the coefficient of the mislocalizing polynomial; - the roots of the error-localizing polynomial; - the error diagrams corresponding to the calculated error position;
- korrigeringene.- the corrections.
BEREGNING VEDRØRENDE KORRIGERING AV FIRE FEILCALCULATION REGARDING THE CORRECTION OF FOUR ERRORS
BEREGNING AV SYNDROMENECALCULATION OF THE SYNDROMES
Da V(x) er et kodeord, kan det hvis det er feil skrives som: Since V(x) is a code word, if it is wrong it can be written as:
hvor E(x) er den feil-utformning som opptråtte under overfø-ring. where E(x) is the error design that occurred during transmission.
For å registrere feilene ved mottagelse, er det nødvendig enten å sjekke om de mottatte ord er eller ikke er delbare med generator-polynomet, eller å sjekke at hvert kodeord ak-septerer generator-polynomrøttene som røtter. Det gjøres bruk av den andre løsning for dekoding som i foreliggende oppfinnelse. In order to register the errors on reception, it is necessary either to check whether the received words are or are not divisible by the generator polynomial, or to check that each code word accepts the generator polynomial roots as roots. Use is made of the second solution for decoding as in the present invention.
Et kodeord V(x) skrives i polynomial form som følger, som tidligere vist: A code word V(x) is written in polynomial form as follows, as previously shown:
Hvis V(x) har a^ som en rot, uttrykkes dette ved: Hvis det foreligger en feil, blir kodeordet V(a^) ikke lenger mottatt, men derimot kodeordet If V(x) has a^ as a root, this is expressed by: If there is an error, the code word V(a^) is no longer received, but instead the code word
ettersom V (a-*) = 0. since V (a-*) = 0.
Sj er feilsyndromet av orden j, syndromene S_. må beregnes før det er mulig å bestemme posisjonen og verdien av feilene. Sj is the failure syndrome of order j, the syndromes S_. must be calculated before it is possible to determine the position and value of the faults.
Hvis det mottas et feilaktig ord, foreligger da en bestemt utformning av feil E (x). , som kan defineres med to parametre i' Y±(posisjon og verdi). If an erroneous word is received, then there is a particular form of error E (x). , which can be defined with two parameters i' Y± (position and value).
BEREGNING AV KOEFFISIENTENE I DET FEIL-LOKALISERENDE POLYNOM VED BRUK AV SYNDROMENE. CALCULATION OF THE COEFFICIENTS IN THE ERROR-LOCALIZING POLYNOMIAL USING THE SYNDROMES.
For å korrigere t feil, skrives det feil-lokaliserende polynom: To correct t errors, the error-locating polynomial is written:
Koeffisientene o^,O2, .... o^_ oppnås ved at følgende system løses: The coefficients o^,O2, .... o^_ are obtained by solving the following system:
La A være hovedbestemmende i systemet; det er likt: Let A be the main determinant in the system; it is similar to:
Ved å anvende reglene for løsning av lineære ligninger, blir resultatet at o1= A]_ A, hvor By applying the rules for solving linear equations, the result is that o1= A]_ A, where
Koeffisienten av det feil-lokaliserende polynom har derfor følgende respektive verdier: The coefficient of the error-localizing polynomial therefore has the following respective values:
BEREGNING AV DE FEIL-LOKALISERENDE POLYNOMIALE RØTTER CALCULATION OF THE ERROR-LOCALIZING POLYNOMIAL ROOTS
Ettersom ligning (3) bare kan løses hvis den i høyden er av fjerde grad, kan systemet korrigere opp til fire feil. Posisjonen av de fire feil er derfor løsningen av: As equation (3) can only be solved if it is of the fourth degree in height, the system can correct up to four errors. The position of the four faults is therefore the solution of:
Denne ligning kan også uttrykkes i bikvadratisk form: med: This equation can also be expressed in biquadratic form: with:
For å lokalisere feil er det tilstrekkelig å bestemme verdiene av A, A<*>, u OYU<*>og deretter røttene av hver av annen grads ligningene. For å løse systemet (6), vil man møte to tilfelle, avhengig av om o1er null eller ikke. To locate errors, it is sufficient to determine the values of A, A<*>, u OYU<*> and then the roots of each of the quadratic equations. To solve the system (6), one will encounter two cases, depending on whether o1 is zero or not.
Når o-^= 0, blir system (6) : When o-^= 0, system (6) becomes :
Dette er en tredje grads ligning i A og gir en rot A-^. Stør-relsene u og u' er løsninger av en annen grads ligning; forutsatt at: U og u' er røttene av This is a third degree equation in A and gives a root A-^. The quantities u and u' are solutions of a second degree equation; provided that: U and u' are the roots of
For o^= 0 ved å sette: For o^= 0 by setting:
Dette resulterer i en tredjegrads ligning for p, dvs: This results in a third degree equation for p, i.e.:
En rot p^f. eks., kan trekkes ut av denne ligning, hvorfra X og A<1>er løsninger av en kvadratisk ligning, dvs. A root p^f. e.g., can be extracted from this equation, from which X and A<1> are solutions of a quadratic equation, i.e.
System (6) gjør det således mulig å utlede verdiene av u og u' . System (6) thus makes it possible to derive the values of u and u'.
LØSNING AV EN TREDJEGRADS LIGNING SOM (8) ELLER (11)SOLUTION OF A TERMINAL EQUATION LIKE (8) OR (11)
Disse to ligninger har formen:These two equations have the form:
Denne ligning kan uttrykkes i kanonisk form (med y-koeffisienten lik tallet en) ved å sette: som gir This equation can be expressed in canonical form (with the y-coefficient equal to the number one) by putting: which gives
Hvis p er jevnt, oppstår to tilfelle for å finne en kubikk-rot i feltet GF(2<P>). If p is even, two cases arise to find a cube root in the field GF(2<P>).
(1) Hvis u = 0, blir ligningen (13):(1) If u = 0, equation (13) becomes:
Deretter: y-i 0<3Y2er derfor løsninger av Then: y-i 0<3Y2 are therefore solutions of
Denne ligning kan uttrykkes i kanonisk form som følger: This equation can be expressed in canonical form as follows:
hvor Y = Y/ Y21 R = x/ y2= 1 where Y = Y/ Y21 R = x/ y2= 1
(2) Hvis u = 0, må ligning (14) løses, z., oppnås ved hjelp av en tabell adressert av Q. Røttene z^og oppnås ved bruk av en metode som er identisk med den som nettopp er angitt for u = 0 og R ^ 1. (2) If u = 0, equation (14) must be solved, z., obtained by means of a table addressed by Q. The roots z^og are obtained by the use of a method identical with that just stated for u = 0 and R ^ 1.
Figur 3 avbilder dekode-algoritmen.Figure 3 depicts the decode algorithm.
Antallet feil som tas for korrigering er fire, tre eller to. The number of errors taken for correction is four, three or two.
Fase 101 representerer beregningen av syndromene som i foreliggende tilfelle vil utgjøre 8, S 7 til SQ. Fase 102 representerer beregningen av (A) ^, (A) ^, (A)2fførste determinant i tilfelle av 4, 3 og 2 feil, likesom beregningen av A^, hvor i varierer fra 1 til 4, dvs A = A-^,<A>2, A^, A^. Phase 101 represents the calculation of the syndromes which in the present case will amount to 8, S 7 to SQ. Phase 102 represents the calculation of (A) ^, (A) ^, (A)2f the first determinant in the case of 4, 3 and 2 errors, as well as the calculation of A^, where i varies from 1 to 4, i.e. A = A-^ ,<A>2, A^, A^.
Hvis (A^) avviker fra null (fase 103), utledes at det er fire feil, og dette leder videre til fase 104, hvor o^, , o^, o, definert ved ligningene (4) blir beregnet. If (A^) deviates from zero (phase 103), it is deduced that there are four errors, and this leads on to phase 104, where o^, , o^, o, defined by equations (4) are calculated.
Hvis o, = 0 (fase 105), leder dette til fase 106 for beregning av røttene av ligningen i p (ligning (11)), deretter til fase 107 for beregning av røttene A, A' i ligning (12) og til sist til fase 108 for beregning av u og y.' ved ligningene (6) . If o, = 0 (phase 105), this leads to phase 106 for calculating the roots of the equation in p (equation (11)), then to phase 107 for calculating the roots A, A' in equation (12) and finally to phase 108 for calculation of u and y.' by the equations (6) .
Deretter følger løsningen av ligning 5 (fase 109), som gir X, X2, X^, X^og feiladressen utledes av formel (17). Til slutt Then follows the solution of equation 5 (phase 109), which gives X, X2, X^, X^ and the error address is derived from formula (17). Finally
i fase 110, blir Y-^og Y2beregnet ved bruk av formel (18) . in phase 110, Y1 and Y2 are calculated using formula (18).
Hvis (fase 105) o-^= 0, blir fasene 106-108 erstattet av fasene 111-112, som svarer til henholdsvis løsning av ligningen i x 3 (ligning (8)) og løsning av ligningen i u 2 (ligning (9). If (phase 105) o-^= 0, phases 106-108 are replaced by phases 111-112, which correspond respectively to solving the equation in x 3 (equation (8)) and solving the equation in u 2 (equation (9).
Algoritmen i fig. 3 representerer videre dekodingsfasen i tilfelle av korrigering av tre og to feil. I disse to tilfelle blir ligning (3'): The algorithm in fig. 3 further represents the decoding phase in case of correction of three and two errors. In these two cases, equation (3') becomes:
- ved tre feil - in case of three errors
Ligning (3") kan uttrykkes i kanonisk form og en av røttene oppnås ved Cardans formel (fase (206)) . De øvrige to røttene oppnås ved løsning av annengrads ligningen for X (fase 207). Equation (3") can be expressed in canonical form and one of the roots is obtained by Cardan's formula (phase (206)). The other two roots are obtained by solving the quadratic equation for X (phase 207).
I fig. 3 er det mulig å se ekvivalensen mellom fasene som har numrene 1, 2, 3, 4 for hundretall og samme antall for entall og titall. In fig. 3 it is possible to see the equivalence between the phases which have the numbers 1, 2, 3, 4 for hundreds and the same number for ones and tens.
I alle tilfelle, bortsett fra verdien av koeffisientene, er problemet redusert til løsningen av en tredjegrads ligning eller en annengrads ligning i kanonisk form. In all cases, apart from the value of the coefficients, the problem is reduced to the solution of a cubic equation or a quadratic equation in canonical form.
Den effektive posisjon av feilene bestemmes som følger: The effective position of the faults is determined as follows:
Forutsatt av X^er i formen X^ = a-<11>(hvor a-<*1>er et elementGF(2<P>)), karakteriserer j^feilposisjonen, idet Provided by X^is of the form X^ = a-<11>(where a-<*1>is an elementGF(2<P>)), j^characterizes the error position, as
Bestemmelsen av X^ gjør det mulig deretter å beregne de til-svarende f eildiagrammer y.^: The determination of X^ then makes it possible to calculate the corresponding fault diagrams y.^:
- . — ... f Dermed: - . — ... f Thus:
Det vises til fig. 2. Etter hvert som symbolene ankommer, beregner dekoderen Sj som i ligning (2) for en gitt verdi av j. Denne operasjon utføres så mange ganger som G(x) har røtter. Reference is made to fig. 2. As the symbols arrive, the decoder calculates Sj as in equation (2) for a given value of j. This operation is performed as many times as G(x) has roots.
For et symbol av orden ^ beregner krets 11:For a symbol of order ^, circuit 11 calculates:
Dette resultat blir deretter midlertidig lagret i krets 12. This result is then temporarily stored in circuit 12.
Dekoderen kaller på summen av de (n-£) tidligere ledd, som er lagret i krets 10, idet krets 11 er transparent. Krets 13 utfører summeringen: The decoder calls up the sum of the (n-£) previous terms, which are stored in circuit 10, since circuit 11 is transparent. Circuit 13 performs the summation:
Utregningen av denne operasjon passerer via lagerenhet 14 og krets 15 som er transparent for å lagres i krets 10, inntil ankomst av påfølgende symbol; den således beskrevne operasjon blir gjentatt, inntil det siste symbol har ankommet. De forskjellige syndromer som lagret i krets 10. The calculation of this operation passes via storage unit 14 and circuit 15 which is transparent to be stored in circuit 10, until the arrival of the next symbol; the operation thus described is repeated until the last symbol has arrived. The various syndromes stored in circuit 10.
Dekoderen er utformet av tre lagerenheter:The decoder is made up of three storage units:
- krets 10 som er et direktelager for u ord på p biter, hvor u er en karakteristikk ved systemet, - circuit 10 which is a direct storage for u words of p bits, where u is a characteristic of the system,
- kretsene 12 og 14 som er lagerenheter for p biter.- circuits 12 and 14 which are storage units for p bits.
En krets 13, som under beregning av syndromene virker som en modulo-2 adderer. A circuit 13, which during calculation of the syndromes acts as a modulo-2 adder.
En krets 11 som er en tabell, hvor et reservert område multipliserer symbolet som ankommer ved inngangen til det med røttene av generator-polynomet i en sekvens som i forveien er definert av systemet. A circuit 11 which is a table, where a reserved area multiplies the symbol arriving at its input by the roots of the generator polynomial in a sequence defined in advance by the system.
En krets 15, som er en tabell, hvor et transparent område blir utnyttet under denne operasjon. A circuit 15, which is a table, where a transparent area is utilized during this operation.
De operasjoner som kreves for beregning av de forskjellige determinenter er multiplikasjon og modulo-2 addisjon. The operations required for calculating the different determinants are multiplication and modulo-2 addition.
Multiplikasjonen av to elementer i Galois feltet GF (a<p>) erstattes av modulo (2P<->1) addisjon av basis a logaritmen i disse to tall, hvor a er et primitivt element i feltet GF (a<p>). The multiplication of two elements in the Galois field GF (a<p>) is replaced by modulo (2P<->1) addition of the base a logarithm of these two numbers, where a is a primitive element in the field GF (a<p>).
MULTIPLIKASJONSTILFELLEMULTIPLICATION CASE
Verdien av et syndrom som er lagret i krets 10 flyter gjennom kretsen 11, som gir logaritmen av den. Dette resultat lagres i krets 12. Ved bruk av samme prosess, blir f.eks. logaritmen for et annet syndrom beregnet. I dette tidspunkt blir utgangene fra kretsene 11 og 12 matet til krets 13, som i .dette spesielle tilfelle virker som en modulo (2P<->1) adderer. Resultatet av å addere disse to logaritmer blir lagret i krets 14. I dette øyeblikk avgir krets 15 antilogaritmen av resultatet fra krets 14, et resultat som tar sin plass i et reservert område av krets 10. The value of a syndrome stored in circuit 10 flows through circuit 11, which gives its logarithm. This result is stored in circuit 12. When using the same process, e.g. the logarithm of another syndrome calculated. At this point, the outputs from circuits 11 and 12 are fed to circuit 13, which in this particular case acts as a modulo (2P<->1) adder. The result of adding these two logarithms is stored in circuit 14. At this moment, circuit 15 outputs the antilogarithm of the result from circuit 14, a result which takes its place in a reserved area of circuit 10.
ADDISJONSTILFELLEADDITION CASE
I dette tilfelle er kretsene 11 og 15 transparente og krets 13 fungerer som en modulo-2 adderer. In this case, circuits 11 and 15 are transparent and circuit 13 functions as a modulo-2 adder.
Koeffisientene o^, O2....o^....ot, som er beregnet ved hjelp av ovennevnte fremgangsmåte blir lagret i de klart be-grensede områdene av krets 10. The coefficients o^, O2.
EksempelExample
Anta at:Assume that:
er det karakteristiske polynom som kan uttrykkes i form av is the characteristic polynomial that can be expressed in terms of
et kode-generatorpolynom: a code generator polynomial:
Som vist, må generator-polynomet ha et antall røtter som er det dobbelte av antallet feil som skal korrigeres, og ettersom det er åtte røtter i dette tilfelle, kan fire feil bli korrigert. Det foreligger således åtte syndromer Sq til S^ As shown, the generator polynomial must have a number of roots twice the number of errors to be corrected, and since there are eight roots in this case, four errors can be corrected. There are thus eight syndromes Sq to S^
og disse syndromer beregnes ved at a-' suksessivt erstattes and these syndromes are calculated by successively replacing a-'
2 3 4 5 6 7 2 3 4 5 6 7
med 1,a,a,a,a,a,a,a og ved at n-1 settes til 255. with 1,a,a,a,a,a,a,a and by setting n-1 to 255.
Det forutsettes at syndromene har følgende verdier:It is assumed that the syndromes have the following values:
S0 a<3>S0 a<3>
.S1 = ab.S1 = ab
S2 = a7S2 = a7
a<9>a<9>
a 11 a 11
S. a" So"
S„ a15S„ a15
8<*>a" 8<*>a"
Det forutsettes videre at det fins en feil i posisjon a 2 og med verdien a 3 , hvor a 2 og a 3 er elementer i Galloisfeltet GF (28) . It is further assumed that there is an error in position a 2 and with the value a 3 , where a 2 and a 3 are elements in the Gallois field GF (28).
Første determinant A som gjør det mulig å løse de ukjente o-^til o^(4. orden determinant for fire feil) skrives: First determinant A which makes it possible to solve the unknowns o-^to o^ (4th order determinant for four errors) is written:
Denne determinant er null. Det fins således maksimalt tre feil. Første determinant blir så utformet. This determinant is zero. There are thus a maximum of three errors. The first determinant is then designed.
Denne er null. Det fins således maksimalt to feil. Første determinant blir deretter utformet. This is zero. There are thus a maximum of two errors. The first determinant is then designed.
Denne determinant er null. Det fins således bare en feil. Følgende blir deretter utformet: This determinant is zero. There is thus only one error. The following is then designed:
og determinanten fremkommer ved: Fra ligning 4 resulterer dette i Ligning (3<1>) forenkler til and the determinant appears by: From equation 4, this results in Equation (3<1>) simplifies to
2 2
hvor X = o^= awhere X = o^= a
som bekrefter antagelsen som ble gjort med hensyn til posisjonen av feilen. which confirms the assumption made as to the position of the fault.
Den korrigerte feil er størrelsen Y-^som beregnes ved hjelp av ligning (2). Det gir: The corrected error is the quantity Y-^ which is calculated using equation (2). It provides:
Claims (9)
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR8312581A FR2549984B1 (en) | 1983-07-29 | 1983-07-29 | CORRECTION SYSTEM FOR ERRORS OF DIGITAL SIGNALS CODED IN REED-SOLOMON CODE |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| NO851302L true NO851302L (en) | 1985-03-29 |
Family
ID=9291255
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| NO851302A NO851302L (en) | 1983-07-29 | 1985-03-29 | SYSTEM FOR ERROR CORRECTION IN DIGITAL SIGNALS IN REED SOLO CODE |
Country Status (14)
| Country | Link |
|---|---|
| EP (1) | EP0133137B1 (en) |
| JP (1) | JPS60501930A (en) |
| AT (1) | ATE38750T1 (en) |
| BR (1) | BR8407000A (en) |
| CA (1) | CA1218461A (en) |
| DE (1) | DE3475253D1 (en) |
| DK (1) | DK139585A (en) |
| ES (1) | ES534728A0 (en) |
| FI (1) | FI851264A7 (en) |
| FR (1) | FR2549984B1 (en) |
| NO (1) | NO851302L (en) |
| PT (1) | PT78995B (en) |
| WO (1) | WO1985000714A1 (en) |
| YU (1) | YU133684A (en) |
Families Citing this family (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR2624676A1 (en) * | 1987-12-11 | 1989-06-16 | Trt Telecom Radio Electr | Device for coding and decoding Reed-Solomon codes |
| JPH0267013A (en) * | 1988-09-01 | 1990-03-07 | Mitsubishi Electric Corp | Galois field arithmetic circuit |
| JPH07114419B2 (en) * | 1989-04-12 | 1995-12-06 | 株式会社東芝 | QAM communication system |
| US5212695A (en) * | 1989-04-28 | 1993-05-18 | Canon Kabushiki Kaisha | Error check or erro correction code coding device |
| IT1243094B (en) * | 1990-02-14 | 1994-05-24 | Silvio Cucchi | SYSTEM AND DEVICES FOR CORRECTION OF ERRORS IN DIGITAL TRANSMISSIONS |
| CA2037527C (en) * | 1990-03-05 | 1999-05-25 | Hideki Okuyama | Error correction system capable of correcting an error in a packet header by the use of a reed-solomon code |
| NO913705L (en) * | 1991-09-20 | 1993-03-22 | Abb Signal Ab | DEVICE THAT MAKES DIGITAL SIGNALS ERROR CHECK |
| JP2824474B2 (en) * | 1992-02-17 | 1998-11-11 | 三菱電機株式会社 | Error correction system and decoder using this error correction system |
| JP3176171B2 (en) * | 1993-04-21 | 2001-06-11 | キヤノン株式会社 | Error correction method and apparatus |
| GB2399896A (en) | 2002-07-31 | 2004-09-29 | Hewlett Packard Co | Identifying uncorrectable codewords in a reed-solomon decoder handling errors and erasures |
| GB2391344A (en) * | 2002-07-31 | 2004-02-04 | Hewlett Packard Co | Magnetoresistive solid state storage device and data storage method |
| GB2391769B (en) | 2002-07-31 | 2005-07-06 | Hewlett Packard Co | Reed-Solomon decoder and decoding method for errors and erasures decoding |
| AR117122A1 (en) | 2018-11-20 | 2021-07-14 | Tes Pharma S R L | A-AMINO-b-CARBOXIMUCONIC ACID INHIBITORS SEMIALDEHYDE DECARBOXYLASE |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB2093238B (en) * | 1981-02-18 | 1985-04-17 | Kokusai Denshin Denwa Co Ltd | Error correcting system for simultaneous errors in a code |
| JPS57155667A (en) * | 1981-03-23 | 1982-09-25 | Sony Corp | Arithmetic circuit of galois matter |
-
1983
- 1983-07-29 FR FR8312581A patent/FR2549984B1/en not_active Expired
-
1984
- 1984-07-27 CA CA000459833A patent/CA1218461A/en not_active Expired
- 1984-07-27 PT PT78995A patent/PT78995B/en unknown
- 1984-07-30 FI FI851264A patent/FI851264A7/en not_active Application Discontinuation
- 1984-07-30 AT AT84401597T patent/ATE38750T1/en not_active IP Right Cessation
- 1984-07-30 EP EP84401597A patent/EP0133137B1/en not_active Expired
- 1984-07-30 BR BR8407000A patent/BR8407000A/en unknown
- 1984-07-30 YU YU01336/84A patent/YU133684A/en unknown
- 1984-07-30 DE DE8484401597T patent/DE3475253D1/en not_active Expired
- 1984-07-30 ES ES534728A patent/ES534728A0/en active Granted
- 1984-07-30 JP JP59502929A patent/JPS60501930A/en active Pending
- 1984-07-30 WO PCT/FR1984/000181 patent/WO1985000714A1/en not_active Ceased
-
1985
- 1985-03-28 DK DK139585A patent/DK139585A/en not_active Application Discontinuation
- 1985-03-29 NO NO851302A patent/NO851302L/en unknown
Also Published As
| Publication number | Publication date |
|---|---|
| EP0133137A1 (en) | 1985-02-13 |
| JPS60501930A (en) | 1985-11-07 |
| FR2549984A1 (en) | 1985-02-01 |
| EP0133137B1 (en) | 1988-11-17 |
| DE3475253D1 (en) | 1988-12-22 |
| ES8601520A1 (en) | 1985-10-16 |
| BR8407000A (en) | 1985-06-11 |
| WO1985000714A1 (en) | 1985-02-14 |
| PT78995B (en) | 1986-06-18 |
| DK139585D0 (en) | 1985-03-28 |
| FR2549984B1 (en) | 1985-10-18 |
| ES534728A0 (en) | 1985-10-16 |
| PT78995A (en) | 1984-08-01 |
| FI851264A0 (en) | 1985-03-29 |
| ATE38750T1 (en) | 1988-12-15 |
| FI851264L (en) | 1985-03-29 |
| FI851264A7 (en) | 1985-03-29 |
| CA1218461A (en) | 1987-02-24 |
| YU133684A (en) | 1987-10-31 |
| DK139585A (en) | 1985-05-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0413856B1 (en) | A decoding method and apparatus for decoding code words that are wordwise protected by a non-binary BCH code against at least one symbol error | |
| US5099482A (en) | Apparatus for detecting uncorrectable error patterns when using Euclid's algorithm to decode Reed-Solomon (BCH) codes | |
| US7028247B2 (en) | Error correction code circuit with reduced hardware complexity | |
| US4849975A (en) | Error correction method and apparatus | |
| US4030067A (en) | Table lookup direct decoder for double-error correcting (DEC) BCH codes using a pair of syndromes | |
| US4623999A (en) | Look-up table encoder for linear block codes | |
| US4694455A (en) | Decoding method for multiple bit error correction BCH codes | |
| KR920000828B1 (en) | Galois field arithmetimetic logic unit | |
| JP3176171B2 (en) | Error correction method and apparatus | |
| US5905740A (en) | Apparatus and method for error correction | |
| US4592054A (en) | Decoder with code error correcting function | |
| US5396502A (en) | Single-stack implementation of a Reed-Solomon encoder/decoder | |
| KR20180085651A (en) | Application-specific integrated circuit to perform a method for fast polynomial updates in bm-based fast chase decoding of binary bch codes through degenerate list decoding | |
| JPH07202723A (en) | Decoder, error detection sequence generator used therein, and decoding method | |
| US9191029B2 (en) | Additional error correction apparatus and method | |
| EP0133137A1 (en) | Error correction system for digital signals coded in Reed-Solomon codes | |
| US6421807B1 (en) | Decoding apparatus, processing apparatus and methods therefor | |
| US20050138525A1 (en) | System and method for forward error correction | |
| Dodunekov et al. | Algebraic decoding of the Zetterberg codes | |
| JP2007518353A (en) | Reed-Solomon encoding and decoding method | |
| EP0442320B1 (en) | Method and system for error correction in digital transmission | |
| US7693927B2 (en) | Data processing system and method | |
| JP2575506B2 (en) | Chain search circuit | |
| US5978950A (en) | Polynomial evaluator for use in a reed-solomon decoder | |
| EP0793352A2 (en) | Apparatus for determining the error evaluator polynomial for use in a Reed-Solomon decoder |